gtk2 0.20.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.
Files changed (281) hide show
  1. data/ChangeLog +6664 -0
  2. data/README +33 -0
  3. data/Rakefile +71 -0
  4. data/extconf.rb +116 -0
  5. data/src/global.h +33 -0
  6. data/src/init.c +39 -0
  7. data/src/lib/gtk2.rb +13 -0
  8. data/src/lib/gtk2/base.rb +95 -0
  9. data/src/makeinits.rb +57 -0
  10. data/src/makekeysyms.rb +5 -0
  11. data/src/rbgdk.c +395 -0
  12. data/src/rbgdk.h +50 -0
  13. data/src/rbgdkatom.c +122 -0
  14. data/src/rbgdkcairo.c +100 -0
  15. data/src/rbgdkcolor.c +151 -0
  16. data/src/rbgdkcolormap.c +142 -0
  17. data/src/rbgdkconst.c +29 -0
  18. data/src/rbgdkconversions.h +18 -0
  19. data/src/rbgdkcursor.c +115 -0
  20. data/src/rbgdkdevice.c +235 -0
  21. data/src/rbgdkdisplay.c +634 -0
  22. data/src/rbgdkdisplaymanager.c +50 -0
  23. data/src/rbgdkdragcontext.c +280 -0
  24. data/src/rbgdkdraw.c +487 -0
  25. data/src/rbgdkevent.c +1020 -0
  26. data/src/rbgdkgc.c +456 -0
  27. data/src/rbgdkgeometry.c +272 -0
  28. data/src/rbgdkimage.c +155 -0
  29. data/src/rbgdkinput.c +70 -0
  30. data/src/rbgdkkeymap.c +153 -0
  31. data/src/rbgdkkeysyms.h +2174 -0
  32. data/src/rbgdkkeyval.c +105 -0
  33. data/src/rbgdkpango.c +171 -0
  34. data/src/rbgdkpangorenderer.c +132 -0
  35. data/src/rbgdkpixbuf.c +178 -0
  36. data/src/rbgdkpixmap.c +255 -0
  37. data/src/rbgdkproperty.c +342 -0
  38. data/src/rbgdkrectangle.c +146 -0
  39. data/src/rbgdkregion.c +242 -0
  40. data/src/rbgdkrgb.c +197 -0
  41. data/src/rbgdkscreen.c +535 -0
  42. data/src/rbgdkselection.c +161 -0
  43. data/src/rbgdkthreads.c +68 -0
  44. data/src/rbgdktimecoord.c +118 -0
  45. data/src/rbgdkvisual.c +273 -0
  46. data/src/rbgdkwindow.c +1302 -0
  47. data/src/rbgdkwindowattr.c +213 -0
  48. data/src/rbgdkx11.c +256 -0
  49. data/src/rbgtk.c +93 -0
  50. data/src/rbgtk.h +121 -0
  51. data/src/rbgtkaboutdialog.c +195 -0
  52. data/src/rbgtkaccelerator.c +78 -0
  53. data/src/rbgtkaccelgroup.c +216 -0
  54. data/src/rbgtkaccelgroupentry.c +85 -0
  55. data/src/rbgtkaccelkey.c +116 -0
  56. data/src/rbgtkaccellabel.c +46 -0
  57. data/src/rbgtkaccelmap.c +162 -0
  58. data/src/rbgtkaccessible.c +29 -0
  59. data/src/rbgtkaction.c +277 -0
  60. data/src/rbgtkactiongroup.c +377 -0
  61. data/src/rbgtkadjustment.c +153 -0
  62. data/src/rbgtkalignment.c +71 -0
  63. data/src/rbgtkallocation.c +171 -0
  64. data/src/rbgtkarrow.c +47 -0
  65. data/src/rbgtkaspectframe.c +46 -0
  66. data/src/rbgtkassistant.c +230 -0
  67. data/src/rbgtkbbox.c +47 -0
  68. data/src/rbgtkbin.c +31 -0
  69. data/src/rbgtkbindingset.c +192 -0
  70. data/src/rbgtkborder.c +80 -0
  71. data/src/rbgtkbox.c +142 -0
  72. data/src/rbgtkbuildable.c +115 -0
  73. data/src/rbgtkbuilder.c +154 -0
  74. data/src/rbgtkbutton.c +151 -0
  75. data/src/rbgtkcalendar.c +159 -0
  76. data/src/rbgtkcelleditable.c +49 -0
  77. data/src/rbgtkcelllayout.c +144 -0
  78. data/src/rbgtkcellrenderer.c +139 -0
  79. data/src/rbgtkcellrendereraccel.c +42 -0
  80. data/src/rbgtkcellrenderercombo.c +37 -0
  81. data/src/rbgtkcellrendererpixbuf.c +33 -0
  82. data/src/rbgtkcellrendererprogress.c +37 -0
  83. data/src/rbgtkcellrendererspin.c +38 -0
  84. data/src/rbgtkcellrenderertext.c +45 -0
  85. data/src/rbgtkcellrenderertoggle.c +32 -0
  86. data/src/rbgtkcellview.c +134 -0
  87. data/src/rbgtkcheckbutton.c +55 -0
  88. data/src/rbgtkcheckmenuitem.c +56 -0
  89. data/src/rbgtkclipboard.c +473 -0
  90. data/src/rbgtkcolorbutton.c +63 -0
  91. data/src/rbgtkcolorsel.c +175 -0
  92. data/src/rbgtkcolorselectiondialog.c +72 -0
  93. data/src/rbgtkcombo.c +117 -0
  94. data/src/rbgtkcombobox.c +240 -0
  95. data/src/rbgtkcomboboxentry.c +60 -0
  96. data/src/rbgtkconst.c +163 -0
  97. data/src/rbgtkcontainer.c +776 -0
  98. data/src/rbgtkconversions.h +26 -0
  99. data/src/rbgtkcurve.c +105 -0
  100. data/src/rbgtkdialog.c +244 -0
  101. data/src/rbgtkdrag.c +436 -0
  102. data/src/rbgtkdrawingarea.c +31 -0
  103. data/src/rbgtkeditable.c +152 -0
  104. data/src/rbgtkentry.c +161 -0
  105. data/src/rbgtkentrycompletion.c +167 -0
  106. data/src/rbgtkeventbox.c +31 -0
  107. data/src/rbgtkexpander.c +67 -0
  108. data/src/rbgtkfilechooser.c +403 -0
  109. data/src/rbgtkfilechooserbutton.c +72 -0
  110. data/src/rbgtkfilechooserdialog.c +58 -0
  111. data/src/rbgtkfilechooserwidget.c +50 -0
  112. data/src/rbgtkfilefilter.c +139 -0
  113. data/src/rbgtkfilesel.c +155 -0
  114. data/src/rbgtkfixed.c +72 -0
  115. data/src/rbgtkfontbutton.c +69 -0
  116. data/src/rbgtkfontselection.c +30 -0
  117. data/src/rbgtkfontselectiondialog.c +106 -0
  118. data/src/rbgtkframe.c +64 -0
  119. data/src/rbgtkgamma.c +47 -0
  120. data/src/rbgtkhandlebox.c +42 -0
  121. data/src/rbgtkhbbox.c +31 -0
  122. data/src/rbgtkhbox.c +38 -0
  123. data/src/rbgtkhpaned.c +31 -0
  124. data/src/rbgtkhruler.c +31 -0
  125. data/src/rbgtkhscale.c +45 -0
  126. data/src/rbgtkhscrollbar.c +38 -0
  127. data/src/rbgtkhseparator.c +30 -0
  128. data/src/rbgtkiconfactory.c +80 -0
  129. data/src/rbgtkiconinfo.c +118 -0
  130. data/src/rbgtkiconset.c +87 -0
  131. data/src/rbgtkiconsize.c +90 -0
  132. data/src/rbgtkiconsource.c +176 -0
  133. data/src/rbgtkicontheme.c +309 -0
  134. data/src/rbgtkiconview.c +351 -0
  135. data/src/rbgtkimage.c +152 -0
  136. data/src/rbgtkimagemenuitem.c +52 -0
  137. data/src/rbgtkimcontext.c +134 -0
  138. data/src/rbgtkimcontextsimple.c +48 -0
  139. data/src/rbgtkimmulticontext.c +38 -0
  140. data/src/rbgtkinits.c +473 -0
  141. data/src/rbgtkinputdialog.c +30 -0
  142. data/src/rbgtkinvisible.c +68 -0
  143. data/src/rbgtkitem.c +51 -0
  144. data/src/rbgtkitemfactory.c +312 -0
  145. data/src/rbgtklabel.c +168 -0
  146. data/src/rbgtklayout.c +91 -0
  147. data/src/rbgtklinkbutton.c +68 -0
  148. data/src/rbgtkliststore.c +412 -0
  149. data/src/rbgtkmacros.h +26 -0
  150. data/src/rbgtkmain.c +532 -0
  151. data/src/rbgtkmenu.c +272 -0
  152. data/src/rbgtkmenubar.c +48 -0
  153. data/src/rbgtkmenuitem.c +171 -0
  154. data/src/rbgtkmenushell.c +128 -0
  155. data/src/rbgtkmenutoolbutton.c +74 -0
  156. data/src/rbgtkmessagedialog.c +102 -0
  157. data/src/rbgtkmisc.c +63 -0
  158. data/src/rbgtknotebook.c +484 -0
  159. data/src/rbgtkobject.c +186 -0
  160. data/src/rbgtkoptionmenu.c +65 -0
  161. data/src/rbgtkpagesetup.c +196 -0
  162. data/src/rbgtkpagesetupunixdialog.c +80 -0
  163. data/src/rbgtkpaned.c +114 -0
  164. data/src/rbgtkpapersize.c +186 -0
  165. data/src/rbgtkplug.c +84 -0
  166. data/src/rbgtkprintcontext.c +124 -0
  167. data/src/rbgtkprinter.c +155 -0
  168. data/src/rbgtkprintjob.c +151 -0
  169. data/src/rbgtkprintoperation.c +152 -0
  170. data/src/rbgtkprintoperationpreview.c +54 -0
  171. data/src/rbgtkprintsettings.c +794 -0
  172. data/src/rbgtkprintunixdialog.c +98 -0
  173. data/src/rbgtkprogress.c +21 -0
  174. data/src/rbgtkprogressbar.c +72 -0
  175. data/src/rbgtkradioaction.c +102 -0
  176. data/src/rbgtkradiobutton.c +83 -0
  177. data/src/rbgtkradiomenuitem.c +115 -0
  178. data/src/rbgtkradiotoolbutton.c +99 -0
  179. data/src/rbgtkrange.c +98 -0
  180. data/src/rbgtkrc.c +228 -0
  181. data/src/rbgtkrcstyle.c +184 -0
  182. data/src/rbgtkrecentaction.c +52 -0
  183. data/src/rbgtkrecentchooser.c +276 -0
  184. data/src/rbgtkrecentchooserdialog.c +59 -0
  185. data/src/rbgtkrecentchoosermenu.c +55 -0
  186. data/src/rbgtkrecentchooserwidget.c +45 -0
  187. data/src/rbgtkrecentdata.c +152 -0
  188. data/src/rbgtkrecentfilter.c +180 -0
  189. data/src/rbgtkrecentfilterinfo.c +197 -0
  190. data/src/rbgtkrecentinfo.c +232 -0
  191. data/src/rbgtkrecentmanager.c +164 -0
  192. data/src/rbgtkruler.c +82 -0
  193. data/src/rbgtkscale.c +47 -0
  194. data/src/rbgtkscalebutton.c +115 -0
  195. data/src/rbgtkscrollbar.c +21 -0
  196. data/src/rbgtkscrolledwindow.c +160 -0
  197. data/src/rbgtkselection.c +171 -0
  198. data/src/rbgtkselectiondata.c +333 -0
  199. data/src/rbgtkseparator.c +21 -0
  200. data/src/rbgtkseparatormenuitem.c +28 -0
  201. data/src/rbgtkseparatortoolitem.c +40 -0
  202. data/src/rbgtksettings.c +225 -0
  203. data/src/rbgtksizegroup.c +74 -0
  204. data/src/rbgtksocket.c +72 -0
  205. data/src/rbgtkspinbutton.c +138 -0
  206. data/src/rbgtkstatusbar.c +90 -0
  207. data/src/rbgtkstatusicon.c +120 -0
  208. data/src/rbgtkstock.c +264 -0
  209. data/src/rbgtkstyle.c +722 -0
  210. data/src/rbgtktable.c +190 -0
  211. data/src/rbgtktargetlist.c +148 -0
  212. data/src/rbgtktearoffmenuitem.c +30 -0
  213. data/src/rbgtktextappearance.c +173 -0
  214. data/src/rbgtktextattributes.c +209 -0
  215. data/src/rbgtktextbuffer.c +993 -0
  216. data/src/rbgtktextchild.c +49 -0
  217. data/src/rbgtktextiter.c +553 -0
  218. data/src/rbgtktextmark.c +87 -0
  219. data/src/rbgtktexttag.c +66 -0
  220. data/src/rbgtktexttagtable.c +94 -0
  221. data/src/rbgtktextview.c +351 -0
  222. data/src/rbgtktoggleaction.c +76 -0
  223. data/src/rbgtktogglebutton.c +84 -0
  224. data/src/rbgtktoggletoolbutton.c +70 -0
  225. data/src/rbgtktoolbar.c +373 -0
  226. data/src/rbgtktoolbutton.c +75 -0
  227. data/src/rbgtktoolitem.c +184 -0
  228. data/src/rbgtktooltip.c +76 -0
  229. data/src/rbgtktooltips.c +107 -0
  230. data/src/rbgtktreedragdest.c +19 -0
  231. data/src/rbgtktreedragsource.c +19 -0
  232. data/src/rbgtktreeiter.c +259 -0
  233. data/src/rbgtktreemodel.c +256 -0
  234. data/src/rbgtktreemodelfilter.c +214 -0
  235. data/src/rbgtktreemodelsort.c +113 -0
  236. data/src/rbgtktreepath.c +195 -0
  237. data/src/rbgtktreerowreference.c +168 -0
  238. data/src/rbgtktreeselection.c +235 -0
  239. data/src/rbgtktreesortable.c +127 -0
  240. data/src/rbgtktreestore.c +379 -0
  241. data/src/rbgtktreeview.c +881 -0
  242. data/src/rbgtktreeviewcolumn.c +331 -0
  243. data/src/rbgtkuimanager.c +210 -0
  244. data/src/rbgtkvbbox.c +31 -0
  245. data/src/rbgtkvbox.c +38 -0
  246. data/src/rbgtkviewport.c +33 -0
  247. data/src/rbgtkvolumebutton.c +36 -0
  248. data/src/rbgtkvpaned.c +31 -0
  249. data/src/rbgtkvruler.c +30 -0
  250. data/src/rbgtkvscale.c +45 -0
  251. data/src/rbgtkvscrollbar.c +38 -0
  252. data/src/rbgtkvseparator.c +30 -0
  253. data/src/rbgtkwidget.c +1414 -0
  254. data/src/rbgtkwindow.c +822 -0
  255. data/src/rbgtkwindowgroup.c +48 -0
  256. data/test/gtk-test-utils.rb +15 -0
  257. data/test/run-test.rb +30 -0
  258. data/test/test_gc.rb +25 -0
  259. data/test/test_gdk.rb +18 -0
  260. data/test/test_gdk_color.rb +10 -0
  261. data/test/test_gdk_display.rb +37 -0
  262. data/test/test_gdk_event.rb +11 -0
  263. data/test/test_gdk_gc.rb +7 -0
  264. data/test/test_gdk_keymap.rb +8 -0
  265. data/test/test_gdk_pango.rb +9 -0
  266. data/test/test_gdk_selection_data.rb +17 -0
  267. data/test/test_gdk_window.rb +29 -0
  268. data/test/test_gdk_window_attribute.rb +9 -0
  269. data/test/test_gtk_about_dialog.rb +14 -0
  270. data/test/test_gtk_buildable.rb +66 -0
  271. data/test/test_gtk_builder.rb +188 -0
  272. data/test/test_gtk_entry.rb +18 -0
  273. data/test/test_gtk_icon_theme.rb +30 -0
  274. data/test/test_gtk_image.rb +8 -0
  275. data/test/test_gtk_list_store.rb +65 -0
  276. data/test/test_gtk_menu_item.rb +13 -0
  277. data/test/test_gtk_rc_style.rb +14 -0
  278. data/test/test_gtk_tree_path.rb +20 -0
  279. data/test/test_gtk_unix_print.rb +14 -0
  280. data/test/test_gtk_widget.rb +32 -0
  281. metadata +393 -0
@@ -0,0 +1,272 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgdkgeometry.c -
5
+
6
+ $Author: mutoh $
7
+ $Date: 2003/10/17 16:30:51 $
8
+
9
+ Copyright (C) 2002,2003 Masao Mutoh
10
+
11
+ This file is derived from rbgdkregion.c.
12
+ rbgdkregion.c -
13
+ Copyright (C) 1998-2000 Yukihiro Matsumoto,
14
+ Daisuke Kanda,
15
+ Hiroshi Igarashi
16
+ ************************************************/
17
+ #include "global.h"
18
+
19
+ /*****************************************/
20
+ static GdkGeometry*
21
+ geo_copy(const GdkGeometry* geo)
22
+ {
23
+ GdkGeometry* new_geo;
24
+ g_return_val_if_fail (geo != NULL, NULL);
25
+ new_geo = g_new(GdkGeometry, 1);
26
+ *new_geo = *geo;
27
+ return new_geo;
28
+ }
29
+
30
+ GType
31
+ gdk_geometry_get_type(void)
32
+ {
33
+ static GType our_type = 0;
34
+ if (our_type == 0)
35
+ our_type = g_boxed_type_register_static ("GdkGeometry",
36
+ (GBoxedCopyFunc)geo_copy,
37
+ (GBoxedFreeFunc)g_free);
38
+ return our_type;
39
+ }
40
+ /*****************************************/
41
+
42
+ #define _SELF(g) ((GdkGeometry*)RVAL2BOXED(g, GDK_TYPE_GEOMETRY))
43
+
44
+ static VALUE
45
+ geo_initialize(self)
46
+ VALUE self;
47
+ {
48
+ GdkGeometry g;
49
+ G_INITIALIZE(self, &g);
50
+ return Qnil;
51
+ }
52
+
53
+ static VALUE
54
+ geo_set(self, min_width, min_height, max_width, max_height,
55
+ base_width, base_height, width_inc, height_inc, min_aspect, max_aspect, gravity)
56
+ VALUE self, min_width, min_height, max_width, max_height,
57
+ base_width, base_height, width_inc, height_inc, min_aspect, max_aspect, gravity;
58
+ {
59
+ GdkGeometry *geo = _SELF(self);
60
+ geo->min_width = NUM2INT(min_width);
61
+ geo->min_height = NUM2INT(min_height);
62
+ geo->max_width = NUM2INT(max_width);
63
+ geo->max_height = NUM2INT(max_height);
64
+ geo->base_width = NUM2INT(base_width);
65
+ geo->base_height = NUM2INT(base_height);
66
+ geo->width_inc = NUM2INT(width_inc);
67
+ geo->height_inc = NUM2INT(height_inc);
68
+ geo->min_aspect = NUM2DBL(min_aspect);
69
+ geo->max_aspect = NUM2DBL(max_aspect);
70
+ geo->win_gravity = RVAL2GENUM(gravity, GDK_TYPE_GRAVITY);
71
+
72
+ return self;
73
+ }
74
+
75
+ static VALUE
76
+ geo_min_width(self)
77
+ VALUE self;
78
+ {
79
+ return INT2NUM(_SELF(self)->min_width);
80
+ }
81
+
82
+ static VALUE
83
+ geo_min_height(self)
84
+ VALUE self;
85
+ {
86
+ return INT2NUM(_SELF(self)->min_height);
87
+ }
88
+
89
+ static VALUE
90
+ geo_max_width(self)
91
+ VALUE self;
92
+ {
93
+ return INT2NUM(_SELF(self)->max_width);
94
+ }
95
+
96
+ static VALUE
97
+ geo_max_height(self)
98
+ VALUE self;
99
+ {
100
+ return INT2NUM(_SELF(self)->max_height);
101
+ }
102
+
103
+ static VALUE
104
+ geo_base_width(self)
105
+ VALUE self;
106
+ {
107
+ return INT2NUM(_SELF(self)->base_width);
108
+ }
109
+
110
+ static VALUE
111
+ geo_base_height(self)
112
+ VALUE self;
113
+ {
114
+ return INT2NUM(_SELF(self)->base_height);
115
+ }
116
+
117
+ static VALUE
118
+ geo_width_inc(self)
119
+ VALUE self;
120
+ {
121
+ return INT2NUM(_SELF(self)->width_inc);
122
+ }
123
+
124
+ static VALUE
125
+ geo_height_inc(self)
126
+ VALUE self;
127
+ {
128
+ return INT2NUM(_SELF(self)->height_inc);
129
+ }
130
+
131
+ static VALUE
132
+ geo_min_aspect(self)
133
+ VALUE self;
134
+ {
135
+ return rb_float_new(_SELF(self)->min_aspect);
136
+ }
137
+
138
+ static VALUE
139
+ geo_max_aspect(self)
140
+ VALUE self;
141
+ {
142
+ return rb_float_new(_SELF(self)->max_aspect);
143
+ }
144
+
145
+ static VALUE
146
+ geo_win_gravity(self)
147
+ VALUE self;
148
+ {
149
+ return GENUM2RVAL(_SELF(self)->win_gravity, GDK_TYPE_GRAVITY);
150
+ }
151
+
152
+ static VALUE
153
+ geo_set_min_width(self, min_width)
154
+ VALUE self, min_width;
155
+ {
156
+ _SELF(self)->min_width = NUM2INT(min_width);
157
+ return self;
158
+ }
159
+
160
+ static VALUE
161
+ geo_set_min_height(self, min_height)
162
+ VALUE self, min_height;
163
+ {
164
+ _SELF(self)->min_height = NUM2INT(min_height);
165
+ return self;
166
+ }
167
+
168
+ static VALUE
169
+ geo_set_max_width(self, max_width)
170
+ VALUE self, max_width;
171
+ {
172
+ _SELF(self)->max_width = NUM2INT(max_width);
173
+ return self;
174
+ }
175
+
176
+ static VALUE
177
+ geo_set_max_height(self, max_height)
178
+ VALUE self, max_height;
179
+ {
180
+ _SELF(self)->max_height = NUM2INT(max_height);
181
+ return self;
182
+ }
183
+
184
+ static VALUE
185
+ geo_set_base_width(self, base_width)
186
+ VALUE self, base_width;
187
+ {
188
+ _SELF(self)->base_width = NUM2INT(base_width);
189
+ return self;
190
+ }
191
+
192
+ static VALUE
193
+ geo_set_base_height(self, base_height)
194
+ VALUE self, base_height;
195
+ {
196
+ _SELF(self)->base_height = NUM2INT(base_height);
197
+ return self;
198
+ }
199
+
200
+ static VALUE
201
+ geo_set_width_inc(self, width_inc)
202
+ VALUE self, width_inc;
203
+ {
204
+ _SELF(self)->width_inc = NUM2INT(width_inc);
205
+ return self;
206
+ }
207
+
208
+ static VALUE
209
+ geo_set_height_inc(self, height_inc)
210
+ VALUE self, height_inc;
211
+ {
212
+ _SELF(self)->height_inc = NUM2INT(height_inc);
213
+ return self;
214
+ }
215
+
216
+ static VALUE
217
+ geo_set_min_aspect(self, min_aspect)
218
+ VALUE self, min_aspect;
219
+ {
220
+ _SELF(self)->min_aspect = NUM2DBL(min_aspect);
221
+ return self;
222
+ }
223
+
224
+ static VALUE
225
+ geo_set_max_aspect(self, max_aspect)
226
+ VALUE self, max_aspect;
227
+ {
228
+ _SELF(self)->max_aspect = NUM2DBL(max_aspect);
229
+ return self;
230
+ }
231
+
232
+ static VALUE
233
+ geo_set_win_gravity(self, gravity)
234
+ VALUE self, gravity;
235
+ {
236
+ _SELF(self)->win_gravity = RVAL2GENUM(gravity, GDK_TYPE_GRAVITY);
237
+ return self;
238
+ }
239
+
240
+ void
241
+ Init_gtk_gdk_geometry()
242
+ {
243
+ VALUE gdkGeometry = G_DEF_CLASS(GDK_TYPE_GEOMETRY, "Geometry", mGdk);
244
+
245
+ rb_define_method(gdkGeometry, "initialize", geo_initialize, 0);
246
+ rb_define_method(gdkGeometry, "min_width", geo_min_width, 0);
247
+ rb_define_method(gdkGeometry, "min_height", geo_min_height, 0);
248
+ rb_define_method(gdkGeometry, "max_width", geo_max_width, 0);
249
+ rb_define_method(gdkGeometry, "max_height", geo_max_height, 0);
250
+ rb_define_method(gdkGeometry, "base_width", geo_base_width, 0);
251
+ rb_define_method(gdkGeometry, "base_height", geo_base_height, 0);
252
+ rb_define_method(gdkGeometry, "width_inc", geo_width_inc, 0);
253
+ rb_define_method(gdkGeometry, "height_inc", geo_height_inc, 0);
254
+ rb_define_method(gdkGeometry, "min_aspect", geo_min_aspect, 0);
255
+ rb_define_method(gdkGeometry, "max_aspect", geo_max_aspect, 0);
256
+ rb_define_method(gdkGeometry, "win_gravity", geo_win_gravity, 0);
257
+ rb_define_method(gdkGeometry, "set", geo_set, 11);
258
+ rb_define_method(gdkGeometry, "set_min_width", geo_set_min_width, 1);
259
+ rb_define_method(gdkGeometry, "set_min_height", geo_set_min_height, 1);
260
+ rb_define_method(gdkGeometry, "set_max_width", geo_set_max_width, 1);
261
+ rb_define_method(gdkGeometry, "set_max_height", geo_set_max_height, 1);
262
+ rb_define_method(gdkGeometry, "set_base_width", geo_set_base_width, 1);
263
+ rb_define_method(gdkGeometry, "set_base_height", geo_set_base_height, 1);
264
+ rb_define_method(gdkGeometry, "set_width_inc", geo_set_width_inc, 1);
265
+ rb_define_method(gdkGeometry, "set_height_inc", geo_set_height_inc, 1);
266
+ rb_define_method(gdkGeometry, "set_min_aspect", geo_set_min_aspect, 1);
267
+ rb_define_method(gdkGeometry, "set_max_aspect", geo_set_max_aspect, 1);
268
+ rb_define_method(gdkGeometry, "set_win_gravity", geo_set_win_gravity, 1);
269
+
270
+ G_DEF_SETTERS(gdkGeometry);
271
+
272
+ }
@@ -0,0 +1,155 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgdkimage.c -
5
+
6
+ $Author: mutoh $
7
+ $Date: 2003/10/01 15:15:53 $
8
+
9
+ Copyright (C) 2002,2003 Ruby-GNOME2 Project Team
10
+ Copyright (C) 1998-2000 Yukihiro Matsumoto,
11
+ Daisuke Kanda,
12
+ Hiroshi Igarashi
13
+ ************************************************/
14
+
15
+ #include "global.h"
16
+
17
+ #define _SELF(i) GDK_IMAGE(RVAL2GOBJ(i))
18
+
19
+ static VALUE
20
+ gdkimage_initialize(self, type, visual, w, h)
21
+ VALUE self, type, visual, w, h;
22
+ {
23
+ GdkImage* image = gdk_image_new((GdkImageType)RVAL2GENUM(type, GDK_TYPE_IMAGE_TYPE),
24
+ GDK_VISUAL(RVAL2GOBJ(visual)),
25
+ NUM2INT(w), NUM2INT(h));
26
+
27
+ if (image)
28
+ G_INITIALIZE(self, image);
29
+ else
30
+ rb_raise(rb_eArgError, "The image could not be created.");
31
+
32
+ return Qnil;
33
+ }
34
+
35
+ static VALUE
36
+ gdkimage_get_colormap(self)
37
+ VALUE self;
38
+ {
39
+ return GOBJ2RVAL(gdk_image_get_colormap(_SELF(self)));
40
+ }
41
+
42
+ static VALUE
43
+ gdkimage_set_colormap(self, colormap)
44
+ VALUE self;
45
+ {
46
+ gdk_image_set_colormap(_SELF(self), RVAL2GOBJ(colormap));
47
+ return self;
48
+ }
49
+
50
+ static VALUE
51
+ gdkimage_put_pixel(self, x, y, pix)
52
+ VALUE self, x, y, pix;
53
+ {
54
+ gdk_image_put_pixel(_SELF(self),
55
+ NUM2INT(x), NUM2INT(y), NUM2INT(pix));
56
+ return self;
57
+ }
58
+
59
+ static VALUE
60
+ gdkimage_get_pixel(self, x, y)
61
+ VALUE self, x, y;
62
+ {
63
+ return INT2NUM(gdk_image_get_pixel(_SELF(self),
64
+ NUM2INT(x), NUM2INT(y)));
65
+ }
66
+
67
+ static VALUE
68
+ gdkimage_image_type(self)
69
+ VALUE self;
70
+ {
71
+ return GENUM2RVAL((_SELF(self))->type, GDK_TYPE_IMAGE_TYPE);
72
+ }
73
+
74
+ static VALUE
75
+ gdkimage_visual(self)
76
+ VALUE self;
77
+ {
78
+ return GOBJ2RVAL((_SELF(self))->visual);
79
+ }
80
+
81
+ static VALUE
82
+ gdkimage_byte_order(self)
83
+ VALUE self;
84
+ {
85
+ return GENUM2RVAL((_SELF(self))->byte_order, GDK_TYPE_BYTE_ORDER);
86
+ }
87
+
88
+ static VALUE
89
+ gdkimage_bits_per_pixel(self)
90
+ VALUE self;
91
+ {
92
+ return INT2NUM((_SELF(self))->bits_per_pixel);
93
+ }
94
+
95
+ static VALUE
96
+ gdkimage_width(self)
97
+ VALUE self;
98
+ {
99
+ return INT2NUM((_SELF(self))->width);
100
+ }
101
+
102
+ static VALUE
103
+ gdkimage_height(self)
104
+ VALUE self;
105
+ {
106
+ return INT2NUM((_SELF(self))->height);
107
+ }
108
+
109
+ static VALUE
110
+ gdkimage_depth(self)
111
+ VALUE self;
112
+ {
113
+ return INT2NUM((_SELF(self))->depth);
114
+ }
115
+
116
+ static VALUE
117
+ gdkimage_bpp(self)
118
+ VALUE self;
119
+ {
120
+ return INT2NUM((_SELF(self))->bpp);
121
+ }
122
+
123
+ static VALUE
124
+ gdkimage_bpl(self)
125
+ VALUE self;
126
+ {
127
+ return INT2NUM((_SELF(self))->bpl);
128
+ }
129
+
130
+ void
131
+ Init_gtk_gdk_image()
132
+ {
133
+ VALUE gdkImage = G_DEF_CLASS(GDK_TYPE_IMAGE, "Image", mGdk);
134
+
135
+ rb_define_method(gdkImage, "initialize", gdkimage_initialize, 4);
136
+ rb_define_method(gdkImage, "colormap", gdkimage_get_colormap, 0);
137
+ rb_define_method(gdkImage, "set_colormap", gdkimage_set_colormap, 1);
138
+ rb_define_method(gdkImage, "put_pixel", gdkimage_put_pixel, 3);
139
+ rb_define_method(gdkImage, "get_pixel", gdkimage_get_pixel, 2);
140
+ rb_define_method(gdkImage, "image_type", gdkimage_image_type, 0);
141
+ rb_define_method(gdkImage, "visual", gdkimage_visual, 0);
142
+ rb_define_method(gdkImage, "byte_order", gdkimage_byte_order, 0);
143
+ rb_define_method(gdkImage, "bits_per_pixel", gdkimage_bits_per_pixel, 0);
144
+ rb_define_method(gdkImage, "width", gdkimage_width, 0);
145
+ rb_define_method(gdkImage, "height", gdkimage_height, 0);
146
+ rb_define_method(gdkImage, "depth", gdkimage_depth, 0);
147
+ rb_define_method(gdkImage, "bpp", gdkimage_bpp, 0);
148
+ rb_define_method(gdkImage, "bpl", gdkimage_bpl, 0);
149
+
150
+ G_DEF_SETTERS(gdkImage);
151
+
152
+ /* GdkImageType */
153
+ G_DEF_CLASS(GDK_TYPE_IMAGE_TYPE, "Type", gdkImage);
154
+ G_DEF_CONSTANTS(gdkImage, GDK_TYPE_IMAGE_TYPE, "GDK_IMAGE_");
155
+ }
@@ -0,0 +1,70 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgdkinput.c -
5
+
6
+ $Author: sakai $
7
+ $Date: 2007/07/08 03:00:50 $
8
+
9
+ Copyright (C) 2002,2003 Masao Mutoh
10
+
11
+ This file is devided from rbgtkmain.c.
12
+ rbgtkmain.c -
13
+ Copyright (C) 1998-2000 Yukihiro Matsumoto,
14
+ Daisuke Kanda,
15
+ Hiroshi Igarashi
16
+ ************************************************/
17
+
18
+ #include "global.h"
19
+
20
+ static void
21
+ exec_input(data, source, condition)
22
+ gpointer data;
23
+ gint source;
24
+ GdkInputCondition condition;
25
+ {
26
+ rb_funcall((VALUE)data, id_call, 1,
27
+ GFLAGS2RVAL(condition, GDK_TYPE_INPUT_CONDITION));
28
+ }
29
+
30
+ static VALUE
31
+ input_add(self, filedescriptor, gdk_input_condition)
32
+ VALUE self, filedescriptor, gdk_input_condition;
33
+ {
34
+ VALUE id;
35
+ VALUE func;
36
+
37
+ func = rb_block_proc();
38
+ id = INT2FIX(gdk_input_add(NUM2INT(rb_funcall(filedescriptor,
39
+ rb_intern("to_i"), 0)),
40
+ RVAL2GFLAGS(gdk_input_condition, GDK_TYPE_INPUT_CONDITION),
41
+ (GdkInputFunction)exec_input,
42
+ (gpointer)func));
43
+ G_RELATIVE2(self, func, id_relative_callbacks, id);
44
+ return id;
45
+ }
46
+
47
+ static VALUE
48
+ input_remove(self, id)
49
+ VALUE self, id;
50
+ {
51
+ gdk_input_remove(NUM2INT(id));
52
+ G_REMOVE_RELATIVE(self, id_relative_callbacks, id);
53
+ return id;
54
+ }
55
+
56
+
57
+ void
58
+ Init_gtk_gdk_input()
59
+ {
60
+ VALUE mGdkInput = rb_define_module_under(mGdk, "Input");
61
+
62
+ rb_define_module_function(mGdkInput, "add", input_add, 2);
63
+ rb_define_module_function(mGdkInput, "remove", input_remove, 1);
64
+
65
+ /* GdkInputCondition */
66
+ G_DEF_CLASS(GDK_TYPE_INPUT_CONDITION, "Condition", mGdkInput);
67
+ G_DEF_CONSTANTS(mGdkInput, GDK_TYPE_INPUT_CONDITION, "GDK_INPUT_");
68
+
69
+ }
70
+