gdk_pixbuf2 3.0.8 → 3.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -1
  3. data/lib/gdk_pixbuf2.rb +11 -69
  4. data/lib/gdk_pixbuf2/deprecated.rb +160 -0
  5. data/lib/gdk_pixbuf2/loader.rb +51 -0
  6. data/lib/gdk_pixbuf2/pixbuf-loader.rb +24 -0
  7. data/lib/gdk_pixbuf2/pixbuf.rb +282 -0
  8. data/lib/gdk_pixbuf2/version.rb +33 -0
  9. data/sample/anim.rb +2 -2
  10. data/sample/composite.rb +41 -11
  11. data/sample/flip.rb +2 -2
  12. data/sample/format.rb +2 -4
  13. data/sample/loader.rb +3 -3
  14. data/sample/rotate.rb +4 -4
  15. data/sample/save.rb +3 -3
  16. data/sample/scale.rb +14 -6
  17. data/sample/simpleanim.rb +10 -4
  18. data/sample/utils.rb +7 -4
  19. data/sample/xpm.rb +9 -9
  20. data/test/fixture/floppybuddy.gif +0 -0
  21. data/test/fixture/gnome-logo-icon.png +0 -0
  22. data/test/fixture/image.gresource +0 -0
  23. data/test/fixture/image.gresource.xml +6 -0
  24. data/test/gdk_pixbuf2-test-utils.rb +11 -0
  25. data/test/run-test.rb +6 -3
  26. data/test/test-animation.rb +30 -0
  27. data/test/test-loader.rb +31 -0
  28. data/test/test-pixbuf.rb +334 -0
  29. metadata +18 -25
  30. data/README +0 -29
  31. data/ext/gdk_pixbuf2/depend +0 -11
  32. data/ext/gdk_pixbuf2/extconf.rb +0 -68
  33. data/ext/gdk_pixbuf2/gdk_pixbuf2.def +0 -2
  34. data/ext/gdk_pixbuf2/rbgdk-pixbuf-format.c +0 -179
  35. data/ext/gdk_pixbuf2/rbgdk-pixbuf-loader.c +0 -164
  36. data/ext/gdk_pixbuf2/rbgdk-pixbuf.c +0 -737
  37. data/ext/gdk_pixbuf2/rbgdk-pixbuf.h +0 -41
  38. data/ext/gdk_pixbuf2/rbgdk-pixbuf2conversions.h +0 -42
  39. data/ext/gdk_pixbuf2/rbgdk-pixbuf2private.h +0 -35
  40. data/ext/gdk_pixbuf2/rbgdk-pixbufanimation.c +0 -93
  41. data/ext/gdk_pixbuf2/rbgdk-pixbufanimationiter.c +0 -71
  42. data/ext/gdk_pixbuf2/rbgdk-pixbufsimpleanim.c +0 -53
  43. data/ext/gdk_pixbuf2/rbgdk-pixdata.c +0 -213
  44. data/extconf.rb +0 -49
  45. data/sample/inline.rb +0 -37
  46. data/sample/pixdata.rb +0 -39
  47. data/test/test-version.rb +0 -47
data/README DELETED
@@ -1,29 +0,0 @@
1
- Ruby/GdkPixbuf2
2
- ===============
3
- Ruby/GdkPixbuf2 is a Ruby binding of GdkPixbuf-2.x.
4
-
5
- Requirements
6
- ------------
7
- Ruby: http://www.ruby-lang.org/
8
- GTK+: http://www.gtk.org/
9
- Ruby/GLib2, Ruby/GTK2: http://ruby-gnome2.sourceforge.net/
10
-
11
- Install
12
- -------
13
- 0. install ruby-1.9.x or later, GTK+, Ruby/GLib2 and Ruby/GTK2.
14
- 1. ruby extconf.rb
15
- 2. make
16
- 3. su
17
- 4. make install
18
-
19
- Copying
20
- -------
21
- Copyright (c) 2002-2005 Ruby-GNOME2 Project Team
22
-
23
- This program is free software.
24
- You can distribute/modify this program under the terms of
25
- the GNU LESSER GENERAL PUBLIC LICENSE Version 2.1.
26
-
27
- Project Website
28
- ---------------
29
- http://ruby-gnome2.sourceforge.jp/
@@ -1,11 +0,0 @@
1
- install-so: install-headers
2
- install-headers:
3
- $(INSTALL_DATA) $(srcdir)/rbgdk-pixbuf.h $(RUBYARCHDIR)
4
- $(INSTALL_DATA) $(srcdir)/rbgdk-pixbuf2conversions.h $(RUBYARCHDIR)
5
-
6
- install: install-pc
7
- install-pc:
8
- if test -n "$(pkgconfigdir)"; then \
9
- $(MAKEDIRS) $(pkgconfigdir); \
10
- $(INSTALL_DATA) ruby-gdk-pixbuf2.pc $(pkgconfigdir); \
11
- fi
@@ -1,68 +0,0 @@
1
- =begin
2
- extconf.rb for Ruby/GdkPixbuf2 extention library
3
- =end
4
-
5
- require 'pathname'
6
-
7
- base_dir = Pathname(__FILE__).dirname.parent.parent.expand_path
8
- top_dir = base_dir.parent
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 = "gdk_pixbuf2"
23
- package_id = "gdk-pixbuf-2.0"
24
-
25
- begin
26
- require 'mkmf-gnome2'
27
- rescue LoadError
28
- require 'rubygems'
29
- gem 'glib2'
30
- require 'mkmf-gnome2'
31
- end
32
-
33
- ["glib2"].each do |package|
34
- directory = "#{package}#{version_suffix}"
35
- build_dir = "#{directory}/tmp/#{RUBY_PLATFORM}/#{package}/#{RUBY_VERSION}"
36
- add_depend_package(package, "#{directory}/ext/#{package}",
37
- top_dir.to_s,
38
- :top_build_dir => top_build_dir.to_s,
39
- :target_build_dir => build_dir)
40
- end
41
-
42
- setup_windows(module_name, base_dir)
43
-
44
- unless required_pkg_config_package(package_id,
45
- :altlinux => "gdk-pixbuf-devel",
46
- :debian => "libgdk-pixbuf2.0-dev",
47
- :redhat => "gtk2-devel",
48
- :fedora => "gdk-pixbuf2-devel",
49
- :arch => "gdk-pixbuf2",
50
- :homebrew => "gdk-pixbuf",
51
- :macports => "gdk-pixbuf2")
52
- exit(false)
53
- end
54
-
55
- have_func("gdk_pixbuf_set_option", "gdk-pixbuf/gdk-pixbuf.h") do |src|
56
- "#define GDK_PIXBUF_ENABLE_BACKEND\n#{src}"
57
- end
58
-
59
- create_pkg_config_file("Ruby/GdkPixbuf2", package_id, nil, "ruby-gdk-pixbuf2.pc")
60
- create_makefile(module_name)
61
-
62
- pkg_config_dir = with_config("pkg-config-dir")
63
- if pkg_config_dir.is_a?(String)
64
- File.open("Makefile", "ab") do |makefile|
65
- makefile.puts
66
- makefile.puts("pkgconfigdir=#{pkg_config_dir}")
67
- end
68
- end
@@ -1,2 +0,0 @@
1
- EXPORTS
2
- Init_gdk_pixbuf2
@@ -1,179 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- * Copyright (C) 2004 Masao Mutoh
5
- *
6
- * This library is free software; you can redistribute it and/or
7
- * modify it under the terms of the GNU Lesser General Public
8
- * License as published by the Free Software Foundation; either
9
- * version 2.1 of the License, or (at your option) any later version.
10
- *
11
- * This library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
- * Lesser General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library; if not, write to the Free Software
18
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
- * MA 02110-1301 USA
20
- */
21
-
22
- #include "rbgdk-pixbuf2private.h"
23
- #if RBGDK_PIXBUF_CHECK_VERSION(2,2,0)
24
-
25
- #ifdef HAVE_GDK_PIXBUF_GDK_PIXBUF_IO_H
26
- #include <gdk-pixbuf/gdk-pixbuf-io.h>
27
- #endif
28
-
29
- #define RG_TARGET_NAMESPACE cPixbufFormat
30
- #define _SELF(r) (RVAL2GDKPIXBUFFORMAT(r))
31
-
32
- /**********************************/
33
- static GdkPixbufFormat*
34
- format_copy(const GdkPixbufFormat* val)
35
- {
36
- GdkPixbufFormat* new_val;
37
- g_return_val_if_fail (val != NULL, NULL);
38
- new_val = g_new(GdkPixbufFormat, 1);
39
- *new_val = *val;
40
- return new_val;
41
- }
42
-
43
- GType
44
- gdk_pixbuf_format_get_type(void)
45
- {
46
- static GType our_type = 0;
47
-
48
- if (our_type == 0)
49
- our_type = g_boxed_type_register_static ("GdkPixbufFormat",
50
- (GBoxedCopyFunc)format_copy,
51
- (GBoxedFreeFunc)g_free);
52
- return our_type;
53
- }
54
- /**********************************/
55
-
56
- /* Move to rbgdk-pixbuf.c
57
- gboolean gdk_pixbuf_set_option (GdkPixbuf *pixbuf,
58
- const gchar *key,
59
- const gchar *value);
60
- GSList* gdk_pixbuf_get_formats (void);
61
- */
62
-
63
- static VALUE
64
- rg_name(VALUE self)
65
- {
66
- return CSTR2RVAL_FREE(gdk_pixbuf_format_get_name(_SELF(self)));
67
- }
68
-
69
- static VALUE
70
- rg_description(VALUE self)
71
- {
72
- return CSTR2RVAL_FREE(gdk_pixbuf_format_get_description(_SELF(self)));
73
- }
74
-
75
- static VALUE
76
- rg_mime_types(VALUE self)
77
- {
78
- gint i = 0;
79
- gchar** mime_types = gdk_pixbuf_format_get_mime_types(_SELF(self));
80
- VALUE array = rb_ary_new();
81
- while(mime_types[i]){
82
- rb_ary_push(array, CSTR2RVAL(mime_types[i]));
83
- i++;
84
- }
85
- g_strfreev(mime_types);
86
- return array;
87
- }
88
-
89
- static VALUE
90
- rg_extensions(VALUE self)
91
- {
92
- gint i = 0;
93
- gchar** extensions = gdk_pixbuf_format_get_extensions(_SELF(self));
94
- VALUE array = rb_ary_new();
95
-
96
- while(extensions[i]){
97
- rb_ary_push(array, CSTR2RVAL(extensions[i]));
98
- i++;
99
- }
100
- g_strfreev(extensions);
101
- return array;
102
- }
103
-
104
- static VALUE
105
- rg_writable_p(VALUE self)
106
- {
107
- return CBOOL2RVAL(gdk_pixbuf_format_is_writable(_SELF(self)));
108
- }
109
-
110
- /* Structure */
111
- static VALUE
112
- rg_domain(VALUE self)
113
- {
114
- return CSTR2RVAL(_SELF(self)->domain);
115
- }
116
-
117
- static VALUE
118
- rg_signature(VALUE self)
119
- {
120
- GdkPixbufModulePattern* signature = _SELF(self)->signature;
121
-
122
- VALUE array = rb_ary_new();
123
- int i = 0;
124
- while(signature[i].prefix){
125
- rb_ary_push(array, rb_ary_new3(3, CSTR2RVAL((const char*)signature[i].prefix),
126
- CSTR2RVAL((const char*)signature[i].mask),
127
- INT2NUM(signature[i].relevance)));
128
- i++;
129
- }
130
- return array;
131
- }
132
- #endif
133
-
134
- #if RBGDK_PIXBUF_CHECK_VERSION(2,6,0)
135
- static VALUE
136
- rg_scalable_p(VALUE self)
137
- {
138
- return CBOOL2RVAL(gdk_pixbuf_format_is_scalable(_SELF(self)));
139
- }
140
- static VALUE
141
- rg_disabled_p(VALUE self)
142
- {
143
- return CBOOL2RVAL(gdk_pixbuf_format_is_disabled(_SELF(self)));
144
- }
145
- static VALUE
146
- rg_set_disabled(VALUE self, VALUE disabled)
147
- {
148
- gdk_pixbuf_format_set_disabled(_SELF(self), RVAL2CBOOL(disabled));
149
- return self;
150
- }
151
- static VALUE
152
- rg_license(VALUE self)
153
- {
154
- return CSTR2RVAL(gdk_pixbuf_format_get_license(_SELF(self)));
155
- }
156
- #endif
157
-
158
- void
159
- Init_gdk_pixbuf_format(VALUE mGdk)
160
- {
161
- #if RBGDK_PIXBUF_CHECK_VERSION(2,2,0)
162
- VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GDK_TYPE_PIXBUF_FORMAT, "PixbufFormat", mGdk);
163
-
164
- RG_DEF_METHOD(name, 0);
165
- RG_DEF_METHOD(description, 0);
166
- RG_DEF_METHOD(mime_types, 0);
167
- RG_DEF_METHOD(extensions, 0);
168
- RG_DEF_METHOD_P(writable, 0);
169
- RG_DEF_METHOD(domain, 0);
170
- RG_DEF_METHOD(signature, 0);
171
- #if RBGDK_PIXBUF_CHECK_VERSION(2,6,0)
172
- RG_DEF_METHOD_P(scalable, 0);
173
- RG_DEF_METHOD_P(disabled, 0);
174
- RG_DEF_METHOD(set_disabled, 1);
175
- RG_DEF_METHOD(license, 0);
176
-
177
- #endif
178
- #endif
179
- }
@@ -1,164 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- * Copyright (C) 2004 Masao Mutoh
5
- * Copyright (C) 2003 Geoff Youngs
6
- *
7
- * This library is free software; you can redistribute it and/or
8
- * modify it under the terms of the GNU Lesser General Public
9
- * License as published by the Free Software Foundation; either
10
- * version 2.1 of the License, or (at your option) any later version.
11
- *
12
- * This library is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
- * Lesser General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Lesser General Public
18
- * License along with this library; if not, write to the Free Software
19
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
20
- * MA 02110-1301 USA
21
- */
22
-
23
- #include "rbgdk-pixbuf2private.h"
24
-
25
- #define RG_TARGET_NAMESPACE cPixbufLoader
26
- #define _SELF(s) RVAL2GDKPIXBUFLOADER(s)
27
-
28
- /****************************************************/
29
- /* File opening */
30
- /* Image Data in Memory */
31
- static VALUE
32
- rg_initialize(int argc, VALUE *argv, VALUE self)
33
- {
34
- GdkPixbufLoader* loader;
35
- GError* error = NULL;
36
- VALUE arg1, is_mime_type;
37
-
38
- rb_scan_args(argc, argv, "02", &arg1, &is_mime_type);
39
-
40
- if (NIL_P(arg1)) {
41
- loader = gdk_pixbuf_loader_new();
42
- } else {
43
- if (is_mime_type == Qtrue) {
44
- #if RBGDK_PIXBUF_CHECK_VERSION(2,4,0)
45
- loader = gdk_pixbuf_loader_new_with_mime_type(RVAL2CSTR(arg1), &error);
46
- #else
47
- rb_warning("Not supported GTK+-2.0/2.2.");
48
- loader = gdk_pixbuf_loader_new();
49
- #endif
50
- } else {
51
- /* Default behavior */
52
- loader = gdk_pixbuf_loader_new_with_type(RVAL2CSTR(arg1), &error);
53
- }
54
- if(error) RAISE_GERROR(error);
55
- }
56
-
57
- G_INITIALIZE(self, loader);
58
- return Qnil;
59
- }
60
-
61
- #if RBGDK_PIXBUF_CHECK_VERSION(2,2,0)
62
- static VALUE
63
- rg_format(VALUE self)
64
- {
65
- GdkPixbufFormat* format = gdk_pixbuf_loader_get_format(_SELF(self));
66
- return GDKPIXBUFFORMAT2RVAL(format);
67
- }
68
- #endif
69
-
70
- static VALUE
71
- rg_write(VALUE self, VALUE data)
72
- {
73
- GError *error = NULL;
74
-
75
- StringValue(data);
76
- if (!gdk_pixbuf_loader_write(_SELF(self),
77
- (const guchar *)RSTRING_PTR(data),
78
- RSTRING_LEN(data),
79
- &error))
80
- RAISE_GERROR(error);
81
-
82
- return Qtrue;
83
- }
84
-
85
- static VALUE
86
- rg_last_write(VALUE self, VALUE data)
87
- {
88
- GError *error = NULL;
89
-
90
- StringValue(data);
91
- if (!gdk_pixbuf_loader_write(_SELF(self),
92
- (const guchar *)RSTRING_PTR(data),
93
- RSTRING_LEN(data),
94
- &error))
95
- RAISE_GERROR(error);
96
-
97
- if (!gdk_pixbuf_loader_close(_SELF(self), &error))
98
- RAISE_GERROR(error);
99
-
100
- return Qtrue;
101
- }
102
-
103
- #if RBGDK_PIXBUF_CHECK_VERSION(2,2,0)
104
- static VALUE
105
- rg_set_size(VALUE self, VALUE width, VALUE height)
106
- {
107
- gdk_pixbuf_loader_set_size(_SELF(self), NUM2INT(width), NUM2INT(height));
108
- return self;
109
- }
110
- #endif
111
-
112
- static VALUE
113
- rg_close(VALUE self)
114
- {
115
- GError *error = NULL;
116
- gboolean res;
117
-
118
- res = gdk_pixbuf_loader_close(_SELF(self), &error);
119
- if(error)
120
- RAISE_GERROR(error);
121
-
122
- return CBOOL2RVAL(res);
123
- }
124
-
125
- /****************************************************/
126
- /* Creating image */
127
- static VALUE
128
- rg_pixbuf(VALUE self)
129
- {
130
- return GOBJ2RVAL(gdk_pixbuf_loader_get_pixbuf(_SELF(self)));
131
- }
132
-
133
- /* Creating animation */
134
- static VALUE
135
- rg_animation(VALUE self)
136
- {
137
- return GOBJ2RVAL(gdk_pixbuf_loader_get_animation(_SELF(self)));
138
- }
139
-
140
- void
141
- Init_gdk_pixbuf_loader(VALUE mGdk)
142
- {
143
- VALUE RG_TARGET_NAMESPACE;
144
- /* initialize it */
145
- RG_TARGET_NAMESPACE = G_DEF_CLASS(GDK_TYPE_PIXBUF_LOADER, "PixbufLoader", mGdk);
146
-
147
- /*
148
- * File Loading, Image Data in Memory
149
- */
150
- RG_DEF_METHOD(initialize, -1);
151
-
152
- rb_undef_method(RG_TARGET_NAMESPACE, "dup");
153
- #if RBGDK_PIXBUF_CHECK_VERSION(2,2,0)
154
- RG_DEF_METHOD(format, 0);
155
- #endif
156
- RG_DEF_METHOD(write, 1);
157
- RG_DEF_METHOD(last_write, 1);
158
- #if RBGDK_PIXBUF_CHECK_VERSION(2,2,0)
159
- RG_DEF_METHOD(set_size, 2);
160
- #endif
161
- RG_DEF_METHOD(close, 0);
162
- RG_DEF_METHOD(pixbuf, 0);
163
- RG_DEF_METHOD(animation, 0);
164
- }