gtk2 1.0.3 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/rbgdkproperty.c
CHANGED
@@ -1,35 +1,43 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
|
2
|
+
/*
|
3
|
+
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
+
* Copyright (C) 2002-2004 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
|
+
*/
|
3
24
|
|
4
|
-
rbgdkproperty.c -
|
5
|
-
|
6
|
-
$Author: ggc $
|
7
|
-
$Date: 2007/07/13 16:07:31 $
|
8
|
-
|
9
|
-
|
10
|
-
Copyright (C) 2003,2004 Ruby-GNOME2 Project Team
|
11
|
-
|
12
|
-
Devided from rbgdkwindow.c
|
13
|
-
rbgdkwindow.c -
|
14
|
-
Copyright (C) 2002,2003 Ruby-GNOME2 Project Team
|
15
|
-
Copyright (C) 1998-2000 Yukihiro Matsumoto,
|
16
|
-
Daisuke Kanda,
|
17
|
-
Hiroshi Igarashi
|
18
|
-
************************************************/
|
19
25
|
#include "global.h"
|
20
26
|
|
27
|
+
#define RG_TARGET_NAMESPACE mProperty
|
28
|
+
|
21
29
|
static VALUE
|
22
|
-
|
30
|
+
rg_m_text_property_to_text_list(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
|
23
31
|
{
|
24
32
|
gint num, i;
|
25
33
|
gchar** list;
|
26
34
|
VALUE ret = Qnil;
|
27
|
-
|
35
|
+
|
28
36
|
if (argc == 3) {
|
29
37
|
VALUE encoding, format, text;
|
30
38
|
rb_scan_args(argc, argv, "30", &encoding, &format, &text);
|
31
39
|
StringValue(text);
|
32
|
-
|
40
|
+
|
33
41
|
num = gdk_text_property_to_text_list(RVAL2ATOM(encoding),
|
34
42
|
NUM2INT(format),
|
35
43
|
(const guchar*)RVAL2CSTR(text),
|
@@ -39,7 +47,7 @@ gdkprop_text_property_to_text_list(int argc, VALUE *argv, VALUE self)
|
|
39
47
|
VALUE display, encoding, format, text;
|
40
48
|
rb_scan_args(argc, argv, "40", &display, &encoding, &format, &text);
|
41
49
|
StringValue(text);
|
42
|
-
|
50
|
+
|
43
51
|
num = gdk_text_property_to_text_list_for_display(GDK_DISPLAY_OBJECT(RVAL2GOBJ(display)),
|
44
52
|
RVAL2ATOM(encoding),
|
45
53
|
NUM2INT(format),
|
@@ -66,17 +74,17 @@ gdkprop_text_property_to_text_list(int argc, VALUE *argv, VALUE self)
|
|
66
74
|
}
|
67
75
|
|
68
76
|
static VALUE
|
69
|
-
|
77
|
+
rg_m_text_property_to_utf8_list(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
|
70
78
|
{
|
71
79
|
gint num, i;
|
72
80
|
gchar** list;
|
73
81
|
VALUE ret = Qnil;
|
74
|
-
|
82
|
+
|
75
83
|
if (argc == 3) {
|
76
84
|
VALUE encoding, format, text;
|
77
85
|
rb_scan_args(argc, argv, "30", &encoding, &format, &text);
|
78
86
|
StringValue(text);
|
79
|
-
|
87
|
+
|
80
88
|
num = gdk_text_property_to_utf8_list(RVAL2ATOM(encoding),
|
81
89
|
NUM2INT(format),
|
82
90
|
(const guchar*)RVAL2CSTR(text),
|
@@ -86,7 +94,7 @@ gdkprop_text_property_to_utf8_list(int argc, VALUE *argv, VALUE self)
|
|
86
94
|
VALUE display, encoding, format, text;
|
87
95
|
rb_scan_args(argc, argv, "40", &display, &encoding, &format, &text);
|
88
96
|
StringValue(text);
|
89
|
-
|
97
|
+
|
90
98
|
num = gdk_text_property_to_utf8_list_for_display(GDK_DISPLAY_OBJECT(RVAL2GOBJ(display)),
|
91
99
|
RVAL2ATOM(encoding),
|
92
100
|
NUM2INT(format),
|
@@ -115,7 +123,7 @@ gdkprop_text_property_to_utf8_list(int argc, VALUE *argv, VALUE self)
|
|
115
123
|
}
|
116
124
|
|
117
125
|
static VALUE
|
118
|
-
|
126
|
+
rg_m_string_to_compound_text(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
|
119
127
|
{
|
120
128
|
gint num;
|
121
129
|
GdkAtom encoding;
|
@@ -160,13 +168,13 @@ gdkprop_string_to_compound_text(int argc, VALUE *argv, VALUE self)
|
|
160
168
|
}
|
161
169
|
|
162
170
|
static VALUE
|
163
|
-
|
171
|
+
rg_m_utf8_to_string_target(G_GNUC_UNUSED VALUE self, VALUE str)
|
164
172
|
{
|
165
173
|
return CSTR2RVAL((const char*)gdk_utf8_to_string_target(RVAL2CSTR(str)));
|
166
174
|
}
|
167
175
|
|
168
176
|
static VALUE
|
169
|
-
|
177
|
+
rg_m_utf8_to_compound_text(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
|
170
178
|
{
|
171
179
|
GdkAtom encoding;
|
172
180
|
gint format;
|
@@ -177,7 +185,7 @@ gdkprop_utf8_to_compound_text(int argc, VALUE *argv, VALUE self)
|
|
177
185
|
if (argc == 1) {
|
178
186
|
VALUE str;
|
179
187
|
rb_scan_args(argc, argv, "10", &str);
|
180
|
-
|
188
|
+
|
181
189
|
ret = gdk_utf8_to_compound_text(RVAL2CSTR(str),
|
182
190
|
&encoding, &format,
|
183
191
|
&ctext, &length);
|
@@ -193,7 +201,7 @@ gdkprop_utf8_to_compound_text(int argc, VALUE *argv, VALUE self)
|
|
193
201
|
#else
|
194
202
|
VALUE str;
|
195
203
|
rb_scan_args(argc, argv, "10", &str);
|
196
|
-
|
204
|
+
|
197
205
|
rb_warn("Gdk::Property.utf8_to_compound_text: Not supported arguments in GTK+-2.0.x.");
|
198
206
|
ret = gdk_utf8_to_compound_text(RVAL2CSTR(str),
|
199
207
|
&encoding, &format,
|
@@ -212,22 +220,21 @@ gdkprop_utf8_to_compound_text(int argc, VALUE *argv, VALUE self)
|
|
212
220
|
return Qnil;
|
213
221
|
}
|
214
222
|
|
215
|
-
|
216
223
|
static VALUE
|
217
|
-
|
224
|
+
rg_m_change(int argc, VALUE *argv, VALUE self)
|
218
225
|
{
|
219
226
|
int fmt, len;
|
220
227
|
void* dat;
|
221
228
|
GdkAtom ntype;
|
222
229
|
VALUE win, property, type, size= Qnil, mode, src;
|
223
|
-
|
230
|
+
|
224
231
|
if(6 == argc)
|
225
232
|
rb_scan_args(argc, argv, "60", &win, &property, &type, &size, &mode, &src);
|
226
233
|
else
|
227
234
|
rb_scan_args(argc, argv, "50", &win, &property, &type, &mode, &src);
|
228
|
-
|
235
|
+
|
229
236
|
rbgtk_atom2selectiondata(type, size, src, &ntype, &dat, &fmt, &len);
|
230
|
-
|
237
|
+
|
231
238
|
gdk_property_change(GDK_WINDOW(RVAL2GOBJ(win)), RVAL2ATOM(property),
|
232
239
|
ntype, fmt, RVAL2GENUM(mode, GDK_TYPE_PROP_MODE), dat, len);
|
233
240
|
|
@@ -237,45 +244,44 @@ gdkprop_change(int argc, VALUE *argv, VALUE self)
|
|
237
244
|
}
|
238
245
|
|
239
246
|
static VALUE
|
240
|
-
|
247
|
+
rg_m_get(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
|
241
248
|
{
|
242
249
|
/* for argument processing */
|
243
250
|
GdkAtom rtype;
|
244
251
|
gint rfmt, rlen;
|
245
|
-
guchar*
|
252
|
+
guchar* rdat;
|
246
253
|
VALUE win, property, type, offset=INT2FIX(0), length=INT2FIX(9999), delete;
|
247
|
-
|
254
|
+
|
248
255
|
/* for inner processing */
|
249
|
-
gint
|
256
|
+
gint i;
|
250
257
|
size_t j;
|
251
|
-
VALUE
|
252
|
-
|
258
|
+
VALUE ret = 0;
|
259
|
+
|
253
260
|
if(6 == argc)
|
254
261
|
rb_scan_args(argc, argv, "60", &win, &property, &type, &offset, &length, &delete);
|
255
262
|
else
|
256
263
|
rb_scan_args(argc, argv, "40", &win, &property, &type, &delete);
|
257
|
-
|
258
|
-
|
264
|
+
|
259
265
|
if(gdk_property_get(GDK_WINDOW(RVAL2GOBJ(win)), RVAL2ATOM(property), RVAL2ATOM(type),
|
260
266
|
NUM2INT(offset), NUM2INT(length),
|
261
267
|
RVAL2CBOOL(delete), &rtype, &rfmt, &rlen, &rdat) == FALSE){
|
262
268
|
return Qnil;
|
263
269
|
}
|
264
|
-
|
270
|
+
|
265
271
|
switch(rfmt){
|
266
272
|
case 8:
|
267
273
|
default:
|
268
274
|
ret = RBG_STRING_SET_UTF8_ENCODING(rb_str_new((const char*)rdat, rlen));
|
269
275
|
break;
|
270
|
-
|
276
|
+
|
271
277
|
case 16:
|
272
278
|
ret = rb_ary_new();
|
273
|
-
|
279
|
+
|
274
280
|
for( i = 0; i < rlen; i++){
|
275
281
|
rb_ary_push(ret, rb_Integer(((unsigned short*)rdat)[i]));
|
276
282
|
}
|
277
283
|
break;
|
278
|
-
|
284
|
+
|
279
285
|
case 32:
|
280
286
|
ret = rb_ary_new();
|
281
287
|
|
@@ -290,34 +296,34 @@ gdkprop_get(int argc, VALUE *argv, VALUE self)
|
|
290
296
|
}
|
291
297
|
break;
|
292
298
|
}
|
293
|
-
|
299
|
+
|
294
300
|
return rb_ary_new3(3, BOXED2RVAL(rtype, GDK_TYPE_ATOM),
|
295
301
|
ret, INT2NUM(rlen));
|
296
302
|
}
|
297
303
|
|
298
304
|
static VALUE
|
299
|
-
|
305
|
+
rg_m_delete(VALUE self, VALUE win, VALUE property)
|
300
306
|
{
|
301
307
|
gdk_property_delete(GDK_WINDOW(RVAL2GOBJ(win)), RVAL2ATOM(property));
|
302
308
|
return self;
|
303
309
|
}
|
304
310
|
|
305
311
|
void
|
306
|
-
Init_gtk_gdk_property()
|
312
|
+
Init_gtk_gdk_property(VALUE mGdk)
|
307
313
|
{
|
308
|
-
VALUE
|
314
|
+
VALUE RG_TARGET_NAMESPACE = rb_define_module_under(mGdk, "Property");
|
309
315
|
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
316
|
+
RG_DEF_MODFUNC(text_property_to_text_list, -1);
|
317
|
+
RG_DEF_MODFUNC(text_property_to_utf8_list, -1);
|
318
|
+
RG_DEF_MODFUNC(string_to_compound_text, -1);
|
319
|
+
RG_DEF_MODFUNC(utf8_to_string_target, 1);
|
320
|
+
RG_DEF_MODFUNC(utf8_to_compound_text, -1);
|
321
|
+
RG_DEF_MODFUNC(change, -1);
|
322
|
+
RG_DEF_MODFUNC(get, -1);
|
323
|
+
RG_DEF_MODFUNC(delete, 2);
|
318
324
|
|
319
325
|
/* GdkPropMode from GdkProperties */
|
320
|
-
G_DEF_CLASS(GDK_TYPE_PROP_MODE, "PropMode",
|
321
|
-
G_DEF_CONSTANTS(
|
326
|
+
G_DEF_CLASS(GDK_TYPE_PROP_MODE, "PropMode", RG_TARGET_NAMESPACE);
|
327
|
+
G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GDK_TYPE_PROP_MODE, "GDK_PROP_");
|
322
328
|
|
323
329
|
}
|
data/ext/gtk2/rbgdkrectangle.c
CHANGED
@@ -1,26 +1,34 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
2
|
+
/*
|
3
|
+
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
+
* Copyright (C) 2002,2003 Masao Mutoh
|
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
|
+
*/
|
17
24
|
|
18
25
|
#include "global.h"
|
19
26
|
|
27
|
+
#define RG_TARGET_NAMESPACE cRectangle
|
20
28
|
#define _SELF(r) ((GdkRectangle*)RVAL2BOXED(r, GDK_TYPE_RECTANGLE))
|
21
29
|
|
22
30
|
static VALUE
|
23
|
-
|
31
|
+
rg_initialize(VALUE self, VALUE x, VALUE y, VALUE width, VALUE height)
|
24
32
|
{
|
25
33
|
GdkRectangle new;
|
26
34
|
|
@@ -34,7 +42,7 @@ gdkrect_initialize(VALUE self, VALUE x, VALUE y, VALUE width, VALUE height)
|
|
34
42
|
}
|
35
43
|
|
36
44
|
static VALUE
|
37
|
-
|
45
|
+
rg_intersect(VALUE self, VALUE other)
|
38
46
|
{
|
39
47
|
GdkRectangle dest;
|
40
48
|
gboolean ret = gdk_rectangle_intersect(_SELF(self), _SELF(other), &dest);
|
@@ -42,7 +50,7 @@ gdkrect_intersect(VALUE self, VALUE other)
|
|
42
50
|
}
|
43
51
|
|
44
52
|
static VALUE
|
45
|
-
|
53
|
+
rg_union(VALUE self, VALUE other)
|
46
54
|
{
|
47
55
|
GdkRectangle dest;
|
48
56
|
gdk_rectangle_union(_SELF(self), _SELF(other), &dest);
|
@@ -51,59 +59,59 @@ gdkrect_union(VALUE self, VALUE other)
|
|
51
59
|
|
52
60
|
/* Struct accessors */
|
53
61
|
static VALUE
|
54
|
-
|
62
|
+
rg_x(VALUE self)
|
55
63
|
{
|
56
64
|
return INT2NUM(_SELF(self)->x);
|
57
65
|
}
|
58
66
|
|
59
67
|
static VALUE
|
60
|
-
|
68
|
+
rg_y(VALUE self)
|
61
69
|
{
|
62
70
|
return INT2NUM(_SELF(self)->y);
|
63
71
|
}
|
64
72
|
|
65
73
|
static VALUE
|
66
|
-
|
74
|
+
rg_width(VALUE self)
|
67
75
|
{
|
68
76
|
return INT2NUM(_SELF(self)->width);
|
69
77
|
}
|
70
78
|
|
71
79
|
static VALUE
|
72
|
-
|
80
|
+
rg_height(VALUE self)
|
73
81
|
{
|
74
82
|
return INT2NUM(_SELF(self)->height);
|
75
83
|
}
|
76
84
|
|
77
85
|
static VALUE
|
78
|
-
|
86
|
+
rg_set_x(VALUE self, VALUE x)
|
79
87
|
{
|
80
88
|
_SELF(self)->x = NUM2INT(x);
|
81
89
|
return self;
|
82
90
|
}
|
83
91
|
|
84
92
|
static VALUE
|
85
|
-
|
93
|
+
rg_set_y(VALUE self, VALUE y)
|
86
94
|
{
|
87
95
|
_SELF(self)->y = NUM2INT(y);
|
88
96
|
return self;
|
89
97
|
}
|
90
98
|
|
91
99
|
static VALUE
|
92
|
-
|
100
|
+
rg_set_width(VALUE self, VALUE width)
|
93
101
|
{
|
94
102
|
_SELF(self)->width = NUM2INT(width);
|
95
103
|
return self;
|
96
104
|
}
|
97
105
|
|
98
106
|
static VALUE
|
99
|
-
|
107
|
+
rg_set_height(VALUE self, VALUE height)
|
100
108
|
{
|
101
109
|
_SELF(self)->height = NUM2INT(height);
|
102
110
|
return self;
|
103
111
|
}
|
104
112
|
|
105
113
|
static VALUE
|
106
|
-
|
114
|
+
rg_to_a(VALUE self)
|
107
115
|
{
|
108
116
|
GdkRectangle* a = _SELF(self);
|
109
117
|
return rb_ary_new3(4, INT2FIX(a->x), INT2FIX(a->y),
|
@@ -111,24 +119,24 @@ gdkrect_to_a(VALUE self)
|
|
111
119
|
}
|
112
120
|
|
113
121
|
void
|
114
|
-
Init_gtk_gdk_rectangle()
|
122
|
+
Init_gtk_gdk_rectangle(VALUE mGdk)
|
115
123
|
{
|
116
|
-
VALUE
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
G_DEF_SETTERS(
|
124
|
+
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GDK_TYPE_RECTANGLE, "Rectangle", mGdk);
|
125
|
+
|
126
|
+
RG_DEF_METHOD(initialize, 4);
|
127
|
+
RG_DEF_METHOD(intersect, 1);
|
128
|
+
RG_DEF_ALIAS("&", "intersect");
|
129
|
+
RG_DEF_METHOD(union, 1);
|
130
|
+
RG_DEF_ALIAS("|", "union");
|
131
|
+
RG_DEF_METHOD(x, 0);
|
132
|
+
RG_DEF_METHOD(y, 0);
|
133
|
+
RG_DEF_METHOD(width, 0);
|
134
|
+
RG_DEF_METHOD(height, 0);
|
135
|
+
RG_DEF_METHOD(set_x, 1);
|
136
|
+
RG_DEF_METHOD(set_y, 1);
|
137
|
+
RG_DEF_METHOD(set_width, 1);
|
138
|
+
RG_DEF_METHOD(set_height, 1);
|
139
|
+
RG_DEF_METHOD(to_a, 0);
|
140
|
+
|
141
|
+
G_DEF_SETTERS(RG_TARGET_NAMESPACE);
|
134
142
|
}
|