gtk2 1.0.3 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +66 -1
- data/ext/gtk2/extconf.rb +0 -96
- data/ext/gtk2/global.h +274 -13
- data/ext/gtk2/gtk2.def +5 -3
- data/ext/gtk2/init.c +263 -19
- data/ext/gtk2/rbgdk.c +245 -89
- data/ext/gtk2/rbgdk.h +32 -6
- data/ext/gtk2/rbgdkatom.c +38 -28
- data/ext/gtk2/rbgdkcairo.c +32 -42
- data/ext/gtk2/rbgdkcolor.c +52 -42
- data/ext/gtk2/rbgdkcolormap.c +42 -37
- data/ext/gtk2/rbgdkconst.c +23 -13
- data/ext/gtk2/rbgdkconversions.h +19 -6
- data/ext/gtk2/rbgdkcursor.c +37 -25
- data/ext/gtk2/rbgdkdevice.c +77 -67
- data/ext/gtk2/rbgdkdisplay.c +158 -150
- data/ext/gtk2/rbgdkdisplaymanager.c +27 -15
- data/ext/gtk2/rbgdkdragcontext.c +121 -70
- data/ext/gtk2/rbgdkdraw.c +252 -160
- data/ext/gtk2/rbgdkevent.c +30 -20
- data/ext/gtk2/rbgdkgc.c +123 -116
- data/ext/gtk2/rbgdkgeometry.c +77 -68
- data/ext/gtk2/rbgdkimage.c +58 -47
- data/ext/gtk2/rbgdkinput.c +33 -26
- data/ext/gtk2/rbgdkkeymap.c +38 -27
- data/ext/gtk2/rbgdkkeyval.c +44 -32
- data/ext/gtk2/rbgdkpango.c +66 -39
- data/ext/gtk2/rbgdkpangorenderer.c +63 -35
- data/ext/gtk2/rbgdkpixbuf.c +36 -25
- data/ext/gtk2/rbgdkpixmap.c +65 -49
- data/ext/gtk2/rbgdkproperty.c +66 -60
- data/ext/gtk2/rbgdkrectangle.c +54 -46
- data/ext/gtk2/rbgdkregion.c +144 -79
- data/ext/gtk2/rbgdkrgb.c +74 -58
- data/ext/gtk2/rbgdkscreen.c +103 -97
- data/ext/gtk2/rbgdkselection.c +49 -39
- data/ext/gtk2/rbgdkthreads.c +32 -19
- data/ext/gtk2/rbgdktimecoord.c +60 -38
- data/ext/gtk2/rbgdkvisual.c +79 -71
- data/ext/gtk2/rbgdkwindow.c +284 -305
- data/ext/gtk2/rbgdkwindowattr.c +69 -58
- data/ext/gtk2/rbgdkx11.c +41 -28
- data/ext/gtk2/rbgtk.c +498 -19
- data/ext/gtk2/rbgtk.h +35 -20
- data/ext/gtk2/rbgtkaboutdialog.c +33 -80
- data/ext/gtk2/rbgtkaccelerator.c +36 -23
- data/ext/gtk2/rbgtkaccelgroup.c +50 -40
- data/ext/gtk2/rbgtkaccelgroupentry.c +32 -20
- data/ext/gtk2/rbgtkaccelkey.c +40 -28
- data/ext/gtk2/rbgtkaccellabel.c +30 -18
- data/ext/gtk2/rbgtkaccelmap.c +55 -42
- data/ext/gtk2/rbgtkaccessible.c +25 -14
- data/ext/gtk2/rbgtkaction.c +68 -68
- data/ext/gtk2/rbgtkactiongroup.c +317 -195
- data/ext/gtk2/rbgtkadjustment.c +33 -46
- data/ext/gtk2/rbgtkalignment.c +36 -24
- data/ext/gtk2/rbgtkallocation.c +53 -42
- data/ext/gtk2/rbgtkarrow.c +34 -22
- data/ext/gtk2/rbgtkaspectframe.c +32 -20
- data/ext/gtk2/rbgtkassistant.c +81 -61
- data/ext/gtk2/rbgtkbbox.c +32 -20
- data/ext/gtk2/rbgtkbin.c +28 -16
- data/ext/gtk2/rbgtkbindingset.c +42 -35
- data/ext/gtk2/rbgtkborder.c +34 -23
- data/ext/gtk2/rbgtkbox.c +40 -29
- data/ext/gtk2/rbgtkbuildable.c +57 -45
- data/ext/gtk2/rbgtkbuilder.c +53 -38
- data/ext/gtk2/rbgtkbutton.c +41 -55
- data/ext/gtk2/rbgtkcalendar.c +51 -40
- data/ext/gtk2/rbgtkcelleditable.c +28 -17
- data/ext/gtk2/rbgtkcelllayout.c +41 -30
- data/ext/gtk2/rbgtkcellrenderer.c +43 -32
- data/ext/gtk2/rbgtkcellrendereraccel.c +26 -18
- data/ext/gtk2/rbgtkcellrenderercombo.c +25 -17
- data/ext/gtk2/rbgtkcellrendererpixbuf.c +24 -17
- data/ext/gtk2/rbgtkcellrendererprogress.c +25 -17
- data/ext/gtk2/rbgtkcellrendererspin.c +24 -16
- data/ext/gtk2/rbgtkcellrendererspinner.c +23 -11
- data/ext/gtk2/rbgtkcellrenderertext.c +28 -21
- data/ext/gtk2/rbgtkcellrenderertoggle.c +24 -16
- data/ext/gtk2/rbgtkcellview.c +34 -33
- data/ext/gtk2/rbgtkcheckbutton.c +28 -16
- data/ext/gtk2/rbgtkcheckmenuitem.c +31 -19
- data/ext/gtk2/rbgtkclipboard.c +123 -77
- data/ext/gtk2/rbgtkcolorbutton.c +26 -31
- data/ext/gtk2/rbgtkcolorsel.c +109 -55
- data/ext/gtk2/rbgtkcolorselectiondialog.c +28 -19
- data/ext/gtk2/rbgtkcombo.c +43 -32
- data/ext/gtk2/rbgtkcombobox.c +44 -83
- data/ext/gtk2/rbgtkcomboboxentry.c +26 -21
- data/ext/gtk2/rbgtkconst.c +23 -13
- data/ext/gtk2/rbgtkcontainer.c +153 -100
- data/ext/gtk2/rbgtkconversions.h +19 -6
- data/ext/gtk2/rbgtkcurve.c +46 -36
- data/ext/gtk2/rbgtkdialog.c +104 -70
- data/ext/gtk2/rbgtkdrag.c +173 -121
- data/ext/gtk2/rbgtkdrawingarea.c +28 -16
- data/ext/gtk2/rbgtkeditable.c +63 -51
- data/ext/gtk2/rbgtkentry.c +48 -85
- data/ext/gtk2/rbgtkentrycompletion.c +42 -55
- data/ext/gtk2/rbgtkeventbox.c +28 -16
- data/ext/gtk2/rbgtkexpander.c +26 -35
- data/ext/gtk2/rbgtkfilechooser.c +87 -143
- data/ext/gtk2/rbgtkfilechooserbutton.c +26 -32
- data/ext/gtk2/rbgtkfilechooserdialog.c +25 -15
- data/ext/gtk2/rbgtkfilechooserwidget.c +26 -15
- data/ext/gtk2/rbgtkfilefilter.c +45 -35
- data/ext/gtk2/rbgtkfilesel.c +54 -43
- data/ext/gtk2/rbgtkfilesystemerror.c +51 -0
- data/ext/gtk2/rbgtkfixed.c +36 -25
- data/ext/gtk2/rbgtkfontbutton.c +26 -37
- data/ext/gtk2/rbgtkfontselection.c +27 -15
- data/ext/gtk2/rbgtkfontselectiondialog.c +43 -32
- data/ext/gtk2/rbgtkframe.c +39 -28
- data/ext/gtk2/rbgtkgamma.c +32 -20
- data/ext/gtk2/rbgtkhandlebox.c +31 -19
- data/ext/gtk2/rbgtkhbbox.c +28 -16
- data/ext/gtk2/rbgtkhbox.c +29 -17
- data/ext/gtk2/rbgtkhpaned.c +28 -16
- data/ext/gtk2/rbgtkhruler.c +28 -16
- data/ext/gtk2/rbgtkhscale.c +28 -16
- data/ext/gtk2/rbgtkhscrollbar.c +28 -16
- data/ext/gtk2/rbgtkhseparator.c +28 -16
- data/ext/gtk2/rbgtkiconfactory.c +35 -23
- data/ext/gtk2/rbgtkiconinfo.c +42 -30
- data/ext/gtk2/rbgtkiconset.c +31 -19
- data/ext/gtk2/rbgtkiconsize.c +38 -25
- data/ext/gtk2/rbgtkiconsource.c +62 -50
- data/ext/gtk2/rbgtkicontheme.c +95 -95
- data/ext/gtk2/rbgtkiconview.c +87 -121
- data/ext/gtk2/rbgtkimage.c +31 -40
- data/ext/gtk2/rbgtkimagemenuitem.c +26 -14
- data/ext/gtk2/rbgtkimcontext.c +46 -34
- data/ext/gtk2/rbgtkimcontextsimple.c +47 -24
- data/ext/gtk2/rbgtkimmulticontext.c +26 -14
- data/ext/gtk2/rbgtkinputdialog.c +28 -16
- data/ext/gtk2/rbgtkinvisible.c +24 -18
- data/ext/gtk2/rbgtkitem.c +32 -20
- data/ext/gtk2/rbgtkitemfactory.c +65 -57
- data/ext/gtk2/rbgtklabel.c +46 -57
- data/ext/gtk2/rbgtklayout.c +40 -29
- data/ext/gtk2/rbgtklinkbutton.c +26 -15
- data/ext/gtk2/rbgtkliststore.c +145 -102
- data/ext/gtk2/rbgtkmacros.h +19 -6
- data/ext/gtk2/rbgtkmenu.c +47 -59
- data/ext/gtk2/rbgtkmenubar.c +30 -30
- data/ext/gtk2/rbgtkmenuitem.c +34 -41
- data/ext/gtk2/rbgtkmenushell.c +43 -42
- data/ext/gtk2/rbgtkmenutoolbutton.c +27 -16
- data/ext/gtk2/rbgtkmessagedialog.c +31 -25
- data/ext/gtk2/rbgtkmisc.c +33 -22
- data/ext/gtk2/rbgtknotebook.c +98 -134
- data/ext/gtk2/rbgtkobject.c +46 -81
- data/ext/gtk2/rbgtkoptionmenu.c +35 -23
- data/ext/gtk2/rbgtkpagesetup.c +64 -54
- data/ext/gtk2/rbgtkpagesetupunixdialog.c +34 -27
- data/ext/gtk2/rbgtkpaned.c +46 -36
- data/ext/gtk2/rbgtkpapersize.c +60 -54
- data/ext/gtk2/rbgtkplug.c +32 -20
- data/ext/gtk2/rbgtkprintcontext.c +43 -35
- data/ext/gtk2/rbgtkprinter.c +36 -37
- data/ext/gtk2/rbgtkprintjob.c +36 -37
- data/ext/gtk2/rbgtkprintoperation.c +44 -33
- data/ext/gtk2/rbgtkprintoperationpreview.c +30 -18
- data/ext/gtk2/rbgtkprintsettings.c +248 -192
- data/ext/gtk2/rbgtkprintunixdialog.c +33 -45
- data/ext/gtk2/rbgtkprogress.c +23 -13
- data/ext/gtk2/rbgtkprogressbar.c +47 -46
- data/ext/gtk2/rbgtkradioaction.c +84 -39
- data/ext/gtk2/rbgtkradiobutton.c +33 -21
- data/ext/gtk2/rbgtkradiomenuitem.c +86 -45
- data/ext/gtk2/rbgtkradiotoolbutton.c +99 -53
- data/ext/gtk2/rbgtkrange.c +36 -56
- data/ext/gtk2/rbgtkrc.c +61 -49
- data/ext/gtk2/rbgtkrcstyle.c +59 -48
- data/ext/gtk2/rbgtkrecentaction.c +28 -16
- data/ext/gtk2/rbgtkrecentchooser.c +58 -92
- data/ext/gtk2/rbgtkrecentchooserdialog.c +29 -18
- data/ext/gtk2/rbgtkrecentchoosermenu.c +25 -21
- data/ext/gtk2/rbgtkrecentchooserwidget.c +24 -13
- data/ext/gtk2/rbgtkrecentdata.c +47 -36
- data/ext/gtk2/rbgtkrecentfilter.c +55 -46
- data/ext/gtk2/rbgtkrecentfilterinfo.c +51 -40
- data/ext/gtk2/rbgtkrecentinfo.c +66 -56
- data/ext/gtk2/rbgtkrecentmanager.c +47 -43
- data/ext/gtk2/rbgtkruler.c +35 -30
- data/ext/gtk2/rbgtkscale.c +29 -18
- data/ext/gtk2/rbgtkscalebutton.c +27 -27
- data/ext/gtk2/rbgtkscrollbar.c +23 -13
- data/ext/gtk2/rbgtkscrolledwindow.c +44 -60
- data/ext/gtk2/rbgtkselection.c +87 -67
- data/ext/gtk2/rbgtkselectiondata.c +74 -65
- data/ext/gtk2/rbgtkseparator.c +23 -13
- data/ext/gtk2/rbgtkseparatormenuitem.c +25 -13
- data/ext/gtk2/rbgtkseparatortoolitem.c +26 -21
- data/ext/gtk2/rbgtksettings.c +123 -103
- data/ext/gtk2/rbgtksizegroup.c +33 -30
- data/ext/gtk2/rbgtksocket.c +32 -20
- data/ext/gtk2/rbgtkspinbutton.c +48 -38
- data/ext/gtk2/rbgtkspinner.c +27 -14
- data/ext/gtk2/rbgtkstatusbar.c +36 -31
- data/ext/gtk2/rbgtkstatusicon.c +31 -44
- data/ext/gtk2/rbgtkstock.c +137 -125
- data/ext/gtk2/rbgtkstyle.c +177 -161
- data/ext/gtk2/rbgtktable.c +58 -47
- data/ext/gtk2/rbgtktargetlist.c +56 -36
- data/ext/gtk2/rbgtktearoffmenuitem.c +28 -16
- data/ext/gtk2/rbgtktextappearance.c +44 -34
- data/ext/gtk2/rbgtktextattributes.c +54 -42
- data/ext/gtk2/rbgtktextbuffer.c +188 -191
- data/ext/gtk2/rbgtktextchild.c +29 -18
- data/ext/gtk2/rbgtktextiter.c +153 -145
- data/ext/gtk2/rbgtktextmark.c +33 -30
- data/ext/gtk2/rbgtktexttag.c +34 -22
- data/ext/gtk2/rbgtktexttagtable.c +36 -25
- data/ext/gtk2/rbgtktextview.c +85 -73
- data/ext/gtk2/rbgtktoggleaction.c +27 -22
- data/ext/gtk2/rbgtktogglebutton.c +37 -26
- data/ext/gtk2/rbgtktoggletoolbutton.c +26 -20
- data/ext/gtk2/rbgtktoolbar.c +66 -69
- data/ext/gtk2/rbgtktoolbutton.c +27 -40
- data/ext/gtk2/rbgtktoolitem.c +60 -62
- data/ext/gtk2/rbgtktooltip.c +36 -25
- data/ext/gtk2/rbgtktooltips.c +42 -34
- data/ext/gtk2/rbgtktreedragdest.c +20 -11
- data/ext/gtk2/rbgtktreedragsource.c +20 -11
- data/ext/gtk2/rbgtktreeiter.c +58 -47
- data/ext/gtk2/rbgtktreemodel.c +83 -65
- data/ext/gtk2/rbgtktreemodelfilter.c +47 -35
- data/ext/gtk2/rbgtktreemodelsort.c +38 -27
- data/ext/gtk2/rbgtktreepath.c +55 -44
- data/ext/gtk2/rbgtktreerowreference.c +60 -42
- data/ext/gtk2/rbgtktreeselection.c +61 -52
- data/ext/gtk2/rbgtktreesortable.c +52 -42
- data/ext/gtk2/rbgtktreestore.c +88 -67
- data/ext/gtk2/rbgtktreeview.c +157 -185
- data/ext/gtk2/rbgtktreeviewcolumn.c +57 -62
- data/ext/gtk2/rbgtkuimanager.c +61 -61
- data/ext/gtk2/rbgtkvbbox.c +28 -16
- data/ext/gtk2/rbgtkvbox.c +29 -17
- data/ext/gtk2/rbgtkviewport.c +28 -16
- data/ext/gtk2/rbgtkvolumebutton.c +28 -16
- data/ext/gtk2/rbgtkvpaned.c +28 -16
- data/ext/gtk2/rbgtkvruler.c +28 -16
- data/ext/gtk2/rbgtkvscale.c +28 -16
- data/ext/gtk2/rbgtkvscrollbar.c +28 -16
- data/ext/gtk2/rbgtkvseparator.c +28 -16
- data/ext/gtk2/rbgtkwidget.c +284 -296
- data/ext/gtk2/rbgtkwindow.c +156 -214
- data/ext/gtk2/rbgtkwindowgroup.c +35 -24
- data/sample/testgtk/labels.rb +1 -0
- data/sample/testgtk/testgtk.rb +2 -0
- metadata +16 -17
- data/ChangeLog +0 -6902
- data/ext/gtk2/rbgtkmain.c +0 -493
data/ext/gtk2/rbgtkitem.c
CHANGED
@@ -1,48 +1,60 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
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 cItem
|
28
|
+
|
17
29
|
/*
|
18
30
|
* Item
|
19
31
|
*/
|
20
32
|
static VALUE
|
21
|
-
|
33
|
+
rg_select(VALUE self)
|
22
34
|
{
|
23
35
|
gtk_item_select(GTK_ITEM(RVAL2GOBJ(self)));
|
24
36
|
return self;
|
25
37
|
}
|
26
38
|
|
27
39
|
static VALUE
|
28
|
-
|
40
|
+
rg_deselect(VALUE self)
|
29
41
|
{
|
30
42
|
gtk_item_deselect(GTK_ITEM(RVAL2GOBJ(self)));
|
31
43
|
return self;
|
32
44
|
}
|
33
45
|
|
34
46
|
static VALUE
|
35
|
-
|
47
|
+
rg_toggle(VALUE self)
|
36
48
|
{
|
37
49
|
gtk_item_toggle(GTK_ITEM(RVAL2GOBJ(self)));
|
38
50
|
return self;
|
39
51
|
}
|
40
52
|
|
41
53
|
void
|
42
|
-
Init_gtk_item()
|
54
|
+
Init_gtk_item(VALUE mGtk)
|
43
55
|
{
|
44
|
-
VALUE
|
45
|
-
|
46
|
-
|
47
|
-
|
56
|
+
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_ITEM, "Item", mGtk);
|
57
|
+
RG_DEF_METHOD(select, 0);
|
58
|
+
RG_DEF_METHOD(deselect, 0);
|
59
|
+
RG_DEF_METHOD(toggle, 0);
|
48
60
|
}
|
data/ext/gtk2/rbgtkitemfactory.c
CHANGED
@@ -1,20 +1,31 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
2
|
+
/*
|
3
|
+
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
+
* Copyright (C) 2002-2005 Ruby-GNOME2 Project Team
|
5
|
+
* Copyright (C) 1998-2000 Hiroshi Igarashi,
|
6
|
+
* dellin,
|
7
|
+
* MUTOH Masao
|
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
|
#include <gdk-pixbuf/gdk-pixdata.h>
|
17
27
|
|
28
|
+
#define RG_TARGET_NAMESPACE cItemFactory
|
18
29
|
#define _SELF(self) (GTK_ITEM_FACTORY(RVAL2GOBJ(self)))
|
19
30
|
#define RVAL2WIDGET(w) (GTK_WIDGET(RVAL2GOBJ(w)))
|
20
31
|
#define RVAL2ACCEL(a) (GTK_ACCEL_GROUP(RVAL2GOBJ(a)))
|
@@ -23,18 +34,18 @@ static VALUE action_table;
|
|
23
34
|
static guint action_id = 0;
|
24
35
|
|
25
36
|
static VALUE
|
26
|
-
|
37
|
+
rg_initialize(VALUE self, VALUE type, VALUE path, VALUE accel)
|
27
38
|
{
|
28
39
|
VALUE obj = rb_eval_string("eval('self', binding)");
|
29
40
|
G_RELATIVE(obj, self);
|
30
41
|
RBGTK_INITIALIZE(self, gtk_item_factory_new(NUM2ULONG(type), RVAL2CSTR(path),
|
31
42
|
RVAL2ACCEL(accel)));
|
32
|
-
|
43
|
+
|
33
44
|
return Qnil;
|
34
45
|
}
|
35
46
|
|
36
47
|
static VALUE
|
37
|
-
|
48
|
+
rg_construct(int argc, VALUE *argv, VALUE self)
|
38
49
|
{
|
39
50
|
VALUE type, path, accel;
|
40
51
|
GtkItemFactory* ifact = _SELF(self);
|
@@ -45,9 +56,9 @@ ifact_construct(int argc, VALUE *argv, VALUE self)
|
|
45
56
|
RVAL2CSTR(path), RVAL2ACCEL(accel));
|
46
57
|
return self;
|
47
58
|
}
|
48
|
-
|
59
|
+
|
49
60
|
static VALUE
|
50
|
-
|
61
|
+
rg_s_from_widget(VALUE self, VALUE widget)
|
51
62
|
{
|
52
63
|
VALUE obj = GOBJ2RVAL(gtk_item_factory_from_widget(RVAL2WIDGET(widget)));
|
53
64
|
G_RELATIVE(obj, self);
|
@@ -55,13 +66,13 @@ ifact_s_from_widget(VALUE self, VALUE widget)
|
|
55
66
|
}
|
56
67
|
|
57
68
|
static VALUE
|
58
|
-
|
69
|
+
rg_s_path_from_widget(G_GNUC_UNUSED VALUE self, VALUE widget)
|
59
70
|
{
|
60
71
|
return CSTR2RVAL(gtk_item_factory_path_from_widget(RVAL2WIDGET(widget)));
|
61
72
|
}
|
62
73
|
|
63
74
|
static VALUE
|
64
|
-
|
75
|
+
rg_get_item(VALUE self, VALUE path)
|
65
76
|
{
|
66
77
|
VALUE obj = Qnil;
|
67
78
|
GtkWidget* widget = gtk_item_factory_get_item(_SELF(self), RVAL2CSTR(path));
|
@@ -73,7 +84,7 @@ ifact_get_item(VALUE self, VALUE path)
|
|
73
84
|
}
|
74
85
|
|
75
86
|
static VALUE
|
76
|
-
|
87
|
+
rg_get_widget(VALUE self, VALUE path)
|
77
88
|
{
|
78
89
|
VALUE obj = Qnil;
|
79
90
|
GtkWidget* widget = gtk_item_factory_get_widget(_SELF(self), RVAL2CSTR(path));
|
@@ -105,7 +116,7 @@ menuitem_type_check(char *item_type)
|
|
105
116
|
}
|
106
117
|
|
107
118
|
static void
|
108
|
-
items_exec_callback_wrap(VALUE callback_data, guint action_id, GtkWidget *widget)
|
119
|
+
items_exec_callback_wrap(G_GNUC_UNUSED VALUE callback_data, guint action_id, GtkWidget *widget)
|
109
120
|
{
|
110
121
|
VALUE iter, data;
|
111
122
|
VALUE action = rb_hash_aref(action_table, UINT2NUM(action_id));
|
@@ -125,7 +136,7 @@ create_factory_entry(GtkItemFactoryEntry *entry, VALUE self, VALUE path, VALUE i
|
|
125
136
|
entry->path = (gchar *)(NIL_P(path) ? NULL : RVAL2CSTR(path));
|
126
137
|
entry->item_type = (gchar *)(NIL_P(item_type) ? "<Branch>" : RVAL2CSTR(item_type));
|
127
138
|
entry->accelerator = (gchar *)(NIL_P(accel) ? NULL : RVAL2CSTR(accel));
|
128
|
-
|
139
|
+
|
129
140
|
if (menuitem_type_check(entry->item_type) == 0) {
|
130
141
|
entry->callback = NULL;
|
131
142
|
} else {
|
@@ -158,7 +169,7 @@ create_factory_entry(GtkItemFactoryEntry *entry, VALUE self, VALUE path, VALUE i
|
|
158
169
|
}
|
159
170
|
|
160
171
|
static VALUE
|
161
|
-
|
172
|
+
rg_create_item(int argc, VALUE *argv, VALUE self)
|
162
173
|
{
|
163
174
|
VALUE path, type, accel, extdata, data, func;
|
164
175
|
GtkItemFactoryEntry *entry;
|
@@ -169,14 +180,14 @@ ifact_create_item(int argc, VALUE *argv, VALUE self)
|
|
169
180
|
func = rb_rescue((VALUE(*)())rb_block_proc, 0, NULL, 0);
|
170
181
|
|
171
182
|
create_factory_entry(entry, self, path, type, accel, extdata, func, data);
|
172
|
-
|
183
|
+
|
173
184
|
gtk_item_factory_create_item(_SELF(self), entry, (gpointer)self, 1);
|
174
185
|
g_free(entry);
|
175
186
|
return self;
|
176
187
|
}
|
177
188
|
|
178
189
|
static VALUE
|
179
|
-
|
190
|
+
rg_create_items(VALUE self, VALUE ary)
|
180
191
|
{
|
181
192
|
VALUE entry, path, accel, type, func, data, extdata;
|
182
193
|
GtkItemFactoryEntry *entries;
|
@@ -205,9 +216,8 @@ ifact_create_items(VALUE self, VALUE ary)
|
|
205
216
|
return self;
|
206
217
|
}
|
207
218
|
|
208
|
-
|
209
219
|
static VALUE
|
210
|
-
|
220
|
+
rg_delete_item(VALUE self, VALUE path)
|
211
221
|
{
|
212
222
|
gtk_item_factory_delete_item(_SELF(self), RVAL2CSTR(path));
|
213
223
|
return self;
|
@@ -223,7 +233,7 @@ void gtk_item_factory_delete_entries (GtkItemFactory *ifactory,
|
|
223
233
|
*/
|
224
234
|
|
225
235
|
static VALUE
|
226
|
-
|
236
|
+
rg_popup(VALUE self, VALUE x, VALUE y, VALUE mouse_button, VALUE time)
|
227
237
|
{
|
228
238
|
gtk_item_factory_popup(_SELF(self), NUM2UINT(x), NUM2UINT(y), NUM2UINT(mouse_button),
|
229
239
|
NUM2UINT(time));
|
@@ -250,42 +260,40 @@ void gtk_item_factory_set_translate_func
|
|
250
260
|
GtkDestroyNotify notify);
|
251
261
|
*/
|
252
262
|
|
253
|
-
|
254
263
|
void
|
255
|
-
Init_gtk_itemfactory()
|
264
|
+
Init_gtk_itemfactory(VALUE mGtk)
|
256
265
|
{
|
257
|
-
VALUE
|
266
|
+
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_ITEM_FACTORY, "ItemFactory", mGtk);
|
258
267
|
|
259
|
-
|
260
|
-
|
268
|
+
RG_DEF_SMETHOD(from_widget, 1);
|
269
|
+
RG_DEF_SMETHOD(path_from_widget, 1);
|
261
270
|
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
271
|
+
RG_DEF_METHOD(initialize, 3);
|
272
|
+
RG_DEF_METHOD(construct, -1);
|
273
|
+
RG_DEF_METHOD(get_item, 1);
|
274
|
+
RG_DEF_METHOD(get_widget, 1);
|
275
|
+
RG_DEF_METHOD(create_item, -1);
|
276
|
+
RG_DEF_METHOD(create_items, 1);
|
277
|
+
RG_DEF_METHOD(delete_item, 1);
|
278
|
+
RG_DEF_METHOD(popup, 4);
|
270
279
|
|
271
280
|
/* Ruby/GTK Original constants */
|
272
|
-
rb_define_const(
|
273
|
-
rb_define_const(
|
274
|
-
rb_define_const(
|
275
|
-
|
276
|
-
rb_define_const(
|
277
|
-
rb_define_const(
|
278
|
-
rb_define_const(
|
279
|
-
rb_define_const(
|
280
|
-
rb_define_const(
|
281
|
-
rb_define_const(
|
282
|
-
rb_define_const(
|
283
|
-
rb_define_const(
|
284
|
-
rb_define_const(
|
285
|
-
rb_define_const(
|
286
|
-
rb_define_const(
|
281
|
+
rb_define_const(RG_TARGET_NAMESPACE, "TYPE_MENU_BAR", INT2FIX(GTK_TYPE_MENU_BAR));
|
282
|
+
rb_define_const(RG_TARGET_NAMESPACE, "TYPE_MENU", INT2FIX(GTK_TYPE_MENU));
|
283
|
+
rb_define_const(RG_TARGET_NAMESPACE, "TYPE_OPTION_MENU", INT2FIX(GTK_TYPE_OPTION_MENU));
|
284
|
+
|
285
|
+
rb_define_const(RG_TARGET_NAMESPACE, "TITLE", CSTR2RVAL("<Title>"));
|
286
|
+
rb_define_const(RG_TARGET_NAMESPACE, "ITEM", CSTR2RVAL("<Item>"));
|
287
|
+
rb_define_const(RG_TARGET_NAMESPACE, "CHECK_ITEM", CSTR2RVAL("<CheckItem>"));
|
288
|
+
rb_define_const(RG_TARGET_NAMESPACE, "TOGGLE_ITEM", CSTR2RVAL("<ToggleItem>"));
|
289
|
+
rb_define_const(RG_TARGET_NAMESPACE, "RADIO_ITEM", CSTR2RVAL("<RadioItem>"));
|
290
|
+
rb_define_const(RG_TARGET_NAMESPACE, "IMAGE_ITEM", CSTR2RVAL("<ImageItem>"));
|
291
|
+
rb_define_const(RG_TARGET_NAMESPACE, "STOCK_ITEM", CSTR2RVAL("<StockItem>"));
|
292
|
+
rb_define_const(RG_TARGET_NAMESPACE, "SEPARATOR", CSTR2RVAL("<Separator>"));
|
293
|
+
rb_define_const(RG_TARGET_NAMESPACE, "BRANCH", CSTR2RVAL("<Branch>"));
|
294
|
+
rb_define_const(RG_TARGET_NAMESPACE, "LAST_BRANCH", CSTR2RVAL("<LastBranch>"));
|
295
|
+
rb_define_const(RG_TARGET_NAMESPACE, "TEAROFF", CSTR2RVAL("<Tearoff>"));
|
287
296
|
|
288
297
|
action_table = rb_hash_new();
|
289
298
|
rb_global_variable(&action_table);
|
290
299
|
}
|
291
|
-
|
data/ext/gtk2/rbgtklabel.c
CHANGED
@@ -1,23 +1,34 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
2
|
+
/*
|
3
|
+
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
+
* Copyright (C) 2002-2005 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 cLabel
|
17
28
|
#define _SELF(s) (GTK_LABEL(RVAL2GOBJ(s)))
|
18
29
|
|
19
30
|
static VALUE
|
20
|
-
|
31
|
+
rg_initialize(int argc, VALUE *argv, VALUE self)
|
21
32
|
{
|
22
33
|
VALUE label, with_mnemonic;
|
23
34
|
GtkWidget* widget = NULL;
|
@@ -34,14 +45,14 @@ label_initialize(int argc, VALUE *argv, VALUE self)
|
|
34
45
|
}
|
35
46
|
|
36
47
|
static VALUE
|
37
|
-
|
48
|
+
rg_operator_label_set_text_only(VALUE self, VALUE text)
|
38
49
|
{
|
39
50
|
gtk_label_set_text(_SELF(self), RVAL2CSTR(text));
|
40
51
|
return text;
|
41
52
|
}
|
42
53
|
|
43
54
|
static VALUE
|
44
|
-
|
55
|
+
rg_set_text(int argc, VALUE *argv, VALUE self)
|
45
56
|
{
|
46
57
|
VALUE label, with_mnemonic;
|
47
58
|
|
@@ -55,14 +66,14 @@ label_set_text(int argc, VALUE *argv, VALUE self)
|
|
55
66
|
}
|
56
67
|
|
57
68
|
static VALUE
|
58
|
-
|
69
|
+
rg_operator_label_set_markup_only(VALUE self, VALUE text)
|
59
70
|
{
|
60
71
|
gtk_label_set_markup(_SELF(self), RVAL2CSTR(text));
|
61
72
|
return text;
|
62
73
|
}
|
63
74
|
|
64
75
|
static VALUE
|
65
|
-
|
76
|
+
rg_set_markup(int argc, VALUE *argv, VALUE self)
|
66
77
|
{
|
67
78
|
VALUE str, with_mnemonic;
|
68
79
|
rb_scan_args(argc, argv, "02", &str, &with_mnemonic);
|
@@ -76,7 +87,7 @@ label_set_markup(int argc, VALUE *argv, VALUE self)
|
|
76
87
|
}
|
77
88
|
|
78
89
|
static VALUE
|
79
|
-
|
90
|
+
rg_layout_offsets(VALUE self)
|
80
91
|
{
|
81
92
|
gint x, y;
|
82
93
|
gtk_label_get_layout_offsets(_SELF(self), &x, &y);
|
@@ -84,67 +95,45 @@ label_get_layout_offsets(VALUE self)
|
|
84
95
|
}
|
85
96
|
|
86
97
|
static VALUE
|
87
|
-
|
98
|
+
rg_text(VALUE self)
|
88
99
|
{
|
89
100
|
return CSTR2RVAL(gtk_label_get_text(_SELF(self)));
|
90
101
|
}
|
91
102
|
|
92
103
|
static VALUE
|
93
|
-
|
104
|
+
rg_select_region(VALUE self, VALUE start_offset, VALUE end_offset)
|
94
105
|
{
|
95
106
|
gtk_label_select_region(_SELF(self), NUM2INT(start_offset), NUM2INT(end_offset));
|
96
107
|
return self;
|
97
108
|
}
|
98
109
|
|
99
110
|
static VALUE
|
100
|
-
|
111
|
+
rg_layout(VALUE self)
|
101
112
|
{
|
102
113
|
return GOBJ2RVAL(gtk_label_get_layout(_SELF(self)));
|
103
114
|
}
|
104
115
|
|
105
116
|
static VALUE
|
106
|
-
|
117
|
+
rg_selection_bounds(VALUE self)
|
107
118
|
{
|
108
119
|
gint start, end;
|
109
120
|
gboolean ret = gtk_label_get_selection_bounds(_SELF(self), &start, &end);
|
110
121
|
return ret ? rb_ary_new3(2, INT2NUM(start), INT2NUM(end)) : Qnil;
|
111
122
|
}
|
112
123
|
|
113
|
-
/* Defined as Properties
|
114
|
-
gdouble gtk_label_get_angle (GtkLabel *label);
|
115
|
-
void gtk_label_set_angle (GtkLabel *label,
|
116
|
-
gdouble angle);
|
117
|
-
void gtk_label_set_ellipsize (GtkLabel *label,
|
118
|
-
PangoEllipsizeMode mode);
|
119
|
-
PangoEllipsizeMode gtk_label_get_ellipsize (GtkLabel *label);
|
120
|
-
void gtk_label_set_max_width_chars (GtkLabel *label,
|
121
|
-
gint n_chars);
|
122
|
-
gint gtk_label_get_max_width_chars (GtkLabel *label);
|
123
|
-
|
124
|
-
gboolean gtk_label_get_single_line_mode (GtkLabel *label);
|
125
|
-
void gtk_label_set_single_line_mode (GtkLabel *label,
|
126
|
-
gboolean single_line_mode);
|
127
|
-
void gtk_label_set_width_chars (GtkLabel *label,
|
128
|
-
gint n_chars);
|
129
|
-
gint gtk_label_get_width_chars (GtkLabel *label);
|
130
|
-
void gtk_label_set_line_wrap_mode (GtkLabel *label,
|
131
|
-
PangoWrapMode wrap_mode);
|
132
|
-
PangoWrapMode gtk_label_get_line_wrap_mode (GtkLabel *label);
|
133
|
-
*/
|
134
|
-
|
135
124
|
void
|
136
|
-
Init_gtk_label()
|
125
|
+
Init_gtk_label(VALUE mGtk)
|
137
126
|
{
|
138
|
-
VALUE
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
127
|
+
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_LABEL, "Label", mGtk);
|
128
|
+
|
129
|
+
RG_DEF_METHOD(initialize, -1);
|
130
|
+
RG_DEF_METHOD(text, 0);
|
131
|
+
RG_DEF_METHOD(set_text, -1);
|
132
|
+
RG_DEF_METHOD_OPERATOR("text=", label_set_text_only, 1);
|
133
|
+
RG_DEF_METHOD(set_markup, -1);
|
134
|
+
RG_DEF_METHOD_OPERATOR("markup=", label_set_markup_only, 1);
|
135
|
+
RG_DEF_METHOD(layout_offsets, 0);
|
136
|
+
RG_DEF_METHOD(select_region, 2);
|
137
|
+
RG_DEF_METHOD(layout, 0);
|
138
|
+
RG_DEF_METHOD(selection_bounds, 0);
|
150
139
|
}
|