• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeutils API Reference
  • KDE Home
  • Contact Us
 

superkaramba

  • sources
  • kde-4.12
  • kdeutils
  • superkaramba
  • src
  • python
python/karamba.cpp
Go to the documentation of this file.
1 /****************************************************************************
2 * karamba_python.cpp - Functions for calling python scripts
3 *
4 * Copyright (C) 2003 Hans Karlsson <karlsson.h@home.se>
5 * Copyright (C) 2003-2004 Adam Geitgey <adam@rootnode.org>
6 * Copyright (c) 2004 Petri Damstén <damu@iki.fi>
7 * Copyright (c) 2004 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
8 *
9 * This file is part of SuperKaramba.
10 *
11 * SuperKaramba is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * SuperKaramba is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with SuperKaramba; if not, write to the Free Software
23 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24 ****************************************************************************/
25 
26 #if defined(_XOPEN_SOURCE) && !defined(__SUNPRO_CC)
27 #undef _XOPEN_SOURCE
28 #endif
29 
30 #include "python/karamba.h"
31 
32 #include <Python.h>
33 #include "karambaapp.h"
34 #include "themefile.h"
35 #include "karamba.h"
36 
37 #include "python/meter.h"
38 #include "python/bar.h"
39 #include "python/graph.h"
40 #include "python/textlabel.h"
41 #include "python/richtextlabel.h"
42 #include "python/imagelabel.h"
43 #include "python/widget.h"
44 #include "python/menu.h"
45 #include "python/config.h"
46 #include "python/task.h"
47 #include "python/systray.h"
48 #include "python/svcgrp.h"
49 #include "python/misc.h"
50 #include "python/input.h"
51 
52 /*******************************************
53  * Python methods are defined here.
54  * Each method accessible from python should have:
55  * - A wrapper function that returns a PyObject or appropriate python type
56  * - A C++ implementation of the python method, named the same as the python call
57  * - An entry in the python methods array so the call is accessible from python
58  *
59  * Example:
60  * py_move_systay - wrapper function
61  * moveSystray - actual implementation of method
62  * {"moveSystray", py_move_systray, METH_VARARGS, "Move the Systray"} - array entry
63  */
64 
65 static PyMethodDef karamba_methods[] =
66  {
67 
68  // Bar - bar_python.cpp
69  {(char*)"createBar", py_createBar, METH_VARARGS, (char*)"Create new Bar."},
70  {(char*)"deleteBar", py_deleteBar, METH_VARARGS, (char*)"Delete Bar."},
71  {(char*)"getThemeBar", py_getThemeBar, METH_VARARGS, (char*)"Get Bar from .theme using it's name."},
72  {(char*)"getBarSize", py_getBarSize, METH_VARARGS, (char*)"Get Bar size."},
73  {(char*)"resizeBar", py_resizeBar, METH_VARARGS, (char*)"Resize Bar."},
74  {(char*)"getBarPos", py_getBarPos, METH_VARARGS, (char*)"Get Bar position."},
75  {(char*)"moveBar", py_moveBar, METH_VARARGS, (char*)"Move Bar."},
76  {(char*)"hideBar", py_hideBar, METH_VARARGS, (char*)"Hide Bar."},
77  {(char*)"showBar", py_showBar, METH_VARARGS, (char*)"Show Bar."},
78  {(char*)"getBarSensor", py_getBarSensor, METH_VARARGS, (char*)"Get Bar sensor."},
79  {(char*)"setBarSensor", py_setBarSensor, METH_VARARGS, (char*)"Set Bar sensor."},
80  {(char*)"setBarImage", py_setBarImage, METH_VARARGS, (char*)"Set bar image"},
81  {(char*)"getBarImage", py_getBarImage, METH_VARARGS, (char*)"Get bar image"},
82  {(char*)"setBarVertical", py_setBarVertical, METH_VARARGS, (char*)"Set bar orientation"},
83  {(char*)"getBarVertical", py_getBarVertical, METH_VARARGS, (char*)"Get bar orientation"},
84  {(char*)"setBarValue", py_setBarValue, METH_VARARGS, (char*)"Set bar value"},
85  {(char*)"getBarValue", py_getBarValue, METH_VARARGS, (char*)"Get bar value"},
86  {(char*)"setBarMinMax", py_setBarMinMax, METH_VARARGS, (char*)"Set bar min & max"},
87  {(char*)"getBarMinMax", py_getBarMinMax, METH_VARARGS, (char*)"Get bar min & max"},
88 
89  {(char*)"getIncomingData", py_get_incoming_data, METH_VARARGS, (char*)"Get incoming data passed from another theme"},
90  {(char*)"setIncomingData", py_set_incoming_data, METH_VARARGS, (char*)"Set incoming data passed in another theme"},
91 
92  // Graph - graph_python.cpp
93  {(char*)"createGraph", py_createGraph, METH_VARARGS, (char*)"Create new Graph."},
94  {(char*)"deleteGraph", py_deleteGraph, METH_VARARGS, (char*)"Delete Graph."},
95  {(char*)"getThemeGraph", py_getThemeGraph, METH_VARARGS, (char*)"Get Graph from .theme using it's name."},
96  {(char*)"getGraphSize", py_getGraphSize, METH_VARARGS, (char*)"Get Graph size."},
97  {(char*)"resizeGraph", py_resizeGraph, METH_VARARGS, (char*)"Resize Graph."},
98  {(char*)"getGraphPos", py_getGraphPos, METH_VARARGS, (char*)"Get Graph position."},
99  {(char*)"moveGraph", py_moveGraph, METH_VARARGS, (char*)"Move Graph."},
100  {(char*)"hideGraph", py_hideGraph, METH_VARARGS, (char*)"Hide Graph."},
101  {(char*)"showGraph", py_showGraph, METH_VARARGS, (char*)"Show Graph."},
102  {(char*)"getGraphSensor", py_getGraphSensor, METH_VARARGS, (char*)"Get Graph sensor."},
103  {(char*)"setGraphSensor", py_setGraphSensor, METH_VARARGS, (char*)"Set Graph sensor."},
104  {(char*)"setGraphValue", py_setGraphValue, METH_VARARGS, (char*)"Set graph value"},
105  {(char*)"getGraphValue", py_getGraphValue, METH_VARARGS, (char*)"Get graph value"},
106  {(char*)"setGraphMinMax", py_setGraphMinMax, METH_VARARGS, (char*)"Set graph min & max"},
107  {(char*)"getGraphMinMax", py_getGraphMinMax, METH_VARARGS, (char*)"Get graph min & max"},
108  {(char*)"setGraphColor", py_setGraphColor, METH_VARARGS, (char*)"Change a Graph Sensor's Color"},
109  {(char*)"getGraphColor", py_getGraphColor, METH_VARARGS, (char*)"Get a Graph Sensor's Color"},
110 
111  // TextLabel - textlabel_python.cpp
112  {(char*)"createText", py_createText, METH_VARARGS, (char*)"Create new Text."},
113  {(char*)"deleteText", py_deleteText, METH_VARARGS, (char*)"Delete Text."},
114  {(char*)"getThemeText", py_getThemeText, METH_VARARGS, (char*)"Get Text from .theme using it's name."},
115  {(char*)"getTextSize", py_getTextSize, METH_VARARGS, (char*)"Get Text size."},
116  {(char*)"resizeText", py_resizeText, METH_VARARGS, (char*)"Resize Text."},
117  {(char*)"getTextPos", py_getTextPos, METH_VARARGS, (char*)"Get Text position."},
118  {(char*)"moveText", py_moveText, METH_VARARGS, (char*)"Move Text."},
119  {(char*)"hideText", py_hideText, METH_VARARGS, (char*)"Hide Text."},
120  {(char*)"showText", py_showText, METH_VARARGS, (char*)"Show Text."},
121  {(char*)"getTextSensor", py_getTextSensor, METH_VARARGS, (char*)"Get Text sensor."},
122  {(char*)"setTextSensor", py_setTextSensor, METH_VARARGS, (char*)"Set Text sensor."},
123  {(char*)"changeText", py_setTextValue, METH_VARARGS, (char*)"Change a Text Sensor's Text"},
124  {(char*)"getTextValue", py_getTextValue, METH_VARARGS, (char*)"Get Text value"},
125  {(char*)"changeTextShadow", py_setTextShadow, METH_VARARGS, (char*)"Change a Text Shadow size"},
126  {(char*)"getTextShadow", py_getTextShadow, METH_VARARGS, (char*)"Get a Text Shadow size"},
127  {(char*)"changeTextFont", py_setTextFont, METH_VARARGS, (char*)"Change a Text Sensor's Font"},
128  {(char*)"getTextFont", py_getTextFont, METH_VARARGS, (char*)"Get a Text Sensor's Font"},
129  {(char*)"changeTextColor", py_setTextColor, METH_VARARGS, (char*)"Change a Text Sensor's Color"},
130  {(char*)"getTextColor", py_getTextColor, METH_VARARGS, (char*)"Get a Text Sensor's Color"},
131  {(char*)"changeTextSize", py_setTextFontSize, METH_VARARGS, (char*)"Change a Text Sensor's Font Size"},
132  {(char*)"getTextFontSize", py_getTextFontSize, METH_VARARGS, (char*)"Get a Text Sensor's Font Size"},
133  {(char*)"getTextAlign", py_getTextAlign, METH_VARARGS, (char*)"Get Text alignment."},
134  {(char*)"setTextAlign", py_setTextAlign, METH_VARARGS, (char*)"Set Text alignment."},
135  {(char*)"setTextScroll", py_setTextScroll, METH_VARARGS, (char*)"Set Text scroll."},
136 
137  // RichTextLabel - richtextlabel_python.cpp
138  {(char*)"createRichText", py_createRichText, METH_VARARGS, (char*)"Create a Rich Text Sensor"},
139  {(char*)"deleteRichText", py_deleteRichText, METH_VARARGS, (char*)"Deletes a Rich Text Sensor"},
140  {(char*)"getThemeRichText", py_getThemeRichText, METH_VARARGS, (char*)"Get Rich Text from .theme using it's name."},
141  {(char*)"getRichTextSize", py_getRichTextSize, METH_VARARGS, (char*)"Get the (width, height) of a Rich Text Sensor"},
142  {(char*)"resizeRichText", py_resizeRichText, METH_VARARGS, (char*)"Resize Rich Text."},
143  {(char*)"setRichTextWidth", py_set_rich_text_width, METH_VARARGS, (char*)"Sets the width of a Rich Text Sensor"},
144  {(char*)"getRichTextPos", py_getRichTextPos, METH_VARARGS, (char*)"Get Rich Text position."},
145  {(char*)"moveRichText", py_moveRichText, METH_VARARGS, (char*)"Moves a Rich Text Sensor"},
146  {(char*)"hideRichText", py_hideRichText, METH_VARARGS, (char*)"hides a Rich Text Sensor"},
147  {(char*)"showRichText", py_showRichText, METH_VARARGS, (char*)"shows a Rich Text Sensor"},
148  {(char*)"getRichTextSensor", py_getRichTextSensor, METH_VARARGS, (char*)"Get Rich Text sensor."},
149  {(char*)"setRichTextSensor", py_setRichTextSensor, METH_VARARGS, (char*)"Set Rich Text sensor."},
150  {(char*)"changeRichText", py_setRichTextValue, METH_VARARGS, (char*)"Change the content of a Rich Text Sensor"},
151  {(char*)"getRichTextValue", py_getRichTextValue, METH_VARARGS, (char*)"Get Rich Text value"},
152  {(char*)"changeRichTextFont", py_setRichTextFont, METH_VARARGS, (char*)"Change a Rich Text Sensor's Font"},
153  {(char*)"getRichTextFont", py_getRichTextFont, METH_VARARGS, (char*)"Get a Rich Text Sensor's Font"},
154  {(char*)"changeRichTextSize", py_setRichTextFontSize, METH_VARARGS, (char*)"Change a Rich Text Sensor's Font Size"},
155  {(char*)"getRichTextFontSize", py_getRichTextFontSize, METH_VARARGS, (char*)"Get a Rich Text Sensor's Font Size"},
156 
157  // ImageLabel - imagelabel_python.cpp
158  {(char*)"createImage", py_createImage, METH_VARARGS, (char*)"Create an Image"},
159  {(char*)"createTaskIcon", py_createTaskIcon, METH_VARARGS, (char*)"Create an Image of the Icon for a Task"},
160  {(char*)"createBackgroundImage", py_createBackgroundImage, METH_VARARGS, (char*)"Create an Image (only redraw it when background changes)"},
161  {(char*)"deleteImage", py_deleteImage, METH_VARARGS, (char*)"Delete an Image"},
162  {(char*)"getThemeImage", py_getThemeImage, METH_VARARGS, (char*)"Get image meter from .theme using it's name"},
163  {(char*)"getImageSize", py_getImageSize, METH_VARARGS, (char*)"Get Image size."},
164  {(char*)"getImageWidth", py_getImageWidth, METH_VARARGS, (char*)"Get the width of an Image"},
165  {(char*)"getImageHeight", py_getImageHeight, METH_VARARGS, (char*)"Get the height of an Image"},
166  {(char*)"getImagePos", py_getImagePos, METH_VARARGS, (char*)"Get Image position."},
167  {(char*)"moveImage", py_moveImage, METH_VARARGS, (char*)"Move an Image"},
168  {(char*)"hideImage", py_hideImage, METH_VARARGS, (char*)"Hide an Image"},
169  {(char*)"showImage", py_showImage, METH_VARARGS, (char*)"Show an Image"},
170  {(char*)"getImagePath", py_getImageValue, METH_VARARGS, (char*)"Get Image path."},
171  {(char*)"setImagePath", py_setImageValue, METH_VARARGS, (char*)"Set Image path."},
172  {(char*)"getImageSensor", py_getImageSensor, METH_VARARGS, (char*)"Get Image sensor."},
173  {(char*)"setImageSensor", py_setImageSensor, METH_VARARGS, (char*)"Set Image sensor."},
174  {(char*)"addImageTooltip", py_addImageTooltip, METH_VARARGS, (char*)"Create a Tooltip for an Image"},
175  {(char*)"resizeImage", py_resizeImage, METH_VARARGS, (char*)"Scale an Image"},
176  {(char*)"resizeImageSmooth", py_resizeImageSmooth, METH_VARARGS, (char*)"Scale an Image (slower, better looking)"},
177  {(char*)"rotateImage", py_rotateImage, METH_VARARGS, (char*)"Rotate an Image"},
178  {(char*)"removeImageTransformations", py_removeImageTransformations, METH_VARARGS, (char*)"Restore original size and orientation of an Image"},
179  {(char*)"removeImageEffects", py_removeImageEffects, METH_VARARGS, (char*)"Remove Effects of an Image"},
180  {(char*)"changeImageIntensity", py_changeImageIntensity, METH_VARARGS, (char*)"Change Intensity of an Image"},
181  {(char*)"changeImageChannelIntensity", py_changeImageChannelIntensity, METH_VARARGS, (char*)"Change Intensity of an Image Channel"},
182  {(char*)"changeImageToGray", py_changeImageToGray, METH_VARARGS, (char*)"Converts an Image to Grayscale"},
183 
184  // Menu - menu_python.cpp
185  {(char*)"createMenu", py_create_menu, METH_VARARGS, (char*)"Create a popup menu"},
186  {(char*)"deleteMenu", py_delete_menu, METH_VARARGS, (char*)"Delete a popup menu"},
187  {(char*)"addMenuItem", py_add_menu_item, METH_VARARGS, (char*)"Add a popup menu entry"},
188  {(char*)"addMenuSeparator", py_add_menu_separator, METH_VARARGS, (char*)"Add a popup menu separator item"},
189  {(char*)"removeMenuItem", py_remove_menu_item, METH_VARARGS, (char*)"Remove a popup menu entry"},
190  {(char*)"popupMenu", py_popup_menu, METH_VARARGS, (char*)"Popup a menu at a specified location"},
191 
192  // Config - config_python.cpp
193  {(char*)"addMenuConfigOption", py_add_menu_config_option, METH_VARARGS, (char*)"Add a configuration entry to the menu"},
194  {(char*)"setMenuConfigOption", py_set_menu_config_option, METH_VARARGS, (char*)"Set a configuration entry in the menu"},
195  {(char*)"readMenuConfigOption", py_read_menu_config_option, METH_VARARGS, (char*)"Read a configuration entry in the menu"},
196  {(char*)"readConfigEntry", py_read_config_entry, METH_VARARGS, (char*)"Read a configuration entry"},
197  {(char*)"writeConfigEntry", py_write_config_entry, METH_VARARGS, (char*)"Writes a configuration entry"},
198 
199  // Widget - widget_python.cpp
200  {(char*)"moveWidget", py_move_widget, METH_VARARGS, (char*)"Move Widget to x,y"},
201  {(char*)"resizeWidget", py_resize_widget, METH_VARARGS, (char*)"Resize Widget to width,height"},
202  {(char*)"createWidgetMask", py_create_widget_mask, METH_VARARGS, (char*)"Create a clipping mask for this widget"},
203  {(char*)"redrawWidget", py_redraw_widget, METH_VARARGS, (char*)"Update Widget to reflect your changes"},
204  {(char*)"redrawWidgetBackground", py_redraw_widget_background, METH_VARARGS, (char*)"Update Widget to reflect background image changes"},
205  {(char*)"getWidgetPosition", py_get_widget_position, METH_VARARGS, (char*)"Get Widget Position"},
206  {(char*)"toggleWidgetRedraw", py_toggle_widget_redraw, METH_VARARGS, (char*)"Toggle Widget redrawing"},
207 
208  // Task - task_python.cpp
209  {(char*)"getStartupList", py_get_startup_list, METH_VARARGS, (char*)"Get the system startup list"},
210  {(char*)"getStartupInfo", py_get_startup_info, METH_VARARGS, (char*)"Get all the info for a startup"},
211  {(char*)"getTaskList", py_get_task_list, METH_VARARGS, (char*)"Get the system task list"},
212  {(char*)"getTaskNames", py_get_task_names, METH_VARARGS, (char*)"Get the system task list in name form"},
213  {(char*)"getTaskInfo", py_get_task_info, METH_VARARGS, (char*)"Get all the info for a task"},
214  {(char*)"performTaskAction", py_perform_task_action, METH_VARARGS, (char*)"Do something with a task, such as minimize it"},
215 
216  // System Tray - systray_python.cpp
217  {(char*)"createSystray", py_create_systray, METH_VARARGS, (char*)"Create a Systray"},
218  {(char*)"hideSystray", py_hide_systray, METH_VARARGS, (char*)"Hide the Systray"},
219  {(char*)"showSystray", py_show_systray, METH_VARARGS, (char*)"Show the Systray"},
220  {(char*)"moveSystray", py_move_systray, METH_VARARGS, (char*)"Move the Systray"},
221  {(char*)"getCurrentWindowCount", py_get_current_window_count, METH_VARARGS, (char*)"Get current Window count"},
222  {(char*)"updateSystrayLayout", py_update_systray_layout, METH_VARARGS, (char*)"Update Systray layout"},
223  {(char*)"getSystraySize", py_get_systray_size, METH_VARARGS,
224  (char*)"Get the size of the Systray"},
225 
226  // Misc - misc_python.cpp
227  {(char*)"getThemePath", py_get_theme_path, METH_VARARGS, (char*)"Get the file path of the theme"},
228  {(char*)"readThemeFile", py_read_theme_file, METH_VARARGS,
229  (char*)"Read file from theme."},
230  {(char*)"language", py_language, METH_VARARGS,
231  (char*)"Return default language of a translation file."},
232  {(char*)"userLanguage", py_userLanguage, METH_VARARGS,
233  (char*)"Return user language."},
234  {(char*)"userLanguages", py_userLanguages, METH_VARARGS,
235  (char*)"Return preferred user languages."},
236  {(char*)"openTheme", py_open_theme, METH_VARARGS,
237  (char*)"Open a new theme"},
238  {(char*)"reloadTheme", py_reload_theme, METH_VARARGS,
239  (char*)"Reload current theme"},
240  {(char*)"acceptDrops", py_accept_drops, METH_VARARGS,
241  (char*)"Allows widget to receive Drop (I.E. Drag and Drop) events"},
242  {(char*)"toggleShowDesktop", py_toggle_show_desktop, METH_VARARGS,
243  (char*)"Show/Hide the desktop"},
244  {(char*)"execute", py_execute_command, METH_VARARGS, (char*)"Execute a command"},
245  {(char*)"executeInteractive", py_execute_command_interactive, METH_VARARGS, (char*)"Execute a command and get it's output (stdout)"},
246  {(char*)"attachClickArea", (PyCFunction)py_attach_clickArea, METH_VARARGS | METH_KEYWORDS, (char*)"Add a clickArea to the given text or image"},
247  {(char*)"createClickArea", py_create_click_area, METH_VARARGS, (char*)"Create a Click Area Sensor"},
248  {(char*)"getNumberOfDesktops", py_get_number_of_desktops, METH_VARARGS, (char*)"Get current number of virtual desktops"},
249  {(char*)"getIp", py_get_ip, METH_VARARGS, (char*)"Get current host's IP address"},
250  {(char*)"translateAll", py_translate_all, METH_VARARGS, (char*)"Translate all widgets in a theme"},
251  {(char*)"show", py_show, METH_VARARGS, (char*)"Show theme"},
252  {(char*)"hide", py_hide, METH_VARARGS, (char*)"Hide theme"},
253 
254  // Input Box - input_python.cpp
255  {(char*)"createInputBox", py_createInputBox, METH_VARARGS,
256  (char*)"Create new Input Box."},
257  {(char*)"deleteInputBox", py_deleteInputBox, METH_VARARGS,
258  (char*)"Delete Input Box."},
259  {(char*)"getThemeInputBox", py_getThemeInputBox, METH_VARARGS,
260  (char*)"Get Input Box from .theme using it's name."},
261  {(char*)"getInputBoxValue", py_getInputBoxValue, METH_VARARGS,
262  (char*)"Get Input Box value"},
263  {(char*)"changeInputBox", py_setInputBoxValue, METH_VARARGS,
264  (char*)"Change a Input Box Text"},
265  {(char*)"hideInputBox", py_hideInputBox, METH_VARARGS,
266  (char*)"Hide Input Box."},
267  {(char*)"showInputBox", py_showInputBox, METH_VARARGS,
268  (char*)"Show Input Box."},
269  {(char*)"getInputBoxPos", py_getInputBoxPos, METH_VARARGS,
270  (char*)"Get InputBox position."},
271  {(char*)"moveInputBox", py_moveInputBox, METH_VARARGS,
272  (char*)"Moves a Input Box"},
273  {(char*)"getInputBoxSize", py_getInputBoxSize, METH_VARARGS,
274  (char*)"Get the (width, height) of a Input Box"},
275  {(char*)"resizeInputBox", py_resizeInputBox, METH_VARARGS,
276  (char*)"Resize Input Box."},
277  {(char*)"changeInputBoxFont", py_setInputBoxFont, METH_VARARGS,
278  (char*)"Change a Input Box Font"},
279  {(char*)"getInputBoxFont", py_getInputBoxFont, METH_VARARGS,
280  (char*)"Get a Input Box Font"},
281  {(char*)"changeInputBoxFontColor", py_setInputBoxFontColor, METH_VARARGS,
282  (char*)"Change a Input Box Font Color"},
283  {(char*)"getInputBoxFontColor", py_getInputBoxFontColor, METH_VARARGS,
284  (char*)"Get a Input Box Font Color"},
285  {(char*)"changeInputBoxSelectionColor", py_setInputBoxSelectionColor,
286  METH_VARARGS, (char*)"Change a Input Box Selection Color"},
287  {(char*)"getInputBoxSelectionColor", py_getInputBoxSelectionColor,
288  METH_VARARGS, (char*)"Get a Input Box Selection Color"},
289  {(char*)"changeInputBoxBackgroundColor", py_setInputBoxBGColor,
290  METH_VARARGS, (char*)"Change a Input Box Background Color"},
291  {(char*)"getInputBoxBackgroundColor", py_getInputBoxBGColor, METH_VARARGS,
292  (char*)"Get a Input Box Background Color"},
293  {(char*)"changeInputBoxFrameColor", py_setInputBoxFrameColor, METH_VARARGS,
294  (char*)"Change a Input Box Frame Color"},
295  {(char*)"getInputBoxFrameColor", py_getInputBoxFrameColor, METH_VARARGS,
296  (char*)"Get a Input Box Frame Color"},
297  {(char*)"changeInputBoxSelectedTextColor", py_setInputBoxSelectedTextColor,
298  METH_VARARGS, (char*)"Change a Input Box Selected Text Color"},
299  {(char*)"getInputBoxSelectedTextColor", py_getInputBoxSelectedTextColor,
300  METH_VARARGS, (char*)"Get a Input Box Selected Text Color"},
301  {(char*)"changeInputBoxFontSize", py_setInputBoxFontSize, METH_VARARGS,
302  (char*)"Change a Input Box Font Size"},
303  {(char*)"getInputBoxFontSize", py_getInputBoxFontSize, METH_VARARGS,
304  (char*)"Get a Input Box Font Size"},
305  {(char*)"setInputFocus", py_setInputFocus, METH_VARARGS,
306  (char*)"Set the Input Focus to the Input Box"},
307  {(char*)"clearInputFocus", py_clearInputFocus, METH_VARARGS,
308  (char*)"Clear the Input Focus of the Input Box"},
309  {(char*)"getInputFocus", py_getInputFocus, METH_VARARGS,
310  (char*)"Get the Input Box currently focused"},
311 
312  {(char*)"setWidgetOnTop", py_set_widget_on_top, METH_VARARGS,
313  (char*)"changes 'on top' status"},
314  {(char*)"getPrettyThemeName", py_get_pretty_name, METH_VARARGS,
315  (char*)"Get the pretty name of the theme"},
316  {(char*)"openNamedTheme", py_open_named_theme, METH_VARARGS,
317  (char*)"Open a new theme giving it a new name"},
318  {(char*)"callTheme", py_call_theme, METH_VARARGS,
319  (char*)"Pass a string to another theme"},
320  {(char*)"changeInterval", py_change_interval, METH_VARARGS,
321  (char*)"Change the refresh interval"},
322  {(char*)"run", py_run_command, METH_VARARGS,
323  (char*)"Execute a command with KRun"},
324  {(char*)"createServiceClickArea", py_create_service_click_area, METH_VARARGS,
325  (char*)"Create a Service-named Click Area Sensor"},
326  {(char*)"removeClickArea", py_remove_click_area, METH_VARARGS,
327  (char*)"Remove a Click Area Sensor"},
328  {(char*)"setUpdateTime", py_set_update_time, METH_VARARGS,
329  (char*)"Set last updated time"},
330  {(char*)"getUpdateTime", py_get_update_time, METH_VARARGS,
331  (char*)"Get last updated time"},
332  {(char*)"setWantRightButton", py_want_right_button, METH_VARARGS,
333  (char*)"Set to 1 to deactivate management popups"},
334  {(char*)"managementPopup", py_management_popup, METH_VARARGS,
335  (char*)"Activates the Management Popup menu"},
336 
337  // service groups
338  {(char*)"getServiceGroups", py_get_service_groups, METH_VARARGS,
339  (char*)"Get KDE Service Groups"},
340 
341  {NULL, NULL, 0 , NULL}
342  };
343 
344 PyThreadState* KarambaPython::mainThreadState = 0;
345 
346 KarambaPython::KarambaPython(const ThemeFile& theme, bool reloading):
347  pythonThemeExtensionLoaded(false), pName(0), pModule(0), pDict(0)
348 {
349  PyThreadState* myThreadState;
350  char pypath[1024];
351 
352  getLock(&myThreadState);
353 
354  // load the .py file for this .theme
355  PyRun_SimpleString((char*)"import sys");
356  //Add theme path to python path so that we can find the python file
357  snprintf(pypath, 1023, "sys.path.insert(0, '%s')", theme.path().toAscii().constData());
358  PyRun_SimpleString(pypath);
359  PyRun_SimpleString((char*)"sys.path.insert(0, '')");
360 
361  PyImport_AddModule((char*)"karamba");
362  Py_InitModule((char*)"karamba", karamba_methods);
363 
364  QString script = theme.scriptModule();
365  script.remove(script.length() - 3, 3);
366  pName = PyString_FromString(script.toAscii().constData());
367  pModule = PyImport_Import(pName);
368 
369  fprintf(stderr, "%s\n", pypath);
370 
371  //Make sure the module is up to date.
372  if (reloading)
373  PyImport_ReloadModule(pModule);
374 
375  if (pModule != NULL) {
376  pDict = PyModule_GetDict(pModule);
377  if (pDict != NULL) {
378  pythonThemeExtensionLoaded = true;
379  }
380  } else {
381  PyErr_Print();
382  fprintf(stderr,
383  "------------------------------------------------------\n");
384  fprintf(stderr, "What does ImportError mean?\n");
385  fprintf(stderr, "\n");
386  fprintf(stderr,
387  "It means that I couldn't load a python add-on %s\n",
388  theme.scriptModule().toAscii().constData());
389  fprintf(stderr, "If this is a regular theme and doesn't use python\n");
390  fprintf(stderr, "extensions, then nothing is wrong.\n");
391  fprintf(stderr,
392  "------------------------------------------------------\n");
393  }
394  releaseLock(myThreadState);
395 }
396 
397 KarambaPython::~KarambaPython()
398 {
399  //Clean up Python references
400  if (pythonThemeExtensionLoaded) {
401  PyThreadState* myThreadState;
402  getLock(&myThreadState);
403 
404  //Displose of current python module so we can reload in constructor.
405  Py_DECREF(pModule);
406  Py_DECREF(pName);
407 
408  releaseLock(myThreadState);
409  }
410 }
411 
412 KDE_EXPORT void KarambaPython::initPython()
413 {
414  // initialize Python
415  Py_Initialize();
416 
417  // initialize thread support
418  PyEval_InitThreads();
419 
420  // save a pointer to the main PyThreadState object
421  mainThreadState = PyThreadState_Get();
422 
423  // release the lock
424  PyEval_ReleaseLock();
425 }
426 
427 KDE_EXPORT void KarambaPython::shutdownPython()
428 {
429  // shut down the interpreter
430  PyInterpreterState * mainInterpreterState = mainThreadState->interp;
431  // create a thread state object for this thread
432  PyThreadState * myThreadState = PyThreadState_New(mainInterpreterState);
433  PyThreadState_Swap(myThreadState);
434  PyEval_AcquireLock();
435  Py_Finalize();
436 }
437 
438 void KarambaPython::getLock(PyThreadState** myThreadState)
439 {
440  // get the global lock
441  PyEval_AcquireLock();
442 
443  // create a thread state object for this thread
444  *myThreadState = PyThreadState_New(mainThreadState->interp);
445  PyThreadState_Swap(*myThreadState);
446 }
447 
448 void KarambaPython::releaseLock(PyThreadState* myThreadState)
449 {
450  // swap my thread state out of the interpreter
451  PyThreadState_Swap(NULL);
452  // clear out any cruft from thread state object
453  PyThreadState_Clear(myThreadState);
454  // delete my thread state object
455  PyThreadState_Delete(myThreadState);
456  // release the lock
457  PyEval_ReleaseLock();
458 }
459 
460 PyObject* KarambaPython::getFunc(const char* function)
461 {
462  PyObject* pFunc = PyDict_GetItemString(pDict, (char*)function);
463  if (pFunc && PyCallable_Check(pFunc))
464  return pFunc;
465  return NULL;
466 }
467 
468 bool KarambaPython::callObject(const char* func, PyObject* pArgs, bool lock)
469 {
470  bool result = false;
471  PyThreadState* myThreadState;
472 
473  //qDebug("Calling %s", func);
474 
475  if (lock)
476  getLock(&myThreadState);
477  PyObject* pFunc = getFunc(func);
478 
479  if (pFunc != NULL) {
480  PyObject* pValue = PyObject_CallObject(pFunc, pArgs);
481 
482  if (pValue != NULL) {
483  Py_DECREF(pValue);
484  result = true;
485  } else {
486  qWarning("Call to %s failed", func);
487  PyErr_Print();
488  }
489  }
490  Py_DECREF(pArgs);
491  if (lock)
492  releaseLock(myThreadState);
493  return result;
494 }
495 
496 bool KarambaPython::initWidget(Karamba* k)
497 {
498  PyObject* pArgs = Py_BuildValue((char*)"(l)", k);
499  return callObject("initWidget", pArgs);
500 }
501 
502 bool KarambaPython::widgetUpdated(Karamba* k)
503 {
504  PyObject* pArgs = Py_BuildValue((char*)"(l)", k);
505  return callObject("widgetUpdated", pArgs);
506 }
507 
508 bool KarambaPython::widgetClosed(Karamba* k)
509 {
510  PyObject* pArgs = Py_BuildValue((char*)"(l)", k);
511  return callObject("widgetClosed", pArgs);
512 }
513 
514 bool KarambaPython::menuOptionChanged(Karamba* k, QString key, bool value)
515 {
516  PyObject* pArgs = Py_BuildValue((char*)"(lsi)", k, key.toAscii().constData(), (int)value);
517  return callObject("menuOptionChanged", pArgs);
518 }
519 
520 bool KarambaPython::menuItemClicked(Karamba* k, KMenu* menu, long id)
521 {
522  PyObject* pArgs = Py_BuildValue((char*)"(lll)", k, menu, id);
523  return callObject("menuItemClicked", pArgs);
524 }
525 
526 bool KarambaPython::meterClicked(Karamba* k, Meter* meter, int button)
527 {
528  PyObject* pArgs = Py_BuildValue((char*)"(lli)", k, meter, button);
529  return callObject("meterClicked", pArgs);
530 }
531 
532 bool KarambaPython::meterClicked(Karamba* k, QString anchor, int button)
533 {
534  PyObject* pArgs = Py_BuildValue((char*)"(lsi)", k, anchor.toAscii().constData(), button);
535  return callObject("meterClicked", pArgs);
536 }
537 
538 bool KarambaPython::widgetClicked(Karamba* k, int x, int y, int button)
539 {
540  PyObject* pArgs = Py_BuildValue((char*)"(liii)", k, x, y, button);
541  return callObject("widgetClicked", pArgs);
542 }
543 
544 bool KarambaPython::keyPressed(Karamba* k, const Meter* meter,
545  const QString& text)
546 {
547  PyObject* pArgs = Py_BuildValue((char*)"(lls)", k, meter, text.utf16());
548  return callObject("keyPressed", pArgs);
549 }
550 
551 bool KarambaPython::widgetMouseMoved(Karamba* k, int x, int y, int button)
552 {
553  PyObject* pArgs = Py_BuildValue((char*)"(liii)", k, x, y, button);
554  return callObject("widgetMouseMoved", pArgs);
555 }
556 
557 bool KarambaPython::activeTaskChanged(Karamba* k, Task* t)
558 {
559  PyObject* pArgs = Py_BuildValue((char*)"(ll)", k, t);
560  return callObject("activeTaskChanged", pArgs);
561 }
562 
563 bool KarambaPython::taskAdded(Karamba* k, Task* t)
564 {
565  PyObject* pArgs = Py_BuildValue((char*)"(ll)", k, t);
566  return callObject("taskAdded", pArgs);
567 }
568 
569 bool KarambaPython::taskRemoved(Karamba* k, Task* t)
570 {
571  PyObject* pArgs = Py_BuildValue((char*)"(ll)", k, t);
572  return callObject("taskRemoved", pArgs);
573 }
574 
575 bool KarambaPython::startupAdded(Karamba* k, Startup* t)
576 {
577  PyObject* pArgs = Py_BuildValue((char*)"(ll)", k, t);
578  return callObject("startupAdded", pArgs);
579 }
580 
581 bool KarambaPython::startupRemoved(Karamba* k, Startup* t)
582 {
583  PyObject* pArgs = Py_BuildValue((char*)"(ll)", k, t);
584  return callObject("startupRemoved", pArgs);
585 }
586 
587 bool KarambaPython::commandOutput(Karamba* k, int pid, char *buffer)
588 {
589  PyObject* pArgs = Py_BuildValue((char*)"(lis)", k, pid, buffer);
590  return callObject("commandOutput", pArgs);
591 }
592 
593 bool KarambaPython::commandFinished(Karamba* k, int pid)
594 {
595  PyObject* pArgs = Py_BuildValue((char*)"(li)", k, pid);
596  return callObject("commandFinished", pArgs);
597 }
598 
599 bool KarambaPython::itemDropped(Karamba* k, QString text, int x, int y)
600 {
601  PyObject* pArgs = Py_BuildValue((char*)"(lOii)", k, QString2PyString(text), x, y);
602  return callObject("itemDropped", pArgs);
603 }
604 
605 bool KarambaPython::themeNotify(Karamba* k, const char *from, const char *str)
606 {
607  // WARNING WARNING WARNING i had to switch off thread locking to get
608  // this to work. callNotify is called from INSIDE another locked thread,
609  // so can never complete because themeNotify will expect locking to be
610  // released...
611  //
612  PyObject* pArgs = Py_BuildValue((char*)"(lss)", k, from, str);
613  return callObject("themeNotify", pArgs, false);
614 }
615 
616 bool KarambaPython::systrayUpdated(Karamba* k)
617 {
618  PyObject* pArgs = Py_BuildValue((char*)"(l)", k);
619  return callObject("systrayUpdated", pArgs);
620 }
621 
622 bool KarambaPython::desktopChanged(Karamba* k, int desktop)
623 {
624  PyObject* pArgs = Py_BuildValue((char*)"(li)", k, desktop);
625  return callObject("desktopChanged", pArgs);
626 }
627 
628 bool KarambaPython::wallpaperChanged(Karamba* k, int desktop)
629 {
630  PyObject* pArgs = Py_BuildValue((char*)"(li)", k, desktop);
631  return callObject("wallpaperChanged", pArgs);
632 }
633 
py_createText
PyObject * py_createText(PyObject *, PyObject *args)
Text/createText.
Definition: python/textlabel.cpp:37
py_showGraph
PyObject * py_showGraph(PyObject *self, PyObject *args)
Graph/showGraph.
Definition: python/graph.cpp:94
py_create_widget_mask
PyObject * py_create_widget_mask(PyObject *, PyObject *args)
Widget/createWidgetMask.
Definition: widget.cpp:50
py_getGraphPos
PyObject * py_getGraphPos(PyObject *self, PyObject *args)
Graph/getGraphPos.
Definition: python/graph.cpp:79
py_getImageWidth
PyObject * py_getImageWidth(PyObject *, PyObject *args)
Image/getImageWidth.
Definition: python/imagelabel.cpp:272
KarambaPython::widgetClicked
bool widgetClicked(Karamba *k, int x, int y, int button)
Definition: python/karamba.cpp:538
py_getGraphSize
PyObject * py_getGraphSize(PyObject *self, PyObject *args)
Graph/getGraphSize.
Definition: python/graph.cpp:69
py_reload_theme
PyObject * py_reload_theme(PyObject *, PyObject *args)
Misc/reloadTheme.
Definition: misc.cpp:534
KarambaPython::taskRemoved
bool taskRemoved(Karamba *k, Task *t)
Definition: python/karamba.cpp:569
py_set_widget_on_top
PyObject * py_set_widget_on_top(PyObject *, PyObject *args)
Definition: widget.cpp:144
py_hideRichText
PyObject * py_hideRichText(PyObject *self, PyObject *args)
RichText/hideRichText.
Definition: python/richtextlabel.cpp:96
py_moveInputBox
PyObject * py_moveInputBox(PyObject *self, PyObject *args)
InputBox/moveInputBox.
Definition: python/input.cpp:107
py_getInputBoxSize
PyObject * py_getInputBoxSize(PyObject *self, PyObject *args)
InputBox/getInputBoxSize.
Definition: python/input.cpp:112
py_getTextAlign
PyObject * py_getTextAlign(PyObject *, PyObject *args)
Text/getTextAlign.
Definition: python/textlabel.cpp:213
PyObject
struct _object PyObject
Definition: python/karamba.h:35
py_getInputFocus
PyObject * py_getInputFocus(PyObject *, PyObject *args)
InputBox/getInputFocus.
Definition: python/input.cpp:339
py_execute_command_interactive
PyObject * py_execute_command_interactive(PyObject *, PyObject *args)
Misc/executeInteractive.
Definition: misc.cpp:118
ThemeFile
Definition: themefile.h:41
KarambaPython::taskAdded
bool taskAdded(Karamba *k, Task *t)
Definition: python/karamba.cpp:563
KarambaPython::pythonThemeExtensionLoaded
bool pythonThemeExtensionLoaded
Definition: python/karamba.h:43
misc.h
These are global functions that are used to interpret certain Python calls.
py_resizeGraph
PyObject * py_resizeGraph(PyObject *self, PyObject *args)
Graph/resizeGraph.
Definition: python/graph.cpp:74
karamba_methods
static PyMethodDef karamba_methods[]
Definition: python/karamba.cpp:65
KarambaPython::KarambaPython
KarambaPython(const ThemeFile &theme, bool reloading)
Definition: python/karamba.cpp:346
KarambaPython::commandFinished
bool commandFinished(Karamba *k, int pid)
Definition: python/karamba.cpp:593
py_getImageSize
PyObject * py_getImageSize(PyObject *self, PyObject *args)
Image/getImageSize.
Definition: python/imagelabel.cpp:146
KarambaPython::callObject
bool callObject(const char *func, PyObject *pArgs, bool lock=true)
Definition: python/karamba.cpp:468
py_get_service_groups
PyObject * py_get_service_groups(PyObject *, PyObject *args)
Definition: svcgrp.cpp:156
py_open_theme
PyObject * py_open_theme(PyObject *, PyObject *args)
Misc/openTheme.
Definition: misc.cpp:526
py_createBackgroundImage
PyObject * py_createBackgroundImage(PyObject *, PyObject *args)
Image/createBackgroundImage.
Definition: python/imagelabel.cpp:69
py_set_menu_config_option
PyObject * py_set_menu_config_option(PyObject *, PyObject *args)
Config/setMenuConfigOption.
Definition: config.cpp:80
py_createInputBox
PyObject * py_createInputBox(PyObject *, PyObject *args)
InputBox/createInputBox.
Definition: python/input.cpp:44
py_getGraphValue
PyObject * py_getGraphValue(PyObject *self, PyObject *args)
Graph/getGraphValue.
Definition: python/graph.cpp:109
py_removeImageEffects
PyObject * py_removeImageEffects(PyObject *, PyObject *args)
Image/removeImageEffects.
Definition: python/imagelabel.cpp:186
py_getImageSensor
PyObject * py_getImageSensor(PyObject *self, PyObject *args)
Image/getImageSensor.
Definition: python/imagelabel.cpp:176
py_userLanguages
PyObject * py_userLanguages(PyObject *, PyObject *args)
Misc/userLanguages.
Definition: misc.cpp:304
Startup
Represents a task which is in the process of starting.
Definition: taskmanager.h:547
py_getTextShadow
PyObject * py_getTextShadow(PyObject *, PyObject *args)
Text/getTextShadow.
Definition: python/textlabel.cpp:144
py_userLanguage
PyObject * py_userLanguage(PyObject *, PyObject *args)
Misc/language.
Definition: misc.cpp:294
meter.h
py_getInputBoxValue
PyObject * py_getInputBoxValue(PyObject *self, PyObject *args)
InputBox/getInputBoxValue.
Definition: python/input.cpp:82
py_resizeInputBox
PyObject * py_resizeInputBox(PyObject *self, PyObject *args)
InputBox/resizeInputBox.
Definition: python/input.cpp:117
py_hideText
PyObject * py_hideText(PyObject *self, PyObject *args)
Text/hideText.
Definition: python/textlabel.cpp:91
py_getTextSize
PyObject * py_getTextSize(PyObject *self, PyObject *args)
Text/getTextSize.
Definition: python/textlabel.cpp:71
graph.h
py_set_update_time
PyObject * py_set_update_time(PyObject *, PyObject *args)
Misc/setUpdateTime.
Definition: misc.cpp:732
systray.h
py_hide
PyObject * py_hide(PyObject *, PyObject *args, QString type)
Definition: python/meter.cpp:225
py_hideBar
PyObject * py_hideBar(PyObject *self, PyObject *args)
Bar/hideBar.
Definition: python/bar.cpp:90
py_showRichText
PyObject * py_showRichText(PyObject *self, PyObject *args)
RichText/showRichText.
Definition: python/richtextlabel.cpp:101
KarambaPython::commandOutput
bool commandOutput(Karamba *k, int pid, char *buffer)
Definition: python/karamba.cpp:587
py_create_systray
PyObject * py_create_systray(PyObject *, PyObject *args)
Systray/createSystray.
Definition: systray.cpp:170
py_getThemeRichText
PyObject * py_getThemeRichText(PyObject *self, PyObject *args)
RichText/getThemeRichText.
Definition: python/richtextlabel.cpp:71
PyThreadState
struct _ts PyThreadState
Definition: python/karamba.h:37
py_setTextShadow
PyObject * py_setTextShadow(PyObject *, PyObject *args)
Text/changeTextShadow.
Definition: python/textlabel.cpp:131
py_get_startup_list
PyObject * py_get_startup_list(PyObject *, PyObject *args)
Task/getStartupList.
Definition: task.cpp:337
py_getImageValue
PyObject * py_getImageValue(PyObject *self, PyObject *args)
Image/getImagePath.
Definition: python/imagelabel.cpp:166
py_popup_menu
PyObject * py_popup_menu(PyObject *, PyObject *args)
Menu/popupMenu.
Definition: menu.cpp:172
py_setInputBoxSelectedTextColor
PyObject * py_setInputBoxSelectedTextColor(PyObject *, PyObject *args)
InputBox/changeInputBoxSelectedTextColor.
Definition: python/input.cpp:257
py_getTextColor
PyObject * py_getTextColor(PyObject *self, PyObject *args)
Text/getTextColor.
Definition: python/textlabel.cpp:121
ThemeFile::scriptModule
const QString & scriptModule() const
Definition: themefile.cpp:566
textlabel.h
py_moveGraph
PyObject * py_moveGraph(PyObject *self, PyObject *args)
Graph/moveGraph.
Definition: python/graph.cpp:84
py_setRichTextSensor
PyObject * py_setRichTextSensor(PyObject *self, PyObject *args)
RichText/setRichTextSensor.
Definition: python/richtextlabel.cpp:121
py_toggle_widget_redraw
PyObject * py_toggle_widget_redraw(PyObject *, PyObject *args)
Widget/toggleWidgetRedraw.
Definition: widget.cpp:154
py_getGraphSensor
PyObject * py_getGraphSensor(PyObject *self, PyObject *args)
Graph/getGraphSensor.
Definition: python/graph.cpp:119
karamba.h
py_createRichText
PyObject * py_createRichText(PyObject *, PyObject *args)
RichText/createRichText.
Definition: python/richtextlabel.cpp:41
py_getTextValue
PyObject * py_getTextValue(PyObject *self, PyObject *args)
Text/getTextValue.
Definition: python/textlabel.cpp:101
KarambaPython::wallpaperChanged
bool wallpaperChanged(Karamba *k, int desktop)
Definition: python/karamba.cpp:628
py_getInputBoxFontColor
PyObject * py_getInputBoxFontColor(PyObject *, PyObject *args)
InputBox/getInputBoxFontColor.
Definition: python/input.cpp:163
py_move_widget
PyObject * py_move_widget(PyObject *, PyObject *args)
Widget/moveWidget.
Definition: widget.cpp:121
config.h
py_setTextValue
PyObject * py_setTextValue(PyObject *self, PyObject *args)
Text/changeText.
Definition: python/textlabel.cpp:106
py_getBarSize
PyObject * py_getBarSize(PyObject *self, PyObject *args)
Bar/getBarSize.
Definition: python/bar.cpp:70
bar.h
py_setTextAlign
PyObject * py_setTextAlign(PyObject *, PyObject *args)
Text/setTextAlign.
Definition: python/textlabel.cpp:200
py_get_current_window_count
PyObject * py_get_current_window_count(PyObject *, PyObject *args)
Systray/getCurrentWindowCount.
Definition: systray.cpp:209
py_management_popup
PyObject * py_management_popup(PyObject *, PyObject *args)
Misc/managementPopup.
Definition: misc.cpp:770
py_setGraphValue
PyObject * py_setGraphValue(PyObject *self, PyObject *args)
Graph/setGraphValue.
Definition: python/graph.cpp:114
py_changeImageIntensity
PyObject * py_changeImageIntensity(PyObject *, PyObject *args)
Image/changeImageIntensity.
Definition: python/imagelabel.cpp:197
py_getBarMinMax
PyObject * py_getBarMinMax(PyObject *self, PyObject *args)
Bar/getBarMinMax.
Definition: python/bar.cpp:100
py_setInputBoxSelectionColor
PyObject * py_setInputBoxSelectionColor(PyObject *, PyObject *args)
InputBox/changeInputBoxSelectionColor.
Definition: python/input.cpp:176
py_get_number_of_desktops
PyObject * py_get_number_of_desktops(PyObject *, PyObject *args)
Misc/getNumberOfDesktop.
Definition: misc.cpp:553
py_accept_drops
PyObject * py_accept_drops(PyObject *, PyObject *args)
Misc/acceptDrops.
Definition: misc.cpp:67
py_getTextFont
PyObject * py_getTextFont(PyObject *, PyObject *args)
Text/getTextFont.
Definition: python/textlabel.cpp:190
py_addImageTooltip
PyObject * py_addImageTooltip(PyObject *, PyObject *args)
Image/addImageTooltip.
Definition: python/imagelabel.cpp:311
py_setBarValue
PyObject * py_setBarValue(PyObject *self, PyObject *args)
Bar/setBarValue.
Definition: python/bar.cpp:115
KarambaPython::itemDropped
bool itemDropped(Karamba *k, QString text, int x, int y)
Definition: python/karamba.cpp:599
py_get_theme_path
PyObject * py_get_theme_path(PyObject *, PyObject *args)
Misc/getThemePath.
Definition: misc.cpp:273
py_setRichTextFontSize
PyObject * py_setRichTextFontSize(PyObject *, PyObject *args)
RichText/changeRichTextSize.
Definition: python/richtextlabel.cpp:126
py_get_startup_info
PyObject * py_get_startup_info(PyObject *, PyObject *args)
Task/getStartupInfo.
Definition: task.cpp:247
py_translate_all
PyObject * py_translate_all(PyObject *, PyObject *args)
Misc/translateAll.
Definition: misc.cpp:588
py_language
PyObject * py_language(PyObject *, PyObject *args)
Misc/language.
Definition: misc.cpp:283
py_getGraphColor
PyObject * py_getGraphColor(PyObject *self, PyObject *args)
Graph/getGraphColor.
Definition: python/graph.cpp:129
py_get_pretty_name
PyObject * py_get_pretty_name(PyObject *, PyObject *args)
Misc/getPrettyName.
Definition: misc.cpp:258
QString2PyString
PyObject * QString2PyString(QString string)
Definition: python/meter.cpp:111
Karamba
Definition: karamba.h:52
KarambaPython::widgetMouseMoved
bool widgetMouseMoved(Karamba *k, int x, int y, int button)
Definition: python/karamba.cpp:551
py_setGraphColor
PyObject * py_setGraphColor(PyObject *self, PyObject *args)
Graph/setGraphColor.
Definition: python/graph.cpp:134
py_getRichTextSize
PyObject * py_getRichTextSize(PyObject *self, PyObject *args)
RichText/getRichTextSize.
Definition: python/richtextlabel.cpp:76
KarambaPython::initPython
static void initPython()
Definition: python/karamba.cpp:412
KarambaPython::menuOptionChanged
bool menuOptionChanged(Karamba *k, QString key, bool value)
Definition: python/karamba.cpp:514
py_getRichTextFontSize
PyObject * py_getRichTextFontSize(PyObject *, PyObject *args)
RichText/getRichTextFontSize.
Definition: python/richtextlabel.cpp:139
py_getTextPos
PyObject * py_getTextPos(PyObject *self, PyObject *args)
Text/getTextPos.
Definition: python/textlabel.cpp:81
py_getInputBoxPos
PyObject * py_getInputBoxPos(PyObject *self, PyObject *args)
InputBox/getInputBoxPos.
Definition: python/input.cpp:102
py_perform_task_action
PyObject * py_perform_task_action(PyObject *, PyObject *args)
Task/performTaskAction.
Definition: task.cpp:106
py_getRichTextFont
PyObject * py_getRichTextFont(PyObject *, PyObject *args)
RichText/getRichTextFont.
Definition: python/richtextlabel.cpp:162
py_deleteBar
PyObject * py_deleteBar(PyObject *, PyObject *args)
Bar/deleteBar.
Definition: python/bar.cpp:52
py_showImage
PyObject * py_showImage(PyObject *self, PyObject *args)
Image/showImage.
Definition: python/imagelabel.cpp:161
KarambaPython::initWidget
bool initWidget(Karamba *k)
Definition: python/karamba.cpp:496
KarambaPython::widgetUpdated
bool widgetUpdated(Karamba *k)
Definition: python/karamba.cpp:502
KarambaPython::getLock
void getLock(PyThreadState **myThreadState)
Definition: python/karamba.cpp:438
py_add_menu_item
PyObject * py_add_menu_item(PyObject *, PyObject *args)
Menu/addMenuItem.
Definition: menu.cpp:99
py_setInputBoxFontColor
PyObject * py_setInputBoxFontColor(PyObject *, PyObject *args)
InputBox/changeInputBoxFontColor.
Definition: python/input.cpp:149
py_getBarImage
PyObject * py_getBarImage(PyObject *, PyObject *args)
Bar/getBarImage.
Definition: python/bar.cpp:130
py_getThemeGraph
PyObject * py_getThemeGraph(PyObject *self, PyObject *args)
Graph/getThemeGraph.
Definition: python/graph.cpp:64
py_setTextColor
PyObject * py_setTextColor(PyObject *self, PyObject *args)
Text/changeTextColor.
Definition: python/textlabel.cpp:126
py_getInputBoxFont
PyObject * py_getInputBoxFont(PyObject *, PyObject *args)
InputBox/getInputBoxFont.
Definition: python/input.cpp:137
KarambaPython::mainThreadState
static PyThreadState * mainThreadState
Definition: python/karamba.h:46
py_deleteInputBox
PyObject * py_deleteInputBox(PyObject *, PyObject *args)
InputBox/deleteInputBox.
Definition: python/input.cpp:63
KarambaPython::systrayUpdated
bool systrayUpdated(Karamba *k)
Definition: python/karamba.cpp:616
py_getTextFontSize
PyObject * py_getTextFontSize(PyObject *, PyObject *args)
Text/getTextFontSize.
Definition: python/textlabel.cpp:167
py_setRichTextValue
PyObject * py_setRichTextValue(PyObject *self, PyObject *args)
RichText/changeRichText.
Definition: python/richtextlabel.cpp:111
themefile.h
py_toggle_show_desktop
PyObject * py_toggle_show_desktop(PyObject *, PyObject *args)
Misc/toggleShowDesktop.
Definition: misc.cpp:240
KarambaPython::meterClicked
bool meterClicked(Karamba *k, Meter *meter, int button)
Definition: python/karamba.cpp:526
py_change_interval
PyObject * py_change_interval(PyObject *, PyObject *args)
Misc/changeInterval.
Definition: misc.cpp:805
py_setInputBoxFrameColor
PyObject * py_setInputBoxFrameColor(PyObject *, PyObject *args)
InputBox/changeInputBoxFrameColor.
Definition: python/input.cpp:230
py_deleteImage
PyObject * py_deleteImage(PyObject *, PyObject *args)
Image/deleteImage.
Definition: python/imagelabel.cpp:123
py_resize_widget
PyObject * py_resize_widget(PyObject *, PyObject *args)
Widget/resizeWidget.
Definition: widget.cpp:103
py_get_incoming_data
PyObject * py_get_incoming_data(PyObject *, PyObject *args)
Misc/getIncomingData.
Definition: misc.cpp:488
KarambaPython::startupRemoved
bool startupRemoved(Karamba *k, Startup *t)
Definition: python/karamba.cpp:581
py_setInputBoxBGColor
PyObject * py_setInputBoxBGColor(PyObject *, PyObject *args)
InputBox/changeInputBoxBackgroundColor.
Definition: python/input.cpp:203
py_get_task_names
PyObject * py_get_task_names(PyObject *, PyObject *args)
Task/getTaskNames.
Definition: task.cpp:281
py_createTaskIcon
PyObject * py_createTaskIcon(PyObject *, PyObject *args)
creates the icon for the specified task as a Karamba image
Definition: python/imagelabel.cpp:88
py_add_menu_config_option
PyObject * py_add_menu_config_option(PyObject *, PyObject *args)
Config/addMenuConfigOption.
Definition: config.cpp:55
py_deleteText
PyObject * py_deleteText(PyObject *, PyObject *args)
Text/deleteText.
Definition: python/textlabel.cpp:53
py_getInputBoxSelectionColor
PyObject * py_getInputBoxSelectionColor(PyObject *, PyObject *args)
InputBox/getInputBoxSelectionColor.
Definition: python/input.cpp:190
py_showInputBox
PyObject * py_showInputBox(PyObject *self, PyObject *args)
InputBox/showInputBox.
Definition: python/input.cpp:97
py_create_click_area
PyObject * py_create_click_area(PyObject *, PyObject *args)
Misc/createClickArea.
Definition: misc.cpp:400
py_setInputFocus
PyObject * py_setInputFocus(PyObject *, PyObject *args)
InputBox/setInputFocus.
Definition: python/input.cpp:311
py_setInputBoxFont
PyObject * py_setInputBoxFont(PyObject *, PyObject *args)
InputBox/changeInputBoxFont.
Definition: python/input.cpp:122
py_redraw_widget_background
PyObject * py_redraw_widget_background(PyObject *, PyObject *args)
Widget/redrawWidgetBackground.
Definition: widget.cpp:62
py_resizeText
PyObject * py_resizeText(PyObject *self, PyObject *args)
Text/resizeText.
Definition: python/textlabel.cpp:76
py_read_config_entry
PyObject * py_read_config_entry(PyObject *, PyObject *args)
Config/readConfigEntry.
Definition: config.cpp:155
py_run_command
PyObject * py_run_command(PyObject *, PyObject *args)
Misc/run.
Definition: misc.cpp:79
KarambaPython::desktopChanged
bool desktopChanged(Karamba *k, int desktop)
Definition: python/karamba.cpp:622
py_changeImageToGray
PyObject * py_changeImageToGray(PyObject *, PyObject *args)
Image/changeImageToGray.
Definition: python/imagelabel.cpp:226
py_set_incoming_data
PyObject * py_set_incoming_data(PyObject *, PyObject *args)
Misc/setIncomingData.
Definition: misc.cpp:496
py_clearInputFocus
PyObject * py_clearInputFocus(PyObject *, PyObject *args)
InputBox/clearInputFocus.
Definition: python/input.cpp:326
py_getBarValue
PyObject * py_getBarValue(PyObject *self, PyObject *args)
Bar/getBarValue.
Definition: python/bar.cpp:110
py_hideInputBox
PyObject * py_hideInputBox(PyObject *self, PyObject *args)
InputBox/hideInputBox.
Definition: python/input.cpp:92
py_getBarSensor
PyObject * py_getBarSensor(PyObject *self, PyObject *args)
Bar/getBarSensor.
Definition: python/bar.cpp:120
py_execute_command
PyObject * py_execute_command(PyObject *, PyObject *args)
Misc/execute.
Definition: misc.cpp:108
py_get_ip
PyObject * py_get_ip(PyObject *, PyObject *args)
Misc/getIp.
Definition: misc.cpp:753
KarambaPython::pModule
PyObject * pModule
Definition: python/karamba.h:44
py_create_menu
PyObject * py_create_menu(PyObject *, PyObject *args)
Menu/createMenu.
Definition: menu.cpp:53
py_hideImage
PyObject * py_hideImage(PyObject *self, PyObject *args)
Image/hideImage.
Definition: python/imagelabel.cpp:156
py_getBarVertical
PyObject * py_getBarVertical(PyObject *, PyObject *args)
Bar/getBarVertical.
Definition: python/bar.cpp:151
py_attach_clickArea
PyObject * py_attach_clickArea(PyObject *, PyObject *args, PyObject *dict)
Misc/attachClickArea.
Definition: misc.cpp:198
py_getRichTextPos
PyObject * py_getRichTextPos(PyObject *self, PyObject *args)
RichText/getRichTextPos.
Definition: python/richtextlabel.cpp:86
imagelabel.h
py_write_config_entry
PyObject * py_write_config_entry(PyObject *, PyObject *args)
Config/writeConfigEntry.
Definition: config.cpp:130
py_showText
PyObject * py_showText(PyObject *self, PyObject *args)
Text/showText.
Definition: python/textlabel.cpp:96
widget.h
py_setBarMinMax
PyObject * py_setBarMinMax(PyObject *self, PyObject *args)
Bar/setBarMinMax.
Definition: python/bar.cpp:105
KarambaPython::menuItemClicked
bool menuItemClicked(Karamba *k, KMenu *menu, long id)
Definition: python/karamba.cpp:520
py_moveText
PyObject * py_moveText(PyObject *self, PyObject *args)
Text/moveText.
Definition: python/textlabel.cpp:86
KarambaPython::keyPressed
bool keyPressed(Karamba *k, const Meter *meter, const QString &text)
Definition: python/karamba.cpp:544
py_call_theme
PyObject * py_call_theme(PyObject *, PyObject *args)
Misc/callTheme.
Definition: misc.cpp:506
py_getRichTextSensor
PyObject * py_getRichTextSensor(PyObject *self, PyObject *args)
RichText/getRichTextSensor.
Definition: python/richtextlabel.cpp:116
py_hide_systray
PyObject * py_hide_systray(PyObject *, PyObject *args)
Systray/hideSystray.
Definition: systray.cpp:126
py_getTextSensor
PyObject * py_getTextSensor(PyObject *self, PyObject *args)
Text/getTextSensor.
Definition: python/textlabel.cpp:111
py_resizeImageSmooth
PyObject * py_resizeImageSmooth(PyObject *, PyObject *args)
Image/resizeImageSmooth.
Definition: python/imagelabel.cpp:282
py_rotateImage
PyObject * py_rotateImage(PyObject *, PyObject *args)
Image/rotateImage.
Definition: python/imagelabel.cpp:250
py_setImageSensor
PyObject * py_setImageSensor(PyObject *self, PyObject *args)
Image/setImageSensor.
Definition: python/imagelabel.cpp:181
KarambaPython::getFunc
PyObject * getFunc(const char *function)
Definition: python/karamba.cpp:460
py_get_task_list
PyObject * py_get_task_list(PyObject *, PyObject *args)
Task/getTaskList.
Definition: task.cpp:309
py_setBarVertical
PyObject * py_setBarVertical(PyObject *, PyObject *args)
Bar/setBarVertical.
Definition: python/bar.cpp:161
py_remove_click_area
PyObject * py_remove_click_area(PyObject *, PyObject *args)
Misc/removeClickArea.
Definition: misc.cpp:380
KarambaPython::~KarambaPython
~KarambaPython()
Definition: python/karamba.cpp:397
py_show
PyObject * py_show(PyObject *, PyObject *args, QString type)
Definition: python/meter.cpp:236
py_hideGraph
PyObject * py_hideGraph(PyObject *self, PyObject *args)
Graph/hideGraph.
Definition: python/graph.cpp:89
py_setTextSensor
PyObject * py_setTextSensor(PyObject *self, PyObject *args)
Text/setTextSensor.
Definition: python/textlabel.cpp:116
py_get_task_info
PyObject * py_get_task_info(PyObject *, PyObject *args)
Task/getTaskInfo.
Definition: task.cpp:186
task.h
py_setTextScroll
PyObject * py_setTextScroll(PyObject *, PyObject *args)
Definition: python/textlabel.cpp:223
py_getInputBoxBGColor
PyObject * py_getInputBoxBGColor(PyObject *, PyObject *args)
InputBox/getInputBoxBackgroundColor.
Definition: python/input.cpp:217
py_set_rich_text_width
PyObject * py_set_rich_text_width(PyObject *, PyObject *args)
RichText/setRichTextWidth.
Definition: python/richtextlabel.cpp:173
py_setImageValue
PyObject * py_setImageValue(PyObject *self, PyObject *args)
Image/setImagePath.
Definition: python/imagelabel.cpp:171
py_getThemeImage
PyObject * py_getThemeImage(PyObject *self, PyObject *args)
Image/getThemeImage.
Definition: python/imagelabel.cpp:136
input.h
KarambaPython::shutdownPython
static void shutdownPython()
Definition: python/karamba.cpp:427
py_deleteGraph
PyObject * py_deleteGraph(PyObject *, PyObject *args)
Graph/deleteGraph.
Definition: python/graph.cpp:51
py_getRichTextValue
PyObject * py_getRichTextValue(PyObject *self, PyObject *args)
RichText/getRichTextValue.
Definition: python/richtextlabel.cpp:106
py_showBar
PyObject * py_showBar(PyObject *self, PyObject *args)
Bar/showBar.
Definition: python/bar.cpp:95
py_redraw_widget
PyObject * py_redraw_widget(PyObject *, PyObject *args)
Widget/redrawWidget.
Definition: widget.cpp:82
py_setTextFontSize
PyObject * py_setTextFontSize(PyObject *, PyObject *args)
Text/changeTextSize.
Definition: python/textlabel.cpp:154
py_getInputBoxSelectedTextColor
PyObject * py_getInputBoxSelectedTextColor(PyObject *, PyObject *args)
InputBox/getInputBoxSelectedTextColor.
Definition: python/input.cpp:271
py_resizeImage
PyObject * py_resizeImage(PyObject *, PyObject *args)
Image/resizeImage.
Definition: python/imagelabel.cpp:298
ThemeFile::path
const QString & path() const
Definition: themefile.cpp:571
KarambaPython::startupAdded
bool startupAdded(Karamba *k, Startup *t)
Definition: python/karamba.cpp:575
Meter
Definition: meters/meter.h:23
py_get_systray_size
PyObject * py_get_systray_size(PyObject *, PyObject *args)
Definition: systray.cpp:282
py_getImagePos
PyObject * py_getImagePos(PyObject *self, PyObject *args)
Image/getImagePos.
Definition: python/imagelabel.cpp:141
py_getGraphMinMax
PyObject * py_getGraphMinMax(PyObject *self, PyObject *args)
Graph/getGraphMinMax.
Definition: python/graph.cpp:99
py_want_right_button
PyObject * py_want_right_button(PyObject *, PyObject *args)
Misc/wantRightButton.
Definition: misc.cpp:787
py_getThemeText
PyObject * py_getThemeText(PyObject *self, PyObject *args)
Text/getThemeText.
Definition: python/textlabel.cpp:66
menu.h
svcgrp.h
richtextlabel.h
py_removeImageTransformations
PyObject * py_removeImageTransformations(PyObject *, PyObject *args)
Image/removeImageTransformations.
Definition: python/imagelabel.cpp:239
py_setInputBoxFontSize
PyObject * py_setInputBoxFontSize(PyObject *, PyObject *args)
InputBox/changeInputBoxFontSize.
Definition: python/input.cpp:284
py_moveImage
PyObject * py_moveImage(PyObject *self, PyObject *args)
Image/moveImage.
Definition: python/imagelabel.cpp:151
KarambaPython::activeTaskChanged
bool activeTaskChanged(Karamba *k, Task *t)
Definition: python/karamba.cpp:557
py_createBar
PyObject * py_createBar(PyObject *, PyObject *args)
Bar/createBar.
Definition: python/bar.cpp:36
py_setGraphSensor
PyObject * py_setGraphSensor(PyObject *self, PyObject *args)
Graph/setGraphSensor.
Definition: python/graph.cpp:124
py_changeImageChannelIntensity
PyObject * py_changeImageChannelIntensity(PyObject *, PyObject *args)
Image/changeImageChannelIntensity.
Definition: python/imagelabel.cpp:211
KarambaPython::widgetClosed
bool widgetClosed(Karamba *k)
Definition: python/karamba.cpp:508
py_create_service_click_area
PyObject * py_create_service_click_area(PyObject *, PyObject *args)
Misc/createServiceClickArea.
Definition: misc.cpp:388
karambaapp.h
py_setTextFont
PyObject * py_setTextFont(PyObject *, PyObject *args)
Text/changeTextFont.
Definition: python/textlabel.cpp:177
py_getInputBoxFrameColor
PyObject * py_getInputBoxFrameColor(PyObject *, PyObject *args)
InputBox/getInputBoxFrameColor.
Definition: python/input.cpp:244
py_setInputBoxValue
PyObject * py_setInputBoxValue(PyObject *self, PyObject *args)
InputBox/changeInputBox.
Definition: python/input.cpp:87
py_createImage
PyObject * py_createImage(PyObject *, PyObject *args)
Image/createImage.
Definition: python/imagelabel.cpp:56
py_moveRichText
PyObject * py_moveRichText(PyObject *self, PyObject *args)
RichText/moveRichText.
Definition: python/richtextlabel.cpp:91
py_resizeRichText
PyObject * py_resizeRichText(PyObject *self, PyObject *args)
RichText/resizeRichText.
Definition: python/richtextlabel.cpp:81
py_get_widget_position
PyObject * py_get_widget_position(PyObject *, PyObject *args)
Widget/getWidgetPosition.
Definition: widget.cpp:37
py_createGraph
PyObject * py_createGraph(PyObject *, PyObject *args)
Graph/createGraph.
Definition: python/graph.cpp:36
py_resizeBar
PyObject * py_resizeBar(PyObject *self, PyObject *args)
Bar/resizeBar.
Definition: python/bar.cpp:75
py_get_update_time
PyObject * py_get_update_time(PyObject *, PyObject *args)
Misc/getUpdateTime.
Definition: misc.cpp:743
py_add_menu_separator
PyObject * py_add_menu_separator(PyObject *, PyObject *args)
Menu/addMenuSeparator.
Definition: menu.cpp:126
py_getBarPos
PyObject * py_getBarPos(PyObject *self, PyObject *args)
Bar/getBarPos.
Definition: python/bar.cpp:80
py_move_systray
PyObject * py_move_systray(PyObject *, PyObject *args)
Systray/moveSystray.
Definition: systray.cpp:54
py_delete_menu
PyObject * py_delete_menu(PyObject *, PyObject *args)
Menu/deleteMenu.
Definition: menu.cpp:78
py_setRichTextFont
PyObject * py_setRichTextFont(PyObject *, PyObject *args)
RichText/changeRichTextFont.
Definition: python/richtextlabel.cpp:149
py_getInputBoxFontSize
PyObject * py_getInputBoxFontSize(PyObject *, PyObject *args)
InputBox/getInputBoxFontSize.
Definition: python/input.cpp:299
Task
A dynamic interface to a task (main window).
Definition: taskmanager.h:73
py_update_systray_layout
PyObject * py_update_systray_layout(PyObject *, PyObject *args)
Systray/updateSystrayLayout.
Definition: systray.cpp:245
KarambaPython::themeNotify
bool themeNotify(Karamba *k, const char *from, const char *txt)
Definition: python/karamba.cpp:605
py_moveBar
PyObject * py_moveBar(PyObject *self, PyObject *args)
Bar/moveBar.
Definition: python/bar.cpp:85
py_getThemeBar
PyObject * py_getThemeBar(PyObject *self, PyObject *args)
Bar/getThemeBar.
Definition: python/bar.cpp:65
py_open_named_theme
PyObject * py_open_named_theme(PyObject *, PyObject *args)
Misc/openNamedTheme.
Definition: misc.cpp:516
py_remove_menu_item
PyObject * py_remove_menu_item(PyObject *, PyObject *args)
Menu/removeMenuItem.
Definition: menu.cpp:150
py_getImageHeight
PyObject * py_getImageHeight(PyObject *, PyObject *args)
Image/getImageHeight.
Definition: python/imagelabel.cpp:262
py_deleteRichText
PyObject * py_deleteRichText(PyObject *, PyObject *args)
RichText/deleteRichText.
Definition: python/richtextlabel.cpp:57
py_read_menu_config_option
PyObject * py_read_menu_config_option(PyObject *, PyObject *args)
Config/readMenuConfigOption.
Definition: config.cpp:104
py_setBarSensor
PyObject * py_setBarSensor(PyObject *self, PyObject *args)
Bar/setBarSensor.
Definition: python/bar.cpp:125
py_setGraphMinMax
PyObject * py_setGraphMinMax(PyObject *self, PyObject *args)
Graph/setGraphMinMax.
Definition: python/graph.cpp:104
KarambaPython::releaseLock
void releaseLock(PyThreadState *myThreadState)
Definition: python/karamba.cpp:448
py_getThemeInputBox
PyObject * py_getThemeInputBox(PyObject *self, PyObject *args)
InputBox/getThemeInputBox.
Definition: python/input.cpp:77
py_read_theme_file
PyObject * py_read_theme_file(PyObject *, PyObject *args)
Misc/readThemeFile.
Definition: misc.cpp:325
KarambaPython::pName
PyObject * pName
Definition: python/karamba.h:44
KarambaPython::pDict
PyObject * pDict
Definition: python/karamba.h:45
py_show_systray
PyObject * py_show_systray(PyObject *, PyObject *args)
Systray/showSystray.
Definition: systray.cpp:90
py_setBarImage
PyObject * py_setBarImage(PyObject *, PyObject *args)
Bar/setBarImage.
Definition: python/bar.cpp:140
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:07:19 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

superkaramba

Skip menu "superkaramba"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeutils API Reference

Skip menu "kdeutils API Reference"
  • ark
  • filelight
  • kcalc
  • kcharselect
  • kdf
  • kfloppy
  • kgpg
  • kremotecontrol
  • ktimer
  • kwallet
  • superkaramba
  • sweeper

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal