summaryrefslogtreecommitdiff
path: root/ext/gtk/test5.rb
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-01-16 12:19:09 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-01-16 12:19:09 +0000
commit62e41d3f2e48422bbdf1bb2db83ae60b255b1a1a (patch)
tree4d0edb1c1986e1578b181ebe2441acfee27f1fab /ext/gtk/test5.rb
parent3db12e8b236ac8f88db8eb4690d10e4a3b8dbcd4 (diff)
Initial revision
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/gtk/test5.rb')
-rw-r--r--ext/gtk/test5.rb63
1 files changed, 63 insertions, 0 deletions
diff --git a/ext/gtk/test5.rb b/ext/gtk/test5.rb
new file mode 100644
index 0000000000..714232079b
--- /dev/null
+++ b/ext/gtk/test5.rb
@@ -0,0 +1,63 @@
+require 'gtk'
+
+window = Gtk::Window::new(Gtk::WINDOW_TOPLEVEL)
+window.set_title("buttons")
+window.border_width(0)
+
+box1 = Gtk::VBox::new(FALSE, 0)
+window.add(box1)
+box1.show
+
+table = Gtk::Table::new(3, 3, FALSE)
+table.set_row_spacings(5)
+table.set_col_spacings(5)
+table.border_width(10)
+box1.pack_start(table, TRUE, TRUE, 0)
+table.show
+
+button = []
+0.upto(8) do |i|
+ button.push Gtk::Button::new("button"+(i+1))
+end
+0.upto(8) do |i|
+ button[i].signal_connect("clicked") do |w|
+ if button[i+1].visible?
+ button[i+1].hide
+ else
+ button[i+1].show
+ end
+ end
+ button[i].show
+end
+table.attach(button[0], 0, 1, 0, 1, nil, nil, 0, 0)
+table.attach(button[1], 1, 2, 1, 2, nil, nil, 0, 0)
+table.attach(button[2], 2, 3, 2, 3, nil, nil, 0, 0)
+table.attach(button[3], 0, 1, 2, 3, nil, nil, 0, 0)
+table.attach(button[4], 2, 3, 0, 1, nil, nil, 0, 0)
+table.attach(button[5], 1, 2, 2, 3, nil, nil, 0, 0)
+table.attach(button[6], 1, 2, 0, 1, nil, nil, 0, 0)
+table.attach(button[7], 2, 3, 1, 2, nil, nil, 0, 0)
+table.attach(button[8], 0, 1, 1, 2, nil, nil, 0, 0)
+
+separator = Gtk::HSeparator::new()
+box1.pack_start(separator, FALSE, TRUE, 0)
+separator.show
+
+box2 = Gtk::VBox::new(FALSE, 10)
+box2.border_width(10)
+box1.pack_start(box2, FALSE, TRUE, 0)
+box2.show
+
+close = Gtk::Button::new("close")
+close.signal_connect("clicked") do
+ window.destroy
+ exit
+end
+box2.pack_start(close, TRUE, TRUE, 0)
+close.set_flags(Gtk::CAN_DEFAULT);
+close.grab_default
+close.show
+
+window.show
+
+Gtk::main()