gir_ffi-gtk 0.15.0 → 0.15.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Changelog.md +6 -0
- data/lib/gir_ffi-gtk/base.rb +3 -3
- data/lib/gir_ffi-gtk/file_chooser_dialog.rb +4 -0
- data/lib/gir_ffi-gtk/gtk2/menu.rb +8 -9
- data/lib/gir_ffi-gtk/message_dialog.rb +1 -1
- data/lib/gir_ffi-gtk/tree_path.rb +1 -1
- data/lib/gir_ffi-gtk/version.rb +5 -0
- data/lib/gir_ffi-gtk2.rb +22 -21
- data/lib/gir_ffi-gtk3.rb +18 -17
- metadata +89 -68
- data/Rakefile +0 -10
- data/examples/01_empty_window.rb +0 -12
- data/examples/02_hello_world.rb +0 -27
- data/examples/03_upgraded_hello_world.rb +0 -40
- data/examples/04_webkit.rb +0 -18
- data/examples/05_notification.rb +0 -33
- data/examples/06_treeview.rb +0 -51
- data/examples/07_simple_gtk_application.rb +0 -30
- data/examples/08_webkit_headless.rb +0 -21
- data/examples/09_webkit2_headless.rb +0 -24
- data/examples/10_completion_provider.rb +0 -62
- data/tasks/test.rake +0 -30
- data/test/callback_exceptions_test.rb +0 -56
- data/test/gir_ffi-gtk/action_test.rb +0 -19
- data/test/gir_ffi-gtk/base_test.rb +0 -49
- data/test/gir_ffi-gtk/builder_test.rb +0 -72
- data/test/gir_ffi-gtk/button_test.rb +0 -21
- data/test/gir_ffi-gtk/container_test.rb +0 -35
- data/test/gir_ffi-gtk/dialog_test.rb +0 -15
- data/test/gir_ffi-gtk/file_chooser_dialog_test.rb +0 -20
- data/test/gir_ffi-gtk/generated_gtk_test.rb +0 -60
- data/test/gir_ffi-gtk/image_test.rb +0 -45
- data/test/gir_ffi-gtk/list_store_test.rb +0 -40
- data/test/gir_ffi-gtk/menu_test.rb +0 -12
- data/test/gir_ffi-gtk/message_dialog_test.rb +0 -17
- data/test/gir_ffi-gtk/radio_action_test.rb +0 -30
- data/test/gir_ffi-gtk/radio_button_test.rb +0 -39
- data/test/gir_ffi-gtk/target_entry_test.rb +0 -21
- data/test/gir_ffi-gtk/tree_path_test.rb +0 -19
- data/test/gir_ffi-gtk/tree_store_test.rb +0 -40
- data/test/gir_ffi-gtk/tree_view_column_test.rb +0 -53
- data/test/gir_ffi-gtk/widget_test.rb +0 -105
- data/test/test_helper.rb +0 -38
@@ -1,21 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
describe Gtk::TargetEntry do
|
6
|
-
describe '.new' do
|
7
|
-
it 'takes and uses three arguments' do
|
8
|
-
entry = Gtk::TargetEntry.new('foo', 3, 42)
|
9
|
-
_(entry.target).must_equal 'foo'
|
10
|
-
_(entry.flags).must_equal 3
|
11
|
-
_(entry.info).must_equal 42
|
12
|
-
end
|
13
|
-
|
14
|
-
it 'allows symbol values for the second argument' do
|
15
|
-
entry = Gtk::TargetEntry.new('foo', :same_app, 42)
|
16
|
-
_(entry.target).must_equal 'foo'
|
17
|
-
_(entry.flags).must_equal 1
|
18
|
-
_(entry.info).must_equal 42
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
describe Gtk::TreePath do
|
6
|
-
describe '#get_indices' do
|
7
|
-
it "returns an enumerable of the TreePath's indices" do
|
8
|
-
tree_path = Gtk::TreePath.new_from_string '1:2:3'
|
9
|
-
_(tree_path.get_indices.to_a).must_equal [1, 2, 3]
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
describe '.new_from_indices' do
|
14
|
-
it 'creates a Gtk::TreePath with the right indices' do
|
15
|
-
tree_path = Gtk::TreePath.new_from_indices [1, 2, 3]
|
16
|
-
_(tree_path.get_indices.to_a).must_equal [1, 2, 3]
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,40 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
describe Gtk::TreeStore do
|
6
|
-
describe '.new' do
|
7
|
-
it 'takes an array of column types' do
|
8
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
9
|
-
_(store).must_be_instance_of Gtk::TreeStore
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
describe '#insert_with_values' do
|
14
|
-
it 'inserts a row with the given values' do
|
15
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
16
|
-
row = store.insert_with_values(nil, 0, [0, 1], ['foo', 42])
|
17
|
-
_(store.get_value(row, 0)).must_equal 'foo'
|
18
|
-
_(store.get_value(row, 1)).must_equal 42
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
describe '#set' do
|
23
|
-
it 'updates a row with the given values' do
|
24
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
25
|
-
row = store.insert_with_values(nil, 0, [0, 1], ['foo', 42])
|
26
|
-
store.set(row, [1, 0], [3, 'bar'])
|
27
|
-
_(store.get_value(row, 0)).must_equal 'bar'
|
28
|
-
_(store.get_value(row, 1)).must_equal 3
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
describe '#set_value' do
|
33
|
-
it 'allows setting a value to nil' do
|
34
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
35
|
-
row = store.insert_with_values(nil, 0, [0, 1], ['foo', 42])
|
36
|
-
store.set_value(row, 0, nil)
|
37
|
-
_(store.get_value(row, 0)).must_be_nil
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
@@ -1,53 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
describe Gtk::TreeViewColumn do
|
6
|
-
describe '.new_with_attributes' do
|
7
|
-
let(:renderer) { Gtk::CellRendererText.new }
|
8
|
-
let(:column) do
|
9
|
-
Gtk::TreeViewColumn.new_with_attributes('foo-title',
|
10
|
-
renderer,
|
11
|
-
text: 1)
|
12
|
-
end
|
13
|
-
let(:list_store) { Gtk::ListStore.new([GObject::TYPE_INT, GObject::TYPE_STRING]) }
|
14
|
-
|
15
|
-
it "sets the column's title" do
|
16
|
-
_(column.title).must_equal 'foo-title'
|
17
|
-
end
|
18
|
-
|
19
|
-
it 'packs the renderer into the column' do
|
20
|
-
_(column.get_cells.to_a).must_equal [renderer]
|
21
|
-
end
|
22
|
-
|
23
|
-
it 'adds the attribute mapping for the renderer' do
|
24
|
-
row = list_store.append
|
25
|
-
list_store.set_value(row, 1, 'foo-value')
|
26
|
-
column.cell_set_cell_data(list_store, row, false, false)
|
27
|
-
_(renderer.text).must_equal 'foo-value'
|
28
|
-
end
|
29
|
-
|
30
|
-
it 'allows not specifying any attributes' do
|
31
|
-
col = Gtk::TreeViewColumn.new_with_attributes('foo-title', renderer)
|
32
|
-
_(col).must_be_instance_of Gtk::TreeViewColumn
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
describe '#set_attributes' do
|
37
|
-
let(:renderer) { Gtk::CellRendererText.new }
|
38
|
-
let(:column) { Gtk::TreeViewColumn.new }
|
39
|
-
let(:list_store) { Gtk::ListStore.new([GObject::TYPE_INT, GObject::TYPE_STRING]) }
|
40
|
-
|
41
|
-
before do
|
42
|
-
column.pack_start(renderer, false)
|
43
|
-
column.set_attributes(renderer, text: 1)
|
44
|
-
end
|
45
|
-
|
46
|
-
it 'adds the attribute mapping for the renderer' do
|
47
|
-
row = list_store.append
|
48
|
-
list_store.set_value(row, 1, 'foo-value')
|
49
|
-
column.cell_set_cell_data(list_store, row, false, false)
|
50
|
-
_(renderer.text).must_equal 'foo-value'
|
51
|
-
end
|
52
|
-
end
|
53
|
-
end
|
@@ -1,105 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
describe Gtk::Widget do
|
6
|
-
describe '#add_events' do
|
7
|
-
let(:widget) { Gtk::EventBox.new }
|
8
|
-
let(:expected_native) do
|
9
|
-
Gdk::EventMask.to_int(focus_change_mask: true,
|
10
|
-
button_press_mask: true)
|
11
|
-
end
|
12
|
-
|
13
|
-
before do
|
14
|
-
ev_int = Gdk::EventMask.to_int :focus_change_mask
|
15
|
-
widget.set_events ev_int
|
16
|
-
end
|
17
|
-
|
18
|
-
it 'works when called with a bitmask hash' do
|
19
|
-
widget.add_events button_press_mask: true
|
20
|
-
ev = widget.get_events
|
21
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
22
|
-
end
|
23
|
-
|
24
|
-
it 'works when called with a symbol' do
|
25
|
-
widget.add_events :button_press_mask
|
26
|
-
ev = widget.get_events
|
27
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
28
|
-
end
|
29
|
-
|
30
|
-
it 'works when called with an int' do
|
31
|
-
ev_int = Gdk::EventMask.to_int :button_press_mask
|
32
|
-
widget.add_events ev_int
|
33
|
-
ev = widget.get_events
|
34
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
describe '#get_events' do
|
39
|
-
let(:widget) { Gtk::EventBox.new }
|
40
|
-
|
41
|
-
it 'returns a bitmap hash' do
|
42
|
-
widget.set_events focus_change_mask: true
|
43
|
-
ev = widget.get_events
|
44
|
-
_(ev).must_equal focus_change_mask: true
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
describe '#set_events' do
|
49
|
-
let(:widget) { Gtk::EventBox.new }
|
50
|
-
let(:expected_native) { Gdk::EventMask.to_int(focus_change_mask: true) }
|
51
|
-
|
52
|
-
it 'works when called with a bitmask hash' do
|
53
|
-
widget.set_events focus_change_mask: true
|
54
|
-
ev = widget.get_events
|
55
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
56
|
-
end
|
57
|
-
|
58
|
-
it 'works when called with a symbol' do
|
59
|
-
widget.set_events :focus_change_mask
|
60
|
-
ev = widget.get_events
|
61
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
62
|
-
end
|
63
|
-
|
64
|
-
it 'works when called with an int' do
|
65
|
-
ev_int = Gdk::EventMask.to_int :focus_change_mask
|
66
|
-
widget.set_events ev_int
|
67
|
-
ev = widget.get_events
|
68
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
69
|
-
end
|
70
|
-
end
|
71
|
-
|
72
|
-
describe '#events' do
|
73
|
-
let(:widget) { Gtk::EventBox.new }
|
74
|
-
|
75
|
-
it 'returns a bitmap hash' do
|
76
|
-
widget.set_events focus_change_mask: true
|
77
|
-
ev = widget.events
|
78
|
-
_(ev).must_equal focus_change_mask: true
|
79
|
-
end
|
80
|
-
end
|
81
|
-
|
82
|
-
describe '#events=' do
|
83
|
-
let(:widget) { Gtk::EventBox.new }
|
84
|
-
let(:expected_native) { Gdk::EventMask.to_int(focus_change_mask: true) }
|
85
|
-
|
86
|
-
it 'works when called with a bitmask hash' do
|
87
|
-
widget.events = { focus_change_mask: true }
|
88
|
-
ev = widget.get_events
|
89
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
90
|
-
end
|
91
|
-
|
92
|
-
it 'works when called with a symbol' do
|
93
|
-
widget.events = :focus_change_mask
|
94
|
-
ev = widget.get_events
|
95
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
96
|
-
end
|
97
|
-
|
98
|
-
it 'works when called with an int' do
|
99
|
-
ev_int = Gdk::EventMask.to_int :focus_change_mask
|
100
|
-
widget.events = ev_int
|
101
|
-
ev = widget.get_events
|
102
|
-
_(Gdk::EventMask.to_int(ev)).must_equal expected_native
|
103
|
-
end
|
104
|
-
end
|
105
|
-
end
|
data/test/test_helper.rb
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'rubygems' if RUBY_PLATFORM == 'java'
|
4
|
-
|
5
|
-
begin
|
6
|
-
require 'simplecov'
|
7
|
-
SimpleCov.start do
|
8
|
-
add_filter '/test/'
|
9
|
-
end
|
10
|
-
rescue LoadError
|
11
|
-
nil # SimpleCov not available
|
12
|
-
end
|
13
|
-
|
14
|
-
require 'minitest/autorun'
|
15
|
-
require 'rr'
|
16
|
-
|
17
|
-
Thread.abort_on_exception = true
|
18
|
-
|
19
|
-
if ENV['GTK_VERSION'] == '2'
|
20
|
-
require 'gir_ffi-gtk2'
|
21
|
-
else
|
22
|
-
require 'gir_ffi-gtk3'
|
23
|
-
end
|
24
|
-
|
25
|
-
module BaseTestExtensions
|
26
|
-
def assert_nothing_raised
|
27
|
-
yield
|
28
|
-
assert true
|
29
|
-
end
|
30
|
-
|
31
|
-
def ref_count(object)
|
32
|
-
GObject::Object::Struct.new(object.to_ptr)[:ref_count]
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
Minitest::Test.send :include, BaseTestExtensions
|
37
|
-
|
38
|
-
Gtk.init
|