gtk2 1.0.3 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
}
|