gir_ffi-gtk 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- 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:
|