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.
- data/ChangeLog +6664 -0
- data/README +33 -0
- data/Rakefile +71 -0
- data/extconf.rb +116 -0
- data/src/global.h +33 -0
- data/src/init.c +39 -0
- data/src/lib/gtk2.rb +13 -0
- data/src/lib/gtk2/base.rb +95 -0
- data/src/makeinits.rb +57 -0
- data/src/makekeysyms.rb +5 -0
- data/src/rbgdk.c +395 -0
- data/src/rbgdk.h +50 -0
- data/src/rbgdkatom.c +122 -0
- data/src/rbgdkcairo.c +100 -0
- data/src/rbgdkcolor.c +151 -0
- data/src/rbgdkcolormap.c +142 -0
- data/src/rbgdkconst.c +29 -0
- data/src/rbgdkconversions.h +18 -0
- data/src/rbgdkcursor.c +115 -0
- data/src/rbgdkdevice.c +235 -0
- data/src/rbgdkdisplay.c +634 -0
- data/src/rbgdkdisplaymanager.c +50 -0
- data/src/rbgdkdragcontext.c +280 -0
- data/src/rbgdkdraw.c +487 -0
- data/src/rbgdkevent.c +1020 -0
- data/src/rbgdkgc.c +456 -0
- data/src/rbgdkgeometry.c +272 -0
- data/src/rbgdkimage.c +155 -0
- data/src/rbgdkinput.c +70 -0
- data/src/rbgdkkeymap.c +153 -0
- data/src/rbgdkkeysyms.h +2174 -0
- data/src/rbgdkkeyval.c +105 -0
- data/src/rbgdkpango.c +171 -0
- data/src/rbgdkpangorenderer.c +132 -0
- data/src/rbgdkpixbuf.c +178 -0
- data/src/rbgdkpixmap.c +255 -0
- data/src/rbgdkproperty.c +342 -0
- data/src/rbgdkrectangle.c +146 -0
- data/src/rbgdkregion.c +242 -0
- data/src/rbgdkrgb.c +197 -0
- data/src/rbgdkscreen.c +535 -0
- data/src/rbgdkselection.c +161 -0
- data/src/rbgdkthreads.c +68 -0
- data/src/rbgdktimecoord.c +118 -0
- data/src/rbgdkvisual.c +273 -0
- data/src/rbgdkwindow.c +1302 -0
- data/src/rbgdkwindowattr.c +213 -0
- data/src/rbgdkx11.c +256 -0
- data/src/rbgtk.c +93 -0
- data/src/rbgtk.h +121 -0
- data/src/rbgtkaboutdialog.c +195 -0
- data/src/rbgtkaccelerator.c +78 -0
- data/src/rbgtkaccelgroup.c +216 -0
- data/src/rbgtkaccelgroupentry.c +85 -0
- data/src/rbgtkaccelkey.c +116 -0
- data/src/rbgtkaccellabel.c +46 -0
- data/src/rbgtkaccelmap.c +162 -0
- data/src/rbgtkaccessible.c +29 -0
- data/src/rbgtkaction.c +277 -0
- data/src/rbgtkactiongroup.c +377 -0
- data/src/rbgtkadjustment.c +153 -0
- data/src/rbgtkalignment.c +71 -0
- data/src/rbgtkallocation.c +171 -0
- data/src/rbgtkarrow.c +47 -0
- data/src/rbgtkaspectframe.c +46 -0
- data/src/rbgtkassistant.c +230 -0
- data/src/rbgtkbbox.c +47 -0
- data/src/rbgtkbin.c +31 -0
- data/src/rbgtkbindingset.c +192 -0
- data/src/rbgtkborder.c +80 -0
- data/src/rbgtkbox.c +142 -0
- data/src/rbgtkbuildable.c +115 -0
- data/src/rbgtkbuilder.c +154 -0
- data/src/rbgtkbutton.c +151 -0
- data/src/rbgtkcalendar.c +159 -0
- data/src/rbgtkcelleditable.c +49 -0
- data/src/rbgtkcelllayout.c +144 -0
- data/src/rbgtkcellrenderer.c +139 -0
- data/src/rbgtkcellrendereraccel.c +42 -0
- data/src/rbgtkcellrenderercombo.c +37 -0
- data/src/rbgtkcellrendererpixbuf.c +33 -0
- data/src/rbgtkcellrendererprogress.c +37 -0
- data/src/rbgtkcellrendererspin.c +38 -0
- data/src/rbgtkcellrenderertext.c +45 -0
- data/src/rbgtkcellrenderertoggle.c +32 -0
- data/src/rbgtkcellview.c +134 -0
- data/src/rbgtkcheckbutton.c +55 -0
- data/src/rbgtkcheckmenuitem.c +56 -0
- data/src/rbgtkclipboard.c +473 -0
- data/src/rbgtkcolorbutton.c +63 -0
- data/src/rbgtkcolorsel.c +175 -0
- data/src/rbgtkcolorselectiondialog.c +72 -0
- data/src/rbgtkcombo.c +117 -0
- data/src/rbgtkcombobox.c +240 -0
- data/src/rbgtkcomboboxentry.c +60 -0
- data/src/rbgtkconst.c +163 -0
- data/src/rbgtkcontainer.c +776 -0
- data/src/rbgtkconversions.h +26 -0
- data/src/rbgtkcurve.c +105 -0
- data/src/rbgtkdialog.c +244 -0
- data/src/rbgtkdrag.c +436 -0
- data/src/rbgtkdrawingarea.c +31 -0
- data/src/rbgtkeditable.c +152 -0
- data/src/rbgtkentry.c +161 -0
- data/src/rbgtkentrycompletion.c +167 -0
- data/src/rbgtkeventbox.c +31 -0
- data/src/rbgtkexpander.c +67 -0
- data/src/rbgtkfilechooser.c +403 -0
- data/src/rbgtkfilechooserbutton.c +72 -0
- data/src/rbgtkfilechooserdialog.c +58 -0
- data/src/rbgtkfilechooserwidget.c +50 -0
- data/src/rbgtkfilefilter.c +139 -0
- data/src/rbgtkfilesel.c +155 -0
- data/src/rbgtkfixed.c +72 -0
- data/src/rbgtkfontbutton.c +69 -0
- data/src/rbgtkfontselection.c +30 -0
- data/src/rbgtkfontselectiondialog.c +106 -0
- data/src/rbgtkframe.c +64 -0
- data/src/rbgtkgamma.c +47 -0
- data/src/rbgtkhandlebox.c +42 -0
- data/src/rbgtkhbbox.c +31 -0
- data/src/rbgtkhbox.c +38 -0
- data/src/rbgtkhpaned.c +31 -0
- data/src/rbgtkhruler.c +31 -0
- data/src/rbgtkhscale.c +45 -0
- data/src/rbgtkhscrollbar.c +38 -0
- data/src/rbgtkhseparator.c +30 -0
- data/src/rbgtkiconfactory.c +80 -0
- data/src/rbgtkiconinfo.c +118 -0
- data/src/rbgtkiconset.c +87 -0
- data/src/rbgtkiconsize.c +90 -0
- data/src/rbgtkiconsource.c +176 -0
- data/src/rbgtkicontheme.c +309 -0
- data/src/rbgtkiconview.c +351 -0
- data/src/rbgtkimage.c +152 -0
- data/src/rbgtkimagemenuitem.c +52 -0
- data/src/rbgtkimcontext.c +134 -0
- data/src/rbgtkimcontextsimple.c +48 -0
- data/src/rbgtkimmulticontext.c +38 -0
- data/src/rbgtkinits.c +473 -0
- data/src/rbgtkinputdialog.c +30 -0
- data/src/rbgtkinvisible.c +68 -0
- data/src/rbgtkitem.c +51 -0
- data/src/rbgtkitemfactory.c +312 -0
- data/src/rbgtklabel.c +168 -0
- data/src/rbgtklayout.c +91 -0
- data/src/rbgtklinkbutton.c +68 -0
- data/src/rbgtkliststore.c +412 -0
- data/src/rbgtkmacros.h +26 -0
- data/src/rbgtkmain.c +532 -0
- data/src/rbgtkmenu.c +272 -0
- data/src/rbgtkmenubar.c +48 -0
- data/src/rbgtkmenuitem.c +171 -0
- data/src/rbgtkmenushell.c +128 -0
- data/src/rbgtkmenutoolbutton.c +74 -0
- data/src/rbgtkmessagedialog.c +102 -0
- data/src/rbgtkmisc.c +63 -0
- data/src/rbgtknotebook.c +484 -0
- data/src/rbgtkobject.c +186 -0
- data/src/rbgtkoptionmenu.c +65 -0
- data/src/rbgtkpagesetup.c +196 -0
- data/src/rbgtkpagesetupunixdialog.c +80 -0
- data/src/rbgtkpaned.c +114 -0
- data/src/rbgtkpapersize.c +186 -0
- data/src/rbgtkplug.c +84 -0
- data/src/rbgtkprintcontext.c +124 -0
- data/src/rbgtkprinter.c +155 -0
- data/src/rbgtkprintjob.c +151 -0
- data/src/rbgtkprintoperation.c +152 -0
- data/src/rbgtkprintoperationpreview.c +54 -0
- data/src/rbgtkprintsettings.c +794 -0
- data/src/rbgtkprintunixdialog.c +98 -0
- data/src/rbgtkprogress.c +21 -0
- data/src/rbgtkprogressbar.c +72 -0
- data/src/rbgtkradioaction.c +102 -0
- data/src/rbgtkradiobutton.c +83 -0
- data/src/rbgtkradiomenuitem.c +115 -0
- data/src/rbgtkradiotoolbutton.c +99 -0
- data/src/rbgtkrange.c +98 -0
- data/src/rbgtkrc.c +228 -0
- data/src/rbgtkrcstyle.c +184 -0
- data/src/rbgtkrecentaction.c +52 -0
- data/src/rbgtkrecentchooser.c +276 -0
- data/src/rbgtkrecentchooserdialog.c +59 -0
- data/src/rbgtkrecentchoosermenu.c +55 -0
- data/src/rbgtkrecentchooserwidget.c +45 -0
- data/src/rbgtkrecentdata.c +152 -0
- data/src/rbgtkrecentfilter.c +180 -0
- data/src/rbgtkrecentfilterinfo.c +197 -0
- data/src/rbgtkrecentinfo.c +232 -0
- data/src/rbgtkrecentmanager.c +164 -0
- data/src/rbgtkruler.c +82 -0
- data/src/rbgtkscale.c +47 -0
- data/src/rbgtkscalebutton.c +115 -0
- data/src/rbgtkscrollbar.c +21 -0
- data/src/rbgtkscrolledwindow.c +160 -0
- data/src/rbgtkselection.c +171 -0
- data/src/rbgtkselectiondata.c +333 -0
- data/src/rbgtkseparator.c +21 -0
- data/src/rbgtkseparatormenuitem.c +28 -0
- data/src/rbgtkseparatortoolitem.c +40 -0
- data/src/rbgtksettings.c +225 -0
- data/src/rbgtksizegroup.c +74 -0
- data/src/rbgtksocket.c +72 -0
- data/src/rbgtkspinbutton.c +138 -0
- data/src/rbgtkstatusbar.c +90 -0
- data/src/rbgtkstatusicon.c +120 -0
- data/src/rbgtkstock.c +264 -0
- data/src/rbgtkstyle.c +722 -0
- data/src/rbgtktable.c +190 -0
- data/src/rbgtktargetlist.c +148 -0
- data/src/rbgtktearoffmenuitem.c +30 -0
- data/src/rbgtktextappearance.c +173 -0
- data/src/rbgtktextattributes.c +209 -0
- data/src/rbgtktextbuffer.c +993 -0
- data/src/rbgtktextchild.c +49 -0
- data/src/rbgtktextiter.c +553 -0
- data/src/rbgtktextmark.c +87 -0
- data/src/rbgtktexttag.c +66 -0
- data/src/rbgtktexttagtable.c +94 -0
- data/src/rbgtktextview.c +351 -0
- data/src/rbgtktoggleaction.c +76 -0
- data/src/rbgtktogglebutton.c +84 -0
- data/src/rbgtktoggletoolbutton.c +70 -0
- data/src/rbgtktoolbar.c +373 -0
- data/src/rbgtktoolbutton.c +75 -0
- data/src/rbgtktoolitem.c +184 -0
- data/src/rbgtktooltip.c +76 -0
- data/src/rbgtktooltips.c +107 -0
- data/src/rbgtktreedragdest.c +19 -0
- data/src/rbgtktreedragsource.c +19 -0
- data/src/rbgtktreeiter.c +259 -0
- data/src/rbgtktreemodel.c +256 -0
- data/src/rbgtktreemodelfilter.c +214 -0
- data/src/rbgtktreemodelsort.c +113 -0
- data/src/rbgtktreepath.c +195 -0
- data/src/rbgtktreerowreference.c +168 -0
- data/src/rbgtktreeselection.c +235 -0
- data/src/rbgtktreesortable.c +127 -0
- data/src/rbgtktreestore.c +379 -0
- data/src/rbgtktreeview.c +881 -0
- data/src/rbgtktreeviewcolumn.c +331 -0
- data/src/rbgtkuimanager.c +210 -0
- data/src/rbgtkvbbox.c +31 -0
- data/src/rbgtkvbox.c +38 -0
- data/src/rbgtkviewport.c +33 -0
- data/src/rbgtkvolumebutton.c +36 -0
- data/src/rbgtkvpaned.c +31 -0
- data/src/rbgtkvruler.c +30 -0
- data/src/rbgtkvscale.c +45 -0
- data/src/rbgtkvscrollbar.c +38 -0
- data/src/rbgtkvseparator.c +30 -0
- data/src/rbgtkwidget.c +1414 -0
- data/src/rbgtkwindow.c +822 -0
- data/src/rbgtkwindowgroup.c +48 -0
- data/test/gtk-test-utils.rb +15 -0
- data/test/run-test.rb +30 -0
- data/test/test_gc.rb +25 -0
- data/test/test_gdk.rb +18 -0
- data/test/test_gdk_color.rb +10 -0
- data/test/test_gdk_display.rb +37 -0
- data/test/test_gdk_event.rb +11 -0
- data/test/test_gdk_gc.rb +7 -0
- data/test/test_gdk_keymap.rb +8 -0
- data/test/test_gdk_pango.rb +9 -0
- data/test/test_gdk_selection_data.rb +17 -0
- data/test/test_gdk_window.rb +29 -0
- data/test/test_gdk_window_attribute.rb +9 -0
- data/test/test_gtk_about_dialog.rb +14 -0
- data/test/test_gtk_buildable.rb +66 -0
- data/test/test_gtk_builder.rb +188 -0
- data/test/test_gtk_entry.rb +18 -0
- data/test/test_gtk_icon_theme.rb +30 -0
- data/test/test_gtk_image.rb +8 -0
- data/test/test_gtk_list_store.rb +65 -0
- data/test/test_gtk_menu_item.rb +13 -0
- data/test/test_gtk_rc_style.rb +14 -0
- data/test/test_gtk_tree_path.rb +20 -0
- data/test/test_gtk_unix_print.rb +14 -0
- data/test/test_gtk_widget.rb +32 -0
- metadata +393 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
|
2
|
+
/************************************************
|
|
3
|
+
|
|
4
|
+
rbgtksizegroup.c -
|
|
5
|
+
|
|
6
|
+
$Author: mutoh $
|
|
7
|
+
$Date: 2006/11/12 15:28:40 $
|
|
8
|
+
|
|
9
|
+
Copyright (C) 2003-2005 Ruby-GNOME2 Project Team
|
|
10
|
+
Copyright (C) 2002,2003 OGASAWARA, Takeshi
|
|
11
|
+
************************************************/
|
|
12
|
+
#include "global.h"
|
|
13
|
+
|
|
14
|
+
#define _SELF(self) (GTK_SIZE_GROUP(RVAL2GOBJ(self)))
|
|
15
|
+
|
|
16
|
+
static VALUE
|
|
17
|
+
sizegrp_initialize(self, mode)
|
|
18
|
+
VALUE self, mode;
|
|
19
|
+
{
|
|
20
|
+
G_INITIALIZE(self, gtk_size_group_new(RVAL2GENUM(mode, GTK_TYPE_SIZE_GROUP_MODE)));
|
|
21
|
+
return Qnil;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
static VALUE
|
|
25
|
+
sizegrp_add_widget(self, widget)
|
|
26
|
+
VALUE self, widget;
|
|
27
|
+
{
|
|
28
|
+
gtk_size_group_add_widget(_SELF(self), GTK_WIDGET(RVAL2GOBJ(widget)));
|
|
29
|
+
return self;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
static VALUE
|
|
33
|
+
sizegrp_remove_widget(self, widget)
|
|
34
|
+
VALUE self, widget;
|
|
35
|
+
{
|
|
36
|
+
gtk_size_group_remove_widget(_SELF(self), GTK_WIDGET(RVAL2GOBJ(widget)));
|
|
37
|
+
return self;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/* Defined as properties
|
|
41
|
+
void gtk_size_group_set_ignore_hidden
|
|
42
|
+
(GtkSizeGroup *size_group,
|
|
43
|
+
gboolean ignore_hidden);
|
|
44
|
+
gboolean gtk_size_group_get_ignore_hidden
|
|
45
|
+
(GtkSizeGroup *size_group);
|
|
46
|
+
*/
|
|
47
|
+
|
|
48
|
+
#if GTK_CHECK_VERSION(2,10,0)
|
|
49
|
+
static VALUE
|
|
50
|
+
sizegrp_get_widgets(self)
|
|
51
|
+
VALUE self;
|
|
52
|
+
{
|
|
53
|
+
return GSLIST2ARY(gtk_size_group_get_widgets(_SELF(self)));
|
|
54
|
+
}
|
|
55
|
+
#endif
|
|
56
|
+
|
|
57
|
+
void
|
|
58
|
+
Init_sizegrp()
|
|
59
|
+
{
|
|
60
|
+
VALUE gSizeGroup = G_DEF_CLASS(GTK_TYPE_SIZE_GROUP, "SizeGroup", mGtk);
|
|
61
|
+
|
|
62
|
+
rb_define_method(gSizeGroup, "initialize", sizegrp_initialize, 1);
|
|
63
|
+
rb_define_method(gSizeGroup, "add_widget", sizegrp_add_widget, 1);
|
|
64
|
+
rb_define_method(gSizeGroup, "remove_widget", sizegrp_remove_widget, 1);
|
|
65
|
+
|
|
66
|
+
#if GTK_CHECK_VERSION(2,10,0)
|
|
67
|
+
rb_define_method(gSizeGroup, "widgets", sizegrp_get_widgets, 0);
|
|
68
|
+
#endif
|
|
69
|
+
|
|
70
|
+
/* GtkSizeGroupMode */
|
|
71
|
+
G_DEF_CLASS(GTK_TYPE_SIZE_GROUP_MODE, "Mode", gSizeGroup);
|
|
72
|
+
G_DEF_CONSTANTS(gSizeGroup, GTK_TYPE_SIZE_GROUP_MODE, "GTK_SIZE_GROUP_");
|
|
73
|
+
}
|
|
74
|
+
|
data/src/rbgtksocket.c
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
|
2
|
+
/************************************************
|
|
3
|
+
|
|
4
|
+
rbgtksocket.c -
|
|
5
|
+
|
|
6
|
+
$Author: mutoh $
|
|
7
|
+
$Date: 2003/05/27 10:59:22 $
|
|
8
|
+
|
|
9
|
+
Copyright (C) 2002,2003 Ruby-GNOME2 Project Team
|
|
10
|
+
Copyright (C) 2002 Neil Conway
|
|
11
|
+
************************************************/
|
|
12
|
+
|
|
13
|
+
#include "global.h"
|
|
14
|
+
|
|
15
|
+
#ifdef HAVE_GTK_SOCKET_GET_TYPE
|
|
16
|
+
#define _SELF(self) GTK_SOCKET(RVAL2GOBJ(self))
|
|
17
|
+
|
|
18
|
+
static VALUE
|
|
19
|
+
socket_initialize(self)
|
|
20
|
+
VALUE self;
|
|
21
|
+
{
|
|
22
|
+
RBGTK_INITIALIZE(self, gtk_socket_new());
|
|
23
|
+
return Qnil;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
static VALUE
|
|
27
|
+
socket_add_id(self, wid)
|
|
28
|
+
VALUE self, wid;
|
|
29
|
+
{
|
|
30
|
+
gtk_socket_add_id(_SELF(self),
|
|
31
|
+
#ifdef GDK_NATIVE_WINDOW_POINTER
|
|
32
|
+
GUINT_TO_POINTER(NUM2ULONG(wid))
|
|
33
|
+
#else
|
|
34
|
+
(guint32)NUM2UINT(wid)
|
|
35
|
+
#endif
|
|
36
|
+
);
|
|
37
|
+
return self;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
static VALUE
|
|
41
|
+
socket_plug_window(self)
|
|
42
|
+
VALUE self;
|
|
43
|
+
{
|
|
44
|
+
return GOBJ2RVAL(_SELF(self)->plug_window);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
static VALUE
|
|
48
|
+
socket_get_socket_id(self)
|
|
49
|
+
VALUE self;
|
|
50
|
+
{
|
|
51
|
+
GdkNativeWindow id = gtk_socket_get_id(_SELF(self));
|
|
52
|
+
#ifdef GDK_NATIVE_WINDOW_POINTER
|
|
53
|
+
return UINT2NUM(GPOINTER_TO_UINT(id));
|
|
54
|
+
#else
|
|
55
|
+
return UINT2NUM(id);
|
|
56
|
+
#endif
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
#endif /* HAVE_GTK_SOCKET_GET_TYPE */
|
|
60
|
+
|
|
61
|
+
void
|
|
62
|
+
Init_gtk_socket()
|
|
63
|
+
{
|
|
64
|
+
#ifdef HAVE_GTK_SOCKET_GET_TYPE
|
|
65
|
+
VALUE gSocket = G_DEF_CLASS(GTK_TYPE_SOCKET, "Socket", mGtk);
|
|
66
|
+
|
|
67
|
+
rb_define_method(gSocket, "initialize", socket_initialize, 0);
|
|
68
|
+
rb_define_method(gSocket, "plug_window", socket_plug_window, 0);
|
|
69
|
+
rb_define_method(gSocket, "add_id", socket_add_id, 1);
|
|
70
|
+
rb_define_method(gSocket, "id", socket_get_socket_id, 0);
|
|
71
|
+
#endif
|
|
72
|
+
}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
|
2
|
+
/************************************************
|
|
3
|
+
|
|
4
|
+
rbgtkspinbutton.c -
|
|
5
|
+
|
|
6
|
+
$Author: mutoh $
|
|
7
|
+
$Date: 2004/03/05 16:24:30 $
|
|
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
|
+
#define _SELF(self) (GTK_SPIN_BUTTON(RVAL2GOBJ(self)))
|
|
18
|
+
|
|
19
|
+
static VALUE
|
|
20
|
+
sbtn_initialize(argc, argv, self)
|
|
21
|
+
int argc;
|
|
22
|
+
VALUE *argv;
|
|
23
|
+
VALUE self;
|
|
24
|
+
{
|
|
25
|
+
VALUE arg1, arg2, arg3;
|
|
26
|
+
GtkAdjustment *adj = NULL;
|
|
27
|
+
gfloat climb_rate;
|
|
28
|
+
gint digits;
|
|
29
|
+
GtkWidget *widget;
|
|
30
|
+
|
|
31
|
+
rb_scan_args(argc, argv, "03", &arg1, &arg2, &arg3);
|
|
32
|
+
|
|
33
|
+
if (NIL_P(arg1) || RVAL2GTYPE(arg1) == GTK_TYPE_ADJUSTMENT){
|
|
34
|
+
if (!NIL_P(arg1)) adj = GTK_ADJUSTMENT(RVAL2GOBJ(arg1));
|
|
35
|
+
climb_rate = (NIL_P(arg2))? 0.0: NUM2DBL(arg2);
|
|
36
|
+
digits = (NIL_P(arg3))? 0: NUM2UINT(arg3);
|
|
37
|
+
widget = gtk_spin_button_new(adj, climb_rate, digits);
|
|
38
|
+
} else {
|
|
39
|
+
widget = gtk_spin_button_new_with_range(NUM2DBL(arg1),
|
|
40
|
+
NUM2DBL(arg2), NUM2DBL(arg3));
|
|
41
|
+
}
|
|
42
|
+
RBGTK_INITIALIZE(self, widget);
|
|
43
|
+
return Qnil;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
static VALUE
|
|
47
|
+
sbtn_configure(self, adj, climb_rate, digits)
|
|
48
|
+
VALUE self, adj, climb_rate, digits;
|
|
49
|
+
{
|
|
50
|
+
gtk_spin_button_configure(_SELF(self), GTK_ADJUSTMENT(RVAL2GOBJ(adj)),
|
|
51
|
+
NUM2DBL(climb_rate), NUM2UINT(digits));
|
|
52
|
+
return self;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
static VALUE
|
|
56
|
+
sbtn_set_increments(self, step, page)
|
|
57
|
+
VALUE self, step, page;
|
|
58
|
+
{
|
|
59
|
+
gtk_spin_button_set_increments(_SELF(self), NUM2DBL(step), NUM2DBL(page));
|
|
60
|
+
return self;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
static VALUE
|
|
64
|
+
sbtn_set_range(self, min, max)
|
|
65
|
+
VALUE self, min, max;
|
|
66
|
+
{
|
|
67
|
+
gtk_spin_button_set_range(_SELF(self), NUM2DBL(min), NUM2DBL(max));
|
|
68
|
+
return self;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
static VALUE
|
|
73
|
+
sbtn_get_value_as_int(self)
|
|
74
|
+
VALUE self;
|
|
75
|
+
{
|
|
76
|
+
return INT2NUM(gtk_spin_button_get_value_as_int(_SELF(self)));
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
static VALUE
|
|
80
|
+
sbtn_spin(self, direction, increment)
|
|
81
|
+
VALUE self, direction, increment;
|
|
82
|
+
{
|
|
83
|
+
gtk_spin_button_spin(_SELF(self), RVAL2GENUM(direction, GTK_TYPE_SPIN_TYPE),
|
|
84
|
+
NUM2DBL(increment));
|
|
85
|
+
return self;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
static VALUE
|
|
89
|
+
sbtn_update(self)
|
|
90
|
+
VALUE self;
|
|
91
|
+
{
|
|
92
|
+
gtk_spin_button_update(_SELF(self));
|
|
93
|
+
return self;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
static VALUE
|
|
97
|
+
sbtn_get_increments(self)
|
|
98
|
+
VALUE self;
|
|
99
|
+
{
|
|
100
|
+
gdouble step, page;
|
|
101
|
+
gtk_spin_button_get_increments(_SELF(self), &step, &page);
|
|
102
|
+
|
|
103
|
+
return rb_ary_new3(2, rb_float_new(step), rb_float_new(page));
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
static VALUE
|
|
107
|
+
sbtn_get_range(self)
|
|
108
|
+
VALUE self;
|
|
109
|
+
{
|
|
110
|
+
gdouble min, max;
|
|
111
|
+
gtk_spin_button_get_range(_SELF(self), &min, &max);
|
|
112
|
+
|
|
113
|
+
return rb_ary_new3(2, rb_float_new(min), rb_float_new(max));
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
void
|
|
117
|
+
Init_gtk_spin_button()
|
|
118
|
+
{
|
|
119
|
+
VALUE gSButton = G_DEF_CLASS(GTK_TYPE_SPIN_BUTTON, "SpinButton", mGtk);
|
|
120
|
+
|
|
121
|
+
rb_define_method(gSButton, "initialize", sbtn_initialize, -1);
|
|
122
|
+
rb_define_method(gSButton, "configure", sbtn_configure, 3);
|
|
123
|
+
rb_define_method(gSButton, "set_increments", sbtn_set_increments, 2);
|
|
124
|
+
rb_define_method(gSButton, "set_range", sbtn_set_range, 2);
|
|
125
|
+
rb_define_method(gSButton, "value_as_int", sbtn_get_value_as_int, 0);
|
|
126
|
+
rb_define_method(gSButton, "spin", sbtn_spin, 2);
|
|
127
|
+
rb_define_method(gSButton, "update", sbtn_update, 0);
|
|
128
|
+
rb_define_method(gSButton, "increments", sbtn_get_increments, 0);
|
|
129
|
+
rb_define_method(gSButton, "range", sbtn_get_range, 0);
|
|
130
|
+
|
|
131
|
+
/* GtkSpinType */
|
|
132
|
+
G_DEF_CLASS(GTK_TYPE_SPIN_TYPE, "Type", gSButton);
|
|
133
|
+
G_DEF_CONSTANTS(gSButton, GTK_TYPE_SPIN_TYPE, "GTK_SPIN_");
|
|
134
|
+
|
|
135
|
+
/* GtkSpinButtonUpdatePolicy */
|
|
136
|
+
G_DEF_CLASS(GTK_TYPE_SPIN_BUTTON_UPDATE_POLICY, "UpdatePolicy", gSButton);
|
|
137
|
+
G_DEF_CONSTANTS(gSButton, GTK_TYPE_SPIN_BUTTON_UPDATE_POLICY, "GTK_");
|
|
138
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
|
2
|
+
/************************************************
|
|
3
|
+
|
|
4
|
+
rbgtkstatusbar.c -
|
|
5
|
+
|
|
6
|
+
$Author: ggc $
|
|
7
|
+
$Date: 2007/07/13 16:07:32 $
|
|
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(self) (GTK_STATUSBAR(RVAL2GOBJ(self)))
|
|
18
|
+
|
|
19
|
+
static VALUE
|
|
20
|
+
statusbar_initialize(self)
|
|
21
|
+
VALUE self;
|
|
22
|
+
{
|
|
23
|
+
RBGTK_INITIALIZE(self, gtk_statusbar_new());
|
|
24
|
+
return Qnil;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
static VALUE
|
|
28
|
+
statusbar_get_context_id(self, text)
|
|
29
|
+
VALUE self, text;
|
|
30
|
+
{
|
|
31
|
+
|
|
32
|
+
return INT2FIX(gtk_statusbar_get_context_id(_SELF(self),
|
|
33
|
+
RVAL2CSTR(text)));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
static VALUE
|
|
37
|
+
statusbar_push(self, id, text)
|
|
38
|
+
VALUE self, id, text;
|
|
39
|
+
{
|
|
40
|
+
return INT2FIX(gtk_statusbar_push(_SELF(self),
|
|
41
|
+
NUM2INT(id), RVAL2CSTR(text)));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
static VALUE
|
|
45
|
+
statusbar_pop(self, id)
|
|
46
|
+
VALUE self, id;
|
|
47
|
+
{
|
|
48
|
+
gtk_statusbar_pop(_SELF(self), NUM2INT(id));
|
|
49
|
+
return self;
|
|
50
|
+
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
static VALUE
|
|
54
|
+
statusbar_remove(self, cid, mid)
|
|
55
|
+
VALUE self, cid, mid;
|
|
56
|
+
{
|
|
57
|
+
gtk_statusbar_remove(_SELF(self), NUM2INT(cid), NUM2INT(mid));
|
|
58
|
+
return self;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
static VALUE
|
|
62
|
+
statusbar_set_has_resize_grip(self, setting)
|
|
63
|
+
VALUE self, setting;
|
|
64
|
+
{
|
|
65
|
+
gtk_statusbar_set_has_resize_grip(_SELF(self), RVAL2CBOOL(setting));
|
|
66
|
+
return self;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
static VALUE
|
|
70
|
+
statusbar_get_has_resize_grip(self)
|
|
71
|
+
VALUE self;
|
|
72
|
+
{
|
|
73
|
+
return CBOOL2RVAL(gtk_statusbar_get_has_resize_grip(_SELF(self)));
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
void
|
|
77
|
+
Init_gtk_statusbar()
|
|
78
|
+
{
|
|
79
|
+
VALUE gStatusBar = G_DEF_CLASS(GTK_TYPE_STATUSBAR, "Statusbar", mGtk);
|
|
80
|
+
|
|
81
|
+
rb_define_method(gStatusBar, "initialize", statusbar_initialize, 0);
|
|
82
|
+
rb_define_method(gStatusBar, "get_context_id", statusbar_get_context_id, 1);
|
|
83
|
+
rb_define_method(gStatusBar, "push", statusbar_push, 2);
|
|
84
|
+
rb_define_method(gStatusBar, "pop", statusbar_pop, 1);
|
|
85
|
+
rb_define_method(gStatusBar, "remove", statusbar_remove, 2);
|
|
86
|
+
rb_define_method(gStatusBar, "set_has_resize_grip", statusbar_set_has_resize_grip, 1);
|
|
87
|
+
rb_define_method(gStatusBar, "has_resize_grip?", statusbar_get_has_resize_grip, 0);
|
|
88
|
+
|
|
89
|
+
G_DEF_SETTERS(gStatusBar);
|
|
90
|
+
}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
|
2
|
+
/************************************************
|
|
3
|
+
|
|
4
|
+
rbgtkstatusicon.c -
|
|
5
|
+
|
|
6
|
+
$Author: mutoh $
|
|
7
|
+
$Date: 2006/11/17 18:12:41 $
|
|
8
|
+
|
|
9
|
+
Copyright (C) 2006 Masao Mutoh
|
|
10
|
+
************************************************/
|
|
11
|
+
|
|
12
|
+
#include "global.h"
|
|
13
|
+
|
|
14
|
+
#if GTK_CHECK_VERSION(2,10,0)
|
|
15
|
+
|
|
16
|
+
#define _SELF(w) (GTK_STATUS_ICON(RVAL2GOBJ(w)))
|
|
17
|
+
|
|
18
|
+
static VALUE
|
|
19
|
+
si_initialize(self)
|
|
20
|
+
VALUE self;
|
|
21
|
+
{
|
|
22
|
+
G_INITIALIZE(self, gtk_status_icon_new());
|
|
23
|
+
return Qnil;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* Don't implement this. Use Gtk::StatusIcon.new.set_foo(v) instead.
|
|
27
|
+
GtkStatusIcon* gtk_status_icon_new_from_pixbuf
|
|
28
|
+
(GdkPixbuf *pixbuf);
|
|
29
|
+
GtkStatusIcon* gtk_status_icon_new_from_file
|
|
30
|
+
(const gchar *filename);
|
|
31
|
+
GtkStatusIcon* gtk_status_icon_new_from_stock
|
|
32
|
+
(const gchar *stock_id);
|
|
33
|
+
GtkStatusIcon* gtk_status_icon_new_from_icon_name
|
|
34
|
+
(const gchar *icon_name);
|
|
35
|
+
*/
|
|
36
|
+
/* Defined as properties
|
|
37
|
+
void gtk_status_icon_set_from_pixbuf (GtkStatusIcon *status_icon,
|
|
38
|
+
GdkPixbuf *pixbuf);
|
|
39
|
+
void gtk_status_icon_set_from_file (GtkStatusIcon *status_icon,
|
|
40
|
+
const gchar *filename);
|
|
41
|
+
void gtk_status_icon_set_from_stock (GtkStatusIcon *status_icon,
|
|
42
|
+
const gchar *stock_id);
|
|
43
|
+
void gtk_status_icon_set_from_icon_name
|
|
44
|
+
(GtkStatusIcon *status_icon,
|
|
45
|
+
const gchar *icon_name);
|
|
46
|
+
GtkImageType gtk_status_icon_get_storage_type
|
|
47
|
+
(GtkStatusIcon *status_icon);
|
|
48
|
+
GdkPixbuf* gtk_status_icon_get_pixbuf (GtkStatusIcon *status_icon);
|
|
49
|
+
const gchar* gtk_status_icon_get_stock (GtkStatusIcon *status_icon);
|
|
50
|
+
const gchar* gtk_status_icon_get_icon_name (GtkStatusIcon *status_icon);
|
|
51
|
+
gint gtk_status_icon_get_size (GtkStatusIcon *status_icon);
|
|
52
|
+
void gtk_status_icon_set_visible (GtkStatusIcon *status_icon,
|
|
53
|
+
gboolean visible);
|
|
54
|
+
gboolean gtk_status_icon_get_visible (GtkStatusIcon *status_icon);
|
|
55
|
+
void gtk_status_icon_set_blinking (GtkStatusIcon *status_icon,
|
|
56
|
+
gboolean blinking);
|
|
57
|
+
gboolean gtk_status_icon_get_blinking (GtkStatusIcon *status_icon);
|
|
58
|
+
*/
|
|
59
|
+
|
|
60
|
+
static VALUE
|
|
61
|
+
si_set_tooltip(self, tooltip_text)
|
|
62
|
+
VALUE self, tooltip_text;
|
|
63
|
+
{
|
|
64
|
+
gtk_status_icon_set_tooltip(_SELF(self), RVAL2CSTR(tooltip_text));
|
|
65
|
+
return self;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
static VALUE
|
|
69
|
+
si_is_embedded(self)
|
|
70
|
+
VALUE self;
|
|
71
|
+
{
|
|
72
|
+
return CBOOL2RVAL(gtk_status_icon_is_embedded(_SELF(self)));
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
static VALUE
|
|
76
|
+
si_position_menu(self, menu)
|
|
77
|
+
VALUE self, menu;
|
|
78
|
+
{
|
|
79
|
+
gint x, y;
|
|
80
|
+
gboolean push_in;
|
|
81
|
+
|
|
82
|
+
gtk_status_icon_position_menu(GTK_MENU(RVAL2GOBJ(menu)), &x, &y, &push_in,
|
|
83
|
+
(gpointer)(_SELF(self)));
|
|
84
|
+
return rb_ary_new3(3, INT2NUM(x), INT2NUM(y), CBOOL2RVAL(push_in));
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
static VALUE
|
|
88
|
+
si_get_geometry(self)
|
|
89
|
+
VALUE self;
|
|
90
|
+
{
|
|
91
|
+
GdkScreen* screen;
|
|
92
|
+
GdkRectangle area;
|
|
93
|
+
GtkOrientation orientation;
|
|
94
|
+
gboolean ret = gtk_status_icon_get_geometry(_SELF(self), &screen,
|
|
95
|
+
&area, &orientation);
|
|
96
|
+
if (ret) {
|
|
97
|
+
return rb_ary_new3(3, GOBJ2RVAL(screen),
|
|
98
|
+
BOXED2RVAL(&area, GDK_TYPE_RECTANGLE),
|
|
99
|
+
GENUM2RVAL(orientation, GTK_TYPE_ORIENTATION));
|
|
100
|
+
} else {
|
|
101
|
+
return rb_ary_new3(3, Qnil, Qnil, Qnil);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
#endif
|
|
105
|
+
|
|
106
|
+
void
|
|
107
|
+
Init_gtk_status_icon()
|
|
108
|
+
{
|
|
109
|
+
#if GTK_CHECK_VERSION(2,10,0)
|
|
110
|
+
VALUE si = G_DEF_CLASS(GTK_TYPE_STATUS_ICON, "StatusIcon", mGtk);
|
|
111
|
+
|
|
112
|
+
rb_define_method(si, "initialize", si_initialize, 0);
|
|
113
|
+
rb_define_method(si, "set_tooltip", si_set_tooltip, 1);
|
|
114
|
+
rb_define_method(si, "embedded?", si_is_embedded, 0);
|
|
115
|
+
rb_define_method(si, "position_menu", si_position_menu, 1);
|
|
116
|
+
rb_define_method(si, "geometry", si_get_geometry, 0);
|
|
117
|
+
|
|
118
|
+
G_DEF_SETTERS(si);
|
|
119
|
+
#endif
|
|
120
|
+
}
|