gtk2 1.0.3 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. data/Rakefile +66 -1
  2. data/ext/gtk2/extconf.rb +0 -96
  3. data/ext/gtk2/global.h +274 -13
  4. data/ext/gtk2/gtk2.def +5 -3
  5. data/ext/gtk2/init.c +263 -19
  6. data/ext/gtk2/rbgdk.c +245 -89
  7. data/ext/gtk2/rbgdk.h +32 -6
  8. data/ext/gtk2/rbgdkatom.c +38 -28
  9. data/ext/gtk2/rbgdkcairo.c +32 -42
  10. data/ext/gtk2/rbgdkcolor.c +52 -42
  11. data/ext/gtk2/rbgdkcolormap.c +42 -37
  12. data/ext/gtk2/rbgdkconst.c +23 -13
  13. data/ext/gtk2/rbgdkconversions.h +19 -6
  14. data/ext/gtk2/rbgdkcursor.c +37 -25
  15. data/ext/gtk2/rbgdkdevice.c +77 -67
  16. data/ext/gtk2/rbgdkdisplay.c +158 -150
  17. data/ext/gtk2/rbgdkdisplaymanager.c +27 -15
  18. data/ext/gtk2/rbgdkdragcontext.c +121 -70
  19. data/ext/gtk2/rbgdkdraw.c +252 -160
  20. data/ext/gtk2/rbgdkevent.c +30 -20
  21. data/ext/gtk2/rbgdkgc.c +123 -116
  22. data/ext/gtk2/rbgdkgeometry.c +77 -68
  23. data/ext/gtk2/rbgdkimage.c +58 -47
  24. data/ext/gtk2/rbgdkinput.c +33 -26
  25. data/ext/gtk2/rbgdkkeymap.c +38 -27
  26. data/ext/gtk2/rbgdkkeyval.c +44 -32
  27. data/ext/gtk2/rbgdkpango.c +66 -39
  28. data/ext/gtk2/rbgdkpangorenderer.c +63 -35
  29. data/ext/gtk2/rbgdkpixbuf.c +36 -25
  30. data/ext/gtk2/rbgdkpixmap.c +65 -49
  31. data/ext/gtk2/rbgdkproperty.c +66 -60
  32. data/ext/gtk2/rbgdkrectangle.c +54 -46
  33. data/ext/gtk2/rbgdkregion.c +144 -79
  34. data/ext/gtk2/rbgdkrgb.c +74 -58
  35. data/ext/gtk2/rbgdkscreen.c +103 -97
  36. data/ext/gtk2/rbgdkselection.c +49 -39
  37. data/ext/gtk2/rbgdkthreads.c +32 -19
  38. data/ext/gtk2/rbgdktimecoord.c +60 -38
  39. data/ext/gtk2/rbgdkvisual.c +79 -71
  40. data/ext/gtk2/rbgdkwindow.c +284 -305
  41. data/ext/gtk2/rbgdkwindowattr.c +69 -58
  42. data/ext/gtk2/rbgdkx11.c +41 -28
  43. data/ext/gtk2/rbgtk.c +498 -19
  44. data/ext/gtk2/rbgtk.h +35 -20
  45. data/ext/gtk2/rbgtkaboutdialog.c +33 -80
  46. data/ext/gtk2/rbgtkaccelerator.c +36 -23
  47. data/ext/gtk2/rbgtkaccelgroup.c +50 -40
  48. data/ext/gtk2/rbgtkaccelgroupentry.c +32 -20
  49. data/ext/gtk2/rbgtkaccelkey.c +40 -28
  50. data/ext/gtk2/rbgtkaccellabel.c +30 -18
  51. data/ext/gtk2/rbgtkaccelmap.c +55 -42
  52. data/ext/gtk2/rbgtkaccessible.c +25 -14
  53. data/ext/gtk2/rbgtkaction.c +68 -68
  54. data/ext/gtk2/rbgtkactiongroup.c +317 -195
  55. data/ext/gtk2/rbgtkadjustment.c +33 -46
  56. data/ext/gtk2/rbgtkalignment.c +36 -24
  57. data/ext/gtk2/rbgtkallocation.c +53 -42
  58. data/ext/gtk2/rbgtkarrow.c +34 -22
  59. data/ext/gtk2/rbgtkaspectframe.c +32 -20
  60. data/ext/gtk2/rbgtkassistant.c +81 -61
  61. data/ext/gtk2/rbgtkbbox.c +32 -20
  62. data/ext/gtk2/rbgtkbin.c +28 -16
  63. data/ext/gtk2/rbgtkbindingset.c +42 -35
  64. data/ext/gtk2/rbgtkborder.c +34 -23
  65. data/ext/gtk2/rbgtkbox.c +40 -29
  66. data/ext/gtk2/rbgtkbuildable.c +57 -45
  67. data/ext/gtk2/rbgtkbuilder.c +53 -38
  68. data/ext/gtk2/rbgtkbutton.c +41 -55
  69. data/ext/gtk2/rbgtkcalendar.c +51 -40
  70. data/ext/gtk2/rbgtkcelleditable.c +28 -17
  71. data/ext/gtk2/rbgtkcelllayout.c +41 -30
  72. data/ext/gtk2/rbgtkcellrenderer.c +43 -32
  73. data/ext/gtk2/rbgtkcellrendereraccel.c +26 -18
  74. data/ext/gtk2/rbgtkcellrenderercombo.c +25 -17
  75. data/ext/gtk2/rbgtkcellrendererpixbuf.c +24 -17
  76. data/ext/gtk2/rbgtkcellrendererprogress.c +25 -17
  77. data/ext/gtk2/rbgtkcellrendererspin.c +24 -16
  78. data/ext/gtk2/rbgtkcellrendererspinner.c +23 -11
  79. data/ext/gtk2/rbgtkcellrenderertext.c +28 -21
  80. data/ext/gtk2/rbgtkcellrenderertoggle.c +24 -16
  81. data/ext/gtk2/rbgtkcellview.c +34 -33
  82. data/ext/gtk2/rbgtkcheckbutton.c +28 -16
  83. data/ext/gtk2/rbgtkcheckmenuitem.c +31 -19
  84. data/ext/gtk2/rbgtkclipboard.c +123 -77
  85. data/ext/gtk2/rbgtkcolorbutton.c +26 -31
  86. data/ext/gtk2/rbgtkcolorsel.c +109 -55
  87. data/ext/gtk2/rbgtkcolorselectiondialog.c +28 -19
  88. data/ext/gtk2/rbgtkcombo.c +43 -32
  89. data/ext/gtk2/rbgtkcombobox.c +44 -83
  90. data/ext/gtk2/rbgtkcomboboxentry.c +26 -21
  91. data/ext/gtk2/rbgtkconst.c +23 -13
  92. data/ext/gtk2/rbgtkcontainer.c +153 -100
  93. data/ext/gtk2/rbgtkconversions.h +19 -6
  94. data/ext/gtk2/rbgtkcurve.c +46 -36
  95. data/ext/gtk2/rbgtkdialog.c +104 -70
  96. data/ext/gtk2/rbgtkdrag.c +173 -121
  97. data/ext/gtk2/rbgtkdrawingarea.c +28 -16
  98. data/ext/gtk2/rbgtkeditable.c +63 -51
  99. data/ext/gtk2/rbgtkentry.c +48 -85
  100. data/ext/gtk2/rbgtkentrycompletion.c +42 -55
  101. data/ext/gtk2/rbgtkeventbox.c +28 -16
  102. data/ext/gtk2/rbgtkexpander.c +26 -35
  103. data/ext/gtk2/rbgtkfilechooser.c +87 -143
  104. data/ext/gtk2/rbgtkfilechooserbutton.c +26 -32
  105. data/ext/gtk2/rbgtkfilechooserdialog.c +25 -15
  106. data/ext/gtk2/rbgtkfilechooserwidget.c +26 -15
  107. data/ext/gtk2/rbgtkfilefilter.c +45 -35
  108. data/ext/gtk2/rbgtkfilesel.c +54 -43
  109. data/ext/gtk2/rbgtkfilesystemerror.c +51 -0
  110. data/ext/gtk2/rbgtkfixed.c +36 -25
  111. data/ext/gtk2/rbgtkfontbutton.c +26 -37
  112. data/ext/gtk2/rbgtkfontselection.c +27 -15
  113. data/ext/gtk2/rbgtkfontselectiondialog.c +43 -32
  114. data/ext/gtk2/rbgtkframe.c +39 -28
  115. data/ext/gtk2/rbgtkgamma.c +32 -20
  116. data/ext/gtk2/rbgtkhandlebox.c +31 -19
  117. data/ext/gtk2/rbgtkhbbox.c +28 -16
  118. data/ext/gtk2/rbgtkhbox.c +29 -17
  119. data/ext/gtk2/rbgtkhpaned.c +28 -16
  120. data/ext/gtk2/rbgtkhruler.c +28 -16
  121. data/ext/gtk2/rbgtkhscale.c +28 -16
  122. data/ext/gtk2/rbgtkhscrollbar.c +28 -16
  123. data/ext/gtk2/rbgtkhseparator.c +28 -16
  124. data/ext/gtk2/rbgtkiconfactory.c +35 -23
  125. data/ext/gtk2/rbgtkiconinfo.c +42 -30
  126. data/ext/gtk2/rbgtkiconset.c +31 -19
  127. data/ext/gtk2/rbgtkiconsize.c +38 -25
  128. data/ext/gtk2/rbgtkiconsource.c +62 -50
  129. data/ext/gtk2/rbgtkicontheme.c +95 -95
  130. data/ext/gtk2/rbgtkiconview.c +87 -121
  131. data/ext/gtk2/rbgtkimage.c +31 -40
  132. data/ext/gtk2/rbgtkimagemenuitem.c +26 -14
  133. data/ext/gtk2/rbgtkimcontext.c +46 -34
  134. data/ext/gtk2/rbgtkimcontextsimple.c +47 -24
  135. data/ext/gtk2/rbgtkimmulticontext.c +26 -14
  136. data/ext/gtk2/rbgtkinputdialog.c +28 -16
  137. data/ext/gtk2/rbgtkinvisible.c +24 -18
  138. data/ext/gtk2/rbgtkitem.c +32 -20
  139. data/ext/gtk2/rbgtkitemfactory.c +65 -57
  140. data/ext/gtk2/rbgtklabel.c +46 -57
  141. data/ext/gtk2/rbgtklayout.c +40 -29
  142. data/ext/gtk2/rbgtklinkbutton.c +26 -15
  143. data/ext/gtk2/rbgtkliststore.c +145 -102
  144. data/ext/gtk2/rbgtkmacros.h +19 -6
  145. data/ext/gtk2/rbgtkmenu.c +47 -59
  146. data/ext/gtk2/rbgtkmenubar.c +30 -30
  147. data/ext/gtk2/rbgtkmenuitem.c +34 -41
  148. data/ext/gtk2/rbgtkmenushell.c +43 -42
  149. data/ext/gtk2/rbgtkmenutoolbutton.c +27 -16
  150. data/ext/gtk2/rbgtkmessagedialog.c +31 -25
  151. data/ext/gtk2/rbgtkmisc.c +33 -22
  152. data/ext/gtk2/rbgtknotebook.c +98 -134
  153. data/ext/gtk2/rbgtkobject.c +46 -81
  154. data/ext/gtk2/rbgtkoptionmenu.c +35 -23
  155. data/ext/gtk2/rbgtkpagesetup.c +64 -54
  156. data/ext/gtk2/rbgtkpagesetupunixdialog.c +34 -27
  157. data/ext/gtk2/rbgtkpaned.c +46 -36
  158. data/ext/gtk2/rbgtkpapersize.c +60 -54
  159. data/ext/gtk2/rbgtkplug.c +32 -20
  160. data/ext/gtk2/rbgtkprintcontext.c +43 -35
  161. data/ext/gtk2/rbgtkprinter.c +36 -37
  162. data/ext/gtk2/rbgtkprintjob.c +36 -37
  163. data/ext/gtk2/rbgtkprintoperation.c +44 -33
  164. data/ext/gtk2/rbgtkprintoperationpreview.c +30 -18
  165. data/ext/gtk2/rbgtkprintsettings.c +248 -192
  166. data/ext/gtk2/rbgtkprintunixdialog.c +33 -45
  167. data/ext/gtk2/rbgtkprogress.c +23 -13
  168. data/ext/gtk2/rbgtkprogressbar.c +47 -46
  169. data/ext/gtk2/rbgtkradioaction.c +84 -39
  170. data/ext/gtk2/rbgtkradiobutton.c +33 -21
  171. data/ext/gtk2/rbgtkradiomenuitem.c +86 -45
  172. data/ext/gtk2/rbgtkradiotoolbutton.c +99 -53
  173. data/ext/gtk2/rbgtkrange.c +36 -56
  174. data/ext/gtk2/rbgtkrc.c +61 -49
  175. data/ext/gtk2/rbgtkrcstyle.c +59 -48
  176. data/ext/gtk2/rbgtkrecentaction.c +28 -16
  177. data/ext/gtk2/rbgtkrecentchooser.c +58 -92
  178. data/ext/gtk2/rbgtkrecentchooserdialog.c +29 -18
  179. data/ext/gtk2/rbgtkrecentchoosermenu.c +25 -21
  180. data/ext/gtk2/rbgtkrecentchooserwidget.c +24 -13
  181. data/ext/gtk2/rbgtkrecentdata.c +47 -36
  182. data/ext/gtk2/rbgtkrecentfilter.c +55 -46
  183. data/ext/gtk2/rbgtkrecentfilterinfo.c +51 -40
  184. data/ext/gtk2/rbgtkrecentinfo.c +66 -56
  185. data/ext/gtk2/rbgtkrecentmanager.c +47 -43
  186. data/ext/gtk2/rbgtkruler.c +35 -30
  187. data/ext/gtk2/rbgtkscale.c +29 -18
  188. data/ext/gtk2/rbgtkscalebutton.c +27 -27
  189. data/ext/gtk2/rbgtkscrollbar.c +23 -13
  190. data/ext/gtk2/rbgtkscrolledwindow.c +44 -60
  191. data/ext/gtk2/rbgtkselection.c +87 -67
  192. data/ext/gtk2/rbgtkselectiondata.c +74 -65
  193. data/ext/gtk2/rbgtkseparator.c +23 -13
  194. data/ext/gtk2/rbgtkseparatormenuitem.c +25 -13
  195. data/ext/gtk2/rbgtkseparatortoolitem.c +26 -21
  196. data/ext/gtk2/rbgtksettings.c +123 -103
  197. data/ext/gtk2/rbgtksizegroup.c +33 -30
  198. data/ext/gtk2/rbgtksocket.c +32 -20
  199. data/ext/gtk2/rbgtkspinbutton.c +48 -38
  200. data/ext/gtk2/rbgtkspinner.c +27 -14
  201. data/ext/gtk2/rbgtkstatusbar.c +36 -31
  202. data/ext/gtk2/rbgtkstatusicon.c +31 -44
  203. data/ext/gtk2/rbgtkstock.c +137 -125
  204. data/ext/gtk2/rbgtkstyle.c +177 -161
  205. data/ext/gtk2/rbgtktable.c +58 -47
  206. data/ext/gtk2/rbgtktargetlist.c +56 -36
  207. data/ext/gtk2/rbgtktearoffmenuitem.c +28 -16
  208. data/ext/gtk2/rbgtktextappearance.c +44 -34
  209. data/ext/gtk2/rbgtktextattributes.c +54 -42
  210. data/ext/gtk2/rbgtktextbuffer.c +188 -191
  211. data/ext/gtk2/rbgtktextchild.c +29 -18
  212. data/ext/gtk2/rbgtktextiter.c +153 -145
  213. data/ext/gtk2/rbgtktextmark.c +33 -30
  214. data/ext/gtk2/rbgtktexttag.c +34 -22
  215. data/ext/gtk2/rbgtktexttagtable.c +36 -25
  216. data/ext/gtk2/rbgtktextview.c +85 -73
  217. data/ext/gtk2/rbgtktoggleaction.c +27 -22
  218. data/ext/gtk2/rbgtktogglebutton.c +37 -26
  219. data/ext/gtk2/rbgtktoggletoolbutton.c +26 -20
  220. data/ext/gtk2/rbgtktoolbar.c +66 -69
  221. data/ext/gtk2/rbgtktoolbutton.c +27 -40
  222. data/ext/gtk2/rbgtktoolitem.c +60 -62
  223. data/ext/gtk2/rbgtktooltip.c +36 -25
  224. data/ext/gtk2/rbgtktooltips.c +42 -34
  225. data/ext/gtk2/rbgtktreedragdest.c +20 -11
  226. data/ext/gtk2/rbgtktreedragsource.c +20 -11
  227. data/ext/gtk2/rbgtktreeiter.c +58 -47
  228. data/ext/gtk2/rbgtktreemodel.c +83 -65
  229. data/ext/gtk2/rbgtktreemodelfilter.c +47 -35
  230. data/ext/gtk2/rbgtktreemodelsort.c +38 -27
  231. data/ext/gtk2/rbgtktreepath.c +55 -44
  232. data/ext/gtk2/rbgtktreerowreference.c +60 -42
  233. data/ext/gtk2/rbgtktreeselection.c +61 -52
  234. data/ext/gtk2/rbgtktreesortable.c +52 -42
  235. data/ext/gtk2/rbgtktreestore.c +88 -67
  236. data/ext/gtk2/rbgtktreeview.c +157 -185
  237. data/ext/gtk2/rbgtktreeviewcolumn.c +57 -62
  238. data/ext/gtk2/rbgtkuimanager.c +61 -61
  239. data/ext/gtk2/rbgtkvbbox.c +28 -16
  240. data/ext/gtk2/rbgtkvbox.c +29 -17
  241. data/ext/gtk2/rbgtkviewport.c +28 -16
  242. data/ext/gtk2/rbgtkvolumebutton.c +28 -16
  243. data/ext/gtk2/rbgtkvpaned.c +28 -16
  244. data/ext/gtk2/rbgtkvruler.c +28 -16
  245. data/ext/gtk2/rbgtkvscale.c +28 -16
  246. data/ext/gtk2/rbgtkvscrollbar.c +28 -16
  247. data/ext/gtk2/rbgtkvseparator.c +28 -16
  248. data/ext/gtk2/rbgtkwidget.c +284 -296
  249. data/ext/gtk2/rbgtkwindow.c +156 -214
  250. data/ext/gtk2/rbgtkwindowgroup.c +35 -24
  251. data/sample/testgtk/labels.rb +1 -0
  252. data/sample/testgtk/testgtk.rb +2 -0
  253. metadata +16 -17
  254. data/ChangeLog +0 -6902
  255. data/ext/gtk2/rbgtkmain.c +0 -493
@@ -1,20 +1,32 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /************************************************
3
-
4
- rbgtkcolorbutton.c -
5
-
6
- $Author: mutoh $
7
- $Date: 2004/05/30 16:41:13 $
8
-
9
- Copyright (C) 2004 Masao Mutoh
10
- ************************************************/
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2004 Masao Mutoh
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
+ * MA 02110-1301 USA
20
+ */
11
21
 
12
22
  #include "global.h"
13
-
23
+
14
24
  #if GTK_CHECK_VERSION(2,4,0)
15
25
 
26
+ #define RG_TARGET_NAMESPACE cColorButton
27
+
16
28
  static VALUE
17
- colorbutton_initialize(int argc, VALUE *argv, VALUE self)
29
+ rg_initialize(int argc, VALUE *argv, VALUE self)
18
30
  {
19
31
  VALUE color;
20
32
  GtkWidget* widget;
@@ -31,30 +43,13 @@ colorbutton_initialize(int argc, VALUE *argv, VALUE self)
31
43
  return Qnil;
32
44
  }
33
45
 
34
- /* Defined as property.
35
- void gtk_color_button_set_color (GtkColorButton *color_button,
36
- const GdkColor *color);
37
- void gtk_color_button_get_color (GtkColorButton *color_button,
38
- GdkColor *color);
39
- void gtk_color_button_set_alpha (GtkColorButton *color_button,
40
- guint16 alpha);
41
- guint16 gtk_color_button_get_alpha (GtkColorButton *color_button);
42
- void gtk_color_button_set_use_alpha (GtkColorButton *color_button,
43
- gboolean use_alpha);
44
- gboolean gtk_color_button_get_use_alpha (GtkColorButton *color_button);
45
- void gtk_color_button_set_title (GtkColorButton *color_button,
46
- const gchar *title);
47
- G_CONST_RETURN gchar* gtk_color_button_get_title
48
- (GtkColorButton *color_button);
49
- */
50
-
51
46
  #endif
52
47
 
53
48
  void
54
- Init_gtk_colorbutton()
49
+ Init_gtk_colorbutton(VALUE mGtk)
55
50
  {
56
51
  #if GTK_CHECK_VERSION(2,4,0)
57
- VALUE gColorbutton = G_DEF_CLASS(GTK_TYPE_COLOR_BUTTON, "ColorButton", mGtk);
58
- rb_define_method(gColorbutton, "initialize", colorbutton_initialize, -1);
52
+ VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_COLOR_BUTTON, "ColorButton", mGtk);
53
+ RG_DEF_METHOD(initialize, -1);
59
54
  #endif
60
55
  }
@@ -1,52 +1,63 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /************************************************
3
-
4
- rbgtkcolorsel.c -
5
-
6
- $Author: ggc $
7
- $Date: 2007/07/13 14:27:09 $
8
-
9
- Copyright (C) 2002,2003 Ruby-GNOME2 Project Team
10
- Copyright (C) 1998-2000 Yukihiro Matsumoto,
11
- Daisuke Kanda,
12
- Hiroshi Igarashi
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
 
27
+ #define RG_TARGET_NAMESPACE cColorSelection
17
28
  #define _SELF(s) (GTK_COLOR_SELECTION(RVAL2GOBJ(self)))
18
29
 
19
- static VALUE gColorSel;
30
+ static VALUE RG_TARGET_NAMESPACE;
20
31
 
21
32
  static VALUE
22
- colorsel_initialize(VALUE self)
33
+ rg_initialize(VALUE self)
23
34
  {
24
35
  RBGTK_INITIALIZE(self, gtk_color_selection_new());
25
36
  return Qnil;
26
37
  }
27
38
 
28
39
  static VALUE
29
- colorsel_get_previous_alpha(VALUE self)
40
+ rg_previous_alpha(VALUE self)
30
41
  {
31
42
  return INT2NUM(gtk_color_selection_get_previous_alpha(_SELF(self)));
32
43
  }
33
44
 
34
45
  static VALUE
35
- colorsel_set_previous_alpha(VALUE self, VALUE alpha)
46
+ rg_set_previous_alpha(VALUE self, VALUE alpha)
36
47
  {
37
48
  gtk_color_selection_set_previous_alpha(_SELF(self), NUM2INT(alpha));
38
49
  return self;
39
50
  }
40
51
 
41
52
  static VALUE
42
- colorsel_set_previous_color(VALUE self, VALUE color)
53
+ rg_set_previous_color(VALUE self, VALUE color)
43
54
  {
44
55
  gtk_color_selection_set_previous_color(_SELF(self), RVAL2GDKCOLOR(color));
45
56
  return self;
46
57
  }
47
58
 
48
59
  static VALUE
49
- colorsel_get_previous_color(VALUE self)
60
+ rg_previous_color(VALUE self)
50
61
  {
51
62
  GdkColor color;
52
63
  gtk_color_selection_get_previous_color(_SELF(self), &color);
@@ -54,53 +65,96 @@ colorsel_get_previous_color(VALUE self)
54
65
  }
55
66
 
56
67
  static VALUE
57
- colorsel_is_adjusting(VALUE self)
68
+ rg_adjusting_p(VALUE self)
58
69
  {
59
70
  return CBOOL2RVAL(gtk_color_selection_is_adjusting(_SELF(self)));
60
71
  }
61
72
 
62
73
  static VALUE
63
- colorsel_s_palette_from_string(VALUE self, VALUE str)
74
+ rg_s_palette_from_string(G_GNUC_UNUSED VALUE self, VALUE str)
64
75
  {
65
76
  GdkColor* gcolors;
66
77
  gint i, n_colors;
67
78
  VALUE ary = Qnil;
68
79
  gboolean ret = gtk_color_selection_palette_from_string(RVAL2CSTR(str),
69
80
  &gcolors, &n_colors);
70
-
81
+
71
82
  if (ret) {
72
83
  ary = rb_ary_new();
73
84
  for (i = 0; i < n_colors; i++) {
74
85
  rb_ary_push(ary, GDKCOLOR2RVAL(&gcolors[i]));
75
86
  }
76
87
  }
77
-
88
+
78
89
  return ary;
79
90
  }
80
91
 
92
+ struct rbgdk_rval2gdkcolors_args {
93
+ VALUE ary;
94
+ long n;
95
+ GdkColor *result;
96
+ };
97
+
81
98
  static VALUE
82
- colorsel_s_palette_to_string(int argc, VALUE *argv, VALUE self)
99
+ rbgdk_rval2gdkcolors_body(VALUE value)
83
100
  {
84
- GdkColor* gcolors;
85
- GdkColor* gcolor;
86
- VALUE colors;
87
- gint i, len;
88
-
89
- if (argc > 1) {
90
- rb_scan_args(argc, argv, "*", &colors);
91
- } else {
92
- rb_scan_args(argc, argv, "10", &colors);
93
- }
101
+ long i;
102
+ struct rbgdk_rval2gdkcolors_args *args = (struct rbgdk_rval2gdkcolors_args *)value;
94
103
 
95
- len = RARRAY_LEN(colors);
96
- gcolors = ALLOCA_N(GdkColor, len);
104
+ for (i = 0; i < args->n; i++)
105
+ args->result[i] = *RVAL2GDKCOLOR(RARRAY_PTR(args->ary)[i]);
97
106
 
98
- for (i = 0; i < len; i++) {
99
- gcolor = RVAL2GDKCOLOR(RARRAY_PTR(colors)[i]);
100
- gcolors[i] = *gcolor;
101
- }
107
+ return Qnil;
108
+ }
109
+
110
+ static G_GNUC_NORETURN VALUE
111
+ rbgdk_rval2gdkcolors_rescue(VALUE value)
112
+ {
113
+ g_free(((struct rbgdk_rval2gdkcolors_args *)value)->result);
114
+
115
+ rb_exc_raise(rb_errinfo());
116
+ }
117
+
118
+ static GdkColor *
119
+ rbgdk_rval2gdkcolors(VALUE value, long *n)
120
+ {
121
+ struct rbgdk_rval2gdkcolors_args args;
122
+
123
+ args.ary = rb_ary_to_ary(value);
124
+ args.n = RARRAY_LEN(args.ary);
125
+ args.result = g_new(GdkColor, args.n + 1);
126
+
127
+ rb_rescue(rbgdk_rval2gdkcolors_body, (VALUE)&args,
128
+ rbgdk_rval2gdkcolors_rescue, (VALUE)&args);
129
+
130
+ if (n != NULL)
131
+ *n = args.n;
132
+
133
+ return args.result;
134
+ }
135
+
136
+ #define RVAL2GDKCOLORS(value, n) rbgdk_rval2gdkcolors(value, n)
137
+
138
+ static VALUE
139
+ rg_s_palette_to_string(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
140
+ {
141
+ VALUE rbcolors;
142
+ long n;
143
+ GdkColor *colors;
144
+ gchar *palette;
145
+
146
+ if (argc > 1)
147
+ rb_scan_args(argc, argv, "*", &rbcolors);
148
+ else
149
+ rb_scan_args(argc, argv, "10", &rbcolors);
150
+
151
+ colors = RVAL2GDKCOLORS(rbcolors, &n);
152
+
153
+ palette = gtk_color_selection_palette_to_string(colors, n);
154
+
155
+ g_free(colors);
102
156
 
103
- return CSTR2RVAL(gtk_color_selection_palette_to_string((const GdkColor*)gcolors, len));
157
+ return CSTR2RVAL_FREE(palette);
104
158
  }
105
159
 
106
160
  #if GTK_CHECK_VERSION(2,2,0)
@@ -108,7 +162,7 @@ static void
108
162
  screen_func(GdkScreen *screen, const GdkColor *colors, gint n_colors)
109
163
  {
110
164
  int i;
111
- VALUE func = rb_cvar_get(gColorSel, rb_intern("__palette_proc__"));
165
+ VALUE func = rb_cvar_get(RG_TARGET_NAMESPACE, rb_intern("__palette_proc__"));
112
166
  VALUE ary = rb_ary_new();
113
167
  for (i = 0; i < n_colors; i++){
114
168
  ary = rb_ary_push(ary, GDKCOLOR2RVAL((GdkColor *)&colors[i]));
@@ -118,11 +172,11 @@ screen_func(GdkScreen *screen, const GdkColor *colors, gint n_colors)
118
172
  }
119
173
 
120
174
  static VALUE
121
- colorsel_s_set_change_palette_hook(VALUE self)
175
+ rg_s_set_change_palette_hook(VALUE self)
122
176
  {
123
177
  VALUE func = rb_block_proc();
124
178
 
125
- rb_cv_set(gColorSel, "__palette_proc__", func);
179
+ rb_cv_set(RG_TARGET_NAMESPACE, "__palette_proc__", func);
126
180
  gtk_color_selection_set_change_palette_with_screen_hook(
127
181
  (GtkColorSelectionChangePaletteWithScreenFunc)screen_func);
128
182
  return self;
@@ -139,23 +193,23 @@ void (*GtkColorSelectionChangePaletteWithScreenFunc)
139
193
  */
140
194
 
141
195
  void
142
- Init_gtk_color_selection()
196
+ Init_gtk_color_selection(VALUE mGtk)
143
197
  {
144
- gColorSel = G_DEF_CLASS(GTK_TYPE_COLOR_SELECTION, "ColorSelection", mGtk);
198
+ RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_COLOR_SELECTION, "ColorSelection", mGtk);
145
199
 
146
- rb_define_method(gColorSel, "initialize", colorsel_initialize, 0);
147
- rb_define_method(gColorSel, "previous_alpha", colorsel_get_previous_alpha, 0);
148
- rb_define_method(gColorSel, "set_previous_alpha", colorsel_set_previous_alpha, 1);
149
- rb_define_method(gColorSel, "set_previous_color", colorsel_set_previous_color, 1);
150
- rb_define_method(gColorSel, "previous_color", colorsel_get_previous_color, 0);
151
- rb_define_method(gColorSel, "adjusting?", colorsel_is_adjusting, 0);
200
+ RG_DEF_METHOD(initialize, 0);
201
+ RG_DEF_METHOD(previous_alpha, 0);
202
+ RG_DEF_METHOD(set_previous_alpha, 1);
203
+ RG_DEF_METHOD(set_previous_color, 1);
204
+ RG_DEF_METHOD(previous_color, 0);
205
+ RG_DEF_METHOD_P(adjusting, 0);
152
206
 
153
- rb_define_singleton_method(gColorSel, "palette_to_string", colorsel_s_palette_to_string, -1);
154
- rb_define_singleton_method(gColorSel, "palette_from_string", colorsel_s_palette_from_string, 1);
207
+ RG_DEF_SMETHOD(palette_to_string, -1);
208
+ RG_DEF_SMETHOD(palette_from_string, 1);
155
209
 
156
210
  #if GTK_CHECK_VERSION(2,2,0)
157
- rb_define_singleton_method(gColorSel, "set_change_palette_hook", colorsel_s_set_change_palette_hook, 0);
211
+ RG_DEF_SMETHOD(set_change_palette_hook, 0);
158
212
  #endif
159
213
 
160
- G_DEF_SETTERS(gColorSel);
214
+ G_DEF_SETTERS(RG_TARGET_NAMESPACE);
161
215
  }
@@ -1,25 +1,34 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /************************************************
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
+ */
3
24
 
4
- rbgtkcolorselectiondialog.c -
5
-
6
- $Author: mutoh $
7
- $Date: 2003/01/19 14:28:24 $
8
-
9
- Copyright (C) 2002,2003 Masao Mutoh
10
-
11
- This file is devided from rbgtkcolorsel.c.
12
- rbgtkcolorsel.c:
13
- Copyright (C) 1998-2000 Yukihiro Matsumoto,
14
- Daisuke Kanda,
15
- Hiroshi Igarashi
16
- ************************************************/
17
25
  #include "global.h"
18
26
 
27
+ #define RG_TARGET_NAMESPACE cColorSelectionDialog
19
28
  #define _SELF(s) (GTK_COLOR_SELECTION_DIALOG(RVAL2GOBJ(s)))
20
29
 
21
30
  static VALUE
22
- cdialog_initialize(int argc, VALUE *argv, VALUE self)
31
+ rg_initialize(int argc, VALUE *argv, VALUE self)
23
32
  {
24
33
  VALUE title;
25
34
  rb_scan_args(argc, argv, "01", &title);
@@ -28,12 +37,12 @@ cdialog_initialize(int argc, VALUE *argv, VALUE self)
28
37
  }
29
38
 
30
39
  void
31
- Init_gtk_color_selection_dialog()
40
+ Init_gtk_color_selection_dialog(VALUE mGtk)
32
41
  {
33
- VALUE gColorSelDialog = G_DEF_CLASS(GTK_TYPE_COLOR_SELECTION_DIALOG,
42
+ VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_COLOR_SELECTION_DIALOG,
34
43
  "ColorSelectionDialog", mGtk);
35
44
 
36
- rb_define_method(gColorSelDialog, "initialize", cdialog_initialize, -1);
45
+ RG_DEF_METHOD(initialize, -1);
37
46
  /* NOTE: Backward compatibility */
38
- rb_define_alias(gColorSelDialog, "colorsel", "color_selection");
47
+ RG_DEF_ALIAS("colorsel", "color_selection");
39
48
  }
@@ -1,23 +1,35 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /************************************************
3
-
4
- rbgtkcombo.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
- ************************************************/
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
  #ifndef GTK_DISABLE_DEPRECATED /* Since 2.4 */
18
28
 
29
+ #define RG_TARGET_NAMESPACE cCombo
30
+
19
31
  static VALUE
20
- combo_set_popdown_strings(VALUE self, VALUE ary)
32
+ rg_set_popdown_strings(VALUE self, VALUE ary)
21
33
  {
22
34
  int i;
23
35
  GList *glist = NULL;
@@ -32,7 +44,7 @@ combo_set_popdown_strings(VALUE self, VALUE ary)
32
44
  }
33
45
 
34
46
  static VALUE
35
- combo_initialize(int argc, VALUE *argv, VALUE self)
47
+ rg_initialize(int argc, VALUE *argv, VALUE self)
36
48
  {
37
49
  VALUE ary;
38
50
  GtkWidget* widget = NULL;
@@ -43,7 +55,7 @@ combo_initialize(int argc, VALUE *argv, VALUE self)
43
55
  RBGTK_INITIALIZE(self, widget);
44
56
 
45
57
  if (! NIL_P(ary)){
46
- combo_set_popdown_strings(self, ary);
58
+ rg_set_popdown_strings(self, ary);
47
59
  }
48
60
 
49
61
  return Qnil;
@@ -53,20 +65,20 @@ static VALUE
53
65
  combo_set_val_in_list(VALUE self, VALUE val, VALUE ok)
54
66
  {
55
67
  gtk_combo_set_value_in_list(GTK_COMBO(RVAL2GOBJ(self)),
56
- RVAL2CBOOL(val), RVAL2CBOOL(ok));
68
+ RVAL2CBOOL(val), RVAL2CBOOL(ok));
57
69
  return self;
58
70
  }
59
71
 
60
72
  static VALUE
61
- combo_set_use_arrows(VALUE self, VALUE val)
73
+ rg_set_use_arrows(VALUE self, VALUE val)
62
74
  {
63
75
  gtk_combo_set_use_arrows(GTK_COMBO(RVAL2GOBJ(self)),
64
- RVAL2CBOOL(val));
76
+ RVAL2CBOOL(val));
65
77
  return self;
66
78
  }
67
79
 
68
80
  static VALUE
69
- combo_set_use_arrows_always(VALUE self, VALUE val)
81
+ rg_set_use_arrows_always(VALUE self, VALUE val)
70
82
  {
71
83
  gtk_combo_set_use_arrows_always(GTK_COMBO(RVAL2GOBJ(self)),
72
84
  RVAL2CBOOL(val));
@@ -74,35 +86,34 @@ combo_set_use_arrows_always(VALUE self, VALUE val)
74
86
  }
75
87
 
76
88
  static VALUE
77
- combo_disable_activate(VALUE self)
89
+ rg_disable_activate(VALUE self)
78
90
  {
79
91
  gtk_combo_disable_activate(GTK_COMBO(RVAL2GOBJ(self)));
80
92
  return self;
81
93
  }
82
94
 
83
95
  static VALUE
84
- combo_entry(VALUE self)
96
+ rg_entry(VALUE self)
85
97
  {
86
98
  return GOBJ2RVAL(GTK_COMBO(RVAL2GOBJ(self))->entry);
87
99
  }
88
100
  #endif
89
101
 
90
102
  void
91
- Init_gtk_combo()
103
+ Init_gtk_combo(VALUE mGtk)
92
104
  {
93
105
  #ifndef GTK_DISABLE_DEPRECATED /* Since 2.4 */
94
- VALUE gCombo = G_DEF_CLASS(GTK_TYPE_COMBO, "Combo", mGtk);
106
+ VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_COMBO, "Combo", mGtk);
95
107
 
96
- rb_define_method(gCombo, "initialize", combo_initialize, -1);
97
- G_REPLACE_SET_PROPERTY(gCombo, "value_in_list", combo_set_val_in_list, 2);
98
- rb_define_method(gCombo, "set_use_arrows", combo_set_use_arrows, 1);
99
- rb_define_method(gCombo, "set_use_arrows_always", combo_set_use_arrows_always, 1);
100
- rb_define_method(gCombo, "set_popdown_strings", combo_set_popdown_strings, 1);
101
- rb_define_method(gCombo, "disable_activate", combo_disable_activate, 0);
108
+ RG_DEF_METHOD(initialize, -1);
109
+ G_REPLACE_SET_PROPERTY(RG_TARGET_NAMESPACE, "value_in_list", combo_set_val_in_list, 2);
110
+ RG_DEF_METHOD(set_use_arrows, 1);
111
+ RG_DEF_METHOD(set_use_arrows_always, 1);
112
+ RG_DEF_METHOD(set_popdown_strings, 1);
113
+ RG_DEF_METHOD(disable_activate, 0);
102
114
 
103
- rb_define_method(gCombo, "entry", combo_entry, 0);
115
+ RG_DEF_METHOD(entry, 0);
104
116
 
105
- G_DEF_SETTERS(gCombo);
117
+ G_DEF_SETTERS(RG_TARGET_NAMESPACE);
106
118
  #endif
107
119
  }
108
-