gir_ffi-gtk 0.4.0 → 0.4.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.
- data/Changelog.md +6 -0
- data/README.md +2 -2
- data/examples/06_treeview.rb +49 -0
- data/lib/gir_ffi-gtk/base.rb +2 -0
- data/lib/gir_ffi-gtk/menu.rb +13 -0
- data/test/gir_ffi-gtk/menu_test.rb +18 -0
- metadata +8 -4
data/Changelog.md
CHANGED
data/README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
GirFFI-based bindings for Gtk+. Supports both Gtk+ 2 and Gtk+ 3.
|
4
4
|
|
5
|
-
##
|
5
|
+
## Usage
|
6
6
|
|
7
7
|
Gtk2:
|
8
8
|
|
@@ -30,7 +30,7 @@ See the `examples/` directory for more examples.
|
|
30
30
|
|
31
31
|
## License
|
32
32
|
|
33
|
-
Copyright
|
33
|
+
Copyright © 2012 [Matijs van Zuijlen](http://www.matijs.net)
|
34
34
|
|
35
35
|
GirFFI-Gtk is free software, distributed under the terms of the GNU Lesser
|
36
36
|
General Public License, version 2.1 or later. See the file COPYING.LIB for
|
@@ -0,0 +1,49 @@
|
|
1
|
+
$LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..', 'lib')
|
2
|
+
require 'gir_ffi-gtk3'
|
3
|
+
|
4
|
+
Gtk.init
|
5
|
+
|
6
|
+
|
7
|
+
#Add window.
|
8
|
+
win = Gtk::Window.new(:toplevel)
|
9
|
+
win.resize(640, 480)
|
10
|
+
GObject.signal_connect(win, "destroy"){ Gtk.main_quit }
|
11
|
+
|
12
|
+
|
13
|
+
#Add treeview.
|
14
|
+
tv = Gtk::TreeView.new
|
15
|
+
|
16
|
+
|
17
|
+
#Add store.
|
18
|
+
ls = Gtk::ListStore.new([GObject::TYPE_STRING])
|
19
|
+
tv.set_model(ls)
|
20
|
+
|
21
|
+
|
22
|
+
#Add column.
|
23
|
+
lab = Gtk::Label.new("Name")
|
24
|
+
rend = Gtk::CellRendererText.new
|
25
|
+
|
26
|
+
col = Gtk::TreeViewColumn.new
|
27
|
+
col.set_widget(lab)
|
28
|
+
col.pack_start(rend, true)
|
29
|
+
col.add_attribute(rend, "text", 0)
|
30
|
+
|
31
|
+
lab.show
|
32
|
+
|
33
|
+
tv.append_column(col)
|
34
|
+
|
35
|
+
|
36
|
+
#Add rows.
|
37
|
+
iter = ls.append
|
38
|
+
ls.set_value(iter, 0, "Kasper")
|
39
|
+
|
40
|
+
iter = ls.append
|
41
|
+
ls.set_value(iter, 0, "Christina")
|
42
|
+
|
43
|
+
|
44
|
+
win.add tv
|
45
|
+
tv.show
|
46
|
+
|
47
|
+
win.show
|
48
|
+
|
49
|
+
Gtk.main
|
data/lib/gir_ffi-gtk/base.rb
CHANGED
@@ -0,0 +1,13 @@
|
|
1
|
+
module Gtk
|
2
|
+
load_class :Menu
|
3
|
+
|
4
|
+
# Overrides for GtkMenu
|
5
|
+
class Menu
|
6
|
+
def popup(parent_menu_shell, parent_menu_item, func, data, button, activate_time)
|
7
|
+
popup_for_device(nil,
|
8
|
+
parent_menu_shell, parent_menu_item, func, data,
|
9
|
+
nil,
|
10
|
+
button, activate_time)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require File.expand_path('../test_helper.rb', File.dirname(__FILE__))
|
2
|
+
|
3
|
+
require 'gir_ffi-gtk3'
|
4
|
+
|
5
|
+
describe Gtk::Menu do
|
6
|
+
describe "#popup" do
|
7
|
+
it "delegates to popup_for_device" do
|
8
|
+
mnu = Gtk::Menu.new
|
9
|
+
mock(mnu).popup_for_device(nil,
|
10
|
+
'parent_menu_shell', 'parent_menu_item',
|
11
|
+
'func', 'data',
|
12
|
+
nil,
|
13
|
+
'button', 'activate_time')
|
14
|
+
mnu.popup('parent_menu_shell', 'parent_menu_item', 'func', 'data',
|
15
|
+
'button', 'activate_time')
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gir_ffi-gtk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-09-22 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: gir_ffi
|
@@ -18,7 +18,7 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.4.
|
21
|
+
version: 0.4.2
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -26,7 +26,7 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.4.
|
29
|
+
version: 0.4.2
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: minitest
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -83,10 +83,12 @@ extensions: []
|
|
83
83
|
extra_rdoc_files: []
|
84
84
|
files:
|
85
85
|
- lib/gir_ffi-gtk2.rb
|
86
|
+
- lib/gir_ffi-gtk/menu.rb
|
86
87
|
- lib/gir_ffi-gtk/base.rb
|
87
88
|
- lib/gir_ffi-gtk3.rb
|
88
89
|
- test/test_helper.rb
|
89
90
|
- test/gir_ffi-gtk/base_test.rb
|
91
|
+
- test/gir_ffi-gtk/menu_test.rb
|
90
92
|
- test/gir_ffi-gtk/generated_gtk_test.rb
|
91
93
|
- tasks/setup.rb
|
92
94
|
- tasks/test.rake
|
@@ -94,6 +96,7 @@ files:
|
|
94
96
|
- examples/01_empty_window.rb
|
95
97
|
- examples/03_upgraded_hello_world.rb
|
96
98
|
- examples/02_hello_world.rb
|
99
|
+
- examples/06_treeview.rb
|
97
100
|
- examples/05_notification.rb
|
98
101
|
- Changelog.md
|
99
102
|
- README.md
|
@@ -126,5 +129,6 @@ summary: GirFFI-based Ruby bindings for Gtk+ 2 and 3
|
|
126
129
|
test_files:
|
127
130
|
- test/gir_ffi-gtk/base_test.rb
|
128
131
|
- test/gir_ffi-gtk/generated_gtk_test.rb
|
132
|
+
- test/gir_ffi-gtk/menu_test.rb
|
129
133
|
- test/test_helper.rb
|
130
134
|
has_rdoc:
|