gdk3 2.2.0 → 2.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +18 -4
  3. data/lib/gdk3/atom.rb +26 -0
  4. data/lib/gdk3/cairo.rb +60 -0
  5. data/lib/gdk3/color.rb +27 -0
  6. data/lib/gdk3/deprecated.rb +14 -16
  7. data/lib/gdk3/event.rb +38 -0
  8. data/lib/gdk3/loader.rb +266 -0
  9. data/lib/gdk3/rectangle.rb +38 -0
  10. data/lib/gdk3/rgba.rb +32 -0
  11. data/lib/gdk3/window-attr.rb +28 -0
  12. data/lib/gdk3/window.rb +21 -0
  13. data/lib/gdk3.rb +61 -2
  14. data/test/run-test.rb +15 -6
  15. data/test/test-gdk-cairo.rb +41 -0
  16. data/test/test-gdk-event-type.rb +25 -0
  17. data/test/test-gdk-event.rb +47 -49
  18. data/test/test-gdk-keyval.rb +21 -0
  19. data/test/test-gdk-pixbuf.rb +49 -0
  20. data/test/test-gdk-rectangle.rb +35 -4
  21. data/test/test-gdk-rgba.rb +6 -1
  22. data/test/test-gdk-window-attr.rb +1 -1
  23. metadata +23 -51
  24. data/ext/gdk3/depend +0 -11
  25. data/ext/gdk3/extconf.rb +0 -130
  26. data/ext/gdk3/gdk3.def +0 -12
  27. data/ext/gdk3/init.c +0 -35
  28. data/ext/gdk3/rbgdk.c +0 -491
  29. data/ext/gdk3/rbgdk3.h +0 -73
  30. data/ext/gdk3/rbgdk3conversions.h +0 -121
  31. data/ext/gdk3/rbgdk3private.h +0 -85
  32. data/ext/gdk3/rbgdkatom.c +0 -122
  33. data/ext/gdk3/rbgdkcairo.c +0 -91
  34. data/ext/gdk3/rbgdkcolor.c +0 -137
  35. data/ext/gdk3/rbgdkconst.c +0 -33
  36. data/ext/gdk3/rbgdkcursor.c +0 -92
  37. data/ext/gdk3/rbgdkdevice.c +0 -253
  38. data/ext/gdk3/rbgdkdevicemanager.c +0 -39
  39. data/ext/gdk3/rbgdkdisplay.c +0 -434
  40. data/ext/gdk3/rbgdkdisplaymanager.c +0 -55
  41. data/ext/gdk3/rbgdkdragcontext.c +0 -191
  42. data/ext/gdk3/rbgdkevent.c +0 -1173
  43. data/ext/gdk3/rbgdkgeometry.c +0 -253
  44. data/ext/gdk3/rbgdkkeymap.c +0 -151
  45. data/ext/gdk3/rbgdkkeyval.c +0 -108
  46. data/ext/gdk3/rbgdkpango.c +0 -197
  47. data/ext/gdk3/rbgdkpangorenderer.c +0 -144
  48. data/ext/gdk3/rbgdkpixbuf.c +0 -176
  49. data/ext/gdk3/rbgdkproperty.c +0 -305
  50. data/ext/gdk3/rbgdkrectangle.c +0 -140
  51. data/ext/gdk3/rbgdkrgb.c +0 -199
  52. data/ext/gdk3/rbgdkrgba.c +0 -142
  53. data/ext/gdk3/rbgdkscreen.c +0 -443
  54. data/ext/gdk3/rbgdkselection.c +0 -146
  55. data/ext/gdk3/rbgdkthreads.c +0 -77
  56. data/ext/gdk3/rbgdktimecoord.c +0 -133
  57. data/ext/gdk3/rbgdkvisual.c +0 -251
  58. data/ext/gdk3/rbgdkwindow.c +0 -1069
  59. data/ext/gdk3/rbgdkwindowattr.c +0 -191
  60. data/ext/gdk3/rbgdkx11.c +0 -102
  61. data/ext/gdk3/rbgdkx11x11window.c +0 -66
  62. data/extconf.rb +0 -49
  63. data/lib/gdk3/base.rb +0 -59
data/lib/gdk3.rb CHANGED
@@ -1,3 +1,62 @@
1
- require 'gdk3/base'
2
- require 'gdk3/deprecated'
1
+ # Copyright (C) 2013-2014 Ruby-GNOME2 Project Team
2
+ #
3
+ # This library is free software; you can redistribute it and/or
4
+ # modify it under the terms of the GNU Lesser General Public
5
+ # License as published by the Free Software Foundation; either
6
+ # version 2.1 of the License, or (at your option) any later version.
7
+ #
8
+ # This library is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
+ # Lesser General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU Lesser General Public
14
+ # License along with this library; if not, write to the Free Software
15
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
3
16
 
17
+ require "gobject-introspection"
18
+ require "cairo-gobject"
19
+ require "atk"
20
+ require "pango"
21
+ require "gdk_pixbuf2"
22
+
23
+ base_dir = Pathname.new(__FILE__).dirname.dirname.expand_path
24
+ vendor_dir = base_dir + "vendor" + "local"
25
+ vendor_bin_dir = vendor_dir + "bin"
26
+ GLib.prepend_dll_path(vendor_bin_dir)
27
+ vendor_girepository_dir = vendor_dir + "lib" + "girepository-1.0"
28
+ GObjectIntrospection.prepend_typelib_path(vendor_girepository_dir)
29
+
30
+ require "gdk3/loader"
31
+
32
+ module Gdk
33
+ LOG_DOMAIN = "Gdk"
34
+ GLib::Log.set_log_domain(LOG_DOMAIN)
35
+
36
+ class Error < StandardError
37
+ end
38
+
39
+ class << self
40
+ def const_missing(name)
41
+ init
42
+ if const_defined?(name)
43
+ const_get(name)
44
+ else
45
+ super
46
+ end
47
+ end
48
+
49
+ def init
50
+ class << self
51
+ remove_method(:init)
52
+ remove_method(:const_missing)
53
+ end
54
+ loader = Loader.new(self)
55
+ loader.load("Gdk")
56
+ end
57
+
58
+ def cairo_available?
59
+ true
60
+ end
61
+ end
62
+ end
data/test/run-test.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  #
3
- # Copyright (C) 2013 Ruby-GNOME2 Project Team
3
+ # Copyright (C) 2013-2014 Ruby-GNOME2 Project Team
4
4
  #
5
5
  # This library is free software; you can redistribute it and/or
6
6
  # modify it under the terms of the GNU Lesser General Public
@@ -21,15 +21,20 @@ ruby_gnome2_base = File.expand_path(ruby_gnome2_base)
21
21
 
22
22
  glib_base = File.join(ruby_gnome2_base, "glib2")
23
23
  atk_base = File.join(ruby_gnome2_base, "atk")
24
+ cairo_gobject_base = File.join(ruby_gnome2_base, "cairo-gobject")
24
25
  pango_base = File.join(ruby_gnome2_base, "pango")
25
26
  gdk_pixbuf_base = File.join(ruby_gnome2_base, "gdk_pixbuf2")
27
+ gobject_introspection_base = File.join(ruby_gnome2_base, "gobject-introspection")
26
28
  gdk3_base = File.join(ruby_gnome2_base, "gdk3")
27
29
 
28
- [[glib_base, "glib2"],
29
- [atk_base, "atk"],
30
- [pango_base, "pango"],
31
- [gdk_pixbuf_base, "gdk_pixbuf2"],
32
- [gdk3_base, "gdk3"]].each do |target, module_name|
30
+ [
31
+ [glib_base, "glib2"],
32
+ [atk_base, "atk"],
33
+ [cairo_gobject_base, "cairo-gobject"],
34
+ [pango_base, "pango"],
35
+ [gdk_pixbuf_base, "gdk_pixbuf2"],
36
+ [gobject_introspection_base, "gobject-introspection"]
37
+ ].each do |target, module_name|
33
38
  if system("which make > /dev/null")
34
39
  `make -C #{target.dump} > /dev/null` or exit(false)
35
40
  end
@@ -37,6 +42,8 @@ gdk3_base = File.join(ruby_gnome2_base, "gdk3")
37
42
  $LOAD_PATH.unshift(File.join(target, "lib"))
38
43
  end
39
44
 
45
+ $LOAD_PATH.unshift(File.join(gdk3_base, "lib"))
46
+
40
47
  $LOAD_PATH.unshift(File.join(glib_base, "test"))
41
48
  require "glib-test-init"
42
49
 
@@ -44,5 +51,7 @@ $LOAD_PATH.unshift(File.join(gdk3_base, "test"))
44
51
  require "gdk-test-utils"
45
52
 
46
53
  require "gdk3"
54
+ Gdk.init
55
+ Gdk.init_check([$0])
47
56
 
48
57
  exit Test::Unit::AutoRunner.run(true)
@@ -0,0 +1,41 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # Copyright (C) 2014 Ruby-GNOME2 Project Team
4
+ #
5
+ # This library is free software; you can redistribute it and/or
6
+ # modify it under the terms of the GNU Lesser General Public
7
+ # License as published by the Free Software Foundation; either
8
+ # version 2.1 of the License, or (at your option) any later version.
9
+ #
10
+ # This library is distributed in the hope that it will be useful,
11
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ # Lesser General Public License for more details.
14
+ #
15
+ # You should have received a copy of the GNU Lesser General Public
16
+ # License along with this library; if not, write to the Free Software
17
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+
19
+ require "stringio"
20
+
21
+ class TestGdkCairo < Test::Unit::TestCase
22
+ def setup
23
+ output = StringIO.new
24
+ surface = Cairo::PDFSurface.new(output, 10, 10)
25
+ @context = Cairo::Context.new(surface)
26
+ end
27
+
28
+ def test_set_source_color
29
+ color = Gdk::Color.new(0xffff, 0x0000, 0xffff)
30
+ @context.source_color = color
31
+ assert_equal(Cairo::Color::RGB.new(1.0, 0.0, 1.0),
32
+ @context.source.color)
33
+ end
34
+
35
+ def test_set_source_rgba
36
+ rgba = Gdk::RGBA.new(0.1, 0.2, 0.3, 0.4)
37
+ @context.source_rgba = rgba
38
+ assert_equal(Cairo::Color::RGB.new(0.1, 0.2, 0.3, 0.4),
39
+ @context.source.color)
40
+ end
41
+ end
@@ -0,0 +1,25 @@
1
+ # Copyright (C) 2014 Ruby-GNOME2 Project Team
2
+ #
3
+ # This library is free software; you can redistribute it and/or
4
+ # modify it under the terms of the GNU Lesser General Public
5
+ # License as published by the Free Software Foundation; either
6
+ # version 2.1 of the License, or (at your option) any later version.
7
+ #
8
+ # This library is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
+ # Lesser General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU Lesser General Public
14
+ # License along with this library; if not, write to the Free Software
15
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
+
17
+ class TestGdkEventType < Test::Unit::TestCase
18
+ def test_2button_press
19
+ assert_equal("2button-press", Gdk::EventType::BUTTON2_PRESS.nick)
20
+ end
21
+
22
+ def test_3button_press
23
+ assert_equal("3button-press", Gdk::EventType::BUTTON3_PRESS.nick)
24
+ end
25
+ end
@@ -30,9 +30,13 @@ class TestGdkEvent < Test::Unit::TestCase
30
30
  module TestAnyMethods
31
31
  def test_window
32
32
  assert_nil(event.window)
33
+ attributes = Gdk::WindowAttr.new(100, 100, :input_only, :temp)
34
+ window = Gdk::Window.new(nil, attributes, 0)
35
+ event.window = window
36
+ assert_equal(window, event.window)
33
37
  end
34
38
 
35
- def test_send_event
39
+ def test_send_event?
36
40
  assert_false(event.send_event?)
37
41
  end
38
42
  end
@@ -50,12 +54,12 @@ class TestGdkEvent < Test::Unit::TestCase
50
54
 
51
55
  def test_delete
52
56
  assert_equal("GDK_DELETE",
53
- Gdk::EventAny.new(:delete).event_type.name)
57
+ Gdk::EventAny.new(:delete).type.name)
54
58
  end
55
59
 
56
60
  def test_destroy
57
61
  assert_equal("GDK_DESTROY",
58
- Gdk::EventAny.new(:destroy).event_type.name)
62
+ Gdk::EventAny.new(:destroy).type.name)
59
63
  end
60
64
  end
61
65
 
@@ -72,12 +76,12 @@ class TestGdkEvent < Test::Unit::TestCase
72
76
 
73
77
  def test_key_press
74
78
  assert_equal("GDK_KEY_PRESS",
75
- Gdk::EventKey.new(:key_press).event_type.name)
79
+ Gdk::EventKey.new(:key_press).type.name)
76
80
  end
77
81
 
78
82
  def test_key_release
79
83
  assert_equal("GDK_KEY_RELEASE",
80
- Gdk::EventKey.new(:key_release).event_type.name)
84
+ Gdk::EventKey.new(:key_release).type.name)
81
85
  end
82
86
 
83
87
  def test_time
@@ -106,22 +110,22 @@ class TestGdkEvent < Test::Unit::TestCase
106
110
 
107
111
  def test_button_press
108
112
  assert_equal("GDK_BUTTON_PRESS",
109
- Gdk::EventButton.new(:button_press).event_type.name)
113
+ Gdk::EventButton.new(:button_press).type.name)
110
114
  end
111
115
 
112
116
  def test_button2_press
113
117
  assert_equal("GDK_2BUTTON_PRESS",
114
- Gdk::EventButton.new(:button2_press).event_type.name)
118
+ Gdk::EventButton.new(:button2_press).type.name)
115
119
  end
116
120
 
117
121
  def test_button3_press
118
122
  assert_equal("GDK_3BUTTON_PRESS",
119
- Gdk::EventButton.new(:button3_press).event_type.name)
123
+ Gdk::EventButton.new(:button3_press).type.name)
120
124
  end
121
125
 
122
126
  def test_button_release
123
127
  assert_equal("GDK_BUTTON_RELEASE",
124
- Gdk::EventButton.new(:button_release).event_type.name)
128
+ Gdk::EventButton.new(:button_release).type.name)
125
129
  end
126
130
 
127
131
  def test_time
@@ -188,28 +192,26 @@ class TestGdkEvent < Test::Unit::TestCase
188
192
 
189
193
  def test_touch_begin
190
194
  assert_equal("GDK_TOUCH_BEGIN",
191
- Gdk::EventTouch.new(:touch_begin).event_type.name)
195
+ Gdk::EventTouch.new(:touch_begin).type.name)
192
196
  end
193
197
 
194
198
  def test_touch_update
195
199
  assert_equal("GDK_TOUCH_UPDATE",
196
- Gdk::EventTouch.new(:touch_update).event_type.name)
200
+ Gdk::EventTouch.new(:touch_update).type.name)
197
201
  end
198
202
 
199
203
  def test_touch_cancel
200
204
  assert_equal("GDK_TOUCH_CANCEL",
201
- Gdk::EventTouch.new(:touch_cancel).event_type.name)
205
+ Gdk::EventTouch.new(:touch_cancel).type.name)
202
206
  end
203
207
 
204
208
  def test_touch_end
205
209
  assert_equal("GDK_TOUCH_END",
206
- Gdk::EventTouch.new(:touch_end).event_type.name)
210
+ Gdk::EventTouch.new(:touch_end).type.name)
207
211
  end
208
212
 
209
213
  def test_emulating_pointer
210
- assert_nothing_raised do
211
- @touch.emulating_pointer
212
- end
214
+ assert_boolean(@touch.emulating_pointer?)
213
215
  end
214
216
 
215
217
  def test_device
@@ -231,7 +233,7 @@ class TestGdkEvent < Test::Unit::TestCase
231
233
  include TestAnyMethods
232
234
 
233
235
  def setup
234
- @scroll = Gdk::EventScroll.new
236
+ @scroll = Gdk::EventScroll.new(:scroll)
235
237
  end
236
238
 
237
239
  def event
@@ -255,7 +257,7 @@ class TestGdkEvent < Test::Unit::TestCase
255
257
  end
256
258
 
257
259
  def test_direction
258
- assert_kind_of(Gdk::EventScroll::Direction, @scroll.direction)
260
+ assert_kind_of(Gdk::ScrollDirection, @scroll.direction)
259
261
  end
260
262
 
261
263
  def test_x_root
@@ -271,7 +273,7 @@ class TestGdkEvent < Test::Unit::TestCase
271
273
  include TestAnyMethods
272
274
 
273
275
  def setup
274
- @motion = Gdk::EventMotion.new
276
+ @motion = Gdk::EventMotion.new(:motion_notify)
275
277
  end
276
278
 
277
279
  def event
@@ -321,7 +323,7 @@ class TestGdkEvent < Test::Unit::TestCase
321
323
  end
322
324
 
323
325
  def test_state
324
- assert_kind_of(Gdk::EventVisibility::State, @visibility.state)
326
+ assert_kind_of(Gdk::VisibilityState, @visibility.state)
325
327
  end
326
328
  end
327
329
 
@@ -338,12 +340,12 @@ class TestGdkEvent < Test::Unit::TestCase
338
340
 
339
341
  def test_enter_notify
340
342
  assert_equal("GDK_ENTER_NOTIFY",
341
- Gdk::EventCrossing.new(:enter_notify).event_type.name)
343
+ Gdk::EventCrossing.new(:enter_notify).type.name)
342
344
  end
343
345
 
344
346
  def test_leave_notify
345
347
  assert_equal("GDK_LEAVE_NOTIFY",
346
- Gdk::EventCrossing.new(:leave_notify).event_type.name)
348
+ Gdk::EventCrossing.new(:leave_notify).type.name)
347
349
  end
348
350
 
349
351
  def test_time
@@ -351,13 +353,11 @@ class TestGdkEvent < Test::Unit::TestCase
351
353
  end
352
354
 
353
355
  def test_x
354
- # TODO: Is Float better?
355
- assert_kind_of(Integer, @crossing.x)
356
+ assert_kind_of(Float, @crossing.x)
356
357
  end
357
358
 
358
359
  def test_y
359
- # TODO: Is Float better?
360
- assert_kind_of(Integer, @crossing.y)
360
+ assert_kind_of(Float, @crossing.y)
361
361
  end
362
362
 
363
363
  def test_x_root
@@ -369,7 +369,7 @@ class TestGdkEvent < Test::Unit::TestCase
369
369
  end
370
370
 
371
371
  def test_mode
372
- assert_kind_of(Gdk::EventCrossing::Mode, @crossing.mode)
372
+ assert_kind_of(Gdk::CrossingMode, @crossing.mode)
373
373
  end
374
374
 
375
375
  def test_detail
@@ -385,7 +385,7 @@ class TestGdkEvent < Test::Unit::TestCase
385
385
  include TestAnyMethods
386
386
 
387
387
  def setup
388
- @focus = Gdk::EventFocus.new
388
+ @focus = Gdk::EventFocus.new(:focus_change)
389
389
  end
390
390
 
391
391
  def event
@@ -401,7 +401,7 @@ class TestGdkEvent < Test::Unit::TestCase
401
401
  include TestAnyMethods
402
402
 
403
403
  def setup
404
- @configure = Gdk::EventConfigure.new
404
+ @configure = Gdk::EventConfigure.new(:configure)
405
405
  end
406
406
 
407
407
  def event
@@ -429,7 +429,7 @@ class TestGdkEvent < Test::Unit::TestCase
429
429
  include TestAnyMethods
430
430
 
431
431
  def setup
432
- @property = Gdk::EventProperty.new
432
+ @property = Gdk::EventProperty.new(:property_notify)
433
433
  end
434
434
 
435
435
  def event
@@ -447,7 +447,7 @@ class TestGdkEvent < Test::Unit::TestCase
447
447
  end
448
448
 
449
449
  def test_state
450
- assert_equal(Gdk::EventProperty::State::NEW_VALUE, @property.state)
450
+ assert_equal(Gdk::PropertyState::NEW_VALUE, @property.state)
451
451
  end
452
452
  end
453
453
 
@@ -464,17 +464,17 @@ class TestGdkEvent < Test::Unit::TestCase
464
464
 
465
465
  def test_selection_clear
466
466
  assert_equal("GDK_SELECTION_CLEAR",
467
- Gdk::EventSelection.new(:selection_clear).event_type.name)
467
+ Gdk::EventSelection.new(:selection_clear).type.name)
468
468
  end
469
469
 
470
470
  def test_selection_notify
471
471
  assert_equal("GDK_SELECTION_NOTIFY",
472
- Gdk::EventSelection.new(:selection_notify).event_type.name)
472
+ Gdk::EventSelection.new(:selection_notify).type.name)
473
473
  end
474
474
 
475
475
  def test_selection_request
476
476
  assert_equal("GDK_SELECTION_REQUEST",
477
- Gdk::EventSelection.new(:selection_request).event_type.name)
477
+ Gdk::EventSelection.new(:selection_request).type.name)
478
478
  end
479
479
 
480
480
  def test_selection
@@ -513,32 +513,32 @@ class TestGdkEvent < Test::Unit::TestCase
513
513
 
514
514
  def test_drag_enter
515
515
  assert_equal("GDK_DRAG_ENTER",
516
- Gdk::EventDND.new(:drag_enter).event_type.name)
516
+ Gdk::EventDND.new(:drag_enter).type.name)
517
517
  end
518
518
 
519
519
  def test_drag_leave
520
520
  assert_equal("GDK_DRAG_LEAVE",
521
- Gdk::EventDND.new(:drag_leave).event_type.name)
521
+ Gdk::EventDND.new(:drag_leave).type.name)
522
522
  end
523
523
 
524
524
  def test_drag_motion
525
525
  assert_equal("GDK_DRAG_MOTION",
526
- Gdk::EventDND.new(:drag_motion).event_type.name)
526
+ Gdk::EventDND.new(:drag_motion).type.name)
527
527
  end
528
528
 
529
529
  def test_drag_status
530
530
  assert_equal("GDK_DRAG_STATUS",
531
- Gdk::EventDND.new(:drag_status).event_type.name)
531
+ Gdk::EventDND.new(:drag_status).type.name)
532
532
  end
533
533
 
534
534
  def test_drop_start
535
535
  assert_equal("GDK_DROP_START",
536
- Gdk::EventDND.new(:drop_start).event_type.name)
536
+ Gdk::EventDND.new(:drop_start).type.name)
537
537
  end
538
538
 
539
539
  def test_drop_finished
540
540
  assert_equal("GDK_DROP_FINISHED",
541
- Gdk::EventDND.new(:drop_finished).event_type.name)
541
+ Gdk::EventDND.new(:drop_finished).type.name)
542
542
  end
543
543
 
544
544
  def test_context
@@ -573,12 +573,12 @@ class TestGdkEvent < Test::Unit::TestCase
573
573
 
574
574
  def test_proximity_in
575
575
  assert_equal("GDK_PROXIMITY_IN",
576
- Gdk::EventProximity.new(:proximity_in).event_type.name)
576
+ Gdk::EventProximity.new(:proximity_in).type.name)
577
577
  end
578
578
 
579
579
  def test_proximity_out
580
580
  assert_equal("GDK_PROXIMITY_OUT",
581
- Gdk::EventProximity.new(:proximity_out).event_type.name)
581
+ Gdk::EventProximity.new(:proximity_out).type.name)
582
582
  end
583
583
 
584
584
  def test_time
@@ -596,7 +596,7 @@ class TestGdkEvent < Test::Unit::TestCase
596
596
  include TestAnyMethods
597
597
 
598
598
  def setup
599
- @window_state = Gdk::EventWindowState.new
599
+ @window_state = Gdk::EventWindowState.new(:window_state)
600
600
  end
601
601
 
602
602
  def event
@@ -620,7 +620,7 @@ class TestGdkEvent < Test::Unit::TestCase
620
620
  include TestAnyMethods
621
621
 
622
622
  def setup
623
- @setting = Gdk::EventSetting.new
623
+ @setting = Gdk::EventSetting.new(:setting)
624
624
  end
625
625
 
626
626
  def event
@@ -642,7 +642,7 @@ class TestGdkEvent < Test::Unit::TestCase
642
642
 
643
643
  class TestOwnerChange < self
644
644
  def setup
645
- @owner_change = Gdk::EventOwnerChange.new
645
+ @owner_change = Gdk::EventOwnerChange.new(:owner_change)
646
646
  end
647
647
 
648
648
  def event
@@ -680,7 +680,7 @@ class TestGdkEvent < Test::Unit::TestCase
680
680
  include TestAnyMethods
681
681
 
682
682
  def setup
683
- @grab_broken = Gdk::EventGrabBroken.new
683
+ @grab_broken = Gdk::EventGrabBroken.new(:grab_broken)
684
684
  end
685
685
 
686
686
  def event
@@ -696,9 +696,7 @@ class TestGdkEvent < Test::Unit::TestCase
696
696
  end
697
697
 
698
698
  def test_grab_window
699
- assert_nothing_raised do
700
- @grab_broken.grab_window
701
- end
699
+ assert_nil(@grab_broken.grab_window)
702
700
  end
703
701
  end
704
702
  end
@@ -0,0 +1,21 @@
1
+ # Copyright (C) 2014 Ruby-GNOME2 Project Team
2
+ #
3
+ # This library is free software; you can redistribute it and/or
4
+ # modify it under the terms of the GNU Lesser General Public
5
+ # License as published by the Free Software Foundation; either
6
+ # version 2.1 of the License, or (at your option) any later version.
7
+ #
8
+ # This library is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
+ # Lesser General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU Lesser General Public
14
+ # License along with this library; if not, write to the Free Software
15
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
+
17
+ class TestGdkKeyval < Test::Unit::TestCase
18
+ def test_consntant_name
19
+ assert_equal("a".unpack("c")[0], Gdk::Keyval::KEY_a)
20
+ end
21
+ end
@@ -0,0 +1,49 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # Copyright (C) 2014 Ruby-GNOME2 Project Team
4
+ #
5
+ # This library is free software; you can redistribute it and/or
6
+ # modify it under the terms of the GNU Lesser General Public
7
+ # License as published by the Free Software Foundation; either
8
+ # version 2.1 of the License, or (at your option) any later version.
9
+ #
10
+ # This library is distributed in the hope that it will be useful,
11
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ # Lesser General Public License for more details.
14
+ #
15
+ # You should have received a copy of the GNU Lesser General Public
16
+ # License along with this library; if not, write to the Free Software
17
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+
19
+ class TestGdkPixbuf < Test::Unit::TestCase
20
+ def test_window
21
+ gdk_window = Gdk.default_root_window
22
+ src_x = 0
23
+ src_y = 0
24
+ width = 290
25
+ height = 200
26
+
27
+ pixbuf = gdk_window.to_pixbuf(src_x,
28
+ src_y,
29
+ width,
30
+ height)
31
+ assert_equal([width, height],
32
+ [pixbuf.width, pixbuf.height])
33
+ end
34
+
35
+ def test_surface
36
+ surface = Cairo::ImageSurface.new(:argb32, 290, 200)
37
+ src_x = 0
38
+ src_y = 0
39
+ width = 290
40
+ height = 200
41
+
42
+ pixbuf = surface.to_pixbuf(src_x,
43
+ src_y,
44
+ width,
45
+ height)
46
+ assert_equal([width, height],
47
+ [pixbuf.width, pixbuf.height])
48
+ end
49
+ end
@@ -1,6 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
- # Copyright (C) 2013 Ruby-GNOME2 Project Team
3
+ # Copyright (C) 2013-2014 Ruby-GNOME2 Project Team
4
4
  #
5
5
  # This library is free software; you can redistribute it and/or
6
6
  # modify it under the terms of the GNU Lesser General Public
@@ -17,8 +17,39 @@
17
17
  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
18
 
19
19
  class TestGdkRectangle < Test::Unit::TestCase
20
- def test_width
21
- rectangle = Gdk::Rectangle.new(0, 10, 20, 30)
22
- assert_equal(20, rectangle.width)
20
+ def test_intersect
21
+ rectangle1 = Gdk::Rectangle.new(0, 10, 20, 30)
22
+ rectangle2 = Gdk::Rectangle.new(5, 15, 10, 20)
23
+ intersected = rectangle1.intersect(rectangle2)
24
+ assert_equal([
25
+ 5,
26
+ 15,
27
+ 10,
28
+ 20,
29
+ ],
30
+ [
31
+ intersected.x,
32
+ intersected.y,
33
+ intersected.width,
34
+ intersected.height,
35
+ ])
36
+ end
37
+
38
+ def test_union
39
+ rectangle1 = Gdk::Rectangle.new(0, 10, 20, 30)
40
+ rectangle2 = Gdk::Rectangle.new(5, 15, 40, 20)
41
+ unioned_rectangle = rectangle1.union(rectangle2)
42
+ assert_equal([
43
+ 0,
44
+ 10,
45
+ 45,
46
+ 30,
47
+ ],
48
+ [
49
+ unioned_rectangle.x,
50
+ unioned_rectangle.y,
51
+ unioned_rectangle.width,
52
+ unioned_rectangle.height,
53
+ ])
23
54
  end
24
55
  end
@@ -1,6 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
- # Copyright (C) 2013 Ruby-GNOME2 Project Team
3
+ # Copyright (C) 2013-2014 Ruby-GNOME2 Project Team
4
4
  #
5
5
  # This library is free software; you can redistribute it and/or
6
6
  # modify it under the terms of the GNU Lesser General Public
@@ -21,4 +21,9 @@ class TestGdkRGBA < Test::Unit::TestCase
21
21
  rgba = Gdk::RGBA.new(0.2, 0.4, 0.6, 0.5)
22
22
  assert_equal("rgba(51,102,153,0.5)", rgba.to_s)
23
23
  end
24
+
25
+ def test_to_a
26
+ rgba = Gdk::RGBA.new(0.2, 0.4, 0.6, 0.5)
27
+ assert_equal([0.2, 0.4, 0.6, 0.5], rgba.to_a)
28
+ end
24
29
  end
@@ -24,7 +24,7 @@ class TestGdkWindowAttr < Test::Unit::TestCase
24
24
  assert_equal([
25
25
  100,
26
26
  100,
27
- Gdk::Window::WindowClass::INPUT_ONLY,
27
+ Gdk::Window::Class::INPUT_ONLY,
28
28
  Gdk::Window::Type::TEMP,
29
29
  ],
30
30
  [attrs.width, attrs.height, attrs.wclass, attrs.window_type])