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,71 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgtkalignment.c -
5
+
6
+ $Author: mutoh $
7
+ $Date: 2004/07/31 05:44:45 $
8
+
9
+ Copyright (C) 2002-2004 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
+ static VALUE
18
+ align_initialize(self, xalign, yalign, xscale, yscale)
19
+ VALUE self, xalign, yalign, xscale, yscale;
20
+ {
21
+ RBGTK_INITIALIZE(self, gtk_alignment_new(NUM2DBL(xalign),
22
+ NUM2DBL(yalign),
23
+ NUM2DBL(xscale),
24
+ NUM2DBL(yscale)));
25
+ return Qnil;
26
+ }
27
+
28
+ static VALUE
29
+ align_set(self, xalign, yalign, xscale, yscale)
30
+ VALUE self, xalign, yalign, xscale, yscale;
31
+ {
32
+ gtk_alignment_set(GTK_ALIGNMENT(RVAL2GOBJ(self)),
33
+ NUM2DBL(xalign), NUM2DBL(yalign),
34
+ NUM2DBL(xscale), NUM2DBL(yscale));
35
+ return self;
36
+ }
37
+ #if GTK_CHECK_VERSION(2,4,0)
38
+ static VALUE
39
+ align_get_padding(self)
40
+ VALUE self;
41
+ {
42
+ guint top, bottom, left, right;
43
+ gtk_alignment_get_padding(GTK_ALIGNMENT(RVAL2GOBJ(self)),
44
+ &top, &bottom, &left, &right);
45
+ return rb_ary_new3(4, UINT2NUM(top), UINT2NUM(bottom),
46
+ UINT2NUM(left), UINT2NUM(right));
47
+ }
48
+ static VALUE
49
+ align_set_padding(self, top, bottom, left, right)
50
+ VALUE self;
51
+ {
52
+ gtk_alignment_set_padding(GTK_ALIGNMENT(RVAL2GOBJ(self)),
53
+ NUM2UINT(top), NUM2UINT(bottom),
54
+ NUM2UINT(left), NUM2UINT(right));
55
+ return self;
56
+ }
57
+ #endif
58
+
59
+ void
60
+ Init_gtk_alignment()
61
+ {
62
+ VALUE gAlignment = G_DEF_CLASS(GTK_TYPE_ALIGNMENT, "Alignment", mGtk);
63
+
64
+ rb_define_method(gAlignment, "initialize", align_initialize, 4);
65
+ rb_define_method(gAlignment, "set", align_set, 4);
66
+ #if GTK_CHECK_VERSION(2,4,0)
67
+ rb_define_method(gAlignment, "padding", align_get_padding, 0);
68
+ rb_define_method(gAlignment, "set_padding", align_set_padding, 4);
69
+ #endif
70
+
71
+ }
@@ -0,0 +1,171 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgtkallocation.c -
5
+
6
+ $Author: geoff_youngs $
7
+ $Date: 2004/11/06 10:46:26 $
8
+
9
+ Copyright (C) 2002-2004 Masao Mutoh
10
+ ************************************************/
11
+
12
+ #include "global.h"
13
+
14
+ static GtkAllocation *
15
+ gtk_allocation_copy(const GtkAllocation *alloc)
16
+ {
17
+ GtkAllocation *result = g_new (GtkAllocation, 1);
18
+ *result = *alloc;
19
+
20
+ return result;
21
+ }
22
+
23
+ GType
24
+ gtk_allocation_get_type(void)
25
+ {
26
+ static GType our_type = 0;
27
+ if (our_type == 0)
28
+ our_type = g_boxed_type_register_static ("GtkAllocation",
29
+ (GBoxedCopyFunc)gtk_allocation_copy,
30
+ (GBoxedFreeFunc)g_free);
31
+ return our_type;
32
+ }
33
+
34
+ #define _SELF(r) ((GtkAllocation*)RVAL2BOXED(r, GTK_TYPE_ALLOCATION))
35
+
36
+ static VALUE
37
+ alloc_initialize(self, x, y, width, height)
38
+ VALUE self, x, y, width, height;
39
+ {
40
+ GtkAllocation new;
41
+
42
+ new.x = NUM2INT(x);
43
+ new.y = NUM2INT(y);
44
+ new.width = NUM2INT(width);
45
+ new.height = NUM2INT(height);
46
+
47
+ G_INITIALIZE(self, &new);
48
+ return Qnil;
49
+ }
50
+
51
+ static VALUE
52
+ alloc_intersect(self, other)
53
+ VALUE self, other;
54
+ {
55
+ GtkAllocation dest;
56
+ gboolean ret = gdk_rectangle_intersect(_SELF(self), _SELF(other), &dest);
57
+ return ret ? BOXED2RVAL(&dest, GTK_TYPE_ALLOCATION) : Qnil;
58
+ }
59
+
60
+ static VALUE
61
+ alloc_union(self, other)
62
+ VALUE self, other;
63
+ {
64
+ GtkAllocation dest;
65
+ gdk_rectangle_union(_SELF(self), _SELF(other), &dest);
66
+ return BOXED2RVAL(&dest, GTK_TYPE_ALLOCATION);
67
+ }
68
+
69
+ /* Struct accessors */
70
+ static VALUE
71
+ alloc_x(self)
72
+ VALUE self;
73
+ {
74
+ return INT2NUM(_SELF(self)->x);
75
+ }
76
+
77
+ static VALUE
78
+ alloc_y(self)
79
+ VALUE self;
80
+ {
81
+ return INT2NUM(_SELF(self)->y);
82
+ }
83
+
84
+ static VALUE
85
+ alloc_w(self)
86
+ VALUE self;
87
+ {
88
+ return INT2NUM(_SELF(self)->width);
89
+ }
90
+
91
+ static VALUE
92
+ alloc_h(self)
93
+ VALUE self;
94
+ {
95
+ return INT2NUM(_SELF(self)->height);
96
+ }
97
+
98
+ static VALUE
99
+ alloc_set_x(self, x)
100
+ VALUE self, x;
101
+ {
102
+ _SELF(self)->x = NUM2INT(x);
103
+ return self;
104
+ }
105
+
106
+ static VALUE
107
+ alloc_set_y(self, y)
108
+ VALUE self, y;
109
+ {
110
+ _SELF(self)->y = NUM2INT(y);
111
+ return self;
112
+ }
113
+
114
+ static VALUE
115
+ alloc_set_w(self, width)
116
+ VALUE self, width;
117
+ {
118
+ _SELF(self)->width = NUM2INT(width);
119
+ return self;
120
+ }
121
+
122
+ static VALUE
123
+ alloc_set_h(self, height)
124
+ VALUE self, height;
125
+ {
126
+ _SELF(self)->height = NUM2INT(height);
127
+ return self;
128
+ }
129
+
130
+ static VALUE
131
+ alloc_to_a(self)
132
+ VALUE self;
133
+ {
134
+ GtkAllocation* a = _SELF(self);
135
+ return rb_ary_new3(4, INT2FIX(a->x), INT2FIX(a->y),
136
+ INT2FIX(a->width), INT2FIX(a->height));
137
+ }
138
+
139
+ static VALUE
140
+ alloc_to_rect(self)
141
+ VALUE self;
142
+ {
143
+ return BOXED2RVAL(_SELF(self), GDK_TYPE_RECTANGLE);
144
+ }
145
+
146
+ void
147
+ Init_gtk_allocation()
148
+ {
149
+ VALUE galloc;
150
+
151
+ galloc = G_DEF_CLASS(GTK_TYPE_ALLOCATION, "Allocation", mGtk);
152
+ rbgobj_boxed_not_copy_obj(GTK_TYPE_ALLOCATION);
153
+
154
+ rb_define_method(galloc, "initialize", alloc_initialize, 4);
155
+ rb_define_method(galloc, "intersect", alloc_intersect, 1);
156
+ rb_define_alias(galloc, "&", "intersect");
157
+ rb_define_method(galloc, "union", alloc_union, 1);
158
+ rb_define_alias(galloc, "|", "union");
159
+ rb_define_method(galloc, "x", alloc_x, 0);
160
+ rb_define_method(galloc, "y", alloc_y, 0);
161
+ rb_define_method(galloc, "width", alloc_w, 0);
162
+ rb_define_method(galloc, "height", alloc_h, 0);
163
+ rb_define_method(galloc, "set_x", alloc_set_x, 1);
164
+ rb_define_method(galloc, "set_y", alloc_set_y, 1);
165
+ rb_define_method(galloc, "set_width", alloc_set_w, 1);
166
+ rb_define_method(galloc, "set_height", alloc_set_h, 1);
167
+ rb_define_method(galloc, "to_a", alloc_to_a, 0);
168
+ rb_define_method(galloc, "to_rect", alloc_to_rect, 0);
169
+
170
+ G_DEF_SETTERS(galloc);
171
+ }
@@ -0,0 +1,47 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgtkarrow.c -
5
+
6
+ $Author: mutoh $
7
+ $Date: 2003/08/31 15:29:44 $
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
+ static VALUE
18
+ arrow_initialize(self, arrow_t, shadow_t)
19
+ VALUE self, arrow_t, shadow_t;
20
+ {
21
+ RBGTK_INITIALIZE(self, gtk_arrow_new(RVAL2GENUM(arrow_t, GTK_TYPE_ARROW_TYPE),
22
+ RVAL2GENUM(shadow_t, GTK_TYPE_SHADOW_TYPE)));
23
+ return Qnil;
24
+ }
25
+
26
+ static VALUE
27
+ arrow_set(self, arrow_t, shadow_t)
28
+ VALUE self, arrow_t, shadow_t;
29
+ {
30
+ gtk_arrow_set(GTK_ARROW(RVAL2GOBJ(self)),
31
+ RVAL2GENUM(arrow_t, GTK_TYPE_ARROW_TYPE),
32
+ RVAL2GENUM(shadow_t, GTK_TYPE_SHADOW_TYPE));
33
+ return self;
34
+ }
35
+
36
+ void
37
+ Init_gtk_arrow()
38
+ {
39
+ VALUE gArrow = G_DEF_CLASS(GTK_TYPE_ARROW, "Arrow", mGtk);
40
+
41
+ rb_define_method(gArrow, "initialize", arrow_initialize, 2);
42
+ rb_define_method(gArrow, "set", arrow_set, 2);
43
+
44
+ /* GtkArrowType (from General constants) */
45
+ G_DEF_CLASS(GTK_TYPE_ARROW_TYPE, "Type", gArrow);
46
+ G_DEF_CONSTANTS(gArrow, GTK_TYPE_ARROW_TYPE, "GTK_ARROW_");
47
+ }
@@ -0,0 +1,46 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgtkaspectframe.c -
5
+
6
+ $Author: ggc $
7
+ $Date: 2007/07/13 16:07:31 $
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
+ static VALUE
18
+ aframe_initialize(self, label, xalign, yalign, ratio, obey_child)
19
+ VALUE self, label, xalign, yalign, ratio, obey_child;
20
+ {
21
+ RBGTK_INITIALIZE(self, gtk_aspect_frame_new(NIL_P(label)?NULL:RVAL2CSTR(label),
22
+ NUM2DBL(xalign),
23
+ NUM2DBL(yalign),
24
+ NUM2DBL(ratio),
25
+ RVAL2CBOOL(obey_child)));
26
+ return Qnil;
27
+ }
28
+
29
+ static VALUE
30
+ aframe_set(self, xalign, yalign, ratio, obey_child)
31
+ VALUE self, xalign, yalign, ratio, obey_child;
32
+ {
33
+ gtk_aspect_frame_set(GTK_ASPECT_FRAME(RVAL2GOBJ(self)),
34
+ NUM2DBL(xalign), NUM2DBL(yalign),
35
+ NUM2DBL(ratio), RVAL2CBOOL(obey_child));
36
+ return self;
37
+ }
38
+
39
+ void
40
+ Init_gtk_aspect_frame()
41
+ {
42
+ VALUE gAspectFrame = G_DEF_CLASS(GTK_TYPE_ASPECT_FRAME, "AspectFrame", mGtk);
43
+
44
+ rb_define_method(gAspectFrame, "initialize", aframe_initialize, 5);
45
+ rb_define_method(gAspectFrame, "set", aframe_set, 4);
46
+ }
@@ -0,0 +1,230 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /************************************************
3
+
4
+ rbgtkassistant.c -
5
+
6
+ $Author: sakai $
7
+ $Date: 2007/07/08 03:00:49 $
8
+
9
+ Copyright (C) 2006 Ruby-GNOME2 Project Team
10
+ ************************************************/
11
+
12
+ #include "global.h"
13
+
14
+ #if GTK_CHECK_VERSION(2,10,0)
15
+
16
+ #define _SELF(s) (GTK_ASSISTANT(RVAL2GOBJ(s)))
17
+
18
+ static VALUE
19
+ ass_initialize(self)
20
+ VALUE self;
21
+ {
22
+ RBGTK_INITIALIZE(self, gtk_assistant_new());
23
+ return Qnil;
24
+ }
25
+
26
+ static VALUE
27
+ ass_get_current_page(self)
28
+ VALUE self;
29
+ {
30
+ return INT2NUM(gtk_assistant_get_current_page(_SELF(self)));
31
+ }
32
+
33
+ static VALUE
34
+ ass_set_current_page(self, page_num)
35
+ VALUE self, page_num;
36
+ {
37
+ gtk_assistant_set_current_page(_SELF(self), NUM2INT(page_num));
38
+ return self;
39
+ }
40
+
41
+ static VALUE
42
+ ass_get_n_pages(self)
43
+ VALUE self;
44
+ {
45
+ return INT2NUM(gtk_assistant_get_n_pages(_SELF(self)));
46
+ }
47
+
48
+ static VALUE
49
+ ass_get_nth_page(self, page_num)
50
+ VALUE self, page_num;
51
+ {
52
+ return GOBJ2RVAL(gtk_assistant_get_nth_page(_SELF(self), NUM2INT(page_num)));
53
+ }
54
+
55
+ static VALUE
56
+ ass_prepend_page(self, page)
57
+ VALUE self, page;
58
+ {
59
+ return INT2NUM(gtk_assistant_prepend_page(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page))));
60
+ }
61
+
62
+ static VALUE
63
+ ass_append_page(self, page)
64
+ VALUE self, page;
65
+ {
66
+ return INT2NUM(gtk_assistant_append_page(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page))));
67
+ }
68
+
69
+ static VALUE
70
+ ass_insert_page(self, page, position)
71
+ VALUE self, page, position;
72
+ {
73
+ return INT2NUM(gtk_assistant_insert_page(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page)), NUM2INT(position)));
74
+ }
75
+
76
+ static gint
77
+ ass_page_func(current_page, func)
78
+ gint current_page;
79
+ gpointer func;
80
+ {
81
+ return NUM2INT(rb_funcall((VALUE)func, id_call, 1, INT2NUM(current_page)));
82
+ }
83
+
84
+ static VALUE
85
+ ass_set_forward_page_func(self)
86
+ VALUE self;
87
+ {
88
+ VALUE func = rb_block_proc();
89
+ G_RELATIVE(self, func);
90
+ gtk_assistant_set_forward_page_func(_SELF(self), (GtkAssistantPageFunc)ass_page_func, (gpointer)func, NULL);
91
+ return self;
92
+ }
93
+
94
+ static VALUE
95
+ ass_set_page_type(self, page, type)
96
+ VALUE self, page, type;
97
+ {
98
+ gtk_assistant_set_page_type(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page)), RVAL2GENUM(type, GTK_TYPE_ASSISTANT_PAGE_TYPE));
99
+ return self;
100
+ }
101
+
102
+ static VALUE
103
+ ass_get_page_type(self, page)
104
+ VALUE self, page;
105
+ {
106
+ return GENUM2RVAL(gtk_assistant_get_page_type(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page))), GTK_TYPE_ASSISTANT_PAGE_TYPE);
107
+ }
108
+
109
+ static VALUE
110
+ ass_set_page_title(self, page, title)
111
+ VALUE self, page, title;
112
+ {
113
+ gtk_assistant_set_page_title(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page)), RVAL2CSTR(title));
114
+ return self;
115
+ }
116
+
117
+ static VALUE
118
+ ass_get_page_title(self, page)
119
+ VALUE self, page;
120
+ {
121
+ return CSTR2RVAL(gtk_assistant_get_page_title(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page))));
122
+ }
123
+
124
+ static VALUE
125
+ ass_set_page_header_image(self, page, header_image)
126
+ VALUE self, page, header_image;
127
+ {
128
+ gtk_assistant_set_page_header_image(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page)), GDK_PIXBUF(RVAL2GOBJ(header_image)));
129
+ return self;
130
+ }
131
+
132
+ static VALUE
133
+ ass_get_page_header_image(self, page)
134
+ VALUE self, page;
135
+ {
136
+ return GOBJ2RVAL(gtk_assistant_get_page_header_image(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page))));
137
+ }
138
+
139
+ static VALUE
140
+ ass_set_page_side_image(self, page, side_image)
141
+ VALUE self, page, side_image;
142
+ {
143
+ gtk_assistant_set_page_side_image(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page)), GDK_PIXBUF(RVAL2GOBJ(side_image)));
144
+ return self;
145
+ }
146
+
147
+ static VALUE
148
+ ass_get_page_side_image(self, page)
149
+ VALUE self, page;
150
+ {
151
+ return GOBJ2RVAL(gtk_assistant_get_page_side_image(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page))));
152
+ }
153
+
154
+ static VALUE
155
+ ass_set_page_complete(self, page, complete)
156
+ VALUE self, page, complete;
157
+ {
158
+ gtk_assistant_set_page_complete(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page)), RVAL2CBOOL(complete));
159
+ return self;
160
+ }
161
+
162
+ static VALUE
163
+ ass_get_page_complete(self, page)
164
+ VALUE self, page;
165
+ {
166
+ return CBOOL2RVAL(gtk_assistant_get_page_complete(_SELF(self), GTK_WIDGET(RVAL2GOBJ(page))));
167
+ }
168
+
169
+ static VALUE
170
+ ass_add_action_widget(self, child)
171
+ VALUE self, child;
172
+ {
173
+ gtk_assistant_add_action_widget(_SELF(self), GTK_WIDGET(RVAL2GOBJ(child)));
174
+ return self;
175
+ }
176
+
177
+ static VALUE
178
+ ass_remove_action_widget(self, child)
179
+ VALUE self, child;
180
+ {
181
+ gtk_assistant_remove_action_widget(_SELF(self), GTK_WIDGET(RVAL2GOBJ(child)));
182
+ return self;
183
+ }
184
+
185
+ static VALUE
186
+ ass_update_buttons_state(self)
187
+ VALUE self;
188
+ {
189
+ gtk_assistant_update_buttons_state(_SELF(self));
190
+ return self;
191
+ }
192
+
193
+ #endif
194
+
195
+ void
196
+ Init_gtk_assistant()
197
+ {
198
+ #if GTK_CHECK_VERSION(2,10,0)
199
+ VALUE ass = G_DEF_CLASS(GTK_TYPE_ASSISTANT, "Assistant", mGtk);
200
+ rb_define_method(ass, "initialize", ass_initialize, 0);
201
+
202
+ rb_define_method(ass, "current_page", ass_get_current_page, 0);
203
+ rb_define_method(ass, "set_current_page", ass_set_current_page, 1);
204
+ rb_define_method(ass, "n_pages", ass_get_n_pages, 0);
205
+ rb_define_method(ass, "get_nth_page", ass_get_nth_page, 1);
206
+ rb_define_method(ass, "prepend_page", ass_prepend_page, 1);
207
+ rb_define_method(ass, "append_page", ass_append_page, 1);
208
+ rb_define_method(ass, "insert_page", ass_insert_page, 2);
209
+ rb_define_method(ass, "set_forward_page_func", ass_set_forward_page_func, 0);
210
+ rb_define_method(ass, "set_page_type", ass_set_page_type, 2);
211
+ rb_define_method(ass, "get_page_type", ass_get_page_type, 1);
212
+ rb_define_method(ass, "set_page_title", ass_set_page_title, 2);
213
+ rb_define_method(ass, "get_page_title", ass_get_page_title, 1);
214
+ rb_define_method(ass, "set_page_header_image", ass_set_page_header_image, 2);
215
+ rb_define_method(ass, "get_page_header_image", ass_get_page_header_image, 1);
216
+ rb_define_method(ass, "set_page_side_image", ass_set_page_side_image, 2);
217
+ rb_define_method(ass, "get_page_side_image", ass_get_page_side_image, 1);
218
+ rb_define_method(ass, "set_page_complete", ass_set_page_complete, 2);
219
+ rb_define_method(ass, "get_page_complete", ass_get_page_complete, 1);
220
+ rb_define_method(ass, "add_action_widget", ass_add_action_widget, 1);
221
+ rb_define_method(ass, "remove_action_widget", ass_remove_action_widget, 1);
222
+ rb_define_method(ass, "update_buttons_state", ass_update_buttons_state, 0);
223
+
224
+ G_DEF_SETTERS(ass);
225
+
226
+ /* GtkAssistantPageType */
227
+ G_DEF_CLASS(GTK_TYPE_ASSISTANT_PAGE_TYPE, "PageType", ass);
228
+ G_DEF_CONSTANTS(ass, GTK_TYPE_ASSISTANT_PAGE_TYPE, "GTK_ASSISTANT_");
229
+ #endif
230
+ }