gir_ffi-gtk 0.13.1 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Changelog.md +26 -1
- data/lib/gir_ffi-gtk/base.rb +3 -3
- data/lib/gir_ffi-gtk/dialog.rb +31 -0
- data/lib/gir_ffi-gtk/file_chooser_dialog.rb +35 -0
- data/lib/gir_ffi-gtk/gtk2/menu.rb +26 -0
- 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-gtk/widget.rb +25 -0
- data/lib/gir_ffi-gtk2.rb +22 -18
- data/lib/gir_ffi-gtk3.rb +18 -15
- metadata +98 -69
- data/Rakefile +0 -8
- 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/lib/gir_ffi-gtk/menu.rb +0 -19
- data/tasks/test.rake +0 -30
- data/test/callback_exceptions_test.rb +0 -58
- data/test/gir_ffi-gtk/action_test.rb +0 -17
- data/test/gir_ffi-gtk/base_test.rb +0 -47
- data/test/gir_ffi-gtk/builder_test.rb +0 -70
- data/test/gir_ffi-gtk/button_test.rb +0 -19
- data/test/gir_ffi-gtk/container_test.rb +0 -33
- data/test/gir_ffi-gtk/generated_gtk_test.rb +0 -58
- data/test/gir_ffi-gtk/image_test.rb +0 -43
- data/test/gir_ffi-gtk/list_store_test.rb +0 -38
- data/test/gir_ffi-gtk/menu_test.rb +0 -20
- data/test/gir_ffi-gtk/message_dialog_test.rb +0 -15
- data/test/gir_ffi-gtk/radio_action_test.rb +0 -28
- data/test/gir_ffi-gtk/radio_button_test.rb +0 -37
- data/test/gir_ffi-gtk/target_entry_test.rb +0 -19
- data/test/gir_ffi-gtk/tree_path_test.rb +0 -17
- data/test/gir_ffi-gtk/tree_store_test.rb +0 -38
- data/test/gir_ffi-gtk/tree_view_column_test.rb +0 -51
- data/test/test_helper.rb +0 -36
@@ -1,20 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::Menu do
|
4
|
-
describe '#popup' do
|
5
|
-
it 'delegates to popup_for_device' do
|
6
|
-
default_method = GObjectIntrospection::IRepository.default.
|
7
|
-
find_by_name('Gtk', 'Menu').
|
8
|
-
find_method('popup')
|
9
|
-
skip 'No overrided needed for Gtk::Menu#popup' if default_method
|
10
|
-
mnu = Gtk::Menu.new
|
11
|
-
mock(mnu).popup_for_device(nil,
|
12
|
-
'parent_menu_shell', 'parent_menu_item',
|
13
|
-
'func', 'data',
|
14
|
-
nil,
|
15
|
-
'button', 'activate_time')
|
16
|
-
mnu.popup('parent_menu_shell', 'parent_menu_item', 'func', 'data',
|
17
|
-
'button', 'activate_time')
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
@@ -1,15 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::MessageDialog do
|
4
|
-
describe '.new' do
|
5
|
-
it 'creates a Gtk::MessageDialog with the right text' do
|
6
|
-
dialog = Gtk::MessageDialog.new nil, :modal, :info, :close, 'Foo'
|
7
|
-
dialog.text.must_equal 'Foo'
|
8
|
-
end
|
9
|
-
|
10
|
-
it 'handles all % characters in the message as literals' do
|
11
|
-
dialog = Gtk::MessageDialog.new nil, :modal, :info, :close, 'Foo %'
|
12
|
-
dialog.text.must_equal 'Foo %'
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::RadioAction do
|
4
|
-
describe '#get_group' do
|
5
|
-
it 'returns a GLib::SList object' do
|
6
|
-
action = Gtk::RadioAction.new 'name', 'label', 'tooltip', nil, 1
|
7
|
-
grp = action.get_group
|
8
|
-
grp.must_be_instance_of GLib::SList
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
describe '#set_group' do
|
13
|
-
let(:action) { Gtk::RadioAction.new 'name', 'label', 'tooltip', nil, 1 }
|
14
|
-
|
15
|
-
it 'accepts nil' do
|
16
|
-
action.set_group nil
|
17
|
-
pass
|
18
|
-
end
|
19
|
-
|
20
|
-
it 'accepts a GLib::SList object' do
|
21
|
-
grp = action.get_group
|
22
|
-
other_action = Gtk::RadioAction.new('other-name', 'other-label',
|
23
|
-
'other-tooltip', nil, 2)
|
24
|
-
other_action.set_group grp
|
25
|
-
pass
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::RadioButton do
|
4
|
-
describe '.new_from_widget' do
|
5
|
-
it 'works when called with nil' do
|
6
|
-
result = Gtk::RadioButton.new_from_widget(nil)
|
7
|
-
result.must_be_instance_of Gtk::RadioButton
|
8
|
-
end
|
9
|
-
|
10
|
-
it 'works when called with another radio button' do
|
11
|
-
btn = Gtk::RadioButton.new_from_widget nil
|
12
|
-
result = Gtk::RadioButton.new_from_widget btn
|
13
|
-
result.must_be_instance_of Gtk::RadioButton
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
describe '#get_group' do
|
18
|
-
it 'returns a GLib::SList object' do
|
19
|
-
btn = Gtk::RadioButton.new_from_widget nil
|
20
|
-
grp = btn.get_group
|
21
|
-
assert_instance_of GLib::SList, grp
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
describe '.new' do
|
26
|
-
it 'works when called with nil' do
|
27
|
-
result = Gtk::RadioButton.new nil
|
28
|
-
result.must_be_instance_of Gtk::RadioButton
|
29
|
-
end
|
30
|
-
|
31
|
-
it 'works when called with the result of #get_group' do
|
32
|
-
btn = Gtk::RadioButton.new_from_widget nil
|
33
|
-
result = Gtk::RadioButton.new btn.get_group
|
34
|
-
result.must_be_instance_of Gtk::RadioButton
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::TargetEntry do
|
4
|
-
describe '.new' do
|
5
|
-
it 'takes and uses three arguments' do
|
6
|
-
entry = Gtk::TargetEntry.new('foo', 3, 42)
|
7
|
-
entry.target.must_equal 'foo'
|
8
|
-
entry.flags.must_equal 3
|
9
|
-
entry.info.must_equal 42
|
10
|
-
end
|
11
|
-
|
12
|
-
it 'allows symbol values for the second argument' do
|
13
|
-
entry = Gtk::TargetEntry.new('foo', :same_app, 42)
|
14
|
-
entry.target.must_equal 'foo'
|
15
|
-
entry.flags.must_equal 1
|
16
|
-
entry.info.must_equal 42
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::TreePath do
|
4
|
-
describe '#get_indices' do
|
5
|
-
it "returns an enumerable of the TreePath's indices" do
|
6
|
-
tree_path = Gtk::TreePath.new_from_string '1:2:3'
|
7
|
-
tree_path.get_indices.to_a.must_equal [1, 2, 3]
|
8
|
-
end
|
9
|
-
end
|
10
|
-
|
11
|
-
describe '.new_from_indices' do
|
12
|
-
it 'creates a Gtk::TreePath with the right indices' do
|
13
|
-
tree_path = Gtk::TreePath.new_from_indices [1, 2, 3]
|
14
|
-
tree_path.get_indices.to_a.must_equal [1, 2, 3]
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,38 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::TreeStore do
|
4
|
-
describe '.new' do
|
5
|
-
it 'takes an array of column types' do
|
6
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
7
|
-
store.must_be_instance_of Gtk::TreeStore
|
8
|
-
end
|
9
|
-
end
|
10
|
-
|
11
|
-
describe '#insert_with_values' do
|
12
|
-
it 'inserts a row with the given values' do
|
13
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
14
|
-
row = store.insert_with_values(nil, 0, [0, 1], ['foo', 42])
|
15
|
-
store.get_value(row, 0).must_equal 'foo'
|
16
|
-
store.get_value(row, 1).must_equal 42
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
describe '#set' do
|
21
|
-
it 'updates a row with the given values' do
|
22
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
23
|
-
row = store.insert_with_values(nil, 0, [0, 1], ['foo', 42])
|
24
|
-
store.set(row, [1, 0], [3, 'bar'])
|
25
|
-
store.get_value(row, 0).must_equal 'bar'
|
26
|
-
store.get_value(row, 1).must_equal 3
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
describe '#set_value' do
|
31
|
-
it 'allows setting a value to nil' do
|
32
|
-
store = Gtk::TreeStore.new([GObject::TYPE_STRING, GObject::TYPE_INT])
|
33
|
-
row = store.insert_with_values(nil, 0, [0, 1], ['foo', 42])
|
34
|
-
store.set_value(row, 0, nil)
|
35
|
-
store.get_value(row, 0).must_be_nil
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
@@ -1,51 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
describe Gtk::TreeViewColumn do
|
4
|
-
describe '.new_with_attributes' do
|
5
|
-
let(:renderer) { Gtk::CellRendererText.new }
|
6
|
-
let(:column) do
|
7
|
-
Gtk::TreeViewColumn.new_with_attributes('foo-title',
|
8
|
-
renderer,
|
9
|
-
text: 1)
|
10
|
-
end
|
11
|
-
let(:list_store) { Gtk::ListStore.new([GObject::TYPE_INT, GObject::TYPE_STRING]) }
|
12
|
-
|
13
|
-
it "sets the column's title" do
|
14
|
-
column.title.must_equal 'foo-title'
|
15
|
-
end
|
16
|
-
|
17
|
-
it 'packs the renderer into the column' do
|
18
|
-
column.get_cells.to_a.must_equal [renderer]
|
19
|
-
end
|
20
|
-
|
21
|
-
it 'adds the attribute mapping for the renderer' do
|
22
|
-
row = list_store.append
|
23
|
-
list_store.set_value(row, 1, 'foo-value')
|
24
|
-
column.cell_set_cell_data(list_store, row, false, false)
|
25
|
-
renderer.text.must_equal 'foo-value'
|
26
|
-
end
|
27
|
-
|
28
|
-
it 'allows not specifying any attributes' do
|
29
|
-
col = Gtk::TreeViewColumn.new_with_attributes('foo-title', renderer)
|
30
|
-
col.must_be_instance_of Gtk::TreeViewColumn
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
describe '#set_attributes' do
|
35
|
-
let(:renderer) { Gtk::CellRendererText.new }
|
36
|
-
let(:column) { Gtk::TreeViewColumn.new }
|
37
|
-
let(:list_store) { Gtk::ListStore.new([GObject::TYPE_INT, GObject::TYPE_STRING]) }
|
38
|
-
|
39
|
-
before do
|
40
|
-
column.pack_start(renderer, false)
|
41
|
-
column.set_attributes(renderer, text: 1)
|
42
|
-
end
|
43
|
-
|
44
|
-
it 'adds the attribute mapping for the renderer' do
|
45
|
-
row = list_store.append
|
46
|
-
list_store.set_value(row, 1, 'foo-value')
|
47
|
-
column.cell_set_cell_data(list_store, row, false, false)
|
48
|
-
renderer.text.must_equal 'foo-value'
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
data/test/test_helper.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
require 'rubygems' if RUBY_PLATFORM == 'java'
|
2
|
-
|
3
|
-
begin
|
4
|
-
require 'simplecov'
|
5
|
-
SimpleCov.start do
|
6
|
-
add_filter '/test/'
|
7
|
-
end
|
8
|
-
rescue LoadError
|
9
|
-
nil # SimpleCov not available
|
10
|
-
end
|
11
|
-
|
12
|
-
require 'minitest/autorun'
|
13
|
-
require 'rr'
|
14
|
-
|
15
|
-
Thread.abort_on_exception = true
|
16
|
-
|
17
|
-
if ENV['GTK_VERSION'] == '2'
|
18
|
-
require 'gir_ffi-gtk2'
|
19
|
-
else
|
20
|
-
require 'gir_ffi-gtk3'
|
21
|
-
end
|
22
|
-
|
23
|
-
module BaseTestExtensions
|
24
|
-
def assert_nothing_raised
|
25
|
-
yield
|
26
|
-
assert true
|
27
|
-
end
|
28
|
-
|
29
|
-
def ref_count(object)
|
30
|
-
GObject::Object::Struct.new(object.to_ptr)[:ref_count]
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
Minitest::Test.send :include, BaseTestExtensions
|
35
|
-
|
36
|
-
Gtk.init
|