gtk2 1.0.3 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +66 -1
- data/ext/gtk2/extconf.rb +0 -96
- data/ext/gtk2/global.h +274 -13
- data/ext/gtk2/gtk2.def +5 -3
- data/ext/gtk2/init.c +263 -19
- data/ext/gtk2/rbgdk.c +245 -89
- data/ext/gtk2/rbgdk.h +32 -6
- data/ext/gtk2/rbgdkatom.c +38 -28
- data/ext/gtk2/rbgdkcairo.c +32 -42
- data/ext/gtk2/rbgdkcolor.c +52 -42
- data/ext/gtk2/rbgdkcolormap.c +42 -37
- data/ext/gtk2/rbgdkconst.c +23 -13
- data/ext/gtk2/rbgdkconversions.h +19 -6
- data/ext/gtk2/rbgdkcursor.c +37 -25
- data/ext/gtk2/rbgdkdevice.c +77 -67
- data/ext/gtk2/rbgdkdisplay.c +158 -150
- data/ext/gtk2/rbgdkdisplaymanager.c +27 -15
- data/ext/gtk2/rbgdkdragcontext.c +121 -70
- data/ext/gtk2/rbgdkdraw.c +252 -160
- data/ext/gtk2/rbgdkevent.c +30 -20
- data/ext/gtk2/rbgdkgc.c +123 -116
- data/ext/gtk2/rbgdkgeometry.c +77 -68
- data/ext/gtk2/rbgdkimage.c +58 -47
- data/ext/gtk2/rbgdkinput.c +33 -26
- data/ext/gtk2/rbgdkkeymap.c +38 -27
- data/ext/gtk2/rbgdkkeyval.c +44 -32
- data/ext/gtk2/rbgdkpango.c +66 -39
- data/ext/gtk2/rbgdkpangorenderer.c +63 -35
- data/ext/gtk2/rbgdkpixbuf.c +36 -25
- data/ext/gtk2/rbgdkpixmap.c +65 -49
- data/ext/gtk2/rbgdkproperty.c +66 -60
- data/ext/gtk2/rbgdkrectangle.c +54 -46
- data/ext/gtk2/rbgdkregion.c +144 -79
- data/ext/gtk2/rbgdkrgb.c +74 -58
- data/ext/gtk2/rbgdkscreen.c +103 -97
- data/ext/gtk2/rbgdkselection.c +49 -39
- data/ext/gtk2/rbgdkthreads.c +32 -19
- data/ext/gtk2/rbgdktimecoord.c +60 -38
- data/ext/gtk2/rbgdkvisual.c +79 -71
- data/ext/gtk2/rbgdkwindow.c +284 -305
- data/ext/gtk2/rbgdkwindowattr.c +69 -58
- data/ext/gtk2/rbgdkx11.c +41 -28
- data/ext/gtk2/rbgtk.c +498 -19
- data/ext/gtk2/rbgtk.h +35 -20
- data/ext/gtk2/rbgtkaboutdialog.c +33 -80
- data/ext/gtk2/rbgtkaccelerator.c +36 -23
- data/ext/gtk2/rbgtkaccelgroup.c +50 -40
- data/ext/gtk2/rbgtkaccelgroupentry.c +32 -20
- data/ext/gtk2/rbgtkaccelkey.c +40 -28
- data/ext/gtk2/rbgtkaccellabel.c +30 -18
- data/ext/gtk2/rbgtkaccelmap.c +55 -42
- data/ext/gtk2/rbgtkaccessible.c +25 -14
- data/ext/gtk2/rbgtkaction.c +68 -68
- data/ext/gtk2/rbgtkactiongroup.c +317 -195
- data/ext/gtk2/rbgtkadjustment.c +33 -46
- data/ext/gtk2/rbgtkalignment.c +36 -24
- data/ext/gtk2/rbgtkallocation.c +53 -42
- data/ext/gtk2/rbgtkarrow.c +34 -22
- data/ext/gtk2/rbgtkaspectframe.c +32 -20
- data/ext/gtk2/rbgtkassistant.c +81 -61
- data/ext/gtk2/rbgtkbbox.c +32 -20
- data/ext/gtk2/rbgtkbin.c +28 -16
- data/ext/gtk2/rbgtkbindingset.c +42 -35
- data/ext/gtk2/rbgtkborder.c +34 -23
- data/ext/gtk2/rbgtkbox.c +40 -29
- data/ext/gtk2/rbgtkbuildable.c +57 -45
- data/ext/gtk2/rbgtkbuilder.c +53 -38
- data/ext/gtk2/rbgtkbutton.c +41 -55
- data/ext/gtk2/rbgtkcalendar.c +51 -40
- data/ext/gtk2/rbgtkcelleditable.c +28 -17
- data/ext/gtk2/rbgtkcelllayout.c +41 -30
- data/ext/gtk2/rbgtkcellrenderer.c +43 -32
- data/ext/gtk2/rbgtkcellrendereraccel.c +26 -18
- data/ext/gtk2/rbgtkcellrenderercombo.c +25 -17
- data/ext/gtk2/rbgtkcellrendererpixbuf.c +24 -17
- data/ext/gtk2/rbgtkcellrendererprogress.c +25 -17
- data/ext/gtk2/rbgtkcellrendererspin.c +24 -16
- data/ext/gtk2/rbgtkcellrendererspinner.c +23 -11
- data/ext/gtk2/rbgtkcellrenderertext.c +28 -21
- data/ext/gtk2/rbgtkcellrenderertoggle.c +24 -16
- data/ext/gtk2/rbgtkcellview.c +34 -33
- data/ext/gtk2/rbgtkcheckbutton.c +28 -16
- data/ext/gtk2/rbgtkcheckmenuitem.c +31 -19
- data/ext/gtk2/rbgtkclipboard.c +123 -77
- data/ext/gtk2/rbgtkcolorbutton.c +26 -31
- data/ext/gtk2/rbgtkcolorsel.c +109 -55
- data/ext/gtk2/rbgtkcolorselectiondialog.c +28 -19
- data/ext/gtk2/rbgtkcombo.c +43 -32
- data/ext/gtk2/rbgtkcombobox.c +44 -83
- data/ext/gtk2/rbgtkcomboboxentry.c +26 -21
- data/ext/gtk2/rbgtkconst.c +23 -13
- data/ext/gtk2/rbgtkcontainer.c +153 -100
- data/ext/gtk2/rbgtkconversions.h +19 -6
- data/ext/gtk2/rbgtkcurve.c +46 -36
- data/ext/gtk2/rbgtkdialog.c +104 -70
- data/ext/gtk2/rbgtkdrag.c +173 -121
- data/ext/gtk2/rbgtkdrawingarea.c +28 -16
- data/ext/gtk2/rbgtkeditable.c +63 -51
- data/ext/gtk2/rbgtkentry.c +48 -85
- data/ext/gtk2/rbgtkentrycompletion.c +42 -55
- data/ext/gtk2/rbgtkeventbox.c +28 -16
- data/ext/gtk2/rbgtkexpander.c +26 -35
- data/ext/gtk2/rbgtkfilechooser.c +87 -143
- data/ext/gtk2/rbgtkfilechooserbutton.c +26 -32
- data/ext/gtk2/rbgtkfilechooserdialog.c +25 -15
- data/ext/gtk2/rbgtkfilechooserwidget.c +26 -15
- data/ext/gtk2/rbgtkfilefilter.c +45 -35
- data/ext/gtk2/rbgtkfilesel.c +54 -43
- data/ext/gtk2/rbgtkfilesystemerror.c +51 -0
- data/ext/gtk2/rbgtkfixed.c +36 -25
- data/ext/gtk2/rbgtkfontbutton.c +26 -37
- data/ext/gtk2/rbgtkfontselection.c +27 -15
- data/ext/gtk2/rbgtkfontselectiondialog.c +43 -32
- data/ext/gtk2/rbgtkframe.c +39 -28
- data/ext/gtk2/rbgtkgamma.c +32 -20
- data/ext/gtk2/rbgtkhandlebox.c +31 -19
- data/ext/gtk2/rbgtkhbbox.c +28 -16
- data/ext/gtk2/rbgtkhbox.c +29 -17
- data/ext/gtk2/rbgtkhpaned.c +28 -16
- data/ext/gtk2/rbgtkhruler.c +28 -16
- data/ext/gtk2/rbgtkhscale.c +28 -16
- data/ext/gtk2/rbgtkhscrollbar.c +28 -16
- data/ext/gtk2/rbgtkhseparator.c +28 -16
- data/ext/gtk2/rbgtkiconfactory.c +35 -23
- data/ext/gtk2/rbgtkiconinfo.c +42 -30
- data/ext/gtk2/rbgtkiconset.c +31 -19
- data/ext/gtk2/rbgtkiconsize.c +38 -25
- data/ext/gtk2/rbgtkiconsource.c +62 -50
- data/ext/gtk2/rbgtkicontheme.c +95 -95
- data/ext/gtk2/rbgtkiconview.c +87 -121
- data/ext/gtk2/rbgtkimage.c +31 -40
- data/ext/gtk2/rbgtkimagemenuitem.c +26 -14
- data/ext/gtk2/rbgtkimcontext.c +46 -34
- data/ext/gtk2/rbgtkimcontextsimple.c +47 -24
- data/ext/gtk2/rbgtkimmulticontext.c +26 -14
- data/ext/gtk2/rbgtkinputdialog.c +28 -16
- data/ext/gtk2/rbgtkinvisible.c +24 -18
- data/ext/gtk2/rbgtkitem.c +32 -20
- data/ext/gtk2/rbgtkitemfactory.c +65 -57
- data/ext/gtk2/rbgtklabel.c +46 -57
- data/ext/gtk2/rbgtklayout.c +40 -29
- data/ext/gtk2/rbgtklinkbutton.c +26 -15
- data/ext/gtk2/rbgtkliststore.c +145 -102
- data/ext/gtk2/rbgtkmacros.h +19 -6
- data/ext/gtk2/rbgtkmenu.c +47 -59
- data/ext/gtk2/rbgtkmenubar.c +30 -30
- data/ext/gtk2/rbgtkmenuitem.c +34 -41
- data/ext/gtk2/rbgtkmenushell.c +43 -42
- data/ext/gtk2/rbgtkmenutoolbutton.c +27 -16
- data/ext/gtk2/rbgtkmessagedialog.c +31 -25
- data/ext/gtk2/rbgtkmisc.c +33 -22
- data/ext/gtk2/rbgtknotebook.c +98 -134
- data/ext/gtk2/rbgtkobject.c +46 -81
- data/ext/gtk2/rbgtkoptionmenu.c +35 -23
- data/ext/gtk2/rbgtkpagesetup.c +64 -54
- data/ext/gtk2/rbgtkpagesetupunixdialog.c +34 -27
- data/ext/gtk2/rbgtkpaned.c +46 -36
- data/ext/gtk2/rbgtkpapersize.c +60 -54
- data/ext/gtk2/rbgtkplug.c +32 -20
- data/ext/gtk2/rbgtkprintcontext.c +43 -35
- data/ext/gtk2/rbgtkprinter.c +36 -37
- data/ext/gtk2/rbgtkprintjob.c +36 -37
- data/ext/gtk2/rbgtkprintoperation.c +44 -33
- data/ext/gtk2/rbgtkprintoperationpreview.c +30 -18
- data/ext/gtk2/rbgtkprintsettings.c +248 -192
- data/ext/gtk2/rbgtkprintunixdialog.c +33 -45
- data/ext/gtk2/rbgtkprogress.c +23 -13
- data/ext/gtk2/rbgtkprogressbar.c +47 -46
- data/ext/gtk2/rbgtkradioaction.c +84 -39
- data/ext/gtk2/rbgtkradiobutton.c +33 -21
- data/ext/gtk2/rbgtkradiomenuitem.c +86 -45
- data/ext/gtk2/rbgtkradiotoolbutton.c +99 -53
- data/ext/gtk2/rbgtkrange.c +36 -56
- data/ext/gtk2/rbgtkrc.c +61 -49
- data/ext/gtk2/rbgtkrcstyle.c +59 -48
- data/ext/gtk2/rbgtkrecentaction.c +28 -16
- data/ext/gtk2/rbgtkrecentchooser.c +58 -92
- data/ext/gtk2/rbgtkrecentchooserdialog.c +29 -18
- data/ext/gtk2/rbgtkrecentchoosermenu.c +25 -21
- data/ext/gtk2/rbgtkrecentchooserwidget.c +24 -13
- data/ext/gtk2/rbgtkrecentdata.c +47 -36
- data/ext/gtk2/rbgtkrecentfilter.c +55 -46
- data/ext/gtk2/rbgtkrecentfilterinfo.c +51 -40
- data/ext/gtk2/rbgtkrecentinfo.c +66 -56
- data/ext/gtk2/rbgtkrecentmanager.c +47 -43
- data/ext/gtk2/rbgtkruler.c +35 -30
- data/ext/gtk2/rbgtkscale.c +29 -18
- data/ext/gtk2/rbgtkscalebutton.c +27 -27
- data/ext/gtk2/rbgtkscrollbar.c +23 -13
- data/ext/gtk2/rbgtkscrolledwindow.c +44 -60
- data/ext/gtk2/rbgtkselection.c +87 -67
- data/ext/gtk2/rbgtkselectiondata.c +74 -65
- data/ext/gtk2/rbgtkseparator.c +23 -13
- data/ext/gtk2/rbgtkseparatormenuitem.c +25 -13
- data/ext/gtk2/rbgtkseparatortoolitem.c +26 -21
- data/ext/gtk2/rbgtksettings.c +123 -103
- data/ext/gtk2/rbgtksizegroup.c +33 -30
- data/ext/gtk2/rbgtksocket.c +32 -20
- data/ext/gtk2/rbgtkspinbutton.c +48 -38
- data/ext/gtk2/rbgtkspinner.c +27 -14
- data/ext/gtk2/rbgtkstatusbar.c +36 -31
- data/ext/gtk2/rbgtkstatusicon.c +31 -44
- data/ext/gtk2/rbgtkstock.c +137 -125
- data/ext/gtk2/rbgtkstyle.c +177 -161
- data/ext/gtk2/rbgtktable.c +58 -47
- data/ext/gtk2/rbgtktargetlist.c +56 -36
- data/ext/gtk2/rbgtktearoffmenuitem.c +28 -16
- data/ext/gtk2/rbgtktextappearance.c +44 -34
- data/ext/gtk2/rbgtktextattributes.c +54 -42
- data/ext/gtk2/rbgtktextbuffer.c +188 -191
- data/ext/gtk2/rbgtktextchild.c +29 -18
- data/ext/gtk2/rbgtktextiter.c +153 -145
- data/ext/gtk2/rbgtktextmark.c +33 -30
- data/ext/gtk2/rbgtktexttag.c +34 -22
- data/ext/gtk2/rbgtktexttagtable.c +36 -25
- data/ext/gtk2/rbgtktextview.c +85 -73
- data/ext/gtk2/rbgtktoggleaction.c +27 -22
- data/ext/gtk2/rbgtktogglebutton.c +37 -26
- data/ext/gtk2/rbgtktoggletoolbutton.c +26 -20
- data/ext/gtk2/rbgtktoolbar.c +66 -69
- data/ext/gtk2/rbgtktoolbutton.c +27 -40
- data/ext/gtk2/rbgtktoolitem.c +60 -62
- data/ext/gtk2/rbgtktooltip.c +36 -25
- data/ext/gtk2/rbgtktooltips.c +42 -34
- data/ext/gtk2/rbgtktreedragdest.c +20 -11
- data/ext/gtk2/rbgtktreedragsource.c +20 -11
- data/ext/gtk2/rbgtktreeiter.c +58 -47
- data/ext/gtk2/rbgtktreemodel.c +83 -65
- data/ext/gtk2/rbgtktreemodelfilter.c +47 -35
- data/ext/gtk2/rbgtktreemodelsort.c +38 -27
- data/ext/gtk2/rbgtktreepath.c +55 -44
- data/ext/gtk2/rbgtktreerowreference.c +60 -42
- data/ext/gtk2/rbgtktreeselection.c +61 -52
- data/ext/gtk2/rbgtktreesortable.c +52 -42
- data/ext/gtk2/rbgtktreestore.c +88 -67
- data/ext/gtk2/rbgtktreeview.c +157 -185
- data/ext/gtk2/rbgtktreeviewcolumn.c +57 -62
- data/ext/gtk2/rbgtkuimanager.c +61 -61
- data/ext/gtk2/rbgtkvbbox.c +28 -16
- data/ext/gtk2/rbgtkvbox.c +29 -17
- data/ext/gtk2/rbgtkviewport.c +28 -16
- data/ext/gtk2/rbgtkvolumebutton.c +28 -16
- data/ext/gtk2/rbgtkvpaned.c +28 -16
- data/ext/gtk2/rbgtkvruler.c +28 -16
- data/ext/gtk2/rbgtkvscale.c +28 -16
- data/ext/gtk2/rbgtkvscrollbar.c +28 -16
- data/ext/gtk2/rbgtkvseparator.c +28 -16
- data/ext/gtk2/rbgtkwidget.c +284 -296
- data/ext/gtk2/rbgtkwindow.c +156 -214
- data/ext/gtk2/rbgtkwindowgroup.c +35 -24
- data/sample/testgtk/labels.rb +1 -0
- data/sample/testgtk/testgtk.rb +2 -0
- metadata +16 -17
- data/ChangeLog +0 -6902
- data/ext/gtk2/rbgtkmain.c +0 -493
data/ext/gtk2/gtk2.def
CHANGED
@@ -4,7 +4,9 @@ EXPORTS
|
|
4
4
|
rb_cGdkColor DATA
|
5
5
|
mGtk DATA
|
6
6
|
exec_callback
|
7
|
-
|
7
|
+
rbgdk_rval2gdkpoints
|
8
|
+
rbgdk_rval2gdkatoms
|
9
|
+
rbgdk_rval2gdkpixbufglist
|
8
10
|
gdk_atom_get_type
|
9
11
|
gdk_geometry_get_type
|
10
12
|
gdk_region_get_type
|
@@ -13,13 +15,13 @@ EXPORTS
|
|
13
15
|
get_gdkevent
|
14
16
|
gtk_accel_group_entry_get_type
|
15
17
|
gtk_accel_key_get_type
|
16
|
-
gtk_notebookpage_get_type
|
17
18
|
gtk_target_list_get_type
|
18
19
|
gtk_bindingset_get_type
|
19
20
|
make_gdkevent
|
20
|
-
notebookpage_copy
|
21
21
|
rbgtk_atom2selectiondata
|
22
22
|
rbgtk_atom2selectiondata_free
|
23
|
+
rbgtk_rval2gtktargetentries
|
24
|
+
rbgtk_rval2gtktargetentries_accept_nil
|
23
25
|
rbgtk_get_target_entry
|
24
26
|
rbgtk_initialize_gtkobject
|
25
27
|
rbgtk_register_treeiter_set_value_func
|
data/ext/gtk2/init.c
CHANGED
@@ -1,28 +1,36 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
2
|
+
/*
|
3
|
+
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
+
* Copyright (C) 2002-2006 Ruby-GNOME2 Project Team
|
5
|
+
* Copyright (C) 1998-2001 Yukihiro Matsumoto,
|
6
|
+
* Daisuke Kanda,
|
7
|
+
* Hiroshi Igarashi
|
8
|
+
*
|
9
|
+
* This library is free software; you can redistribute it and/or
|
10
|
+
* modify it under the terms of the GNU Lesser General Public
|
11
|
+
* License as published by the Free Software Foundation; either
|
12
|
+
* version 2.1 of the License, or (at your option) any later version.
|
13
|
+
*
|
14
|
+
* This library is distributed in the hope that it will be useful,
|
15
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
17
|
+
* Lesser General Public License for more details.
|
18
|
+
*
|
19
|
+
* You should have received a copy of the GNU Lesser General Public
|
20
|
+
* License along with this library; if not, write to the Free Software
|
21
|
+
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
22
|
+
* MA 02110-1301 USA
|
23
|
+
*/
|
14
24
|
|
15
25
|
#include "global.h"
|
16
26
|
#include "gmodule.h"
|
17
27
|
|
18
|
-
extern void Init_gtk_gdk();
|
19
|
-
extern void Init_gtk_gtk();
|
20
|
-
extern void Init_gtk_inits();
|
21
|
-
|
22
28
|
VALUE treeiter_set_value_table;
|
23
29
|
|
30
|
+
extern void Init_gtk2(void);
|
31
|
+
|
24
32
|
void
|
25
|
-
Init_gtk2()
|
33
|
+
Init_gtk2(void)
|
26
34
|
{
|
27
35
|
/*
|
28
36
|
* For Gtk::TreeModel, Gtk::TreeIter.
|
@@ -34,6 +42,242 @@ Init_gtk2()
|
|
34
42
|
Init_gtk_gdk();
|
35
43
|
Init_gtk_gtk();
|
36
44
|
|
37
|
-
|
38
|
-
|
45
|
+
Init_gtk_gdk_atom(mGdk);
|
46
|
+
Init_gtk_gdk_cairo();
|
47
|
+
Init_gtk_gdk_color(mGdk);
|
48
|
+
Init_gtk_gdk_colormap(mGdk);
|
49
|
+
Init_gtk_gdk_const(mGdk);
|
50
|
+
Init_gtk_gdk_cursor(mGdk);
|
51
|
+
Init_gtk_gdk_device(mGdk);
|
52
|
+
Init_gtk_gdk_display(mGdk);
|
53
|
+
Init_gtk_gdk_display_manager(mGdk);
|
54
|
+
Init_gtk_gdk_dragcontext(mGdk);
|
55
|
+
Init_gtk_gdk_event(mGdk);
|
56
|
+
Init_gtk_gdk_geometry(mGdk);
|
57
|
+
Init_gtk_gdk_image(mGdk);
|
58
|
+
Init_gtk_gdk_input(mGdk);
|
59
|
+
Init_gtk_gdk_keymap(mGdk);
|
60
|
+
Init_gtk_gdk_keyval(mGdk);
|
61
|
+
Init_gtk_gdk_pango(mGdk);
|
62
|
+
Init_gtk_gdk_pangorenderer(mGdk);
|
63
|
+
Init_gtk_gdk_pixbuf(mGdk);
|
64
|
+
Init_gtk_gdk_pixmap(mGdk);
|
65
|
+
Init_gtk_gdk_property(mGdk);
|
66
|
+
Init_gtk_gdk_rectangle(mGdk);
|
67
|
+
Init_gtk_gdk_region(mGdk);
|
68
|
+
Init_gtk_gdk_rgb(mGdk);
|
69
|
+
Init_gtk_gdk_screen(mGdk);
|
70
|
+
Init_gtk_gdk_selection(mGdk);
|
71
|
+
Init_gtk_gdk_threads(mGdk);
|
72
|
+
Init_gtk_gdk_timecoord(mGdk);
|
73
|
+
Init_gtk_gdk_visual(mGdk);
|
74
|
+
Init_gtk_gdk_window(mGdk);
|
75
|
+
Init_gtk_gdk_windowattr(mGdk);
|
76
|
+
Init_gtk_gdk_x11(mGdk);
|
77
|
+
Init_gtk_aboutdialog(mGtk);
|
78
|
+
Init_gtk_accelerator(mGtk);
|
79
|
+
Init_gtk_accel_group(mGtk);
|
80
|
+
Init_gtk_accel_group_entry(mGtk);
|
81
|
+
Init_gtk_accel_key(mGtk);
|
82
|
+
Init_gtk_accel_label(mGtk);
|
83
|
+
Init_gtk_accel_map(mGtk);
|
84
|
+
Init_gtk_accessible(mGtk);
|
85
|
+
Init_gtk_action(mGtk);
|
86
|
+
Init_gtk_actiongroup(mGtk);
|
87
|
+
Init_gtk_adjustment(mGtk);
|
88
|
+
Init_gtk_alignment(mGtk);
|
89
|
+
Init_gtk_allocation(mGtk);
|
90
|
+
Init_gtk_arrow(mGtk);
|
91
|
+
Init_gtk_aspect_frame(mGtk);
|
92
|
+
Init_gtk_assistant(mGtk);
|
93
|
+
Init_gtk_button_box(mGtk);
|
94
|
+
Init_gtk_bin(mGtk);
|
95
|
+
Init_gtk_bindings(mGtk);
|
96
|
+
Init_gtk_border(mGtk);
|
97
|
+
Init_gtk_box(mGtk);
|
98
|
+
Init_gtk_buildable(mGtk);
|
99
|
+
Init_gtk_builder(mGtk);
|
100
|
+
Init_gtk_button(mGtk);
|
101
|
+
Init_gtk_calendar(mGtk);
|
102
|
+
Init_gtk_celleditable(mGtk);
|
103
|
+
Init_gtk_celllayout(mGtk);
|
104
|
+
Init_gtk_cellrenderer(mGtk);
|
105
|
+
Init_gtk_cellrendereraccel(mGtk);
|
106
|
+
Init_gtk_cellrenderercombo(mGtk);
|
107
|
+
Init_gtk_cellrendererpixbuf(mGtk);
|
108
|
+
Init_gtk_cellrendererprogress(mGtk);
|
109
|
+
Init_gtk_cellrendererspin(mGtk);
|
110
|
+
Init_gtk_cellrendererspinner(mGtk);
|
111
|
+
Init_gtk_cellrenderertext(mGtk);
|
112
|
+
Init_gtk_cellrenderertoggle(mGtk);
|
113
|
+
Init_gtk_cellview(mGtk);
|
114
|
+
Init_gtk_check_button(mGtk);
|
115
|
+
Init_gtk_check_menu_item(mGtk);
|
116
|
+
Init_gtk_clipboard(mGtk);
|
117
|
+
Init_gtk_colorbutton(mGtk);
|
118
|
+
Init_gtk_color_selection(mGtk);
|
119
|
+
Init_gtk_color_selection_dialog(mGtk);
|
120
|
+
Init_gtk_combo(mGtk);
|
121
|
+
Init_gtk_combobox(mGtk);
|
122
|
+
Init_gtk_comboboxentry(mGtk);
|
123
|
+
Init_gtk_const(mGtk);
|
124
|
+
Init_gtk_container(mGtk);
|
125
|
+
Init_gtk_curve(mGtk);
|
126
|
+
Init_gtk_dialog(mGtk);
|
127
|
+
Init_gtk_drag(mGtk);
|
128
|
+
Init_gtk_drawing_area(mGtk);
|
129
|
+
Init_gtk_editable(mGtk);
|
130
|
+
Init_gtk_entry(mGtk);
|
131
|
+
Init_gtk_entry_completion(mGtk);
|
132
|
+
Init_gtk_eventbox(mGtk);
|
133
|
+
Init_gtk_expander(mGtk);
|
134
|
+
Init_gtk_file_chooser(mGtk);
|
135
|
+
Init_gtk_filesystemerror(mGtk);
|
136
|
+
Init_gtk_filechooserbutton(mGtk);
|
137
|
+
Init_gtk_file_chooser_dialog(mGtk);
|
138
|
+
Init_gtk_file_chooser_widget(mGtk);
|
139
|
+
Init_gtk_file_filter(mGtk);
|
140
|
+
Init_gtk_file_selection(mGtk);
|
141
|
+
Init_gtk_fixed(mGtk);
|
142
|
+
Init_gtk_fontbutton(mGtk);
|
143
|
+
Init_gtk_font_selection(mGtk);
|
144
|
+
Init_gtk_font_selection_dialog(mGtk);
|
145
|
+
Init_gtk_frame(mGtk);
|
146
|
+
Init_gtk_gamma_curve(mGtk);
|
147
|
+
Init_gtk_gdk_draw(mGdk);
|
148
|
+
Init_gtk_gdk_gc(mGdk);
|
149
|
+
Init_gtk_handle_box(mGtk);
|
150
|
+
Init_gtk_hbutton_box(mGtk);
|
151
|
+
Init_gtk_hbox(mGtk);
|
152
|
+
Init_gtk_hpaned(mGtk);
|
153
|
+
Init_gtk_hruler(mGtk);
|
154
|
+
Init_gtk_hscale(mGtk);
|
155
|
+
Init_gtk_hscrollbar(mGtk);
|
156
|
+
Init_gtk_hseparator(mGtk);
|
157
|
+
Init_gtk_icon_factory(mGtk);
|
158
|
+
Init_gtk_iconinfo(mGtk);
|
159
|
+
Init_gtk_icon_set(mGtk);
|
160
|
+
Init_gtk_icon_size(mGtk);
|
161
|
+
Init_gtk_icon_source(mGtk);
|
162
|
+
Init_gtk_icon_theme(mGtk);
|
163
|
+
Init_gtk_iconview(mGtk);
|
164
|
+
Init_gtk_image(mGtk);
|
165
|
+
Init_gtk_image_menu_item(mGtk);
|
166
|
+
Init_gtk_imcontext(mGtk);
|
167
|
+
Init_gtk_imcontext_simple(mGtk);
|
168
|
+
Init_gtk_im_multicontext(mGtk);
|
169
|
+
Init_gtk_input_dialog(mGtk);
|
170
|
+
Init_gtk_invisible(mGtk);
|
171
|
+
Init_gtk_item(mGtk);
|
172
|
+
Init_gtk_itemfactory(mGtk);
|
173
|
+
Init_gtk_label(mGtk);
|
174
|
+
Init_gtk_layout(mGtk);
|
175
|
+
Init_gtk_link_button(mGtk);
|
176
|
+
Init_gtk_list_store(mGtk);
|
177
|
+
Init_gtk_menu(mGtk);
|
178
|
+
Init_gtk_menu_bar(mGtk);
|
179
|
+
Init_gtk_menu_item(mGtk);
|
180
|
+
Init_gtk_menu_shell(mGtk);
|
181
|
+
Init_gtk_menutoolbutton(mGtk);
|
182
|
+
Init_gtk_message_dialog(mGtk);
|
183
|
+
Init_gtk_misc(mGtk);
|
184
|
+
Init_gtk_notebook(mGtk);
|
185
|
+
Init_gtk_object(mGtk);
|
186
|
+
Init_gtk_option_menu(mGtk);
|
187
|
+
Init_gtk_page_setup(mGtk);
|
188
|
+
Init_gtk_page_setup_unix_dialog(mGtk);
|
189
|
+
Init_gtk_paned(mGtk);
|
190
|
+
Init_gtk_paper_size(mGtk);
|
191
|
+
Init_gtk_plug(mGtk);
|
192
|
+
Init_gtk_print_context(mGtk);
|
193
|
+
Init_gtk_printer(mGtk);
|
194
|
+
Init_gtk_print_job(mGtk);
|
195
|
+
Init_gtk_print_operation(mGtk);
|
196
|
+
Init_gtk_print_operation_preview(mGtk);
|
197
|
+
Init_gtk_print_settings(mGtk);
|
198
|
+
Init_gtk_print_unix_dialog(mGtk);
|
199
|
+
Init_gtk_progress(mGtk);
|
200
|
+
Init_gtk_progress_bar(mGtk);
|
201
|
+
Init_gtk_radio_action(mGtk);
|
202
|
+
Init_gtk_radio_button(mGtk);
|
203
|
+
Init_gtk_radio_menu_item(mGtk);
|
204
|
+
Init_gtk_radiotoolbutton(mGtk);
|
205
|
+
Init_gtk_range(mGtk);
|
206
|
+
Init_gtk_rc(mGtk);
|
207
|
+
Init_gtk_rcstyle(mGtk);
|
208
|
+
Init_gtk_recentaction(mGtk);
|
209
|
+
Init_gtk_recent_chooser(mGtk);
|
210
|
+
Init_gtk_recent_chooser_dialog(mGtk);
|
211
|
+
Init_gtk_recent_chooser_menu(mGtk);
|
212
|
+
Init_gtk_recent_chooser_widget(mGtk);
|
213
|
+
Init_gtk_recent_data(mGtk);
|
214
|
+
Init_gtk_recent_filter(mGtk);
|
215
|
+
Init_gtk_recent_filter_info(mGtk);
|
216
|
+
Init_gtk_recent_info(mGtk);
|
217
|
+
Init_gtk_recent_manager(mGtk);
|
218
|
+
Init_gtk_ruler(mGtk);
|
219
|
+
Init_gtk_scale(mGtk);
|
220
|
+
Init_gtk_scalebutton(mGtk);
|
221
|
+
Init_gtk_scrollbar(mGtk);
|
222
|
+
Init_gtk_scrolled_window(mGtk);
|
223
|
+
Init_gtk_selection(mGtk);
|
224
|
+
Init_gtk_selectiondata(mGtk);
|
225
|
+
Init_gtk_separator(mGtk);
|
226
|
+
Init_gtk_separator_menu_item(mGtk);
|
227
|
+
Init_gtk_separatortoolitem(mGtk);
|
228
|
+
Init_gtk_settings(mGtk);
|
229
|
+
Init_gtk_size_group(mGtk);
|
230
|
+
Init_gtk_socket(mGtk);
|
231
|
+
Init_gtk_spin_button(mGtk);
|
232
|
+
Init_gtk_spinner(mGtk);
|
233
|
+
Init_gtk_statusbar(mGtk);
|
234
|
+
Init_gtk_status_icon(mGtk);
|
235
|
+
Init_gtk_stock(mGtk);
|
236
|
+
Init_gtk_style(mGtk);
|
237
|
+
Init_gtk_table(mGtk);
|
238
|
+
Init_gtk_target_list(mGtk);
|
239
|
+
Init_gtk_tearoff_menu_item(mGtk);
|
240
|
+
Init_gtk_text_appearance(mGtk);
|
241
|
+
Init_gtk_text_attributes(mGtk);
|
242
|
+
Init_gtk_textbuffer(mGtk);
|
243
|
+
Init_gtk_textchild(mGtk);
|
244
|
+
Init_gtk_textiter(mGtk);
|
245
|
+
Init_gtk_textmark(mGtk);
|
246
|
+
Init_gtk_texttag(mGtk);
|
247
|
+
Init_gtk_text_tag_table(mGtk);
|
248
|
+
Init_gtk_textview(mGtk);
|
249
|
+
Init_gtk_toggle_action(mGtk);
|
250
|
+
Init_gtk_toggle_button(mGtk);
|
251
|
+
Init_gtk_toggletoolbutton(mGtk);
|
252
|
+
Init_gtk_toolbar(mGtk);
|
253
|
+
Init_gtk_toolbutton(mGtk);
|
254
|
+
Init_gtk_toolitem(mGtk);
|
255
|
+
Init_gtk_tooltip(mGtk);
|
256
|
+
Init_gtk_tooltips(mGtk);
|
257
|
+
Init_gtk_treedragdest(mGtk);
|
258
|
+
Init_gtk_treedragsource(mGtk);
|
259
|
+
Init_gtk_treeiter(mGtk);
|
260
|
+
Init_gtk_treemodel(mGtk);
|
261
|
+
Init_gtk_treemodelfilter(mGtk);
|
262
|
+
Init_gtk_tmodelsort(mGtk);
|
263
|
+
Init_gtk_treepath(mGtk);
|
264
|
+
Init_gtk_treerowreference(mGtk);
|
265
|
+
Init_gtk_treeselection(mGtk);
|
266
|
+
Init_gtk_treesortable(mGtk);
|
267
|
+
Init_gtk_tree_store(mGtk);
|
268
|
+
Init_gtk_treeview(mGtk);
|
269
|
+
Init_gtk_treeviewcolumn(mGtk);
|
270
|
+
Init_gtk_uimanager(mGtk);
|
271
|
+
Init_gtk_vbutton_box(mGtk);
|
272
|
+
Init_gtk_vbox(mGtk);
|
273
|
+
Init_gtk_viewport(mGtk);
|
274
|
+
Init_gtk_volumebutton(mGtk);
|
275
|
+
Init_gtk_vpaned(mGtk);
|
276
|
+
Init_gtk_vruler(mGtk);
|
277
|
+
Init_gtk_vscale(mGtk);
|
278
|
+
Init_gtk_vscrollbar(mGtk);
|
279
|
+
Init_gtk_vseparator(mGtk);
|
280
|
+
Init_gtk_widget(mGtk);
|
281
|
+
Init_gtk_window(mGtk);
|
282
|
+
Init_gtk_windowgroup(mGtk);
|
39
283
|
}
|
data/ext/gtk2/rbgdk.c
CHANGED
@@ -1,20 +1,32 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
2
|
+
/*
|
3
|
+
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
+
* Copyright (C) 2002,2003 Ruby-GNOME2 Project Team
|
5
|
+
* Copyright (C) 1998-2000 Yukihiro Matsumoto,
|
6
|
+
* Daisuke Kanda,
|
7
|
+
* Hiroshi Igarashi
|
8
|
+
*
|
9
|
+
* This library is free software; you can redistribute it and/or
|
10
|
+
* modify it under the terms of the GNU Lesser General Public
|
11
|
+
* License as published by the Free Software Foundation; either
|
12
|
+
* version 2.1 of the License, or (at your option) any later version.
|
13
|
+
*
|
14
|
+
* This library is distributed in the hope that it will be useful,
|
15
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
17
|
+
* Lesser General Public License for more details.
|
18
|
+
*
|
19
|
+
* You should have received a copy of the GNU Lesser General Public
|
20
|
+
* License along with this library; if not, write to the Free Software
|
21
|
+
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
22
|
+
* MA 02110-1301 USA
|
23
|
+
*/
|
14
24
|
|
15
25
|
#include "global.h"
|
16
26
|
|
17
|
-
|
27
|
+
#define RG_TARGET_NAMESPACE mGdk
|
28
|
+
|
29
|
+
VALUE RG_TARGET_NAMESPACE;
|
18
30
|
|
19
31
|
/* We don't need them.
|
20
32
|
void gdk_init (gint *argc,
|
@@ -25,22 +37,156 @@ void gdk_parse_args (gint *argc,
|
|
25
37
|
gchar ***argv);
|
26
38
|
*/
|
27
39
|
|
40
|
+
struct rbgdk_rval2gdkpoints_args {
|
41
|
+
VALUE ary;
|
42
|
+
long n;
|
43
|
+
GdkPoint *result;
|
44
|
+
};
|
45
|
+
|
46
|
+
static VALUE
|
47
|
+
rbgdk_rval2gdkpoints_body(VALUE value)
|
48
|
+
{
|
49
|
+
long i;
|
50
|
+
struct rbgdk_rval2gdkpoints_args *args = (struct rbgdk_rval2gdkpoints_args *)value;
|
51
|
+
|
52
|
+
for (i = 0; i < args->n; i++) {
|
53
|
+
VALUE points = rb_ary_to_ary(RARRAY_PTR(args->ary)[i]);
|
54
|
+
|
55
|
+
if (RARRAY_LEN(points) != 2)
|
56
|
+
rb_raise(rb_eArgError, "point %ld should be array of size 2", i);
|
57
|
+
|
58
|
+
args->result[i].x = NUM2INT(RARRAY_PTR(points)[0]);
|
59
|
+
args->result[i].y = NUM2INT(RARRAY_PTR(points)[1]);
|
60
|
+
}
|
61
|
+
|
62
|
+
return Qnil;
|
63
|
+
}
|
64
|
+
|
65
|
+
static G_GNUC_NORETURN VALUE
|
66
|
+
rbgdk_rval2gdkpoints_rescue(VALUE value)
|
67
|
+
{
|
68
|
+
g_free(((struct rbgdk_rval2gdkpoints_args *)value)->result);
|
69
|
+
|
70
|
+
rb_exc_raise(rb_errinfo());
|
71
|
+
}
|
72
|
+
|
73
|
+
GdkPoint *
|
74
|
+
rbgdk_rval2gdkpoints(VALUE value, long *n)
|
75
|
+
{
|
76
|
+
struct rbgdk_rval2gdkpoints_args args;
|
77
|
+
|
78
|
+
args.ary = rb_ary_to_ary(value);
|
79
|
+
args.n = RARRAY_LEN(args.ary);
|
80
|
+
args.result = g_new(GdkPoint, args.n + 1);
|
81
|
+
|
82
|
+
rb_rescue(rbgdk_rval2gdkpoints_body, (VALUE)&args,
|
83
|
+
rbgdk_rval2gdkpoints_rescue, (VALUE)&args);
|
84
|
+
|
85
|
+
*n = args.n;
|
86
|
+
|
87
|
+
return args.result;
|
88
|
+
}
|
89
|
+
|
90
|
+
struct rbgdk_rval2gdkatoms_args {
|
91
|
+
VALUE ary;
|
92
|
+
long n;
|
93
|
+
GdkAtom *result;
|
94
|
+
};
|
95
|
+
|
96
|
+
static VALUE
|
97
|
+
rbgdk_rval2gdkatoms_body(VALUE value)
|
98
|
+
{
|
99
|
+
long i;
|
100
|
+
struct rbgdk_rval2gdkatoms_args *args = (struct rbgdk_rval2gdkatoms_args *)value;
|
101
|
+
|
102
|
+
for (i = 0; i < args->n; i++)
|
103
|
+
args->result[i] = RVAL2ATOM(RARRAY_PTR(args->ary)[i]);
|
104
|
+
|
105
|
+
return Qnil;
|
106
|
+
}
|
107
|
+
|
108
|
+
static G_GNUC_NORETURN VALUE
|
109
|
+
rbgdk_rval2gdkatoms_rescue(VALUE value)
|
110
|
+
{
|
111
|
+
g_free(((struct rbgdk_rval2gdkatoms_args *)value)->result);
|
112
|
+
|
113
|
+
rb_exc_raise(rb_errinfo());
|
114
|
+
}
|
115
|
+
|
116
|
+
GdkAtom *
|
117
|
+
rbgdk_rval2gdkatoms(VALUE value, long *n)
|
118
|
+
{
|
119
|
+
struct rbgdk_rval2gdkatoms_args args;
|
120
|
+
|
121
|
+
args.ary = rb_ary_to_ary(value);
|
122
|
+
args.n = RARRAY_LEN(args.ary);
|
123
|
+
args.result = g_new(GdkAtom, args.n + 1);
|
124
|
+
|
125
|
+
rb_rescue(rbgdk_rval2gdkatoms_body, (VALUE)&args,
|
126
|
+
rbgdk_rval2gdkatoms_rescue, (VALUE)&args);
|
127
|
+
|
128
|
+
*n = args.n;
|
129
|
+
|
130
|
+
return args.result;
|
131
|
+
}
|
132
|
+
|
133
|
+
struct rval2gdkpixbufglist_args {
|
134
|
+
VALUE ary;
|
135
|
+
long n;
|
136
|
+
GList *result;
|
137
|
+
};
|
138
|
+
|
139
|
+
static VALUE
|
140
|
+
rbgdk_rval2gdkpixbufglist_body(VALUE value)
|
141
|
+
{
|
142
|
+
long i;
|
143
|
+
struct rval2gdkpixbufglist_args *args = (struct rval2gdkpixbufglist_args *)value;
|
144
|
+
|
145
|
+
for (i = 0; i < args->n; i++)
|
146
|
+
args->result = g_list_append(args->result, GDK_PIXBUF(RVAL2GOBJ(RARRAY_PTR(args->ary)[i])));
|
147
|
+
|
148
|
+
return Qnil;
|
149
|
+
}
|
150
|
+
|
151
|
+
static G_GNUC_NORETURN VALUE
|
152
|
+
rbgdk_rval2gdkpixbufglist_rescue(VALUE value)
|
153
|
+
{
|
154
|
+
g_list_free(((struct rval2gdkpixbufglist_args *)value)->result);
|
155
|
+
|
156
|
+
rb_exc_raise(rb_errinfo());
|
157
|
+
}
|
158
|
+
|
159
|
+
GList *
|
160
|
+
rbgdk_rval2gdkpixbufglist(VALUE value)
|
161
|
+
{
|
162
|
+
struct rval2gdkpixbufglist_args args;
|
163
|
+
|
164
|
+
args.ary = rb_ary_to_ary(value);
|
165
|
+
args.n = RARRAY_LEN(args.ary);
|
166
|
+
args.result = NULL;
|
167
|
+
|
168
|
+
rb_rescue(rbgdk_rval2gdkpixbufglist_body, (VALUE)&args,
|
169
|
+
rbgdk_rval2gdkpixbufglist_rescue, (VALUE)&args);
|
170
|
+
|
171
|
+
return args.result;
|
172
|
+
}
|
173
|
+
|
28
174
|
#if GTK_CHECK_VERSION(2,2,0)
|
29
175
|
static VALUE
|
30
|
-
|
176
|
+
rg_m_display_arg_name(G_GNUC_UNUSED VALUE self)
|
31
177
|
{
|
32
178
|
return CSTR2RVAL(gdk_get_display_arg_name());
|
33
179
|
}
|
34
180
|
#endif
|
35
181
|
|
36
182
|
static VALUE
|
37
|
-
|
183
|
+
rg_m_set_locale(G_GNUC_UNUSED VALUE self)
|
38
184
|
{
|
39
185
|
return CSTR2RVAL(gdk_set_locale());
|
40
186
|
}
|
41
187
|
|
42
188
|
static VALUE
|
43
|
-
|
189
|
+
rg_m_set_sm_client_id(VALUE self, VALUE id)
|
44
190
|
{
|
45
191
|
gdk_set_sm_client_id(NIL_P(id) ? NULL : RVAL2CSTR(id));
|
46
192
|
return self;
|
@@ -48,21 +194,21 @@ gdk_s_set_sm_client_id(VALUE self, VALUE id)
|
|
48
194
|
|
49
195
|
#if GTK_CHECK_VERSION(2,2,0)
|
50
196
|
static VALUE
|
51
|
-
|
197
|
+
rg_m_notify_startup_complete(int argc, VALUE *argv, VALUE self)
|
52
198
|
{
|
53
199
|
VALUE startup_id;
|
54
200
|
|
55
201
|
rb_scan_args(argc, argv, "01", &startup_id);
|
56
202
|
|
57
203
|
if (NIL_P(startup_id)) {
|
58
|
-
|
204
|
+
gdk_notify_startup_complete();
|
59
205
|
} else {
|
60
206
|
#if GTK_CHECK_VERSION(2, 12, 0)
|
61
|
-
|
207
|
+
gdk_notify_startup_complete_with_id(RVAL2CSTR(startup_id));
|
62
208
|
#else
|
63
|
-
|
64
|
-
|
65
|
-
|
209
|
+
rb_raise(rb_eNotImpError,
|
210
|
+
"GTK+ >= 2.12 is required to use "
|
211
|
+
"Gdk.notify_startup_complete with startup ID.");
|
66
212
|
#endif
|
67
213
|
}
|
68
214
|
return self;
|
@@ -70,20 +216,20 @@ gdk_s_notify_startup_complete(int argc, VALUE *argv, VALUE self)
|
|
70
216
|
#endif
|
71
217
|
|
72
218
|
static VALUE
|
73
|
-
|
219
|
+
rg_m_program_class(G_GNUC_UNUSED VALUE self)
|
74
220
|
{
|
75
221
|
return CSTR2RVAL(gdk_get_program_class());
|
76
222
|
}
|
77
223
|
|
78
224
|
static VALUE
|
79
|
-
|
225
|
+
rg_m_set_program_class(VALUE self, VALUE program_class)
|
80
226
|
{
|
81
227
|
gdk_set_program_class(RVAL2CSTR(program_class));
|
82
228
|
return self;
|
83
229
|
}
|
84
230
|
|
85
231
|
static VALUE
|
86
|
-
|
232
|
+
rg_m_display(G_GNUC_UNUSED VALUE self)
|
87
233
|
{
|
88
234
|
return CSTR2RVAL(gdk_get_display());
|
89
235
|
}
|
@@ -100,7 +246,7 @@ static int
|
|
100
246
|
rbgdk_x_error(Display *display, XErrorEvent *error)
|
101
247
|
{
|
102
248
|
gchar buf[64];
|
103
|
-
|
249
|
+
|
104
250
|
XGetErrorText(display, error->error_code, buf, 63);
|
105
251
|
|
106
252
|
rb_funcall((VALUE)rb_x_error, id_call, 4, INT2NUM(error->serial),
|
@@ -125,7 +271,7 @@ rbgdk_x_io_error(Display *display)
|
|
125
271
|
disp = "(none)";
|
126
272
|
|
127
273
|
error = g_strerror(errno_saved);
|
128
|
-
|
274
|
+
|
129
275
|
rb_funcall((VALUE)rb_x_io_error, id_call, 3, CSTR2RVAL(disp),
|
130
276
|
INT2NUM(errno), CSTR2RVAL(error));
|
131
277
|
return 0;
|
@@ -134,7 +280,7 @@ rbgdk_x_io_error(Display *display)
|
|
134
280
|
#endif
|
135
281
|
|
136
282
|
static VALUE
|
137
|
-
|
283
|
+
rg_m_set_x_error_handler(VALUE self)
|
138
284
|
{
|
139
285
|
#ifdef HAVE_XGETERRORTEXT
|
140
286
|
rb_x_error = rb_block_proc();
|
@@ -147,7 +293,7 @@ gdk_s_set_x_error_handler(VALUE self)
|
|
147
293
|
}
|
148
294
|
|
149
295
|
static VALUE
|
150
|
-
|
296
|
+
rg_m_set_x_io_error_handler(VALUE self)
|
151
297
|
{
|
152
298
|
#ifdef HAVE_XGETERRORTEXT
|
153
299
|
rb_x_io_error = rb_block_proc();
|
@@ -160,38 +306,38 @@ gdk_s_set_x_io_error_handler(VALUE self)
|
|
160
306
|
}
|
161
307
|
|
162
308
|
static VALUE
|
163
|
-
|
309
|
+
rg_m_flush(VALUE self)
|
164
310
|
{
|
165
311
|
gdk_flush();
|
166
312
|
return self;
|
167
313
|
}
|
168
314
|
|
169
315
|
static VALUE
|
170
|
-
|
316
|
+
rg_m_screen_width(G_GNUC_UNUSED VALUE self)
|
171
317
|
{
|
172
318
|
return INT2NUM(gdk_screen_width());
|
173
319
|
}
|
174
320
|
|
175
321
|
static VALUE
|
176
|
-
|
322
|
+
rg_m_screen_width_mm(G_GNUC_UNUSED VALUE self)
|
177
323
|
{
|
178
324
|
return INT2NUM(gdk_screen_width_mm());
|
179
325
|
}
|
180
326
|
|
181
327
|
static VALUE
|
182
|
-
|
328
|
+
rg_m_screen_height(G_GNUC_UNUSED VALUE self)
|
183
329
|
{
|
184
330
|
return INT2NUM(gdk_screen_height());
|
185
331
|
}
|
186
332
|
|
187
333
|
static VALUE
|
188
|
-
|
334
|
+
rg_m_screen_height_mm(G_GNUC_UNUSED VALUE self)
|
189
335
|
{
|
190
336
|
return INT2NUM(gdk_screen_height_mm());
|
191
337
|
}
|
192
338
|
|
193
339
|
static VALUE
|
194
|
-
|
340
|
+
rg_m_pointer_grab(G_GNUC_UNUSED VALUE self, VALUE win, VALUE owner_events, VALUE event_mask, VALUE confine_to, VALUE cursor, VALUE time)
|
195
341
|
{
|
196
342
|
return GENUM2RVAL(gdk_pointer_grab(GDK_WINDOW(RVAL2GOBJ(win)),
|
197
343
|
RVAL2CBOOL(owner_events),
|
@@ -202,14 +348,14 @@ gdk_s_pointer_grab(VALUE self, VALUE win, VALUE owner_events, VALUE event_mask,
|
|
202
348
|
}
|
203
349
|
|
204
350
|
static VALUE
|
205
|
-
|
351
|
+
rg_m_pointer_ungrab(VALUE self, VALUE time)
|
206
352
|
{
|
207
353
|
gdk_pointer_ungrab(NUM2INT(time));
|
208
354
|
return self;
|
209
355
|
}
|
210
356
|
|
211
357
|
static VALUE
|
212
|
-
|
358
|
+
rg_m_keyboard_grab(G_GNUC_UNUSED VALUE self, VALUE win, VALUE owner_events, VALUE time)
|
213
359
|
{
|
214
360
|
return GENUM2RVAL(gdk_keyboard_grab(GDK_WINDOW(RVAL2GOBJ(win)),
|
215
361
|
RVAL2CBOOL(owner_events), NUM2INT(time)),
|
@@ -217,48 +363,48 @@ gdk_s_keyboard_grab(VALUE self, VALUE win, VALUE owner_events, VALUE time)
|
|
217
363
|
}
|
218
364
|
|
219
365
|
static VALUE
|
220
|
-
|
366
|
+
rg_m_keyboard_ungrab(VALUE self, VALUE time)
|
221
367
|
{
|
222
368
|
gdk_keyboard_ungrab(NUM2INT(time));
|
223
369
|
return self;
|
224
370
|
}
|
225
371
|
|
226
372
|
static VALUE
|
227
|
-
|
373
|
+
rg_m_pointer_is_grabbed_p(G_GNUC_UNUSED VALUE self)
|
228
374
|
{
|
229
375
|
return CBOOL2RVAL(gdk_pointer_is_grabbed());
|
230
376
|
}
|
231
377
|
|
232
378
|
static VALUE
|
233
|
-
|
379
|
+
rg_m_set_double_click_time(VALUE self, VALUE msec)
|
234
380
|
{
|
235
381
|
gdk_set_double_click_time(NUM2UINT(msec));
|
236
382
|
return self;
|
237
383
|
}
|
238
384
|
|
239
385
|
static VALUE
|
240
|
-
|
386
|
+
rg_m_beep(VALUE self)
|
241
387
|
{
|
242
388
|
gdk_beep();
|
243
389
|
return self;
|
244
390
|
}
|
245
391
|
|
246
392
|
static VALUE
|
247
|
-
|
393
|
+
rg_m_error_trap_push(VALUE self)
|
248
394
|
{
|
249
395
|
gdk_error_trap_push();
|
250
396
|
return self;
|
251
397
|
}
|
252
398
|
|
253
399
|
static VALUE
|
254
|
-
|
400
|
+
rg_m_error_trap_pop(VALUE self)
|
255
401
|
{
|
256
402
|
gdk_error_trap_pop();
|
257
403
|
return self;
|
258
404
|
}
|
259
405
|
|
260
406
|
static VALUE
|
261
|
-
|
407
|
+
rg_m_windowing_x11_p(G_GNUC_UNUSED VALUE self)
|
262
408
|
{
|
263
409
|
#ifdef GDK_WINDOWING_X11
|
264
410
|
return Qtrue;
|
@@ -268,7 +414,7 @@ gdk_s_windowing_x11(VALUE self)
|
|
268
414
|
}
|
269
415
|
|
270
416
|
static VALUE
|
271
|
-
|
417
|
+
rg_m_windowing_win32_p(G_GNUC_UNUSED VALUE self)
|
272
418
|
{
|
273
419
|
#ifdef GDK_WINDOWING_WIN32
|
274
420
|
return Qtrue;
|
@@ -278,7 +424,7 @@ gdk_s_windowing_win32(VALUE self)
|
|
278
424
|
}
|
279
425
|
|
280
426
|
static VALUE
|
281
|
-
|
427
|
+
rg_m_windowing_fb_p(G_GNUC_UNUSED VALUE self)
|
282
428
|
{
|
283
429
|
#ifdef GDK_WINDOWING_FB
|
284
430
|
return Qtrue;
|
@@ -288,7 +434,7 @@ gdk_s_windowing_fb(VALUE self)
|
|
288
434
|
}
|
289
435
|
|
290
436
|
static VALUE
|
291
|
-
|
437
|
+
rg_m_windowing_quartz_p(G_GNUC_UNUSED VALUE self)
|
292
438
|
{
|
293
439
|
#ifdef GDK_WINDOWING_QUARTZ
|
294
440
|
return Qtrue;
|
@@ -298,7 +444,7 @@ gdk_s_windowing_quartz(VALUE self)
|
|
298
444
|
}
|
299
445
|
|
300
446
|
static VALUE
|
301
|
-
|
447
|
+
rg_m_windowing_directfb_p(G_GNUC_UNUSED VALUE self)
|
302
448
|
{
|
303
449
|
#ifdef GDK_WINDOWING_DIRECTFB
|
304
450
|
return Qtrue;
|
@@ -308,57 +454,67 @@ gdk_s_windowing_directfb(VALUE self)
|
|
308
454
|
}
|
309
455
|
|
310
456
|
static VALUE
|
311
|
-
|
457
|
+
rg_m_target(G_GNUC_UNUSED VALUE self)
|
312
458
|
{
|
313
459
|
return CSTR2RVAL(RUBY_GTK2_TARGET);
|
314
460
|
}
|
315
461
|
|
462
|
+
static VALUE
|
463
|
+
rg_m_cairo_available_p(G_GNUC_UNUSED VALUE self)
|
464
|
+
{
|
465
|
+
#if CAIRO_AVAILABLE
|
466
|
+
return Qtrue;
|
467
|
+
#else
|
468
|
+
return Qfalse;
|
469
|
+
#endif
|
470
|
+
}
|
471
|
+
|
316
472
|
void
|
317
|
-
Init_gtk_gdk()
|
473
|
+
Init_gtk_gdk(void)
|
318
474
|
{
|
319
|
-
|
475
|
+
RG_TARGET_NAMESPACE = rb_define_module("Gdk");
|
320
476
|
|
321
477
|
#if GTK_CHECK_VERSION(2,2,0)
|
322
|
-
|
478
|
+
RG_DEF_MODFUNC(display_arg_name, 0);
|
323
479
|
#endif
|
324
|
-
|
325
|
-
|
480
|
+
RG_DEF_MODFUNC(set_locale, 0);
|
481
|
+
RG_DEF_MODFUNC(set_sm_client_id, 1);
|
326
482
|
#if GTK_CHECK_VERSION(2, 2, 0)
|
327
|
-
|
328
|
-
gdk_s_notify_startup_complete, -1);
|
483
|
+
RG_DEF_MODFUNC(notify_startup_complete, -1);
|
329
484
|
#endif
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
G_DEF_CLASS(GDK_TYPE_GRAB_STATUS, "GrabStatus", mGdk);
|
360
|
-
G_DEF_CONSTANTS(mGdk, GDK_TYPE_GRAB_STATUS, "GDK_");
|
485
|
+
RG_DEF_MODFUNC(program_class, 0);
|
486
|
+
RG_DEF_MODFUNC(set_program_class, 1);
|
487
|
+
RG_DEF_MODFUNC(display, 0);
|
488
|
+
|
489
|
+
RG_DEF_MODFUNC(set_x_error_handler, 0);
|
490
|
+
RG_DEF_MODFUNC(set_x_io_error_handler, 0);
|
491
|
+
RG_DEF_MODFUNC(screen_width, 0);
|
492
|
+
RG_DEF_MODFUNC(screen_width_mm, 0);
|
493
|
+
RG_DEF_MODFUNC(screen_height, 0);
|
494
|
+
RG_DEF_MODFUNC(screen_height_mm, 0);
|
495
|
+
RG_DEF_MODFUNC(beep, 0);
|
496
|
+
RG_DEF_MODFUNC(flush, 0);
|
497
|
+
RG_DEF_MODFUNC(set_double_click_time, 1);
|
498
|
+
RG_DEF_MODFUNC(pointer_grab, 6);
|
499
|
+
RG_DEF_MODFUNC(pointer_ungrab, 1);
|
500
|
+
RG_DEF_MODFUNC(keyboard_grab, 3);
|
501
|
+
RG_DEF_MODFUNC(keyboard_ungrab, 1);
|
502
|
+
RG_DEF_MODFUNC_P(pointer_is_grabbed, 0);
|
503
|
+
RG_DEF_MODFUNC(error_trap_push, 0);
|
504
|
+
RG_DEF_MODFUNC(error_trap_pop, 0);
|
505
|
+
RG_DEF_MODFUNC_P(windowing_x11, 0);
|
506
|
+
RG_DEF_MODFUNC_P(windowing_win32, 0);
|
507
|
+
RG_DEF_MODFUNC_P(windowing_fb, 0);
|
508
|
+
RG_DEF_MODFUNC_P(windowing_quartz, 0);
|
509
|
+
RG_DEF_MODFUNC_P(windowing_directfb, 0);
|
510
|
+
|
511
|
+
RG_DEF_MODFUNC(target, 0);
|
512
|
+
|
513
|
+
RG_DEF_MODFUNC_P(cairo_available, 0);
|
361
514
|
|
362
|
-
|
363
|
-
|
515
|
+
/* GdkGrabStatus */
|
516
|
+
G_DEF_CLASS(GDK_TYPE_GRAB_STATUS, "GrabStatus", RG_TARGET_NAMESPACE);
|
517
|
+
G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GDK_TYPE_GRAB_STATUS, "GDK_");
|
364
518
|
|
519
|
+
G_DEF_SETTERS(RG_TARGET_NAMESPACE);
|
520
|
+
}
|