By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release. View | Details | Raw Unified | Return to bug 1922
Collapse All | Expand All

(-)tdeutils-orig/superkaramba/src/karamba_python.cpp (-3 / +56 lines)
Lines 3-9 Link Here
3
*
3
*
4
*  Copyright (C) 2003 Hans Karlsson <karlsson.h@home.se>
4
*  Copyright (C) 2003 Hans Karlsson <karlsson.h@home.se>
5
*  Copyright (C) 2003-2004 Adam Geitgey <adam@rootnode.org>
5
*  Copyright (C) 2003-2004 Adam Geitgey <adam@rootnode.org>
6
*  Copyright (c) 2004 Petri Damst�n <damu@iki.fi>
6
*  Copyright (c) 2004 Petri Damst�n <damu@iki.fi>
7
*  Copyright (c) 2004 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
7
*  Copyright (c) 2004 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
8
*
8
*
9
*  This file is part of SuperKaramba.
9
*  This file is part of SuperKaramba.
Lines 47-52 Link Here
47
#include "misc_python.h"
47
#include "misc_python.h"
48
#include "input_python.h"
48
#include "input_python.h"
49
49
50
struct module_state {
51
    PyObject *error;
52
};
53
54
#if PY_MAJOR_VERSION >= 3
55
#define GETSTATE(m) ((struct module_state*)PyModule_GetState(m))
56
#else
57
#define GETSTATE(m) (&_state)
58
static struct module_state _state;
59
#endif
60
61
static PyObject *
62
error_out(PyObject *m) {
63
    struct module_state *st = GETSTATE(m);
64
    PyErr_SetString(st->error, "something bad happened in karamba_python.cpp");
65
    return NULL;
66
}
67
50
/*******************************************
68
/*******************************************
51
 * Python methods are defined here.
69
 * Python methods are defined here.
52
 *   Each method accessible from python should have:
70
 *   Each method accessible from python should have:
Lines 338-343 Link Here
338
    {NULL, NULL, 0 ,NULL}
356
    {NULL, NULL, 0 ,NULL}
339
};
357
};
340
358
359
#if PY_MAJOR_VERSION >= 3
360
361
static int karamba_traverse(PyObject *m, visitproc visit, void *arg) {
362
    Py_VISIT(GETSTATE(m)->error);
363
    return 0;
364
}
365
366
static int karamba_clear(PyObject *m) {
367
    Py_CLEAR(GETSTATE(m)->error);
368
    return 0;
369
}
370
371
static struct PyModuleDef karambadef = {
372
        PyModuleDef_HEAD_INIT,
373
        "karamba",
374
        NULL,
375
        sizeof(struct module_state),
376
        karamba_methods,
377
        NULL,
378
        karamba_traverse,
379
        karamba_clear,
380
        NULL
381
};
382
383
#define INITERROR return NULL
384
385
#else
386
387
#define INITERROR return
388
389
#endif
390
341
PyThreadState* KarambaPython::mainThreadState = 0;
391
PyThreadState* KarambaPython::mainThreadState = 0;
342
392
343
KarambaPython::KarambaPython(const ThemeFile& theme, bool reloading):
393
KarambaPython::KarambaPython(const ThemeFile& theme, bool reloading):
Lines 356-364 Link Here
356
  PyRun_SimpleString((char*)"sys.path.insert(0, '')");
406
  PyRun_SimpleString((char*)"sys.path.insert(0, '')");
357
407
358
  PyImport_AddModule((char*)"karamba");
408
  PyImport_AddModule((char*)"karamba");
409
#if PY_MAJOR_VERSION >= 3
410
  PyModule_Create(&karambadef);
411
#else
359
  Py_InitModule((char*)"karamba", karamba_methods);
412
  Py_InitModule((char*)"karamba", karamba_methods);
360
413
#endif
361
  pName = PyString_FromString(theme.pythonModule().ascii());
414
  pName = PyBytes_FromString(theme.pythonModule().ascii());
362
  pModule = PyImport_Import(pName);
415
  pModule = PyImport_Import(pName);
363
  
416
  
364
  fprintf(stderr, "%s\n", pypath);
417
  fprintf(stderr, "%s\n", pypath);
(-)tdeutils-orig/superkaramba/src/meter_python.cpp (-3 / +3 lines)
Lines 93-101 Link Here
93
TQString PyString2TQString(PyObject* text)
93
TQString PyString2TQString(PyObject* text)
94
{
94
{
95
    TQString qtext;
95
    TQString qtext;
96
    if (PyString_CheckExact(text))
96
    if (PyBytes_CheckExact(text))
97
    {
97
    {
98
        char* t = PyString_AsString(text);
98
        char* t = PyBytes_AsString(text);
99
        qtext.setAscii(t);
99
        qtext.setAscii(t);
100
    }
100
    }
101
    else if (PyUnicode_CheckExact(text))
101
    else if (PyUnicode_CheckExact(text))
Lines 148-154 Link Here
148
  }
148
  }
149
149
150
  else
150
  else
151
    pyString = PyString_FromString("");
151
    pyString = PyBytes_FromString("");
152
152
153
  return pyString;
153
  return pyString;
154
}
154
}
(-)tdeutils-orig/superkaramba/src/misc_python.cpp (-2 / +2 lines)
Lines 3-9 Link Here
3
*
3
*
4
*  Copyright (C) 2003 Hans Karlsson <karlsson.h@home.se>
4
*  Copyright (C) 2003 Hans Karlsson <karlsson.h@home.se>
5
*  Copyright (C) 2003-2004 Adam Geitgey <adam@rootnode.org>
5
*  Copyright (C) 2003-2004 Adam Geitgey <adam@rootnode.org>
6
*  Copyright (C) 2004 Petri Damst�n <damu@iki.fi>
6
*  Copyright (C) 2004 Petri Damst�n <damu@iki.fi>
7
*  Copyright (C) 2004, 2005 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
7
*  Copyright (C) 2004, 2005 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
8
*
8
*
9
*  This file is part of SuperKaramba.
9
*  This file is part of SuperKaramba.
Lines 343-349 Link Here
343
    return NULL;
343
    return NULL;
344
  karamba* k = (karamba*)widget;
344
  karamba* k = (karamba*)widget;
345
  TQByteArray ba = k->theme().readThemeFile(file);
345
  TQByteArray ba = k->theme().readThemeFile(file);
346
  return PyString_FromStringAndSize(ba.data(), ba.size());
346
  return PyBytes_FromStringAndSize(ba.data(), ba.size());
347
}
347
}
348
348
349
/* now a method we need to expose to Python */
349
/* now a method we need to expose to Python */
(-)tdeutils-orig/superkaramba/src/svcgrp_python.cpp (-34 / +34 lines)
Lines 37-52 Link Here
37
	PyObject *tuple = PyTuple_New(2);
37
	PyObject *tuple = PyTuple_New(2);
38
	PyObject *dict = PyDict_New();
38
	PyObject *dict = PyDict_New();
39
39
40
	PyDict_SetItem(dict, PyString_FromString("caption"),
40
	PyDict_SetItem(dict, PyBytes_FromString("caption"),
41
			             PyString_FromString(g->caption().ascii()));
41
			             PyBytes_FromString(g->caption().ascii()));
42
	if (g->comment() != NULL)
42
	if (g->comment() != NULL)
43
		PyDict_SetItem(dict, PyString_FromString("comment"),
43
		PyDict_SetItem(dict, PyBytes_FromString("comment"),
44
	                     PyString_FromString(g->comment().ascii()));
44
	                     PyBytes_FromString(g->comment().ascii()));
45
	if (g->icon() != NULL)
45
	if (g->icon() != NULL)
46
		PyDict_SetItem(dict, PyString_FromString("icon"),
46
		PyDict_SetItem(dict, PyBytes_FromString("icon"),
47
	                     PyString_FromString(g->icon().ascii()));
47
	                     PyBytes_FromString(g->icon().ascii()));
48
	PyDict_SetItem(dict, PyString_FromString("relpath"),
48
	PyDict_SetItem(dict, PyBytes_FromString("relpath"),
49
	                     PyString_FromString(g->relPath().ascii()));
49
	                     PyBytes_FromString(g->relPath().ascii()));
50
50
51
	PyTuple_SET_ITEM(tuple, 0, Py_BuildValue((char*)"l", 0));
51
	PyTuple_SET_ITEM(tuple, 0, Py_BuildValue((char*)"l", 0));
52
	PyTuple_SET_ITEM(tuple, 1, dict);
52
	PyTuple_SET_ITEM(tuple, 1, dict);
Lines 61-103 Link Here
61
	PyObject *dict = PyDict_New();
61
	PyObject *dict = PyDict_New();
62
62
63
	if (g->exec() != NULL)
63
	if (g->exec() != NULL)
64
		PyDict_SetItem(dict, PyString_FromString("exec"),
64
		PyDict_SetItem(dict, PyBytes_FromString("exec"),
65
			             PyString_FromString(g->exec().ascii()));
65
			             PyBytes_FromString(g->exec().ascii()));
66
	if (g->menuId() != NULL)
66
	if (g->menuId() != NULL)
67
		PyDict_SetItem(dict, PyString_FromString("menuid"),
67
		PyDict_SetItem(dict, PyBytes_FromString("menuid"),
68
			             PyString_FromString(g->menuId().ascii()));
68
			             PyBytes_FromString(g->menuId().ascii()));
69
	if (g->name() != NULL)
69
	if (g->name() != NULL)
70
		PyDict_SetItem(dict, PyString_FromString("name"),
70
		PyDict_SetItem(dict, PyBytes_FromString("name"),
71
			             PyString_FromString(g->name().ascii()));
71
			             PyBytes_FromString(g->name().ascii()));
72
	if (g->path() != NULL)
72
	if (g->path() != NULL)
73
		PyDict_SetItem(dict, PyString_FromString("path"),
73
		PyDict_SetItem(dict, PyBytes_FromString("path"),
74
			             PyString_FromString(g->path().ascii()));
74
			             PyBytes_FromString(g->path().ascii()));
75
	if (g->icon() != NULL)
75
	if (g->icon() != NULL)
76
		PyDict_SetItem(dict, PyString_FromString("icon"),
76
		PyDict_SetItem(dict, PyBytes_FromString("icon"),
77
			             PyString_FromString(g->icon().ascii()));
77
			             PyBytes_FromString(g->icon().ascii()));
78
	if (g->library() != NULL)
78
	if (g->library() != NULL)
79
		PyDict_SetItem(dict, PyString_FromString("library"),
79
		PyDict_SetItem(dict, PyBytes_FromString("library"),
80
			             PyString_FromString(g->library().ascii()));
80
			             PyBytes_FromString(g->library().ascii()));
81
	if (g->comment() != NULL)
81
	if (g->comment() != NULL)
82
		PyDict_SetItem(dict, PyString_FromString("comment"),
82
		PyDict_SetItem(dict, PyBytes_FromString("comment"),
83
			             PyString_FromString(g->comment().ascii()));
83
			             PyBytes_FromString(g->comment().ascii()));
84
	if (g->type() != NULL)
84
	if (g->type() != NULL)
85
		PyDict_SetItem(dict, PyString_FromString("type"),
85
		PyDict_SetItem(dict, PyBytes_FromString("type"),
86
			             PyString_FromString(g->type().ascii()));
86
			             PyBytes_FromString(g->type().ascii()));
87
	if (g->genericName() != NULL)
87
	if (g->genericName() != NULL)
88
		PyDict_SetItem(dict, PyString_FromString("genericname"),
88
		PyDict_SetItem(dict, PyBytes_FromString("genericname"),
89
			             PyString_FromString(g->genericName().ascii()));
89
			             PyBytes_FromString(g->genericName().ascii()));
90
	/*
90
	/*
91
	PyDict_SetItem(dict, PyString_FromString("terminal"),
91
	PyDict_SetItem(dict, PyBytes_FromString("terminal"),
92
						 Py_BuildValue("l", g->terminal()));
92
						 Py_BuildValue("l", g->terminal()));
93
	PyDict_SetItem(dict, PyString_FromString("type"),
93
	PyDict_SetItem(dict, PyBytes_FromString("type"),
94
			             PyString_FromString(g->type().ascii()));
94
			             PyBytes_FromString(g->type().ascii()));
95
	PyDict_SetItem(dict, PyString_FromString("username"),
95
	PyDict_SetItem(dict, PyBytes_FromString("username"),
96
			             PyString_FromString(g->username().ascii()));
96
			             PyBytes_FromString(g->username().ascii()));
97
	PyDict_SetItem(dict, PyString_FromString("substuid"),
97
	PyDict_SetItem(dict, PyBytes_FromString("substuid"),
98
						 Py_BuildValue("l", g->substituteUid()));
98
						 Py_BuildValue("l", g->substituteUid()));
99
	PyDict_SetItem(dict, PyString_FromString("path"),
99
	PyDict_SetItem(dict, PyBytes_FromString("path"),
100
			             PyString_FromString(g->path().ascii()));
100
			             PyBytes_FromString(g->path().ascii()));
101
						 */
101
						 */
102
102
103
	PyTuple_SET_ITEM(tuple, 0, Py_BuildValue((char*)"l", 1));
103
	PyTuple_SET_ITEM(tuple, 0, Py_BuildValue((char*)"l", 1));
(-)tdeutils-orig/superkaramba/src/task_python.cpp (-22 / +22 lines)
Lines 143-192 Link Here
143
    //Task Name
143
    //Task Name
144
    if (currTask->name() != NULL)
144
    if (currTask->name() != NULL)
145
    {
145
    {
146
      PyList_Append(pList, PyString_FromString(currTask->name().latin1()));
146
      PyList_Append(pList, PyBytes_FromString(currTask->name().latin1()));
147
    }
147
    }
148
    else
148
    else
149
    {
149
    {
150
      PyList_Append(pList, PyString_FromString(""));
150
      PyList_Append(pList, PyBytes_FromString(""));
151
    }
151
    }
152
152
153
    //Icon Name
153
    //Icon Name
154
    if (currTask->iconName() != NULL)
154
    if (currTask->iconName() != NULL)
155
    {
155
    {
156
      PyList_Append(pList, PyString_FromString(currTask->iconName().latin1()));
156
      PyList_Append(pList, PyBytes_FromString(currTask->iconName().latin1()));
157
    }
157
    }
158
    else
158
    else
159
    {
159
    {
160
      PyList_Append(pList, PyString_FromString(""));
160
      PyList_Append(pList, PyBytes_FromString(""));
161
    }
161
    }
162
162
163
    //Class Name
163
    //Class Name
164
    if (currTask->className() != NULL)
164
    if (currTask->className() != NULL)
165
    {
165
    {
166
      PyList_Append(pList, PyString_FromString(currTask->className().latin1()));
166
      PyList_Append(pList, PyBytes_FromString(currTask->className().latin1()));
167
    }
167
    }
168
    else
168
    else
169
    {
169
    {
170
      PyList_Append(pList, PyString_FromString(""));
170
      PyList_Append(pList, PyBytes_FromString(""));
171
    }
171
    }
172
172
173
    // Desktop this task is on
173
    // Desktop this task is on
174
    PyList_Append(pList, PyInt_FromLong(currTask->desktop()));
174
    PyList_Append(pList, PyLong_FromLong(currTask->desktop()));
175
175
176
    // is it maximized?
176
    // is it maximized?
177
    PyList_Append(pList, PyInt_FromLong(currTask->isMaximized()));
177
    PyList_Append(pList, PyLong_FromLong(currTask->isMaximized()));
178
178
179
    // is it iconified?
179
    // is it iconified?
180
    PyList_Append(pList, PyInt_FromLong(currTask->isIconified()));
180
    PyList_Append(pList, PyLong_FromLong(currTask->isIconified()));
181
181
182
    // is it shaded?
182
    // is it shaded?
183
    PyList_Append(pList, PyInt_FromLong(currTask->isShaded()));
183
    PyList_Append(pList, PyLong_FromLong(currTask->isShaded()));
184
184
185
    // is it focused?
185
    // is it focused?
186
    PyList_Append(pList, PyInt_FromLong(currTask->isActive()));
186
    PyList_Append(pList, PyLong_FromLong(currTask->isActive()));
187
187
188
    // a reference back to itself
188
    // a reference back to itself
189
    PyList_Append(pList, PyInt_FromLong((long)currTask));
189
    PyList_Append(pList, PyLong_FromLong((long)currTask));
190
190
191
    return pList;
191
    return pList;
192
192
Lines 235-269 Link Here
235
        //Startup Name
235
        //Startup Name
236
        if (startup -> text() != NULL)
236
        if (startup -> text() != NULL)
237
        {
237
        {
238
            PyList_Append(pList, PyString_FromString(startup -> text().latin1()));
238
            PyList_Append(pList, PyBytes_FromString(startup -> text().latin1()));
239
        }
239
        }
240
        else
240
        else
241
        {
241
        {
242
            PyList_Append(pList, PyString_FromString(""));
242
            PyList_Append(pList, PyBytes_FromString(""));
243
        }
243
        }
244
244
245
        //Icon Name
245
        //Icon Name
246
        if (startup -> icon() != NULL)
246
        if (startup -> icon() != NULL)
247
        {
247
        {
248
            PyList_Append(pList, PyString_FromString(startup -> icon().latin1()));
248
            PyList_Append(pList, PyBytes_FromString(startup -> icon().latin1()));
249
        }
249
        }
250
        else
250
        else
251
        {
251
        {
252
            PyList_Append(pList, PyString_FromString(""));
252
            PyList_Append(pList, PyBytes_FromString(""));
253
        }
253
        }
254
254
255
        //Executable Name
255
        //Executable Name
256
        if (startup -> bin() != NULL)
256
        if (startup -> bin() != NULL)
257
        {
257
        {
258
            PyList_Append(pList, PyString_FromString(startup -> bin().latin1()));
258
            PyList_Append(pList, PyBytes_FromString(startup -> bin().latin1()));
259
        }
259
        }
260
        else
260
        else
261
        {
261
        {
262
            PyList_Append(pList, PyString_FromString(""));
262
            PyList_Append(pList, PyBytes_FromString(""));
263
        }
263
        }
264
264
265
        // a reference back to itself
265
        // a reference back to itself
266
        PyList_Append(pList, PyInt_FromLong((long) startup));
266
        PyList_Append(pList, PyLong_FromLong((long) startup));
267
267
268
        return pList;
268
        return pList;
269
269
Lines 300-306 Link Here
300
        const char* tmp = task->name().latin1();
300
        const char* tmp = task->name().latin1();
301
        if(tmp == 0)
301
        if(tmp == 0)
302
          continue;
302
          continue;
303
        pString = PyString_FromString(tmp);
303
        pString = PyBytes_FromString(tmp);
304
        if(pString)
304
        if(pString)
305
          PyList_Append(pList, pString);
305
          PyList_Append(pList, pString);
306
    }
306
    }
Lines 329-335 Link Here
329
    Task* task;
329
    Task* task;
330
    for (task = taskList.first(); task; task = taskList.next())
330
    for (task = taskList.first(); task; task = taskList.next())
331
    {
331
    {
332
        pString = PyInt_FromLong((long)task);
332
        pString = PyLong_FromLong((long)task);
333
        PyList_Append(pList, pString);
333
        PyList_Append(pList, pString);
334
    }
334
    }
335
    return pList;
335
    return pList;
Lines 358-364 Link Here
358
358
359
    for (startup = startupList.first(); startup; startup = startupList.next())
359
    for (startup = startupList.first(); startup; startup = startupList.next())
360
    {
360
    {
361
        pString = PyInt_FromLong((long) startup);
361
        pString = PyLong_FromLong((long) startup);
362
        PyList_Append(pList, pString);
362
        PyList_Append(pList, pString);
363
    }
363
    }
364
    return pList;
364
    return pList;

Return to bug 1922