Mercurial > pidgin.yaz
annotate finch/libgnt/pygnt/gnt.override @ 20986:12753bdeaf47
Make Perl and Tcl debug information in the About dialog based on runtime information (the Perl and Tcl plugins being present) instead of compile time information. This should be more accurate. I don't know how this affects statically linked plugins (is that even possible for these plugins?).
author | Daniel Atallah <daniel.atallah@gmail.com> |
---|---|
date | Thu, 18 Oct 2007 18:13:30 +0000 |
parents | fae29ba432c8 |
children |
rev | line source |
---|---|
15932
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
1 %% |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
2 headers |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
3 #include <Python.h> |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
4 #include "pygobject.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
5 #include "gnt.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
6 #include "gntbindable.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
7 #include "gntwidget.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
8 #include "gntbox.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
9 #include "gntbutton.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
10 #include "gntcheckbox.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
11 #include "gntcolors.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
12 #include "gntcombobox.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
13 #include "gntentry.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
14 #include "gntfilesel.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
15 #include "gntkeys.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
16 #include "gntlabel.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
17 #include "gntline.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
18 #include "gntmenu.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
19 #include "gntmenuitem.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
20 #include "gntmenuitemcheck.h" |
18556
5e1412f4e67a
Do some work to make pygnt more useful. The dbus-gnt script works fairly
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15932
diff
changeset
|
21 #include "gntslider.h" |
15932
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
22 #include "gntstyle.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
23 #include "gnttextview.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
24 #include "gnttree.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
25 #include "gntutils.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
26 #include "gntwindow.h" |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
27 #include "gntwm.h" |
18556
5e1412f4e67a
Do some work to make pygnt more useful. The dbus-gnt script works fairly
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15932
diff
changeset
|
28 #include "gntws.h" |
5e1412f4e67a
Do some work to make pygnt more useful. The dbus-gnt script works fairly
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15932
diff
changeset
|
29 #include "common.h" |
5e1412f4e67a
Do some work to make pygnt more useful. The dbus-gnt script works fairly
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15932
diff
changeset
|
30 %% |
5e1412f4e67a
Do some work to make pygnt more useful. The dbus-gnt script works fairly
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15932
diff
changeset
|
31 include |
18721
7389b597a812
This gets rid of more weird crashes.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18718
diff
changeset
|
32 gntbox.override |
18556
5e1412f4e67a
Do some work to make pygnt more useful. The dbus-gnt script works fairly
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15932
diff
changeset
|
33 gntfilesel.override |
5e1412f4e67a
Do some work to make pygnt more useful. The dbus-gnt script works fairly
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
15932
diff
changeset
|
34 gnttree.override |
18724
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
35 gntwidget.override |
15932
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
36 %% |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
37 modulename gnt |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
38 %% |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
39 import gobject.GObject as PyGObject_Type |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
40 %% |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
41 ignore-glob |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
42 *_get_gtype |
8fd5ab3f9716
python bindings for libgnt. dbus-gnt is a gnt-ui (sort of) for gaim over dbus. It allows continuing with the currently opened conversations. pygnt/README.txt explains what to do. Use at your own risk.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
diff
changeset
|
43 %% |
18717
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
44 define set_flag |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
45 static PyObject * |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
46 _wrap_set_flag(PyGObject *self, PyObject *args, PyObject *kwargs) |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
47 { |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
48 static char *kwlist[] = {"flags", NULL}; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
49 PyGObject *widget; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
50 int flags; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
51 |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
52 if (!PyArg_ParseTuple(args, "O!i:gnt.set_flag", &PyGntWidget_Type, &widget, |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
53 &flags)) { |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
54 return NULL; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
55 } |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
56 |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
57 GNT_WIDGET_SET_FLAGS(widget->obj, flags); |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
58 |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
59 Py_INCREF(Py_None); |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
60 return Py_None; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
61 } |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
62 %% |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
63 define unset_flag |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
64 static PyObject * |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
65 _wrap_unset_flag(PyGObject *self, PyObject *args, PyObject *kwargs) |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
66 { |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
67 static char *kwlist[] = {"flags", NULL}; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
68 PyGObject *widget; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
69 int flags; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
70 |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
71 if (!PyArg_ParseTuple(args, "O!i:gnt.unset_flag", &PyGntWidget_Type, &widget, |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
72 &flags)) { |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
73 return NULL; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
74 } |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
75 |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
76 GNT_WIDGET_UNSET_FLAGS(widget->obj, flags); |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
77 |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
78 Py_INCREF(Py_None); |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
79 return Py_None; |
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
80 } |
18718
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
81 %% |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
82 define screen_size noargs |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
83 static PyObject * |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
84 _wrap_screen_size(PyObject *self) |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
85 { |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
86 PyObject *list = PyList_New(0); |
18717
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
87 |
18718
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
88 if (list == NULL) |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
89 return NULL; |
18717
d3542cffbb42
Allow un/setting flags for widgets.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18556
diff
changeset
|
90 |
18718
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
91 PyList_Append(list, PyInt_FromLong((long)getmaxx(stdscr))); |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
92 PyList_Append(list, PyInt_FromLong((long)getmaxy(stdscr))); |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
93 |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
94 return list; |
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
95 } |
18724
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
96 %% |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
97 override gnt_register_action |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
98 static GHashTable *actions; |
18718
1ad1a4e8dfea
Add function to get the screen size.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18717
diff
changeset
|
99 |
18724
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
100 |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
101 |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
102 static PyObject * |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
103 _wrap_gnt_register_action(PyGObject *self, PyObject *args, PyObject *kwargs) |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
104 { |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
105 static char *kwlist[] = {"name", "callback", NULL}; |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
106 PyGObject *callback; |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
107 GClosure *closure; |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
108 char *name; |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
109 |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
110 if (!PyArg_ParseTuple(args, "sO:gnt.gnt_register_action", &name, &callback)) { |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
111 return NULL; |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
112 } |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
113 |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
114 if (!PyCallable_Check(callback)) { |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
115 PyErr_SetString(PyExc_TypeError, "the callback must be callable ... doh!"); |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
116 return NULL; |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
117 } |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
118 |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
119 gnt_register_action(name, callback->obj); |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
120 |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
121 Py_INCREF(Py_None); |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
122 return Py_None; |
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
123 } |
18729
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
124 %% |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
125 define register_bindings |
18724
bfa12b00f54b
Export gnt_widget_get_size for pygnt.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18721
diff
changeset
|
126 |
18729
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
127 static gboolean |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
128 pygnt_binding_callback(GntBindable *bindable, GList *list) |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
129 { |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
130 PyObject *wrapper = pygobject_new(G_OBJECT(bindable)); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
131 PyObject_CallMethod(wrapper, list->data, "O", Py_None); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
132 Py_DECREF(wrapper); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
133 return TRUE; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
134 } |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
135 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
136 static PyObject * |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
137 _wrap_register_bindings(PyObject *self, PyObject *args) |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
138 { |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
139 PyTypeObject *class; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
140 int pos = 0; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
141 PyObject *key, *value, *gbindings; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
142 GntBindableClass *bindable; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
143 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
144 if (!PyArg_ParseTuple(args, "O!:gnt.register_bindings", |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
145 &PyType_Type, &class)) { |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
146 /* Make sure it's a GntBindableClass subclass */ |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
147 PyErr_SetString(PyExc_TypeError, |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
148 "argument must be a GntBindable subclass"); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
149 return NULL; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
150 } |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
151 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
152 gbindings = PyDict_GetItemString(class->tp_dict, "__gntbindings__"); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
153 if (!gbindings) |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
154 goto end; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
155 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
156 if (!PyDict_Check(gbindings)) { |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
157 PyErr_SetString(PyExc_TypeError, |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
158 "__gntbindings__ attribute not a dict!"); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
159 return NULL; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
160 } |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
161 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
162 bindable = g_type_class_ref(pyg_type_from_object((PyObject *)class)); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
163 while (PyDict_Next(gbindings, &pos, &key, &value)) { |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
164 const char *trigger, *callback, *name; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
165 GList *list = NULL; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
166 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
167 if (!PyString_Check(key)) { |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
168 PyErr_SetString(PyExc_TypeError, |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
169 "__gntbindings__ keys must be strings"); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
170 g_type_class_unref(bindable); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
171 return NULL; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
172 } |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
173 name = PyString_AsString(key); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
174 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
175 if (!PyTuple_Check(value) || |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
176 !PyArg_ParseTuple(value, "ss", &callback, &trigger)) { |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
177 PyErr_SetString(PyExc_TypeError, |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
178 "__gntbindings__ values must be (callback, trigger) tupples"); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
179 g_type_class_unref(bindable); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
180 return NULL; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
181 } |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
182 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
183 gnt_bindable_class_register_action(bindable, name, pygnt_binding_callback, |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
184 trigger, g_strdup(callback), NULL); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
185 } |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
186 if (gbindings) |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
187 PyDict_DelItemString(class->tp_dict, "__gntbindings__"); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
188 g_type_class_unref(bindable); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
189 |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
190 end: |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
191 Py_INCREF(Py_None); |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
192 return Py_None; |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
193 } |
fae29ba432c8
Allow adding bindable actions for object types. There's some memory corruption
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18724
diff
changeset
|
194 |