goocanvas 0.90.6
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +87 -0
- data/README +37 -0
- data/Rakefile +14 -0
- data/ext/goocanvas/Makefile +162 -0
- data/ext/goocanvas/depend +5 -0
- data/ext/goocanvas/extconf.rb +66 -0
- data/ext/goocanvas/goocanvas.def +2 -0
- data/ext/goocanvas/goocanvas.so +0 -0
- data/ext/goocanvas/rbgoo_canvasversion.h +25 -0
- data/ext/goocanvas/rbgoocairo.c +74 -0
- data/ext/goocanvas/rbgoocairo.o +0 -0
- data/ext/goocanvas/rbgoocanvas.c +236 -0
- data/ext/goocanvas/rbgoocanvas.h +66 -0
- data/ext/goocanvas/rbgoocanvas.o +0 -0
- data/ext/goocanvas/rbgoocanvasellipse.c +50 -0
- data/ext/goocanvas/rbgoocanvasellipse.o +0 -0
- data/ext/goocanvas/rbgoocanvasgroup.c +41 -0
- data/ext/goocanvas/rbgoocanvasgroup.o +0 -0
- data/ext/goocanvas/rbgoocanvasimage.c +45 -0
- data/ext/goocanvas/rbgoocanvasimage.o +0 -0
- data/ext/goocanvas/rbgoocanvasitem.c +358 -0
- data/ext/goocanvas/rbgoocanvasitem.o +0 -0
- data/ext/goocanvas/rbgoocanvaspolyline.c +102 -0
- data/ext/goocanvas/rbgoocanvaspolyline.o +0 -0
- data/ext/goocanvas/rbgoocanvasrect.c +47 -0
- data/ext/goocanvas/rbgoocanvasrect.o +0 -0
- data/ext/goocanvas/rbgoocanvasstyle.c +61 -0
- data/ext/goocanvas/rbgoocanvasstyle.o +0 -0
- data/ext/goocanvas/rbgoocanvastable.c +41 -0
- data/ext/goocanvas/rbgoocanvastable.o +0 -0
- data/ext/goocanvas/rbgoocanvastext.c +58 -0
- data/ext/goocanvas/rbgoocanvastext.o +0 -0
- data/ext/goocanvas/rbgoocanvaswidget.c +48 -0
- data/ext/goocanvas/rbgoocanvaswidget.o +0 -0
- data/ext/goocanvas/rbgooutils.c +44 -0
- data/ext/goocanvas/rbgooutils.o +0 -0
- data/ext/goocanvas/ruby-goocanvas.pc +3 -0
- data/extconf.rb +49 -0
- data/lib/goocanvas.rb +145 -0
- data/sample/demo-arrowhead.rb +315 -0
- data/sample/demo-fifteen.rb +218 -0
- data/sample/demo-primitives.rb +720 -0
- data/sample/demo.rb +84 -0
- data/sample/flower.png +0 -0
- data/sample/scalability-demo.rb +130 -0
- data/sample/simple-demo.rb +35 -0
- data/sample/table-demo.rb +137 -0
- data/sample/toroid.png +0 -0
- data/sample/units-demo.rb +80 -0
- data/sample/widgets-demo.rb +197 -0
- metadata +133 -0
data/ChangeLog
ADDED
@@ -0,0 +1,87 @@
|
|
1
|
+
2011-01-30 Kouhei Sutou <kou@cozmixng.org>
|
2
|
+
|
3
|
+
* ./: support gem for Windows build.
|
4
|
+
|
5
|
+
2011-01-28 Masaaki Aoyagi
|
6
|
+
|
7
|
+
* src/lib/: -> lib/.
|
8
|
+
|
9
|
+
* src/: -> ext/goocanvas/.
|
10
|
+
|
11
|
+
* extconf.rb: -> ext/goocanvas/extconf.rb
|
12
|
+
|
13
|
+
* ext/goocanvas/extconf.rb: support directory structure change.
|
14
|
+
|
15
|
+
* extconf.rb: add.
|
16
|
+
|
17
|
+
* Rakefile: add.
|
18
|
+
|
19
|
+
2010-09-23 Kouhei Sutou <kou@cozmixng.org>
|
20
|
+
|
21
|
+
* extconf.rb: support Ruby/GLib2 directory structure change.
|
22
|
+
|
23
|
+
2008-11-01 Kouhei Sutou <kou@cozmixng.org>
|
24
|
+
|
25
|
+
* src/: use RARRAY_PTR() and RARRAY_LEN().
|
26
|
+
|
27
|
+
2008-09-30 yselkowitz
|
28
|
+
|
29
|
+
* extconf.rb: add missing dependencies.
|
30
|
+
|
31
|
+
2008-09-14 Kouhei Sutou <kou@cozmixng.org>
|
32
|
+
|
33
|
+
* extconf.rb: fix path.
|
34
|
+
|
35
|
+
2008-09-13 Kouhei Sutou <kou@cozmixng.org>
|
36
|
+
|
37
|
+
* extconf.rb: use check_cairo.
|
38
|
+
|
39
|
+
* /: move to The Ruby-GNOME2 Project.
|
40
|
+
|
41
|
+
2008-08-16 Kouhei Sutou <kou@cozmixng.org>
|
42
|
+
|
43
|
+
* sample/demo-primitives.rb: update menu widgets to follow the
|
44
|
+
latest original demo.
|
45
|
+
|
46
|
+
* sample/demo-primitives.rb: TAB -> 2 spaces.
|
47
|
+
|
48
|
+
2008-07-21 Kouhei Sutou <kou@cozmixng.org>
|
49
|
+
|
50
|
+
* src/rbgoocairo.c (rb_cairo_pattern_to_goo)
|
51
|
+
(rb_cairo_matrix_to_goo): fix a reference count bug.
|
52
|
+
|
53
|
+
* sample/demo-fifteen.rb (CanvasSampleFifteen#scramble): fix broken.
|
54
|
+
|
55
|
+
* src/rbgoocanvas.c: bind Goo::Canvas#scroll_to.
|
56
|
+
|
57
|
+
2008-06-27 Kouhei Sutou <kou@cozmixng.org>
|
58
|
+
|
59
|
+
* sample/demo.rb: support quiting by C-q.
|
60
|
+
|
61
|
+
* sample/demo.rb: set $LOAD_PATH.
|
62
|
+
|
63
|
+
2007-06-22 Kouhei Sutou <kou@cozmixng.org>
|
64
|
+
|
65
|
+
* src/:
|
66
|
+
- cleanup macros.
|
67
|
+
- cleanup styles.
|
68
|
+
|
69
|
+
* src/rbgoocanvasitem.c:
|
70
|
+
- fixed style.
|
71
|
+
- used more self-describing macro.
|
72
|
+
|
73
|
+
* README: added.
|
74
|
+
|
75
|
+
2007-05-02 Kouhei Sutou <kou@cozmixng.org>
|
76
|
+
|
77
|
+
* sample/demo.rb: cleanup.
|
78
|
+
|
79
|
+
* extconf.rb, src/rbgoocairo.c: required >= 0.8.0.
|
80
|
+
|
81
|
+
* sample/demo.rb: untabified.
|
82
|
+
|
83
|
+
* extconf.rb: supported GooCanvas version check in C.
|
84
|
+
|
85
|
+
* src/rbgoocanvas.h, src/rbgoocairo.c: supported build with
|
86
|
+
GooCanvas 0.6.0.
|
87
|
+
|
data/README
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
Ruby/GooCanvas
|
2
|
+
==============
|
3
|
+
Ruby/GooCanvas is a Ruby binding of GooCanvas.
|
4
|
+
|
5
|
+
Requirements
|
6
|
+
------------
|
7
|
+
Ruby: http://www.ruby-lang.org/
|
8
|
+
GooCanvas: http://live.gnome.org/GooCanvas
|
9
|
+
|
10
|
+
Install
|
11
|
+
-------
|
12
|
+
0. install ruby-1.8.x or later and GooCanvas.
|
13
|
+
1. ruby extconf.rb
|
14
|
+
2. make
|
15
|
+
3. su
|
16
|
+
4. make install
|
17
|
+
|
18
|
+
Copying
|
19
|
+
-------
|
20
|
+
Copyright (c) 2008 Ruby-GNOME2 Project Team
|
21
|
+
Copyright (c) 2007 Vincent Isambart
|
22
|
+
Copyright (c) 2007 Kouhei Sutou <kou@cozmixng.org>
|
23
|
+
Copyright (c) 2007 Manu
|
24
|
+
|
25
|
+
This program is free software.
|
26
|
+
You can distribute/modify this program under the terms of
|
27
|
+
the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1.
|
28
|
+
|
29
|
+
Project Website
|
30
|
+
---------------
|
31
|
+
http://ruby-gnome2.sourceforge.jp/
|
32
|
+
|
33
|
+
Thanks
|
34
|
+
------
|
35
|
+
|
36
|
+
* Andrew Whyte
|
37
|
+
- improved rbgoocanvasitem.c.
|
data/Rakefile
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
# -*- ruby -*-
|
2
|
+
|
3
|
+
require './../glib2/lib/gnome2-raketask'
|
4
|
+
|
5
|
+
package = GNOME2Package.new do |_package|
|
6
|
+
_package.summary = "Ruby/GooCanvas is a Ruby binding of GooCanvas."
|
7
|
+
_package.description = "Ruby/GooCanvas is a Ruby binding of GooCanvas."
|
8
|
+
_package.dependency.gem.runtime = ["gtk2"]
|
9
|
+
_package.win32.packages = ["goocanvas"]
|
10
|
+
_package.win32.dependencies = []
|
11
|
+
_package.post_install_message = "This library is experimental."
|
12
|
+
end
|
13
|
+
package.define_tasks
|
14
|
+
|
@@ -0,0 +1,162 @@
|
|
1
|
+
|
2
|
+
SHELL = /bin/sh
|
3
|
+
|
4
|
+
#### Start of system configuration section. ####
|
5
|
+
|
6
|
+
srcdir = /home/kou/work/ruby/ruby-gnome2/goocanvas/ext/goocanvas
|
7
|
+
topdir = /usr/lib/ruby/1.8/x86_64-linux
|
8
|
+
hdrdir = $(topdir)
|
9
|
+
VPATH = $(srcdir):$(topdir):$(hdrdir)
|
10
|
+
exec_prefix = $(prefix)
|
11
|
+
prefix = $(DESTDIR)/usr
|
12
|
+
sharedstatedir = $(prefix)/com
|
13
|
+
mandir = $(prefix)/share/man
|
14
|
+
psdir = $(docdir)
|
15
|
+
oldincludedir = $(DESTDIR)/usr/include
|
16
|
+
localedir = $(datarootdir)/locale
|
17
|
+
bindir = $(exec_prefix)/bin
|
18
|
+
libexecdir = $(prefix)/lib/ruby1.8
|
19
|
+
sitedir = $(DESTDIR)/usr/local/lib/site_ruby
|
20
|
+
htmldir = $(docdir)
|
21
|
+
vendorarchdir = $(vendorlibdir)/$(sitearch)
|
22
|
+
includedir = $(prefix)/include
|
23
|
+
infodir = $(prefix)/share/info
|
24
|
+
vendorlibdir = $(vendordir)/$(ruby_version)
|
25
|
+
sysconfdir = $(DESTDIR)/etc
|
26
|
+
libdir = $(exec_prefix)/lib
|
27
|
+
sbindir = $(exec_prefix)/sbin
|
28
|
+
rubylibdir = $(libdir)/ruby/$(ruby_version)
|
29
|
+
docdir = $(datarootdir)/doc/$(PACKAGE)
|
30
|
+
dvidir = $(docdir)
|
31
|
+
vendordir = $(libdir)/ruby/vendor_ruby
|
32
|
+
datarootdir = $(prefix)/share
|
33
|
+
pdfdir = $(docdir)
|
34
|
+
archdir = $(rubylibdir)/$(arch)
|
35
|
+
sitearchdir = $(sitelibdir)/$(sitearch)
|
36
|
+
datadir = $(datarootdir)
|
37
|
+
localstatedir = $(DESTDIR)/var
|
38
|
+
sitelibdir = $(sitedir)/$(ruby_version)
|
39
|
+
|
40
|
+
CC = gcc
|
41
|
+
LIBRUBY = $(LIBRUBY_SO)
|
42
|
+
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
|
43
|
+
LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
|
44
|
+
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static
|
45
|
+
|
46
|
+
RUBY_EXTCONF_H =
|
47
|
+
CFLAGS = -fPIC -fno-strict-aliasing -g -g -O2 -fPIC $(cflags) -Wall -I/usr/include/goocanvas-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/atk-1.0 -I/usr/lib/gtk-2.0/include -I/usr/include/gio-unix-2.0/ -pthread -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/home/kou/work/ruby/rcairo/ext/cairo
|
48
|
+
INCFLAGS = -I. -I/home/kou/work/ruby/ruby-gnome2/gtk2/ext/gtk2 -I/home/kou/work/ruby/ruby-gnome2/gtk2/ext/gtk2 -I/home/kou/work/ruby/ruby-gnome2/gtk2/ext/gtk2 -I/home/kou/work/ruby/ruby-gnome2/glib2/ext/glib2 -I/home/kou/work/ruby/ruby-gnome2/glib2/ext/glib2 -I/home/kou/work/ruby/ruby-gnome2/glib2/ext/glib2 -I. -I/usr/lib/ruby/1.8/x86_64-linux -I/home/kou/work/ruby/ruby-gnome2/goocanvas/ext/goocanvas
|
49
|
+
DEFS =
|
50
|
+
CPPFLAGS = -DHAVE_RB_DEFINE_ALLOC_FUNC -DHAVE_RB_BLOCK_PROC -DHAVE_OBJECT_ALLOCATE -DHAVE_NODE_ATTRASGN -DHAVE_RB_CAIRO_H -DRUBY_GOO_CANVAS_COMPILATION
|
51
|
+
CXXFLAGS = $(CFLAGS)
|
52
|
+
ldflags = -L. -rdynamic -Wl,-export-dynamic -pthread
|
53
|
+
dldflags =
|
54
|
+
archflag =
|
55
|
+
DLDFLAGS = $(ldflags) $(dldflags) $(archflag)
|
56
|
+
LDSHARED = $(CC) -shared
|
57
|
+
AR = ar
|
58
|
+
EXEEXT =
|
59
|
+
|
60
|
+
RUBY_INSTALL_NAME = ruby1.8
|
61
|
+
RUBY_SO_NAME = ruby1.8
|
62
|
+
arch = x86_64-linux
|
63
|
+
sitearch = x86_64-linux
|
64
|
+
ruby_version = 1.8
|
65
|
+
ruby = /usr/bin/ruby1.8
|
66
|
+
RUBY = $(ruby)
|
67
|
+
RM = rm -f
|
68
|
+
MAKEDIRS = mkdir -p
|
69
|
+
INSTALL = /usr/bin/install -c
|
70
|
+
INSTALL_PROG = $(INSTALL) -m 0755
|
71
|
+
INSTALL_DATA = $(INSTALL) -m 644
|
72
|
+
COPY = cp
|
73
|
+
|
74
|
+
#### End of system configuration section. ####
|
75
|
+
|
76
|
+
preload =
|
77
|
+
|
78
|
+
libpath = . $(libdir)
|
79
|
+
LIBPATH = -L. -L$(libdir)
|
80
|
+
DEFFILE =
|
81
|
+
|
82
|
+
CLEANFILES = mkmf.log
|
83
|
+
DISTCLEANFILES = rbgoo_canvasversion.h
|
84
|
+
|
85
|
+
extout =
|
86
|
+
extout_prefix =
|
87
|
+
target_prefix =
|
88
|
+
LOCAL_LIBS =
|
89
|
+
LIBS = $(LIBRUBYARG_SHARED) -lgoocanvas -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lm -lgobject-2.0 -lglib-2.0 -lgthread-2.0 -lrt -lgmodule-2.0 -lpango-1.0 -lpangocairo-1.0 -lcairo -lgio-2.0 -latk-1.0 -lpangoft2-1.0 -lfreetype -lfontconfig -lcairo -lpthread -lrt -ldl -lcrypt -lm -lc
|
90
|
+
SRCS = rbgoocanvastext.c rbgoocanvasimage.c rbgoocanvastable.c rbgooutils.c rbgoocanvas.c rbgoocanvaspolyline.c rbgoocairo.c rbgoocanvasrect.c rbgoocanvasellipse.c rbgoocanvasitem.c rbgoocanvasstyle.c rbgoocanvaswidget.c rbgoocanvasgroup.c
|
91
|
+
OBJS = rbgoocanvastext.o rbgoocanvasimage.o rbgoocanvastable.o rbgooutils.o rbgoocanvas.o rbgoocanvaspolyline.o rbgoocairo.o rbgoocanvasrect.o rbgoocanvasellipse.o rbgoocanvasitem.o rbgoocanvasstyle.o rbgoocanvaswidget.o rbgoocanvasgroup.o
|
92
|
+
TARGET = goocanvas
|
93
|
+
DLLIB = $(TARGET).so
|
94
|
+
EXTSTATIC =
|
95
|
+
STATIC_LIB =
|
96
|
+
|
97
|
+
BINDIR = $(bindir)
|
98
|
+
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
|
99
|
+
RUBYLIBDIR = $(sitelibdir)$(target_prefix)
|
100
|
+
RUBYARCHDIR = $(sitearchdir)$(target_prefix)
|
101
|
+
|
102
|
+
TARGET_SO = $(DLLIB)
|
103
|
+
CLEANLIBS = $(TARGET).so $(TARGET).il? $(TARGET).tds $(TARGET).map
|
104
|
+
CLEANOBJS = *.o *.a *.s[ol] *.pdb *.exp *.bak
|
105
|
+
|
106
|
+
all: $(DLLIB)
|
107
|
+
static: $(STATIC_LIB)
|
108
|
+
|
109
|
+
clean:
|
110
|
+
@-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
|
111
|
+
|
112
|
+
distclean: clean
|
113
|
+
@-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
|
114
|
+
@-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
|
115
|
+
|
116
|
+
realclean: distclean
|
117
|
+
install: install-so install-rb
|
118
|
+
|
119
|
+
install-so: $(RUBYARCHDIR)
|
120
|
+
install-so: $(RUBYARCHDIR)/$(DLLIB)
|
121
|
+
$(RUBYARCHDIR)/$(DLLIB): $(DLLIB)
|
122
|
+
$(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
|
123
|
+
install-rb: pre-install-rb install-rb-default
|
124
|
+
install-rb-default: pre-install-rb-default
|
125
|
+
pre-install-rb: Makefile
|
126
|
+
pre-install-rb-default: Makefile
|
127
|
+
$(RUBYARCHDIR):
|
128
|
+
$(MAKEDIRS) $@
|
129
|
+
|
130
|
+
site-install: site-install-so site-install-rb
|
131
|
+
site-install-so: install-so
|
132
|
+
site-install-rb: install-rb
|
133
|
+
|
134
|
+
.SUFFIXES: .c .m .cc .cxx .cpp .C .o
|
135
|
+
|
136
|
+
.cc.o:
|
137
|
+
$(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
|
138
|
+
|
139
|
+
.cxx.o:
|
140
|
+
$(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
|
141
|
+
|
142
|
+
.cpp.o:
|
143
|
+
$(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
|
144
|
+
|
145
|
+
.C.o:
|
146
|
+
$(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
|
147
|
+
|
148
|
+
.c.o:
|
149
|
+
$(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) -c $<
|
150
|
+
|
151
|
+
$(DLLIB): $(OBJS) Makefile
|
152
|
+
@-$(RM) $@
|
153
|
+
$(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
###
|
158
|
+
install:
|
159
|
+
if test -n "$(pkgconfigdir)"; then \
|
160
|
+
$(MAKEDIRS) $(pkgconfigdir); \
|
161
|
+
$(INSTALL_DATA) ../ruby-goocanvas.pc $(pkgconfigdir); \
|
162
|
+
fi
|
@@ -0,0 +1,66 @@
|
|
1
|
+
=begin
|
2
|
+
extconf.rb for Ruby/GooCanvas extension library
|
3
|
+
=end
|
4
|
+
|
5
|
+
require 'pathname'
|
6
|
+
|
7
|
+
base_dir = Pathname(__FILE__).dirname.parent.parent.expand_path
|
8
|
+
top_dir = base_dir.parent.expand_path
|
9
|
+
top_build_dir = Pathname(".").parent.parent.parent.expand_path
|
10
|
+
|
11
|
+
mkmf_gnome2_dir = top_dir + "glib2" + 'lib'
|
12
|
+
version_suffix = ""
|
13
|
+
unless mkmf_gnome2_dir.exist?
|
14
|
+
if /(-\d+\.\d+\.\d+)(?:\.\d+)?\z/ =~ base_dir.basename.to_s
|
15
|
+
version_suffix = $1
|
16
|
+
mkmf_gnome2_dir = top_dir + "glib2#{version_suffix}" + 'lib'
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
$LOAD_PATH.unshift(mkmf_gnome2_dir.to_s)
|
21
|
+
|
22
|
+
module_name = "goocanvas"
|
23
|
+
package_id = "goocanvas"
|
24
|
+
|
25
|
+
require 'mkmf-gnome2'
|
26
|
+
|
27
|
+
["glib2", "atk", "pango", "gdk_pixbuf2", "gtk2"].each do |package|
|
28
|
+
directory = "#{package}#{version_suffix}"
|
29
|
+
build_dir = "#{directory}/tmp/#{RUBY_PLATFORM}/#{package}/#{RUBY_VERSION}"
|
30
|
+
add_depend_package(package, "#{directory}/ext/#{package}",
|
31
|
+
top_dir.to_s,
|
32
|
+
:top_build_dir => top_build_dir.to_s,
|
33
|
+
:target_build_dir => build_dir)
|
34
|
+
end
|
35
|
+
|
36
|
+
rcairo_options = {}
|
37
|
+
rcairo_source_dir_names = ["rcairo"]
|
38
|
+
if /mingw|cygwin|mswin32/ =~ RUBY_PLATFORM
|
39
|
+
rcairo_source_dir_names.unshift("rcairo.win32")
|
40
|
+
end
|
41
|
+
rcairo_source_dir_names.each do |rcairo_source_dir_name|
|
42
|
+
rcairo_source_dir = top_dir.parent.expand_path + rcairo_source_dir_name
|
43
|
+
if rcairo_source_dir.exist?
|
44
|
+
rcairo_options[:rcairo_source_dir] = rcairo_source_dir.to_s
|
45
|
+
break
|
46
|
+
end
|
47
|
+
end
|
48
|
+
check_cairo(rcairo_options) or exit(false)
|
49
|
+
|
50
|
+
setup_win32(module_name, base_dir)
|
51
|
+
|
52
|
+
PKGConfig.have_package(package_id) or exit 1
|
53
|
+
|
54
|
+
make_version_header("GOO_CANVAS", package_id, ".")
|
55
|
+
|
56
|
+
create_pkg_config_file("Ruby/GooCanvas", package_id)
|
57
|
+
$defs << "-DRUBY_GOO_CANVAS_COMPILATION"
|
58
|
+
create_makefile(module_name)
|
59
|
+
pkg_config_dir = with_config("pkg-config-dir")
|
60
|
+
if pkg_config_dir.is_a?(String)
|
61
|
+
File.open("Makefile", "ab") do |makefile|
|
62
|
+
makefile.puts
|
63
|
+
makefile.puts("pkgconfigdir=#{pkg_config_dir}")
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
Binary file
|
@@ -0,0 +1,25 @@
|
|
1
|
+
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
+
/************************************************
|
3
|
+
|
4
|
+
rbgoo_canvasversion.h -
|
5
|
+
|
6
|
+
This file was generated by mkmf-gnome2.rb.
|
7
|
+
|
8
|
+
************************************************/
|
9
|
+
|
10
|
+
#ifndef __RBGOO_CANVAS_VERSION_H__
|
11
|
+
#define __RBGOO_CANVAS_VERSION_H__
|
12
|
+
|
13
|
+
#define GOO_CANVAS_MAJOR_VERSION (2)
|
14
|
+
#define GOO_CANVAS_MINOR_VERSION (0)
|
15
|
+
#define GOO_CANVAS_MICRO_VERSION (0)
|
16
|
+
#define GOO_CANVAS_TAG_VERSION (b7)
|
17
|
+
|
18
|
+
#define GOO_CANVAS_CHECK_VERSION(major,minor,micro) \
|
19
|
+
(GOO_CANVAS_MAJOR_VERSION > (major) || \
|
20
|
+
(GOO_CANVAS_MAJOR_VERSION == (major) && GOO_CANVAS_MINOR_VERSION > (minor)) || \
|
21
|
+
(GOO_CANVAS_MAJOR_VERSION == (major) && GOO_CANVAS_MINOR_VERSION == (minor) && \
|
22
|
+
GOO_CANVAS_MICRO_VERSION >= (micro)))
|
23
|
+
|
24
|
+
|
25
|
+
#endif /* __RBGOO_CANVAS_VERSION_H__ */
|
@@ -0,0 +1,74 @@
|
|
1
|
+
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
+
/* $Id: rbgoocairo.c 3288 2008-09-13 10:07:44Z ktou $ */
|
3
|
+
/* convertion from Cairo types to GooCairo types
|
4
|
+
* Copyright (C) 2007 Vincent Isambart <vincent.isambart@gmail.com>
|
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
19
|
+
*/
|
20
|
+
|
21
|
+
#include "rbgoocanvas.h"
|
22
|
+
|
23
|
+
static VALUE
|
24
|
+
rb_cairo_pattern_to_goo(VALUE self)
|
25
|
+
{
|
26
|
+
GValue gval = {0,};
|
27
|
+
VALUE result;
|
28
|
+
|
29
|
+
g_value_init(&gval, GOO_TYPE_CAIRO_PATTERN);
|
30
|
+
g_value_set_boxed(&gval, RVAL2CRPATTERN(self));
|
31
|
+
|
32
|
+
result = rbgobj_gvalue_to_rvalue(&gval);
|
33
|
+
g_value_unset(&gval);
|
34
|
+
|
35
|
+
return result;
|
36
|
+
}
|
37
|
+
|
38
|
+
static VALUE
|
39
|
+
rb_cairo_matrix_to_goo(VALUE self)
|
40
|
+
{
|
41
|
+
GValue gval = {0,};
|
42
|
+
VALUE result;
|
43
|
+
|
44
|
+
g_value_init(&gval, GOO_TYPE_CAIRO_MATRIX);
|
45
|
+
g_value_set_boxed(&gval, RVAL2CRMATRIX(self));
|
46
|
+
|
47
|
+
result = rbgobj_gvalue_to_rvalue(&gval);
|
48
|
+
g_value_unset(&gval);
|
49
|
+
|
50
|
+
return result;
|
51
|
+
}
|
52
|
+
|
53
|
+
void
|
54
|
+
Init_goocairo(void)
|
55
|
+
{
|
56
|
+
VALUE Cairo, CairoPattern, CairoMatrix;
|
57
|
+
|
58
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_MATRIX, "CairoMatrix", mGoo);
|
59
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_PATTERN, "CairoPattern", mGoo);
|
60
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_FILL_RULE, "CairoFillRule", mGoo);
|
61
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_OPERATOR, "CairoOperator", mGoo);
|
62
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_ANTIALIAS, "CairoAntiAlias", mGoo);
|
63
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_LINE_CAP, "CairoLineCap", mGoo);
|
64
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_LINE_JOIN, "CairoLineJoin", mGoo);
|
65
|
+
G_DEF_CLASS(GOO_TYPE_CAIRO_HINT_METRICS, "CairoHintMetrics", mGoo);
|
66
|
+
|
67
|
+
Cairo = rb_const_get(rb_mKernel, rb_intern("Cairo"));
|
68
|
+
|
69
|
+
CairoPattern = rb_const_get(Cairo, rb_intern("Pattern"));
|
70
|
+
rb_define_method(CairoPattern, "to_goo", rb_cairo_pattern_to_goo, 0);
|
71
|
+
|
72
|
+
CairoMatrix = rb_const_get(Cairo, rb_intern("Matrix"));
|
73
|
+
rb_define_method(CairoMatrix, "to_goo", rb_cairo_matrix_to_goo, 0);
|
74
|
+
}
|