diff --git a/gtk3/ext/gtk3/rbgtkactiongroup.c b/gtk3/ext/gtk3/rbgtkactiongroup.c index 49118c3..db71b87 100644 --- a/gtk3/ext/gtk3/rbgtkactiongroup.c +++ b/gtk3/ext/gtk3/rbgtkactiongroup.c @@ -312,6 +312,9 @@ rbg_rval2gtkradioactionentries_body(VALUE value) entry = RARRAY_PTR(args->ary)[i]; n = RARRAY_LEN(entry); + if(n<1 || n>6) + rb_raise(rb_eArgError, "entry does not contain right number of entries %ld (1..6)", n); + switch (n) { case 6: args->result[i].value = NUM2INT(RARRAY_PTR(entry)[5]); @@ -323,10 +326,8 @@ rbg_rval2gtkradioactionentries_body(VALUE value) args->result[i].label = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[2]); case 2: args->result[i].stock_id = RVAL2CSTR_ACCEPT_SYMBOL_ACCEPT_NIL(RARRAY_PTR(entry)[1]); - case 1: - args->result[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]); default: - rb_raise(rb_eArgError, "entry does not contain right number of entries %ld (1..6)", n); + args->result[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]); } } diff --git a/gtk3/sample/misc/aboutdialog.rb b/gtk3/sample/misc/aboutdialog.rb index fce9719..d671350 100644 --- a/gtk3/sample/misc/aboutdialog.rb +++ b/gtk3/sample/misc/aboutdialog.rb @@ -9,21 +9,6 @@ =end require 'gtk3' -if str = Gtk.check_version(2, 6, 0) - puts "This sample requires GTK+ 2.6.0 or later" - puts str - exit -end - -Gtk::AboutDialog.set_email_hook {|about, link| - p "email_hook" - p link -} -Gtk::AboutDialog.set_url_hook {|about, link| - p "url_hook" - p link -} - a = Gtk::AboutDialog.new a.artists = ["Artist 1 ", "Artist 2 "] a.authors = ["Author 1 ", "Author 2 "] @@ -38,5 +23,15 @@ a.version = "1.0.0" a.website = "http://ruby-gnome2.sourceforge.jp" a.website_label = "Ruby-GNOME2 Project Website" +# +# This should substitute set_email_hook and set_url_hook, +# but it gets called only for URLs, not for e-mails. +# + +a.signal_connect('activate-link') do |dialog,url| + p "link hook" + p url +end + p a.run diff --git a/gtk3/sample/misc/aboutdialog2.rb b/gtk3/sample/misc/aboutdialog2.rb index 8c54252..f79290c 100644 --- a/gtk3/sample/misc/aboutdialog2.rb +++ b/gtk3/sample/misc/aboutdialog2.rb @@ -9,20 +9,21 @@ =end require 'gtk3' -if str = Gtk.check_version(2, 6, 0) - puts "This sample requires GTK+ 2.6.0 or later" - puts str - exit -end +# +# These functions are now deprecated: instead of setting hooks, +# signal 'activate-link' should be used instead. This means that +# the 'show' method cannot be used, because it does not return +# the AboutDialog object +# -Gtk::AboutDialog.set_email_hook {|about, link| - p "email_hook" - p link -} -Gtk::AboutDialog.set_url_hook {|about, link| - p "url_hook" - p link -} +#Gtk::AboutDialog.set_email_hook {|about, link| +# p "email_hook" +# p link +#} +#Gtk::AboutDialog.set_url_hook {|about, link| +# p "url_hook" +# p link +#} Gtk::AboutDialog.show(nil, "artists" => ["Artist 1 ", "Artist 2 "], diff --git a/gtk3/sample/misc/alpha-demo.rb b/gtk3/sample/misc/alpha-demo.rb index feb5b34..2667c78 100755 --- a/gtk3/sample/misc/alpha-demo.rb +++ b/gtk3/sample/misc/alpha-demo.rb @@ -31,9 +31,7 @@ class AlphaDemo < Gtk::Window end set_double_buffered(false) - signal_connect('expose-event') do |widget, event| - cr = widget.window.create_cairo_context - + signal_connect('draw') do |widget, cr| rgba = [1.0, 1.0, 1.0] rgba << 0.0 if @supports_alpha cr.set_source_rgba(rgba) @@ -50,10 +48,12 @@ class AlphaDemo < Gtk::Window cr.stroke end signal_connect('screen-changed') do |widget, old_screen| + p [widget.class,old_screen.class] screen_changed(widget, old_screen) end - - screen_changed(self) +p self.screen +p self.screen.class +# screen_changed(self) end def screen_changed(widget,old_screen=nil) diff --git a/gtk3/sample/misc/assistant.rb b/gtk3/sample/misc/assistant.rb index 636a7f9..5e7c990 100755 --- a/gtk3/sample/misc/assistant.rb +++ b/gtk3/sample/misc/assistant.rb @@ -12,12 +12,6 @@ require 'gtk3' -if str = Gtk.check_version(2, 10, 0) - puts "This sample requires GTK+ 2.10.0 or later" - puts str - exit -end - class AssistantRunner def initialize @simple_assistant = nil @@ -60,7 +54,7 @@ class AssistantRunner end def add_completion_test_page(assistant, text, visible, complete) - page = Gtk::VBox.new(0, 0) + page = Gtk::Box.new(:vertical, 0) check = Gtk::CheckButton.new("Complete") page.add(Gtk::Label.new(text)) page.add(check) @@ -83,11 +77,11 @@ class AssistantRunner def prepare_cb(assistant, page) if page.is_a?(Gtk::Label) puts "prepare: #{page.text}" - elsif assistant.get_page_type(page) == Gtk::Assistant::PAGE_PROGRESS + elsif assistant.get_page_type(page) == :progress progress = page.child assistant.set_page_complete(page, false) progress.fraction = 0.0 - Gtk.timeout_add(300) do + GLib::Timeout.add(300) do page = assistant.get_nth_page(assistant.current_page) progress = page.child value = progress.fraction = progress.fraction + 0.1 @@ -226,7 +220,7 @@ class AssistantRunner retval end - page = Gtk::VBox.new(false, 6) + page = Gtk::Box.new(:vertical, 6) button = Gtk::RadioButton.new('branch A') page.pack_start(button, false, false, 0) button.signal_connect('toggled') do @@ -281,7 +275,7 @@ class AssistantRunner prepare_cb(_assistant, page) end - button = Gtk::Button.new(Gtk::Stock::STOP) + button = Gtk::Button.new(:stock_id => Gtk::Stock::STOP) button.show assistant.add_action_widget(button) @@ -290,14 +284,19 @@ class AssistantRunner assistant.append_page(page) assistant.set_page_title(page, "Page 1") assistant.set_page_complete(page, true) - - #- set a side image - pixbuf = page.render_icon(Gtk::Stock::DIALOG_WARNING, :dialog) - assistant.set_page_side_image(page, pixbuf) - - #- set a header image - pixbuf = page.render_icon(Gtk::Stock::DIALOG_INFO, :dialog) - assistant.set_page_header_image(page, pixbuf) + # + # Not working anymore + # + # #- set a side image + # pixbuf = page.render_icon_pixbuf(Gtk::Stock::DIALOG_WARNING, :dialog) + # assistant.set_page_side_image(page, pixbuf) + + # + # Not working anymore + # + # #- set a header image + # pixbuf = page.render_icon_pixbuf(Gtk::Stock::DIALOG_INFO, :dialog) + # assistant.set_page_header_image(page, pixbuf) page = create_test_page("Invisible page") assistant.append_page(page) @@ -309,9 +308,12 @@ class AssistantRunner assistant.set_page_type(page, :confirm) assistant.set_page_complete(page, true) - #- set a header image - pixbuf = page.render_icon(Gtk::Stock::DIALOG_INFO, :dialog) - assistant.set_page_header_image(page, pixbuf) + # + # Not working anymore + # + # #- set a header image + # pixbuf = page.render_icon_pixbuf(Gtk::Stock::DIALOG_INFO, :dialog) + # assistant.set_page_header_image(page, pixbuf) assistant end @@ -329,15 +331,15 @@ if ENV['RTL'] Gtk::Widget.default_direction = Gtk::Widget::TEXT_DIR_RTL end -window = Gtk::Window.new(Gtk::Window::TOPLEVEL) +window = Gtk::Window.new(:toplevel) window.signal_connect('destroy') { Gtk.main_quit } window.signal_connect('delete-event') { false } -box = Gtk::VBox.new(false, 6) +box = Gtk::Box.new(:vertical, 6) window.add(box) buttons.each do |label, callback| - button = Gtk::Button.new(label) + button = Gtk::Button.new(:label => label) button.signal_connect('clicked') do callback.call end diff --git a/gtk3/sample/misc/bindings.rb b/gtk3/sample/misc/bindings.rb index f73ce16..041c7a9 100644 --- a/gtk3/sample/misc/bindings.rb +++ b/gtk3/sample/misc/bindings.rb @@ -31,12 +31,12 @@ class Pager < Gtk::TextView type_register # widget's key binding can be defined like this - binding_set.add_signal(Gdk::Keyval::GDK_space, 0, + binding_set.add_signal(Gdk::Keyval::GDK_KEY_space, 0, "move_cursor", - Gtk::MOVEMENT_PAGES, 1, false) - binding_set.add_signal(Gdk::Keyval::GDK_BackSpace, 0, + Gtk::MovementStep::PAGES, 1, false) + binding_set.add_signal(Gdk::Keyval::GDK_KEY_BackSpace, 0, "move_cursor", - Gtk::MOVEMENT_PAGES, -1, false) + Gtk::MovementStep::PAGES, -1, false) def initialize(path) @path = path @@ -44,7 +44,6 @@ class Pager < Gtk::TextView @buffer = self.buffer load set_editable(false) - set_size_request(400, 400) end def load @@ -60,37 +59,38 @@ path = ARGV[0] || __FILE__ window = Gtk::Window.new window.name = "pager_window" sw = Gtk::ScrolledWindow.new -vbox = Gtk::VBox.new -hbox = Gtk::HBox.new +vbox = Gtk::Box.new(:vertical) +hbox = Gtk::Box.new(:horizontal) pager = Pager.new(path) +pager.set_size_request(4000, 4000) -hbox.add(button1 = Gtk::Button.new("space")) -hbox.add(button2 = Gtk::Button.new("back_space")) -hbox.add(button3 = Gtk::Button.new("cancel j/k")) +hbox.add(button1 = Gtk::Button.new(:label => "space")) +hbox.add(button2 = Gtk::Button.new(:label => "back_space")) +hbox.add(button3 = Gtk::Button.new(:label => "cancel j/k")) button1.signal_connect("clicked") do - Pager.binding_set.activate(Gdk::Keyval::GDK_space, 0, pager) + Pager.binding_set.activate(Gdk::Keyval::GDK_KEY_space, 0, pager) end button2.signal_connect("clicked") do - pager.bindings_activate(Gdk::Keyval::GDK_BackSpace, 0) + pager.bindings_activate(Gdk::Keyval::GDK_KEY_BackSpace, 0) end # Key bindings can be attached to any widget by # Gtk::BindingSet#add_path # see RC Files section of GTK+ documentation for more detail. bset = Gtk::BindingSet.new("j_and_k") -bset.add_signal(Gdk::Keyval::GDK_j, 0, +bset.add_signal(Gdk::Keyval::GDK_KEY_j, 0, "move_cursor", - Gtk::MOVEMENT_DISPLAY_LINES, 1, false) -bset.add_signal(Gdk::Keyval::GDK_k, 0, + Gtk::MovementStep::DISPLAY_LINES, 1, false) +bset.add_signal(Gdk::Keyval::GDK_KEY_k, 0, "move_cursor", - Gtk::MOVEMENT_DISPLAY_LINES, -1, false) + Gtk::MovementStep::DISPLAY_LINES, -1, false) bset.add_path(Gtk::PathType::WIDGET, "pager_window.*.Pager", Gtk::PathPriorityType::APPLICATION) button3.signal_connect("clicked") do - bset.entry_clear(Gdk::Keyval::GDK_j, 0) - bset.entry_clear(Gdk::Keyval::GDK_k, 0) + bset.entry_remove(Gdk::Keyval::GDK_KEY_j, 0) + bset.entry_remove(Gdk::Keyval::GDK_KEY_k, 0) end sw.add(pager) diff --git a/gtk3/sample/misc/button.rb b/gtk3/sample/misc/button.rb index bbd3769..c661d6d 100644 --- a/gtk3/sample/misc/button.rb +++ b/gtk3/sample/misc/button.rb @@ -13,7 +13,7 @@ require 'gtk3' window = Gtk::Window.new("buttons") window.border_width = 0 -box1 = Gtk::VBox.new(false, 0) +box1 = Gtk::Box.new(:vertical, 0) window.add(box1) table = Gtk::Table.new(3, 3, false) @@ -24,7 +24,7 @@ box1.pack_start(table, true, true, 0) button = [] 0.upto(8) do |i| - button.push Gtk::Button.new("button"+(i+1).to_s) + button.push Gtk::Button.new(:label => "button"+(i+1).to_s) end 0.upto(8) do |i| button[i].signal_connect("clicked") do |w| @@ -48,14 +48,14 @@ 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 +separator = Gtk::Separator.new(:vertical) box1.pack_start(separator, false, true, 0) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2, false, true, 0) -close = Gtk::Button.new("close") +close = Gtk::Button.new(:label => "close") close.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/button2.rb b/gtk3/sample/misc/button2.rb index 6417b11..6e1a1bb 100644 --- a/gtk3/sample/misc/button2.rb +++ b/gtk3/sample/misc/button2.rb @@ -12,9 +12,9 @@ require 'gtk3' window = Gtk::Window.new("Gtk::Button sample") -button1 = Gtk::Button.new("_HELLO") -button2 = Gtk::Button.new("_HELLO", false) -button3 = Gtk::Button.new(Gtk::Stock::QUIT) +button1 = Gtk::Button.new(:label => "_HELLO") +button2 = Gtk::Button.new(:mnemonic => "_HELLO") +button3 = Gtk::Button.new(:stock_id => Gtk::Stock::QUIT) button3.signal_connect("clicked"){ Gtk.main_quit } diff --git a/gtk3/sample/misc/buttonbox.rb b/gtk3/sample/misc/buttonbox.rb index d8b265e..058f484 100644 --- a/gtk3/sample/misc/buttonbox.rb +++ b/gtk3/sample/misc/buttonbox.rb @@ -16,17 +16,17 @@ def create_bbox_window(horizontal, title, pos, spacing, layout) window.destroy end - box1 = Gtk::VBox.new(false, 0) + box1 = Gtk::Box.new(:vertical, 0) window.add(box1) if horizontal window.set_default_size(550, 60) window.move(150, pos) - bbox = Gtk::HButtonBox.new + bbox = Gtk::ButtonBox.new(:horizontal) else window.set_default_size(150, 400) window.move(pos, 200) - bbox = Gtk::VButtonBox.new + bbox = Gtk::ButtonBox.new(:vertical) end bbox.layout_style = layout @@ -34,35 +34,35 @@ def create_bbox_window(horizontal, title, pos, spacing, layout) box1.border_width = 25 box1.pack_start(bbox, true, true, 0) - button = Gtk::Button.new("OK") + button = Gtk::Button.new(:label => "OK") bbox.add(button) button.signal_connect("clicked") do window.destroy end - button = Gtk::Button.new("Cancel") + button = Gtk::Button.new(:label => "Cancel") bbox.add(button) button.signal_connect("clicked") do window.destroy end - button = Gtk::Button.new("Help") + button = Gtk::Button.new(:label => "Help") bbox.add(button) window.show_all end def test_hbbox - create_bbox_window(true, "Spread", 50, 40, Gtk::ButtonBox::SPREAD) - create_bbox_window(true, "Edge", 250, 40, Gtk::ButtonBox::EDGE) - create_bbox_window(true, "Start", 450, 40, Gtk::ButtonBox::START) - create_bbox_window(true, "End", 650, 15, Gtk::ButtonBox::END) + create_bbox_window(true, "Spread", 50, 40, :spread) + create_bbox_window(true, "Edge", 250, 40, :edge) + create_bbox_window(true, "Start", 450, 40, :start) + create_bbox_window(true, "End", 650, 15, :end) end def test_vbbox - create_bbox_window(false, "Spread", 50, 40, Gtk::ButtonBox::SPREAD) - create_bbox_window(false, "Edge", 250, 40, Gtk::ButtonBox::EDGE) - create_bbox_window(false, "Start", 450, 40, Gtk::ButtonBox::START) - create_bbox_window(false, "End", 650, 15, Gtk::ButtonBox::END) + create_bbox_window(false, "Spread", 50, 40, :spread) + create_bbox_window(false, "Edge", 250, 40, :edge) + create_bbox_window(false, "Start", 450, 40, :start) + create_bbox_window(false, "End", 650, 15, :end) end window = Gtk::Window.new("button box") @@ -71,10 +71,10 @@ window.signal_connect("delete_event") do end window.border_width = 20 -bbox = Gtk::HButtonBox.new +bbox = Gtk::ButtonBox.new(:horizontal) window.add(bbox) -button = Gtk::Button.new("Horizontal") +button = Gtk::Button.new(:label => "Horizontal") button.signal_connect("clicked") do test_hbbox @@ -82,7 +82,7 @@ end bbox.add(button) -button = Gtk::Button.new("Vertical") +button = Gtk::Button.new(:label => "Vertical") button.signal_connect("clicked") do test_vbbox end diff --git a/gtk3/sample/misc/cairo-pong.rb b/gtk3/sample/misc/cairo-pong.rb index eee9d1c..a6248ed 100755 --- a/gtk3/sample/misc/cairo-pong.rb +++ b/gtk3/sample/misc/cairo-pong.rb @@ -174,7 +174,7 @@ module Pong self.title = 'Pong Demonstration' signal_connect('destroy') { Gtk.main_quit } signal_connect("key_press_event") do |widget, event| - if event.state.control_mask? and event.keyval == Gdk::Keyval::GDK_q + if event.state.control_mask? and event.keyval == Gdk::Keyval::GDK_KEY_q destroy true else @@ -189,13 +189,13 @@ module Pong @drawing_area = Gtk::DrawingArea.new set_draw - vb = Gtk::VBox.new(false, 5) + vb = Gtk::Box.new(:vertical, 5) vb.border_width = 10 vb.pack_start(@drawing_area, true, true, 0) vb.show_all add(vb) - Gtk.timeout_add(@speed) do + GLib::Timeout.add(@speed) do @field.update @drawing_area.queue_draw unless @drawing_area.destroyed? end diff --git a/gtk3/sample/misc/calendar.rb b/gtk3/sample/misc/calendar.rb index 7dbd477..ef7532b 100644 --- a/gtk3/sample/misc/calendar.rb +++ b/gtk3/sample/misc/calendar.rb @@ -22,11 +22,15 @@ cal.select_month(date.month, date.year) cal.select_day(date.day) cal.mark_day(date.day) #cal.clear_marks -cal.display_options(Gtk::Calendar::SHOW_HEADING | - Gtk::Calendar::SHOW_DAY_NAMES | - Gtk::Calendar::NO_MONTH_CHANGE | - Gtk::Calendar::SHOW_WEEK_NUMBERS | - Gtk::Calendar::WEEK_START_MONDAY) + +# +# Gtk::Calendar::DisplayOptions::WEEK_START_MONDAY does not exist anymore +# + +cal.set_display_options(Gtk::Calendar::DisplayOptions::SHOW_HEADING | + Gtk::Calendar::DisplayOptions::SHOW_DAY_NAMES | + Gtk::Calendar::DisplayOptions::NO_MONTH_CHANGE | + Gtk::Calendar::DisplayOptions::SHOW_WEEK_NUMBERS) year, month, day = cal.date puts "this is #{month} #{day}, #{year}" diff --git a/gtk3/sample/misc/checkbutton.rb b/gtk3/sample/misc/checkbutton.rb index c0e264b..a2cd62e 100644 --- a/gtk3/sample/misc/checkbutton.rb +++ b/gtk3/sample/misc/checkbutton.rb @@ -13,10 +13,10 @@ require 'gtk3' window = Gtk::Window.new("check buttons") window.border_width = 0 -box1 = Gtk::VBox.new +box1 = Gtk::Box.new(:vertical) window.add(box1) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2) @@ -27,13 +27,13 @@ box2.add(button1) box2.add(button2) box2.add(button3) -box1.pack_start(Gtk::HSeparator.new) +box1.pack_start(Gtk::Separator.new(:horizontal)) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2) -close = Gtk::Button.new("close") +close = Gtk::Button.new(:label => "close") close.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/combo_check.rb b/gtk3/sample/misc/combo_check.rb index 54134f7..b7bbb2f 100644 --- a/gtk3/sample/misc/combo_check.rb +++ b/gtk3/sample/misc/combo_check.rb @@ -8,15 +8,17 @@ $Id: combo_check.rb,v 1.9 2006/06/17 13:18:12 mutoh Exp $ =end +raise "Combo has been deprecated" + require 'gtk3' window = Gtk::Window.new("entry") window.border_width = 0 -box1 = Gtk::VBox.new +box1 = Gtk::Box.new(:vertical) window.add(box1) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2) @@ -53,11 +55,11 @@ check.state = 0 box1.pack_start(Gtk::HSeparator.new) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2) -button = Gtk::Button.new("close") +button = Gtk::Button.new(:label => "close") button.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/combobox.rb b/gtk3/sample/misc/combobox.rb index e4d146e..28adfef 100644 --- a/gtk3/sample/misc/combobox.rb +++ b/gtk3/sample/misc/combobox.rb @@ -10,19 +10,13 @@ require 'gtk3' -if str = Gtk.check_version(2, 4, 0) - puts "This sample requires GTK+ 2.4.0 or later" - puts str - exit -end - window = Gtk::Window.new("Gtk::ComboBox sample") window.signal_connect("destroy"){Gtk.main_quit} # # Text only # -combo1 = Gtk::ComboBox.new +combo1 = Gtk::ComboBoxText.new ["foo", "bar", "fuga", "hoge"].each do |val| combo1.append_text(val) end @@ -40,11 +34,11 @@ model = Gtk::ListStore.new(Gdk::Pixbuf, String) [Gtk::Stock::CANCEL, "cancel"], [Gtk::Stock::OK, "ok"]].each do |stock, name| iter = model.append - iter[0] = window.render_icon(stock, Gtk::IconSize::MENU, "icon") + iter[0] = window.render_icon_pixbuf(stock, :menu) iter[1] = name end -combo2 = Gtk::ComboBox.new(model) +combo2 = Gtk::ComboBox.new(:model => model) # column 1 renderer = Gtk::CellRendererPixbuf.new @@ -63,23 +57,23 @@ combo2.signal_connect("changed") do end # -# Gtk::ComboBoxEntry +# Gtk::ComboBoxEntry DEPRECATED # -combo3 = Gtk::ComboBoxEntry.new -["foo", "bar", "fuga", "hoge"].each do |val| - combo3.append_text(val) -end -combo3.active = 1 - -combo3.signal_connect("changed") do - if combo3.active_iter - p "combo3: #{combo3.active}, #{combo3.active_iter[0]}" - end -end +# combo3 = Gtk::ComboBoxEntry.new +# ["foo", "bar", "fuga", "hoge"].each do |val| +# combo3.append_text(val) +# end +# combo3.active = 1 + +# combo3.signal_connect("changed") do +# if combo3.active_iter +# p "combo3: #{combo3.active}, #{combo3.active_iter[0]}" +# end +# end # Show main window -vbox = Gtk::VBox.new -vbox.add(combo1).add(combo2).add(combo3) +vbox = Gtk::Box.new(:vertical) +vbox.add(combo1).add(combo2)#.add(combo3) window.add(vbox).show_all Gtk.main diff --git a/gtk3/sample/misc/composited-windows.rb b/gtk3/sample/misc/composited-windows.rb index 1bed8c0..0023c65 100644 --- a/gtk3/sample/misc/composited-windows.rb +++ b/gtk3/sample/misc/composited-windows.rb @@ -8,27 +8,20 @@ require 'gtk3' -if str = Gtk.check_version(2, 12, 0) - puts "This sample requires GTK+ 2.12.0 or later." - puts str - exit -end - unless Gdk.cairo_available? puts "This sample requires Cairo support." exit end - Gtk.init # Make the widgets -button = Gtk::Button.new("A Button") +button = Gtk::Button.new(:label => "A Button") event = Gtk::EventBox.new -window = Gtk::Window.new(Gtk::Window::TOPLEVEL) +window = Gtk::Window.new(:toplevel) # Put a red background on the window -window.modify_bg(Gtk::STATE_NORMAL, Gdk::Color.parse("red")) +window.override_background_color(0,Gdk::RGBA.parse("red")) # Set the colourmap for the event box. Must be done before the event box is realised. event.colormap = event.screen.rgba_colormap diff --git a/gtk3/sample/misc/cursor.rb b/gtk3/sample/misc/cursor.rb index 1cc863d..2341ebc 100644 --- a/gtk3/sample/misc/cursor.rb +++ b/gtk3/sample/misc/cursor.rb @@ -12,10 +12,10 @@ require 'gtk3' window = Gtk::Window.new("Gdk::Cursor sample") window.realize -button = Gtk::Button.new("Click!") +button = Gtk::Button.new(:label => "Click!") button.use_underline = false -cursors = Gdk::Cursor::Type.values - [Gdk::Cursor::CURSOR_IS_PIXMAP] +cursors = Gdk::Cursor::Type.values - [Gdk::Cursor::Type::CURSOR_IS_PIXMAP] cnt = 0 button.signal_connect('clicked') do diff --git a/gtk3/sample/misc/dialog.rb b/gtk3/sample/misc/dialog.rb index 90ad1bc..3252bd8 100644 --- a/gtk3/sample/misc/dialog.rb +++ b/gtk3/sample/misc/dialog.rb @@ -11,27 +11,27 @@ require 'gtk3' window = Gtk::Window.new("Gtk::Dialog sample") -button = Gtk::Button.new("Create Dialog") +button = Gtk::Button.new(:label => "Create Dialog") button.signal_connect("clicked") do dialog = Gtk::Dialog.new dialog.title = "Gtk::Dialog Sample" dialog.transient_for = window dialog.set_default_size(300, 300) - dialog.vbox.add(Gtk::Label.new("Gtk::Dialog Sample")) + dialog.child.add(Gtk::Label.new("Gtk::Dialog Sample")) - dialog.add_button("OK", Gtk::Dialog::RESPONSE_OK) - dialog.add_button(Gtk::Stock::CANCEL, Gtk::Dialog::RESPONSE_CANCEL) - dialog.add_button(Gtk::Stock::CLOSE, Gtk::Dialog::RESPONSE_CLOSE) - dialog.set_default_response(Gtk::Dialog::RESPONSE_CANCEL) + dialog.add_button("OK", Gtk::Dialog::ResponseType::OK) + dialog.add_button(Gtk::Stock::CANCEL, Gtk::Dialog::ResponseType::CANCEL) + dialog.add_button(Gtk::Stock::CLOSE, Gtk::Dialog::ResponseType::CLOSE) + dialog.set_default_response(Gtk::Dialog::ResponseType::CANCEL) dialog.signal_connect("response") do |widget, response| case response - when Gtk::Dialog::RESPONSE_OK + when Gtk::Dialog::ResponseType::OK p "OK" - when Gtk::Dialog::RESPONSE_CANCEL + when Gtk::Dialog::ResponseType::CANCEL p "Cancel" - when Gtk::Dialog::RESPONSE_CLOSE + when Gtk::Dialog::ResponseType::CLOSE p "Close" dialog.destroy end diff --git a/gtk3/sample/misc/dialog2.rb b/gtk3/sample/misc/dialog2.rb index 0d38541..47b86e9 100644 --- a/gtk3/sample/misc/dialog2.rb +++ b/gtk3/sample/misc/dialog2.rb @@ -11,20 +11,25 @@ require 'gtk3' window = Gtk::Window.new("Gtk::Dialog sample2") -button = Gtk::Button.new("Create Dialog") -button.signal_connect("clicked") do - dialog = Gtk::Dialog.new("Gtk::Dialog Sample 2", window, - Gtk::Dialog::MODAL|Gtk::Dialog::NO_SEPARATOR, - [Gtk::Stock::OK, Gtk::Dialog::RESPONSE_OK], - [Gtk::Stock::CANCEL, Gtk::Dialog::RESPONSE_CANCEL]) - dialog.vbox.add(Gtk::Label.new("Gtk::Dialog Sample 2")) +button = Gtk::Button.new(:label => "Create Dialog") +button.signal_connect("clicked") do + + # + # Gtk::Dialog::Flags::NO_SEPARATOR not there anymore + # + + dialog = Gtk::Dialog.new(:title => "Gtk::Dialog Sample 2", :parent => window, + :flags => Gtk::Dialog::Flags::MODAL, + :buttons => [[Gtk::Stock::OK, Gtk::Dialog::ResponseType::OK],[Gtk::Stock::CANCEL, Gtk::Dialog::ResponseType::CANCEL]]) + dialog.child.add(Gtk::Label.new("Gtk::Dialog Sample 2")) dialog.set_default_size(300, 300) - dialog.vbox.show_all + dialog.child.show_all result = dialog.run + case result - when Gtk::Dialog::RESPONSE_OK + when Gtk::Dialog::ResponseType::OK p "OK" - when Gtk::Dialog::RESPONSE_CANCEL + when Gtk::Dialog::ResponseType::CANCEL p "Cancel" end dialog.destroy diff --git a/gtk3/sample/misc/dnd.rb b/gtk3/sample/misc/dnd.rb index 8fbefab..6224b28 100644 --- a/gtk3/sample/misc/dnd.rb +++ b/gtk3/sample/misc/dnd.rb @@ -16,11 +16,11 @@ class SrcWindow < Gtk::Window @label = Gtk::Label.new("Drag here!") add(@label) set_default_size(100, 100) - Gtk::Drag.source_set(self, Gdk::Window::BUTTON1_MASK | - Gdk::Window::BUTTON2_MASK, - [["test", Gtk::Drag::TARGET_SAME_APP, 12345]], - Gdk::DragContext::ACTION_COPY | - Gdk::DragContext::ACTION_MOVE) + drag_source_set(Gdk::Window::ModifierType::BUTTON1_MASK | + Gdk::Window::ModifierType::BUTTON2_MASK, + [["test", Gtk::Drag::TargetFlags::SAME_APP, 12345]], + Gdk::DragContext::Action::COPY | + Gdk::DragContext::Action::MOVE) signal_connect("drag_data_get") do |widget, context, selection_data, info, time| # selection_data.set("text/uri-list", 8, "hoge.txt") selection_data.set(Gdk::Selection::TYPE_STRING, "hoge.txt") @@ -36,10 +36,9 @@ class DestWindow < Gtk::Window @label = Gtk::Label.new("Drop here!") add(@label) set_default_size(100, 100) - Gtk::Drag.dest_set(self, Gtk::Drag::DEST_DEFAULT_MOTION | - Gtk::Drag::DEST_DEFAULT_HIGHLIGHT, - [["test", Gtk::Drag::TARGET_SAME_APP, 12345]], - Gdk::DragContext::ACTION_COPY|Gdk::DragContext::ACTION_MOVE) + drag_dest_set(Gtk::Drag::DestDefaults::MOTION | Gtk::Drag::DestDefaults::HIGHLIGHT, + [["test", :same_app, 12345]], + Gdk::DragContext::Action::COPY|Gdk::DragContext::Action::MOVE) signal_connect("drag-data-received") do |w, dc, x, y, selectiondata, info, time| dc.targets.each do |target| @@ -50,7 +49,7 @@ class DestWindow < Gtk::Window end end signal_connect("drag-drop") do |w, dc, x, y, time| - Gtk::Drag.get_data(w, dc, dc.targets[0], time) + w.drag_get_data(dc, dc.targets[0], time) end end end diff --git a/gtk3/sample/misc/dndtreeview.rb b/gtk3/sample/misc/dndtreeview.rb index 9e2f30a..98878b8 100644 --- a/gtk3/sample/misc/dndtreeview.rb +++ b/gtk3/sample/misc/dndtreeview.rb @@ -40,11 +40,11 @@ class TestWindow < Gtk::Window iter.set_value(1, v2) end - view.enable_model_drag_source(Gdk::Window::BUTTON1_MASK, + view.enable_model_drag_source(Gdk::Window::ModifierType::BUTTON1_MASK, TARGET_TABLE, - Gdk::DragContext::ACTION_COPY|Gdk::DragContext::ACTION_MOVE) + Gdk::DragContext::Action::COPY|Gdk::DragContext::Action::MOVE) view.enable_model_drag_dest(TARGET_TABLE, - Gdk::DragContext::ACTION_COPY|Gdk::DragContext::ACTION_MOVE) + Gdk::DragContext::Action::COPY|Gdk::DragContext::Action::MOVE) add(view) end diff --git a/gtk3/sample/misc/drag-move.rb b/gtk3/sample/misc/drag-move.rb index 4bdbb4f..89afb68 100644 --- a/gtk3/sample/misc/drag-move.rb +++ b/gtk3/sample/misc/drag-move.rb @@ -117,10 +117,11 @@ draggable_widget = DraggableWidget.new draggable_widget.set_size_request(50, 50) layout.put(draggable_widget, 75, 75) -draggable_widget.signal_connect("expose_event") do |widget, event| - x, y, w, h = widget.allocation.to_a - fg = Gdk::GC.new(widget.window) - widget.window.draw_arc(fg, true, x, y, w, h, 0 * 64, 360 * 64) +draggable_widget.signal_connect("draw") do |widget, cr| + w,h=cr.clip_extents()[2,2] + cr.set_source_rgba(0,0,0) + cr.arc(w*0.5,h*0.5,w>h ? h*0.5 : w*0.5,0.0,Math::PI*2.0) + cr.stroke false end diff --git a/gtk3/sample/misc/drawing.rb b/gtk3/sample/misc/drawing.rb index 5bf0de2..b89ad72 100644 --- a/gtk3/sample/misc/drawing.rb +++ b/gtk3/sample/misc/drawing.rb @@ -12,18 +12,19 @@ require 'gtk3' class Canvas < Gtk::DrawingArea def initialize super - signal_connect("expose_event") { |w,e| expose_event(w,e) } + signal_connect("draw") { |w,cr| draw_event(w,cr) } signal_connect("configure_event") { |w, e| configure_event(w,e) } @buffer = nil @bgc = nil end - def expose_event(w,e) - unless @buffer.nil? - rec = e.area - w.window.draw_drawable(@bgc, @buffer, rec.x, rec.y, - rec.x, rec.y, rec.width, rec.height) - end + def draw_event(w,cr) + p w.window +# unless @buffer.nil? +# rec = e.area +# w.window.draw_drawable(@bgc, @buffer, rec.x, rec.y, +# rec.x, rec.y, rec.width, rec.height) +# end false end @@ -38,9 +39,11 @@ class Canvas < Gtk::DrawingArea end def configure_event(w,e) + p [w.class,e.class] g = w.window.geometry if (g[2] > 0 && g[3] > 0) - b = Gdk::Pixmap::new(w.window, g[2], g[3], -1) + b=w.create_similar_surface(g[2], g[3], -1) +# b = Gdk::Pixmap::new(w.window, g[2], g[3], -1) clear(b) if not @buffer.nil? g = @buffer.size @@ -56,7 +59,7 @@ class A < Canvas def initialize super signal_connect("button_press_event") { |w,e| pressed(w,e) } - set_events(Gdk::Event::BUTTON_PRESS_MASK) + set_events(Gdk::Event::Mask::BUTTON_PRESS_MASK) end def pressed(widget, ev) diff --git a/gtk3/sample/misc/entry.rb b/gtk3/sample/misc/entry.rb index af09799..5efc8c2 100644 --- a/gtk3/sample/misc/entry.rb +++ b/gtk3/sample/misc/entry.rb @@ -13,15 +13,15 @@ require 'gtk3' window = Gtk::Window.new("entry") window.border_width = 0 -box1 = Gtk::VBox.new(false, 10) +box1 = Gtk::Box.new(:vertical, 10) window.add(box1) entry = Gtk::Entry.new box1.add(entry) -box1.add(Gtk::HSeparator.new) +box1.add(Gtk::Separator.new(:horizontal)) -button = Gtk::Button.new("close") +button = Gtk::Button.new(:label => "close") button.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/entrycompletion.rb b/gtk3/sample/misc/entrycompletion.rb index 6906d2e..ea62434 100644 --- a/gtk3/sample/misc/entrycompletion.rb +++ b/gtk3/sample/misc/entrycompletion.rb @@ -12,12 +12,6 @@ require 'gtk3' -if str = Gtk.check_version(2, 4, 0) - puts "This sample requires GTK+ 2.4.0 or later" - puts str - exit -end - window = Gtk::Window.new window.set_default_size(200, 200) diff --git a/gtk3/sample/misc/expander.rb b/gtk3/sample/misc/expander.rb index 335ede6..1641ebb 100644 --- a/gtk3/sample/misc/expander.rb +++ b/gtk3/sample/misc/expander.rb @@ -13,7 +13,7 @@ require 'gtk3' expander = Gtk::Expander.new("Expander Sample") expander.expanded = true -button = Gtk::Button.new("Hide this button.") +button = Gtk::Button.new(:label => "Hide this button.") button.signal_connect("clicked") do expander.expanded = false end diff --git a/gtk3/sample/misc/filechooser.rb b/gtk3/sample/misc/filechooser.rb index b5fcd34..ff4449c 100644 --- a/gtk3/sample/misc/filechooser.rb +++ b/gtk3/sample/misc/filechooser.rb @@ -10,20 +10,12 @@ require "gtk3" -if str = Gtk.check_version(2, 4, 0) - puts "This sample requires GTK+ 2.4.0 or later" - puts str - exit -end - -dialog = Gtk::FileChooserDialog.new("Gtk::FileChooser sample", nil, - Gtk::FileChooser::ACTION_OPEN, - "gnome-vfs", - [Gtk::Stock::OPEN, Gtk::Dialog::RESPONSE_ACCEPT], - [Gtk::Stock::CANCEL, Gtk::Dialog::RESPONSE_CANCEL] - ) +dialog = Gtk::FileChooserDialog.new(:title => "Gtk::FileChooser sample", + :action => Gtk::FileChooser::Action::OPEN, + :buttons => [[Gtk::Stock::OPEN, Gtk::Dialog::ResponseType::ACCEPT], + [Gtk::Stock::CANCEL, Gtk::Dialog::ResponseType::CANCEL]]) -extra_button = Gtk::Button.new("Extra button") +extra_button = Gtk::Button.new(:label => "Extra button") extra_button.signal_connect("clicked") do puts "extra button is clicked" end @@ -43,7 +35,7 @@ dialog.add_filter(filter_c) dialog.add_shortcut_folder("/tmp") -if dialog.run == Gtk::Dialog::RESPONSE_ACCEPT +if dialog.run == Gtk::Dialog::ResponseType::ACCEPT puts "filename = #{dialog.filename}" puts "uri = #{dialog.uri}" end diff --git a/gtk3/sample/misc/fileselection.rb b/gtk3/sample/misc/fileselection.rb index 84542fd..f9065b5 100644 --- a/gtk3/sample/misc/fileselection.rb +++ b/gtk3/sample/misc/fileselection.rb @@ -10,7 +10,7 @@ require 'gtk3' -puts "Deprecated. Use Gtk::FileChooserDialog instead." +raise "Deprecated. Use Gtk::FileChooserDialog instead." window = Gtk::FileSelection.new("file selection dialog") window.window_position = Gtk::Window::POS_MOUSE diff --git a/gtk3/sample/misc/frame.rb b/gtk3/sample/misc/frame.rb index c59f5e0..e9b177f 100644 --- a/gtk3/sample/misc/frame.rb +++ b/gtk3/sample/misc/frame.rb @@ -16,10 +16,10 @@ window.signal_connect("destroy") do end window.border_width = 0 -box1 = Gtk::VBox.new(false, 0) +box1 = Gtk::Box.new(:vertical, 0) window.add(box1) -box2 = Gtk::HBox.new(false, 5) +box2 = Gtk::Box.new(:horizontal, 5) box2.border_width = 10 box1.pack_start(box2, true, true, 0) @@ -27,11 +27,11 @@ label = Gtk::Label.new("Hello World") frame = Gtk::Frame.new("Frame 1") box2.pack_start(frame, true, true, 0) -box3 = Gtk::VBox.new(false, 5) +box3 = Gtk::Box.new(:vertical, 5) box3.border_width = 5 frame.add(box3) -button = Gtk::Button.new("switch") +button = Gtk::Button.new(:label => "switch") button.signal_connect("clicked") do label.reparent(box3) end @@ -41,24 +41,24 @@ box3.pack_start(label, false, true, 0) frame = Gtk::Frame.new("Frame 2") box2.pack_start(frame, true, true, 0) -box4 = Gtk::VBox.new(false, 5) +box4 = Gtk::Box.new(:vertical, 5) box4.border_width = 5 frame.add(box4) -button = Gtk::Button.new("switch") +button = Gtk::Button.new(:label => "switch") button.signal_connect("clicked") do label.reparent(box4) end box4.pack_start(button, false, true, 0) -separator = Gtk::HSeparator.new +separator = Gtk::Separator.new(:horizontal) box1.pack_start(separator, false, true, 0) -box2 = Gtk::HBox.new(false, 10) +box2 = Gtk::Box.new(:horizontal, 10) box2.border_width = 10 box1.pack_start(box2, false, true, 0) -button = Gtk::Button.new("close") +button = Gtk::Button.new(:label => "close") button.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/gc.rb b/gtk3/sample/misc/gc.rb index 85bf2e4..f851e19 100644 --- a/gtk3/sample/misc/gc.rb +++ b/gtk3/sample/misc/gc.rb @@ -10,6 +10,8 @@ require 'gtk3' +raise "GC is deprecated" + window = Gtk::Window.new("Gdk::GC sample") window.set_default_size(300, 300) window.app_paintable = true diff --git a/gtk3/sample/misc/helloworld.rb b/gtk3/sample/misc/helloworld.rb index ac3f217..610e64f 100644 --- a/gtk3/sample/misc/helloworld.rb +++ b/gtk3/sample/misc/helloworld.rb @@ -10,7 +10,7 @@ require 'gtk3' -button = Gtk::Button.new("Hello World") +button = Gtk::Button.new(:label => "Hello World") button.signal_connect("clicked") { puts "Hello World" } diff --git a/gtk3/sample/misc/image.rb b/gtk3/sample/misc/image.rb index 8bf8be2..3b3e8c6 100644 --- a/gtk3/sample/misc/image.rb +++ b/gtk3/sample/misc/image.rb @@ -16,22 +16,22 @@ window.signal_connect("destroy") do end window.border_width = 0 -box1 = Gtk::VBox.new(false, 10) +box1 = Gtk::Box.new(:vertical, 10) box1.border_width = 10 button = Gtk::Button.new box1.add(button) label = Gtk::Label.new("Gtk::Image\ntest") -image = Gtk::Image.new("test.xpm") +image = Gtk::Image.new(:file => "test.xpm") -box2 = Gtk::HBox.new(false, 5).add(image).add(label) +box2 = Gtk::Box.new(:horizontal, 5).add(image).add(label) button.add(box2) -box1.add(Gtk::HSeparator.new) +box1.add(Gtk::Separator.new(:horizontal)) -button = Gtk::Button.new("close") +button = Gtk::Button.new(:label => "close") button.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/keyboard_grab.rb b/gtk3/sample/misc/keyboard_grab.rb index 9ec1b23..cd32df6 100644 --- a/gtk3/sample/misc/keyboard_grab.rb +++ b/gtk3/sample/misc/keyboard_grab.rb @@ -12,8 +12,8 @@ require 'gtk3' window = Gtk::Window.new("Keyboard Grab/Ungrab sample") -button1 = Gtk::Button.new("Grab Keyboard!") -button2 = Gtk::Button.new("Ungrab Keyboard!") +button1 = Gtk::Button.new(:label => "Grab Keyboard!") +button2 = Gtk::Button.new(:label => "Ungrab Keyboard!") button1.signal_connect('clicked') do Gdk.keyboard_grab(window.window, true, Gdk::Event::CURRENT_TIME) @@ -23,7 +23,7 @@ button2.signal_connect('clicked') do Gdk.keyboard_ungrab(Gdk::Event::CURRENT_TIME) end -window.add(Gtk::VBox.new.add(button1).add(button2)) +window.add(Gtk::Box.new(:vertical).add(button1).add(button2)) window.set_default_size(200,100).show_all.signal_connect("destroy"){Gtk.main_quit} Gtk.main diff --git a/gtk3/sample/misc/label.rb b/gtk3/sample/misc/label.rb index 58adf9d..e3f113a 100644 --- a/gtk3/sample/misc/label.rb +++ b/gtk3/sample/misc/label.rb @@ -19,7 +19,7 @@ label3 = Gtk::Label.new.set_markup(%Q[_Not Use Mnemonic]) label5 = Gtk::Label.new.set_markup(%Q[_Use Mnemonic], true) -box = Gtk::VBox.new +box = Gtk::Box.new(:vertical) box.add(label1) box.add(label2) box.add(label3) diff --git a/gtk3/sample/misc/linkbutton.rb b/gtk3/sample/misc/linkbutton.rb index 26985e9..8146e76 100644 --- a/gtk3/sample/misc/linkbutton.rb +++ b/gtk3/sample/misc/linkbutton.rb @@ -13,7 +13,7 @@ require 'gtk3' window = Gtk::Window.new("Gtk::LinkButton sample") window.signal_connect("destroy"){Gtk.main_quit} -vbox = Gtk::VBox.new +vbox = Gtk::Box.new(:vertical) # URI only button1 = Gtk::LinkButton.new("http://ruby-gnome2.sourceforge.jp/") @@ -29,10 +29,13 @@ button2.signal_connect("clicked") do puts button2.uri end -# Global setting instead of using clicked signals. -Gtk::LinkButton.set_uri_hook {|button, link| - puts "set_uri_hook: " + link -} +# +# DEPRECATED +# +## Global setting instead of using clicked signals. +#Gtk::LinkButton.set_uri_hook {|button, link| +# puts "set_uri_hook: " + link +#} vbox.pack_start(button2) diff --git a/gtk3/sample/misc/listview.rb b/gtk3/sample/misc/listview.rb index 281fa4f..8a06416 100644 --- a/gtk3/sample/misc/listview.rb +++ b/gtk3/sample/misc/listview.rb @@ -13,15 +13,15 @@ require 'gtk3' window = Gtk::Window.new("Gtk::ListStore sample") window.border_width = 0 -box1 = Gtk::VBox.new(false, 0) +box1 = Gtk::Box.new(:vertical, 0) window.add(box1) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2, true, true, 0) scrolled_win = Gtk::ScrolledWindow.new -scrolled_win.set_policy(Gtk::POLICY_AUTOMATIC,Gtk::POLICY_AUTOMATIC) +scrolled_win.set_policy(:automatic,:automatic) box2.pack_start(scrolled_win, true, true, 0) data = [ @@ -42,7 +42,7 @@ column = Gtk::TreeViewColumn.new("Data", Gtk::CellRendererText.new, {:text => 0}) treeview = Gtk::TreeView.new(model) treeview.append_column(column) -treeview.selection.set_mode(Gtk::SELECTION_SINGLE) +treeview.selection.set_mode(:single) scrolled_win.add_with_viewport(treeview) data.each do |v| @@ -50,8 +50,8 @@ data.each do |v| iter[0] = v end -button = Gtk::Button.new("add") -button.set_flags(Gtk::Widget::CAN_FOCUS) +button = Gtk::Button.new(:label => "add") +button.can_focus=true i = 0 button.signal_connect("clicked") do @@ -62,28 +62,28 @@ end box2.pack_start(button, false, true, 0) -button = Gtk::Button.new("remove") -button.set_flags(Gtk::Widget::CAN_FOCUS) +button = Gtk::Button.new(:label => "remove") +button.can_focus=true button.signal_connect("clicked") do iter = treeview.selection.selected model.remove(iter) if iter end box2.pack_start(button, false, true, 0) -separator = Gtk::HSeparator.new +separator = Gtk::Separator.new(:horizontal) box1.pack_start(separator, false, true, 0) separator.show -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2, false, true, 0) -button = Gtk::Button.new("close") +button = Gtk::Button.new(:label => "close") button.signal_connect("clicked") do Gtk.main_quit end box2.pack_start(button, true, true, 0) -button.set_flags(Gtk::Widget::CAN_DEFAULT) +button.can_default=true button.grab_default window.set_default_size(300, 300) diff --git a/gtk3/sample/misc/menu.rb b/gtk3/sample/misc/menu.rb index 4068c03..5d264e6 100644 --- a/gtk3/sample/misc/menu.rb +++ b/gtk3/sample/misc/menu.rb @@ -35,7 +35,7 @@ window.signal_connect("destroy") do end window.border_width = 0 -box1 = Gtk::VBox.new(false, 0) +box1 = Gtk::Box.new(:vertical, 0) window.add(box1) menubar = Gtk::MenuBar.new @@ -54,23 +54,26 @@ menuitem = Gtk::MenuItem.new("bar") menuitem.set_submenu(create_menu(4)) menubar.append(menuitem) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.pack_start(box2, true, true, 0) -optionmenu = Gtk::OptionMenu.new -optionmenu.set_menu(create_menu(1)) -optionmenu.set_history(4) -box2.pack_start(optionmenu, true, true, 0) +# +# OptionMenu is deprecated +# +#optionmenu = Gtk::OptionMenu.new +#optionmenu.set_menu(create_menu(1)) +#optionmenu.set_history(4) +#box2.pack_start(optionmenu, true, true, 0) -separator = Gtk::HSeparator.new +separator = Gtk::Separator.new(:horizontal) box1.pack_start(separator, false, true, 0) -box2 = Gtk::HBox.new(false, 10) +box2 = Gtk::Box.new(:horizontal, 10) box2.border_width = 10 box1.pack_start(box2, false, true, 0) -button = Gtk::Button.new("close") +button = Gtk::Button.new(:label => "close") button.signal_connect("clicked") do window.destroy end diff --git a/gtk3/sample/misc/misc_button.rb b/gtk3/sample/misc/misc_button.rb index 984a4d4..0b6d20b 100644 --- a/gtk3/sample/misc/misc_button.rb +++ b/gtk3/sample/misc/misc_button.rb @@ -10,13 +10,7 @@ require 'gtk3' -if str = Gtk.check_version(2, 4, 0) - puts "This sample requires GTK+ 2.4.0 or later" - puts str - exit -end - -box = Gtk::VBox.new +box = Gtk::Box.new(:vertical) #Gtk::ColorButton colorbutton = Gtk::ColorButton.new @@ -33,22 +27,18 @@ fontbutton.signal_connect("font-set") do end box.add(fontbutton) -#Gtk::FileChooserButton(GTK+-2.6.0 or later) -if str = Gtk.check_version(2, 6, 0) - puts "Gtk::FileChooserButton requires GTK+ 2.6.0 or later" -else - filebutton = Gtk::FileChooserButton.new("Gtk::FileChooserButton", - Gtk::FileChooser::ACTION_OPEN) - filebutton.filename = GLib.home_dir - filebutton.signal_connect("current-folder-changed") do |w, e| - p filebutton.filename - end - - box.add(filebutton) +#Gtk::FileChooserButton +filebutton = Gtk::FileChooserButton.new("Gtk::FileChooserButton", + Gtk::FileChooser::Action::OPEN) +filebutton.filename = GLib.home_dir +filebutton.signal_connect("current-folder-changed") do |w, e| + p filebutton.filename end +box.add(filebutton) + #Quit -quitbutton = Gtk::Button.new("Quit") +quitbutton = Gtk::Button.new(:label => "Quit") quitbutton.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/mouse-gesture.rb b/gtk3/sample/misc/mouse-gesture.rb index b441870..da348a7 100644 --- a/gtk3/sample/misc/mouse-gesture.rb +++ b/gtk3/sample/misc/mouse-gesture.rb @@ -214,11 +214,9 @@ class Gesture < Gtk::EventBox end def set_expose_event - signal_connect("expose_event") do |widget, event| + signal_connect("draw") do |widget, cr| if @processor.started? - cr = widget.window.create_cairo_context - - cr.rectangle(*widget.allocation.to_a) + cr.rectangle(*cr.clip_extents) cr.set_source_rgba(@back_rgba) cr.fill @@ -372,9 +370,8 @@ layout = Layout.new gestured_widget = GesturedWidget.new gestured_widget.set_size_request(50, 50) -gestured_widget.signal_connect("expose_event") do |widget, event| - x, y, w, h = widget.allocation.to_a - cr = widget.window.create_cairo_context +gestured_widget.signal_connect("draw") do |widget, cr| + x, y, w, h = cr.clip_extents cr.set_source_rgba([0.8, 0.8, 0.3, 1]) cr.translate(x, y) cr.scale(w, h) @@ -388,9 +385,8 @@ layout.put(gestured_widget, 75, 75) gestured_widget2 = GesturedWidget.new gestured_widget2.set_size_request(100, 50) -gestured_widget2.signal_connect("expose_event") do |widget, event| - x, y, w, h = widget.allocation.to_a - cr = widget.window.create_cairo_context +gestured_widget2.signal_connect("draw") do |widget, cr| + x, y, w, h = cr.clip_extents cr.set_source_rgba([0.3, 0.3, 0.8, 1]) cr.translate(x, y) cr.scale(w, h) diff --git a/gtk3/sample/misc/pangorenderer.rb b/gtk3/sample/misc/pangorenderer.rb index a2e23f2..3e5f69e 100644 --- a/gtk3/sample/misc/pangorenderer.rb +++ b/gtk3/sample/misc/pangorenderer.rb @@ -13,12 +13,6 @@ require 'gtk3' RADIUS = 80 N_WORDS = 16 -if str = Gtk.check_version(2, 6, 0) - puts "This sample requires GTK+ 2.6.0 or later" - puts str - exit -end - win = Gtk::Window.new("Gdk::PangoRenderer sample") win.signal_connect("destroy"){Gtk.main_quit} win.set_default_size(400, 400) diff --git a/gtk3/sample/misc/pointer_grab.rb b/gtk3/sample/misc/pointer_grab.rb index 1622b51..e159225 100644 --- a/gtk3/sample/misc/pointer_grab.rb +++ b/gtk3/sample/misc/pointer_grab.rb @@ -12,12 +12,12 @@ require 'gtk3' window = Gtk::Window.new("Pointer grab/ungrab sample") -cursor = Gdk::Cursor.new(Gdk::Cursor::WATCH) -button1 = Gtk::Button.new("Grab Window!") -button2 = Gtk::Button.new("Ungrab Window!") +cursor = Gdk::Cursor.new(Gdk::Cursor::Type::WATCH) +button1 = Gtk::Button.new(:label => "Grab Window!") +button2 = Gtk::Button.new(:label => "Ungrab Window!") button1.signal_connect('clicked') do - Gdk.pointer_grab(window.window, true, Gdk::Event::BUTTON_PRESS_MASK, + Gdk.pointer_grab(window.window, true, Gdk::Event::Mask::BUTTON_PRESS_MASK, window.window, cursor, Gdk::Event::CURRENT_TIME) p Gdk.pointer_is_grabbed? end @@ -27,7 +27,7 @@ button2.signal_connect('clicked') do p Gdk.pointer_is_grabbed? end -window.add(Gtk::VBox.new.add(button1).add(button2)) +window.add(Gtk:: Box.new(:vertical).add(button1).add(button2)) window.set_default_size(200,100).show_all window.signal_connect("destroy"){Gtk.main_quit} diff --git a/gtk3/sample/misc/print.rb b/gtk3/sample/misc/print.rb index 16d223a..05ddc50 100644 --- a/gtk3/sample/misc/print.rb +++ b/gtk3/sample/misc/print.rb @@ -47,7 +47,7 @@ class Print < Gtk::PrintOperation # with this option disabled, the origin is the the upper left corner # *taking into consideration margins* ! self.use_full_page = false - self.unit = Gtk::PaperSize::UNIT_POINTS + self.unit = Gtk::PaperSize::Unit::POINTS # set default paper size page_setup = Gtk::PageSetup.new @@ -115,7 +115,7 @@ class Print < Gtk::PrintOperation end def run_print_dialog - res = run(ACTION_PRINT_DIALOG, @parent_window) + res = run(Action::PRINT_DIALOG, @parent_window) case res when RESULT_ERROR puts "error" @@ -129,7 +129,7 @@ class Print < Gtk::PrintOperation end def run_preview - res = run(ACTION_PREVIEW, @parent_window) + res = run(Action::PREVIEW, @parent_window) end private @@ -137,12 +137,12 @@ class Print < Gtk::PrintOperation def page_height setup = self.default_page_setup # this takes margins into consideration, contrary to get_paper_height - setup.get_page_height(Gtk::PaperSize::UNIT_POINTS) + setup.get_page_height(Gtk::PaperSize::Unit::POINTS) end def page_width setup = self.default_page_setup - width = setup.get_page_width(Gtk::PaperSize::UNIT_POINTS) + width = setup.get_page_width(Gtk::PaperSize::Unit::POINTS) end def real_page_height @@ -158,7 +158,7 @@ class Print < Gtk::PrintOperation layout.width_in_points = page_width layout.font_description = FONT - layout.wrap = Pango::Layout::WRAP_CHAR + layout.wrap = Pango::Layout::WrapMode::CHAR layout.ellipsize = Pango::Layout::ELLIPSIZE_NONE layout.single_paragraph_mode = false @@ -197,9 +197,9 @@ class Window < Gtk::Window set_default_size(600, 600) @textview = Gtk::TextView.new - @textview.wrap_mode = Gtk::TextTag::WRAP_WORD + @textview.wrap_mode = Gtk::TextTag::WrapMode::WORD - hbox = Gtk::HBox.new + hbox = Gtk::Box.new(:horizontal) page_setup_button = Gtk::Button.new page_setup_button.label = "Page setup" @@ -208,14 +208,14 @@ class Window < Gtk::Window @page_setup) end - print_preview_button = Gtk::Button.new(Gtk::Stock::PRINT_PREVIEW) + print_preview_button = Gtk::Button.new(:stock_id => Gtk::Stock::PRINT_PREVIEW) print_preview_button.signal_connect("clicked") do printop = Print.new(self, @textview.buffer.text) printop.default_page_setup = @page_setup if @page_setup printop.run_preview end - print_button = Gtk::Button.new(Gtk::Stock::PRINT) + print_button = Gtk::Button.new(:stock_id => Gtk::Stock::PRINT) print_button.signal_connect("clicked") do printop = Print.new(self, @textview.buffer.text) printop.default_page_setup = @page_setup if @page_setup @@ -226,11 +226,11 @@ class Window < Gtk::Window hbox.pack_start(b, true, true) # expand, fill end - scrollbar = Gtk::VScrollbar.new + scrollbar = Gtk::Scrollbar.new(:vertical) - vbox = Gtk::VBox.new + vbox = Gtk::Box.new(:vertical) scroll = Gtk::ScrolledWindow.new.add(@textview) - scroll.set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC) + scroll.set_policy(:automatic, :automatic) vbox.pack_start(scroll) vbox.pack_end(hbox, false, false) diff --git a/gtk3/sample/misc/properties.rb b/gtk3/sample/misc/properties.rb index ec41df7..4165a36 100755 --- a/gtk3/sample/misc/properties.rb +++ b/gtk3/sample/misc/properties.rb @@ -69,7 +69,7 @@ end b = MyButton.new("Hello") p b p b.label -p b.gtype +#p b.gtype p MyButton.properties p b.get_property("fuga") diff --git a/gtk3/sample/misc/radiobutton.rb b/gtk3/sample/misc/radiobutton.rb index 122c99d..95fb927 100644 --- a/gtk3/sample/misc/radiobutton.rb +++ b/gtk3/sample/misc/radiobutton.rb @@ -13,10 +13,10 @@ require 'gtk3' window = Gtk::Window.new("Gtk::RadioButton sample") window.signal_connect("destroy"){Gtk.main_quit} -box1 = Gtk::VBox.new +box1 = Gtk::Box.new(:vertical) window.add(box1) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.add(box2) @@ -26,13 +26,13 @@ button3 = Gtk::RadioButton.new(button1, Gtk::Stock::QUIT) box2.add(button1).add(button2).add(button3) -box1.add(Gtk::HSeparator.new) +box1.add(Gtk::Separator.new(:horizontal)) -box2 = Gtk::VBox.new(false, 10) +box2 = Gtk::Box.new(:vertical, 10) box2.border_width = 10 box1.add(box2) -close = Gtk::Button.new("close") +close = Gtk::Button.new(:label => "close") close.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/recentchooserdialog.rb b/gtk3/sample/misc/recentchooserdialog.rb index 8fc4dbd..d711363 100644 --- a/gtk3/sample/misc/recentchooserdialog.rb +++ b/gtk3/sample/misc/recentchooserdialog.rb @@ -10,20 +10,13 @@ require 'gtk3' -if str = Gtk.check_version(2, 10, 0) - puts "This sample requires GTK+ 2.10.0 or later" - puts str - exit -end - -dialog = Gtk::RecentChooserDialog.new("Recent Chooser Dialog Sample", - nil, - [Gtk::Stock::CANCEL, Gtk::Dialog::RESPONSE_CANCEL], - [Gtk::Stock::OPEN, Gtk::Dialog::RESPONSE_ACCEPT]) +dialog = Gtk::RecentChooserDialog.new(:title => "Recent Chooser Dialog Sample", + :buttons => [[Gtk::Stock::CANCEL, Gtk::Dialog::ResponseType::CANCEL], + [Gtk::Stock::OPEN, Gtk::Dialog::ResponseType::ACCEPT]]) dialog.signal_connect("response") do |widget, response| case response - when Gtk::Dialog::RESPONSE_ACCEPT + when Gtk::Dialog::ResponseType::ACCEPT info = dialog.current_item if info puts "----" diff --git a/gtk3/sample/misc/rgtk+cairo.rb b/gtk3/sample/misc/rgtk+cairo.rb index a67a7a3..e11d369 100755 --- a/gtk3/sample/misc/rgtk+cairo.rb +++ b/gtk3/sample/misc/rgtk+cairo.rb @@ -13,7 +13,7 @@ require 'gtk3' require 'cairo' -w = Gtk::Window.new.add(vb = Gtk::VBox.new) +w = Gtk::Window.new.add(vb = Gtk::Box.new(:vertical)) vb.add(da = Gtk::DrawingArea.new) da.set_size_request(200, 200) diff --git a/gtk3/sample/misc/scalebutton.rb b/gtk3/sample/misc/scalebutton.rb index 77e375a..ccddf8b 100644 --- a/gtk3/sample/misc/scalebutton.rb +++ b/gtk3/sample/misc/scalebutton.rb @@ -10,14 +10,8 @@ require 'gtk3' -if str = Gtk.check_version(2, 12, 0) - puts "This sample requires GTK+ 2.12.0 or later" - puts str - exit -end - window = Gtk::Window.new -window.add(scale = Gtk::ScaleButton.new(Gtk::IconSize::BUTTON)) +window.add(scale = Gtk::ScaleButton.new(Gtk::IconSize::IconSize::BUTTON)) scale.set_icons(['gtk-goto-bottom', 'gtk-goto-top', 'gtk-execute']) scale.signal_connect('value-changed') { |widget, value| puts "value changed: #{value}" } window.show_all diff --git a/gtk3/sample/misc/settings.rb b/gtk3/sample/misc/settings.rb index 987f08e..7454755 100644 --- a/gtk3/sample/misc/settings.rb +++ b/gtk3/sample/misc/settings.rb @@ -22,7 +22,7 @@ enum = GLib::Param::Enum.new("enum", # name "Enum", # nick "Enum enum", # blurb GLib::Type["GdkCursorType"], #type - Gdk::Cursor::ARROW, #default + Gdk::Cursor::Type::ARROW, #default GLib::Param::READABLE| GLib::Param::WRITABLE) diff --git a/gtk3/sample/misc/statusicon.rb b/gtk3/sample/misc/statusicon.rb index 5815136..0d8bdab 100644 --- a/gtk3/sample/misc/statusicon.rb +++ b/gtk3/sample/misc/statusicon.rb @@ -12,12 +12,6 @@ require 'gtk3' -if str = Gtk.check_version(2, 10, 0) - puts "This sample requires GTK+ 2.10.0 or later" - puts str - exit -end - class StatusIconSample < Gtk::StatusIcon STATUS_INFO = 0 STATUS_QUESTION = 1 @@ -27,7 +21,10 @@ class StatusIconSample < Gtk::StatusIcon @status = STATUS_INFO update_icon - set_blinking(true) + # + # seemd not to exist + # + # set_blinking(true) signal_connect("activate"){ icon_activated } @@ -56,10 +53,10 @@ class StatusIconSample < Gtk::StatusIcon def update_icon if @status == STATUS_INFO set_icon_name(Gtk::Stock::DIALOG_INFO) - set_tooltip("Some Information ...") + # set_tooltip("Some Information ...") DEPRECATED else set_icon_name(Gtk::Stock::DIALOG_QUESTION) - set_tooltip("Some Question ...") + # set_tooltip("Some Question ...") DEPRECATED end end @@ -93,12 +90,16 @@ class StatusIconSample < Gtk::StatusIcon set_visible(w.active?) } - toggle = Gtk::ToggleButton.new("_Blink the icon") - @dialog.vbox.pack_end(toggle, true, true, 6) - toggle.active = blinking? - toggle.signal_connect("toggled"){|w| - set_blinking(w.active?) - } + # + # Seems not to exist + # + + # toggle = Gtk::ToggleButton.new("_Blink the icon") + # @dialog.vbox.pack_end(toggle, true, true, 6) + # toggle.active = blinking? + # toggle.signal_connect("toggled"){|w| + # set_blinking(w.active?) + # } toggle = Gtk::ToggleButton.new("_Change the icon") @dialog.vbox.pack_end(toggle, true, true, 6) diff --git a/gtk3/sample/misc/stock.rb b/gtk3/sample/misc/stock.rb index 437081a..be6d7ab 100644 --- a/gtk3/sample/misc/stock.rb +++ b/gtk3/sample/misc/stock.rb @@ -16,12 +16,13 @@ stocks = Gtk::Stock.constants.sort image = Gtk::Image.new label = Gtk::Label.new -button = Gtk::Button.new("Click!") +button = Gtk::Button.new(:label => "Click!") cnt = 0 button.signal_connect("clicked") do stock_name = "Gtk::Stock::#{stocks[cnt]}" label.set_text(stock_name) - image.set(eval(stock_name), Gtk::IconSize::DIALOG) +# image.set(eval(stock_name), Gtk::IconSize::DIALOG) + image.set_stock(stock_name) if cnt < stocks.size - 1 cnt += 1 else @@ -29,7 +30,7 @@ button.signal_connect("clicked") do end end -box = Gtk::VBox.new.add(image).add(label).add(button) +box = Gtk::Box.new(:vertical).add(image).add(label).add(button) window.add(box).set_default_size(200,200).show_all Gtk.main diff --git a/gtk3/sample/misc/style_property.rb b/gtk3/sample/misc/style_property.rb index 5773846..2124105 100755 --- a/gtk3/sample/misc/style_property.rb +++ b/gtk3/sample/misc/style_property.rb @@ -35,7 +35,7 @@ class MyButton < Gtk::Button "Bar", # nick "BAR", # blurb GLib::Type["GdkCursorType"], #Enum type - Gdk::Cursor::ARROW, #default + Gdk::Cursor::Type::ARROW, #default GLib::Param::READABLE | GLib::Param::WRITABLE)) do |pspec, str| p pspec, str diff --git a/gtk3/sample/misc/t-gtkplug.rb b/gtk3/sample/misc/t-gtkplug.rb index e9de354..f9f3da1 100644 --- a/gtk3/sample/misc/t-gtkplug.rb +++ b/gtk3/sample/misc/t-gtkplug.rb @@ -24,13 +24,13 @@ class MyGtkPlug else @window = Gtk::Plug.new(xid.to_i) end - @window.window_position = Gtk::Window::POS_CENTER + @window.window_position = Gtk::Window::Position::CENTER @window.signal_connect("delete_event"){Gtk.main_quit} - @vbox = Gtk::VBox.new(true, 5) + @vbox = Gtk::Box.new(:vertical, 5) @window.add(@vbox) - @button1 = Gtk::Button.new(plug) + @button1 = Gtk::Button.new(:label => plug) @button1.signal_connect("clicked"){ $stderr.puts plug} - @button2 = Gtk::Button.new("Exit") + @button2 = Gtk::Button.new(:label => "Exit") @button2.signal_connect("clicked"){Gtk.main_quit} # Exit button to test an unexpected end of child process by Gtk::Socket @vbox.add(@button1) diff --git a/gtk3/sample/misc/t-gtksocket.rb b/gtk3/sample/misc/t-gtksocket.rb index 23c0906..6ffa931 100644 --- a/gtk3/sample/misc/t-gtksocket.rb +++ b/gtk3/sample/misc/t-gtksocket.rb @@ -17,24 +17,24 @@ require 'gtk3' class MyGtkSocket < Gtk::Window def initialize super("Gtk::Socket Test") - set_window_position(Gtk::Window::POS_CENTER) + set_window_position(Gtk::Window::Position::CENTER) signal_connect("delete_event"){Gtk::main_quit} @buttons = [] 6.times {|n| - @buttons << Gtk::Button.new("Plug #{n}") + @buttons << Gtk::Button.new(:label => "Plug #{n}") @buttons.last.signal_connect("clicked"){ plug(n) } } @table = Gtk::Table.new(1, 2) @table.set_size_request(320, 200) add(@table) - @vbox = Gtk::VBox.new(true, 5) + @vbox = Gtk::Box.new(:vertical, 5) @buttons.each{|b| @vbox.add(b) } @vbox.set_size_request(150, 190) - @table.attach(@vbox, 0, 1, 0, 1, Gtk::FILL, Gtk::FILL, 5, 5) + @table.attach(@vbox, 0, 1, 0, 1, :fill, :fill, 5, 5) @socket = Gtk::Socket.new - @table.attach(@socket, 1, 2, 0, 1, Gtk::FILL, Gtk::FILL, 5, 5) + @table.attach(@socket, 1, 2, 0, 1, :fill, :fill, 5, 5) @socket.set_size_request(150, 150) show_all @@ -52,7 +52,7 @@ class MyGtkSocket < Gtk::Window # socket has been destroyed because child process finished unexpectedly end @socket = Gtk::Socket.new - @table.attach(@socket, 1, 2, 0, 1, Gtk::FILL, Gtk::FILL, 5, 5) + @table.attach(@socket, 1, 2, 0, 1, :fill, :fill, 5, 5) @socket.set_size_request(150, 190) @socket.show @xid = @socket.id diff --git a/gtk3/sample/misc/textbuffer_serialize.rb b/gtk3/sample/misc/textbuffer_serialize.rb index 01cf8f4..00b1d1a 100644 --- a/gtk3/sample/misc/textbuffer_serialize.rb +++ b/gtk3/sample/misc/textbuffer_serialize.rb @@ -10,12 +10,6 @@ require 'gtk3' -if str = Gtk.check_version(2, 10, 0) - puts "This sample requires GTK+ 2.10.0 or later" - puts str - exit -end - current_folder = ENV['HOME'] || "." file_name = "serialized.dat" @@ -28,28 +22,28 @@ buffer.register_serialize_target(nil) buffer.register_deserialize_target(nil) window = Gtk::Window.new("Gtk::TextBuffer Serialize Demo") -vbox = Gtk::VBox.new +vbox = Gtk::Box.new(:Vertical) serialize_button = Gtk::FileChooserButton.new("Serialize to a file", - Gtk::FileChooser::ACTION_OPEN) + Gtk::FileChooser::Action::OPEN) deserialize_button = Gtk::FileChooserButton.new("Serialize to a file", - Gtk::FileChooser::ACTION_OPEN) + Gtk::FileChooser::Action::OPEN) serialize_button.current_folder = current_folder deserialize_button.current_folder = current_folder toolbar = Gtk::Toolbar.new -toolbar.append(Gtk::Stock::OPEN, "Deserialize from a file") do - dialog = Gtk::FileChooserDialog.new("Deserialize from a file", - window, - Gtk::FileChooser::ACTION_OPEN, - nil, - [Gtk::Stock::CANCEL, Gtk::Dialog::RESPONSE_CANCEL], - [Gtk::Stock::OPEN, Gtk::Dialog::RESPONSE_ACCEPT]) +tb=Gtk::ToolButton::new(:stock_id => Gtk::Stock::OPEN, :label => "Deserialize from a file") +tb.signal_connect('clicked') do + dialog = Gtk::FileChooserDialog.new(:title => "Deserialize from a file", + :parent => window, + :action => Gtk::FileChooser::Action::OPEN, + :buttons => [[Gtk::Stock::CANCEL, Gtk::Dialog::ResponseType::CANCEL], + [Gtk::Stock::OPEN, Gtk::Dialog::ResponseType::ACCEPT]]) dialog.filename = File.expand_path(file_name) - if dialog.run == Gtk::Dialog::RESPONSE_ACCEPT + if dialog.run == Gtk::Dialog::ResponseType::ACCEPT file_name = dialog.filename File.open(file_name, "rb") {|io| buffer.delete(buffer.start_iter, buffer.end_iter) @@ -58,16 +52,17 @@ toolbar.append(Gtk::Stock::OPEN, "Deserialize from a file") do end dialog.destroy end - -toolbar.append(Gtk::Stock::SAVE, "Serialize to a file") do - dialog = Gtk::FileChooserDialog.new("Serialize from a file", - window, - Gtk::FileChooser::ACTION_SAVE, - nil, - [Gtk::Stock::CANCEL, Gtk::Dialog::RESPONSE_CANCEL], - [Gtk::Stock::OPEN, Gtk::Dialog::RESPONSE_ACCEPT]) +toolbar.insert(tb,-1) + +tb=Gtk::ToolButton::new(:stock_id => Gtk::Stock::SAVE, :label => "Serialize to a file") +tb.signal_connect('clicked') do + dialog = Gtk::FileChooserDialog.new(:title => "Serialize from a file", + :parent => window, + :action => Gtk::FileChooser::Action::SAVE, + :buttons => [[Gtk::Stock::CANCEL, Gtk::Dialog::ResponseType::CANCEL], + [Gtk::Stock::OPEN, Gtk::Dialog::ResponseType::ACCEPT]]) dialog.current_name = file_name - if dialog.run == Gtk::Dialog::RESPONSE_ACCEPT + if dialog.run == Gtk::Dialog::ResponseType::ACCEPT file_name = dialog.filename File.open(file_name, "wb") {|io| io.write(buffer.serialize(buffer, format, buffer.start_iter, buffer.end_iter)) @@ -75,16 +70,22 @@ toolbar.append(Gtk::Stock::SAVE, "Serialize to a file") do end dialog.destroy end +toolbar.insert(tb,-1) -toolbar.append(Gtk::Stock::CLEAR, "Clear all") do +tb=Gtk::ToolButton::new(:stock_id => Gtk::Stock::CLEAR, :label => "Clear all") +tb.signal_connect('clicked') do buffer.delete(buffer.start_iter, buffer.end_iter) end -toolbar.append_space -toolbar.append(Gtk::Stock::SELECT_COLOR, "Color the region") do - dialog = Gtk::ColorSelectionDialog.new("Color the region") - if dialog.run == Gtk::Dialog::RESPONSE_OK +toolbar.insert(tb,-1) + +toolbar.insert(Gtk::SeparatorToolItem::new,-1) + +tb=Gtk::ToolButton::new(:stock_id => Gtk::Stock::SELECT_COLOR, :label => "Color the region") +tb.signal_connect('clicked') do + dialog = Gtk::ColorSelectionDialog.new(:title => "Color the region") + if dialog.run == Gtk::Dialog::ResponseType::OK bounds = buffer.selection_bounds - color = dialog.colorsel.current_color + color = dialog.color_selection.current_color tag_name = color.to_a.inspect unless tag = buffer.tag_table.lookup(tag_name) tag = Gtk::TextTag.new(tag_name).set_foreground_gdk(color) @@ -94,12 +95,14 @@ toolbar.append(Gtk::Stock::SELECT_COLOR, "Color the region") do end dialog.destroy end +toolbar.insert(tb,-1) -toolbar.append(Gtk::Stock::SELECT_FONT, "Set a font to the region") do - dialog = Gtk::FontSelectionDialog.new("Set font to the region") - if dialog.run == Gtk::Dialog::RESPONSE_OK +tb=Gtk::ToolButton::new(:stock_id => Gtk::Stock::SELECT_FONT, :label => "Set a font to the region") +tb.signal_connect('clicked') do + dialog = Gtk::FontChooserDialog.new(:title => "Set font to the region") + if dialog.run == Gtk::Dialog::ResponseType::OK bounds = buffer.selection_bounds - font = dialog.font_name + font = dialog.font unless tag = buffer.tag_table.lookup(font) tag = Gtk::TextTag.new(font).set_font(font) end @@ -108,11 +111,15 @@ toolbar.append(Gtk::Stock::SELECT_FONT, "Set a font to the region") do end dialog.destroy end +toolbar.insert(tb,-1) + +toolbar.insert(Gtk::SeparatorToolItem::new,-1) -toolbar.append_space -toolbar.append(Gtk::Stock::QUIT, "Quit this application") do +tb=Gtk::ToolButton::new(:stock_id => Gtk::Stock::QUIT, :label => "Quit this application") +tb.signal_connect('clicked') do Gtk.main_quit end +toolbar.insert(tb,-1) vbox.pack_start(toolbar, false, false).add(Gtk::ScrolledWindow.new.add(textview)) window.add(vbox) diff --git a/gtk3/sample/misc/threads.rb b/gtk3/sample/misc/threads.rb index 4b01255..c854f37 100644 --- a/gtk3/sample/misc/threads.rb +++ b/gtk3/sample/misc/threads.rb @@ -21,8 +21,8 @@ Thread.new { } } -start_button = Gtk::Button.new("start") -stop_button = Gtk::Button.new("stop") +start_button = Gtk::Button.new(:label => "start") +stop_button = Gtk::Button.new(:label => "stop") start_button.signal_connect("clicked") do start_button.sensitive=false @@ -54,8 +54,7 @@ end stop_button.sensitive = false -box = Gtk::VBox.new. - set_size_request(100,100) +box = Gtk::Box.new(:vertical).set_size_request(100,100) box << label << start_button << stop_button diff --git a/gtk3/sample/misc/to_drawable.rb b/gtk3/sample/misc/to_drawable.rb index ef8a5c4..1851b40 100644 --- a/gtk3/sample/misc/to_drawable.rb +++ b/gtk3/sample/misc/to_drawable.rb @@ -25,14 +25,12 @@ w.signal_connect('delete-event') do end d = Gtk::DrawingArea.new -gc = Gdk::GC.new(w.window) -d.signal_connect('expose-event') do |w, e| - unless e.count > 0 - width = w.allocation.width - height = w.allocation.height - pixbuf = pixbuf.scale(width, height) - d.window.draw_pixbuf(gc, pixbuf, 0, 0, 0, 0, - width, height, Gdk::RGB::DITHER_NORMAL, 0, 0) +d.signal_connect('draw') do |w, cr| + x,y,width,height=cr.clip_extents + if(width>0 && height>0) + npixbuf = pixbuf.scale(width, height) + cr.set_source_pixbuf(npixbuf,0,0) + cr.paint end true end diff --git a/gtk3/sample/misc/togglebutton.rb b/gtk3/sample/misc/togglebutton.rb index 504fc7f..9087f65 100644 --- a/gtk3/sample/misc/togglebutton.rb +++ b/gtk3/sample/misc/togglebutton.rb @@ -13,17 +13,17 @@ require 'gtk3' window = Gtk::Window.new("Gtk::ToggleButton sample") window.border_width = 10 -box = Gtk::VBox.new(false, 10) +box = Gtk::Box.new(:vertical, 10) window.add(box) button1 = Gtk::ToggleButton.new("_button1") -button2 = Gtk::ToggleButton.new("_button2", false) +button2 = Gtk::ToggleButton.new("_button2",false) button3 = Gtk::ToggleButton.new(Gtk::Stock::QUIT) box.add(button1).add(button2).add(button3) -box.pack_start(Gtk::HSeparator.new) +box.pack_start(Gtk::Separator.new(:horizontal)) -close = Gtk::Button.new("close") +close = Gtk::Button.new(:label => "close") close.signal_connect("clicked") do Gtk.main_quit end diff --git a/gtk3/sample/misc/toolbar.rb b/gtk3/sample/misc/toolbar.rb index c1b01b1..91a42c3 100644 --- a/gtk3/sample/misc/toolbar.rb +++ b/gtk3/sample/misc/toolbar.rb @@ -18,38 +18,61 @@ end toolbar = Gtk::Toolbar.new -toolbar.append("Horizontal", "Horizontal toolbar layout", "Toolbar/Horizontal", - Gtk::Image.new("test.xpm")) do - toolbar.orientation = Gtk::ORIENTATION_HORIZONTAL +tb=Gtk::ToolButton::new(:icon_widget => Gtk::Image.new(:file => "test.xpm"),:label => "Horizontal") +tb.signal_connect('clicked') do + toolbar.orientation = Gtk::Orientation::HORIZONTAL end -toolbar.append("Vertical", "Vertical toolbar layout", "Toolbar/Vertical", - Gtk::Image.new("test.xpm")) do - toolbar.orientation = Gtk::ORIENTATION_VERTICAL -end -toolbar.append_space -toolbar.append("Icons", "Only show toolbar icons", "Toolbar/IconsOnly", - Gtk::Image.new("test.xpm")) do - toolbar.toolbar_style = Gtk::Toolbar::ICONS -end -toolbar.append("Text", "Only show toolbar text", "Toolbar/TextOnly", - Gtk::Image.new("test.xpm")) do - toolbar.toolbar_style = Gtk::Toolbar::TEXT +toolbar.insert(tb,-1) + +tb=Gtk::ToolButton::new(:icon_widget => Gtk::Image.new(:file => "test.xpm"),:label => "Vertical") +tb.signal_connect('clicked') do + toolbar.orientation = Gtk::Orientation::VERTICAL end -toolbar.append("Both", "Show toolbar icons and text", "Toolbar/Both", - Gtk::Image.new("test.xpm")) do - toolbar.toolbar_style = Gtk::Toolbar::BOTH +toolbar.insert(tb,-1) + +toolbar.insert(Gtk::SeparatorToolItem::new,-1) + +tb=Gtk::ToolButton::new(:icon_widget => Gtk::Image.new(:file => "test.xpm"),:label => "Only show toolbar icons") +tb.signal_connect('clicked') do + toolbar.toolbar_style = Gtk::Toolbar::Style::ICONS end -toolbar.append_space -toolbar.append("Enable", "Enable tooltips",nil, - Gtk::Image.new("test.xpm")) do - toolbar.tooltips = true +toolbar.insert(tb,-1) + +tb=Gtk::ToolButton::new(:icon_widget => Gtk::Image.new(:file => "test.xpm"),:label => "Only show toolbar text") +tb.signal_connect('clicked') do + toolbar.toolbar_style = Gtk::Toolbar::Style::TEXT end -toolbar.append("Disable", "Disable tooltips",nil, - Gtk::Image.new("test.xpm")) do - toolbar.tooltips = false +toolbar.insert(tb,-1) + +tb=Gtk::ToolButton::new(:icon_widget => Gtk::Image.new(:file => "test.xpm"),:label => "Show toolbar icons and text") +tb.signal_connect('clicked') do + toolbar.toolbar_style = Gtk::Toolbar::Style::BOTH end +toolbar.insert(tb,-1) + +# +# Tooltips are not there anymore +# + +# toolbar.insert(Gtk::SeparatorToolItem::new,-1) + +# tb=Gtk::ToolButton::new(:icon_widget => Gtk::Image.new(:file => "test.xpm"),:label => "Enable tooltips") +# tb.signal_connect('clicked') do +# toolbar.tooltips = true +# end +# toolbar.insert(tb,-1) + +# tb=Gtk::ToolButton::new(:icon_widget => Gtk::Image.new(:file => "test.xpm"),:label => "Disable tooltips") +# tb.signal_connect('clicked') do +# toolbar.tooltips = false +# end +# toolbar.insert(tb,-1) + +box=Gtk::Box::new(:horizontal) + +window.add(box) +box.pack_start(toolbar) -window.add(toolbar) window.show_all Gtk.main diff --git a/gtk3/sample/misc/tooltips.rb b/gtk3/sample/misc/tooltips.rb index cc073ff..eb57509 100644 --- a/gtk3/sample/misc/tooltips.rb +++ b/gtk3/sample/misc/tooltips.rb @@ -11,12 +11,6 @@ require 'gtk3' -if str = Gtk.check_version(2, 12, 0) - puts "This sample requires GTK+ 2.12.0 or later" - puts str - exit -end - def treeview_query_tooltip(treeview, keyboard_tip, x, y, tooltip) if keyboard_tip # Keyboard mode @@ -41,7 +35,7 @@ def textview_query_tooltip(textview, keyboard_tip, x, y, tooltip, tag) if keyboard_tip iter = textview.buffer.get_iter_at_offset(textview.buffer.cursor_position) else - bx, by = textview.window_to_buffer_coords(Gtk::TextView::WINDOW_TEXT, x, y) + bx, by = textview.window_to_buffer_coords(Gtk::TextView::WindowType::TEXT, x, y) iter, = textview.get_iter_at_position(bx, by) end if iter.has_tag?(tag) @@ -67,12 +61,12 @@ end Gtk.init -window = Gtk::Window.new(Gtk::Window::TOPLEVEL) +window = Gtk::Window.new(:toplevel) window.title = 'Tooltips test' window.border_width = 10 window.signal_connect('delete-event') { Gtk.main_quit } -box = Gtk::VBox.new(false, 3) +box = Gtk::Box.new(:vertical, 3) window.add(box) # A check button using the tooltip-markup property @@ -88,7 +82,8 @@ button = Gtk::CheckButton.new('I use the query-tooltip signal') button.has_tooltip = true button.signal_connect('query-tooltip') { |widget, x, y, keyboard_tip, tooltip| tooltip.markup = widget.label - tooltip.set_icon_from_stock(Gtk::Stock::DELETE, Gtk::IconSize::MENU) + tooltip.set_icon(:stock_id => Gtk::Stock::DELETE, :size => Gtk::IconSize::IconSize::MENU) + true } box.pack_start(button, false, false, 0) @@ -115,20 +110,19 @@ raise if label.tooltip_markup != 'Another Label tooltip' button = Gtk::CheckButton.new('This one has a custom tooltip window!') box.pack_start(button, false, false, 0) -tooltip_window = Gtk::Window.new(Gtk::Window::POPUP) +tooltip_window = Gtk::Window.new(:popup) tooltip_button = Gtk::Label.new('blaat!') tooltip_window.add(tooltip_button) tooltip_button.show button.tooltip_window = tooltip_window button.signal_connect('query-tooltip') { |widget, x, y, keyboard_tip, tooltip| - widget.tooltip_window.modify_bg(Gtk::StateType::NORMAL, Gdk::Color.new(0, 65535, 0)) - true + widget.tooltip_window.override_background_color(0,Gdk::RGBA::new(0,1,0,1)) } button.has_tooltip = true # An insensitive button -button = Gtk::Button.new('This one is insensitive') +button = Gtk::Button.new(:label => 'This one is insensitive') button.sensitive = false button.tooltip_text = 'Insensitive!' box.pack_start(button, false, false, 0) @@ -178,8 +172,8 @@ if Gdk.cairo_available? drawingarea = Gtk::DrawingArea.new drawingarea.set_size_request(320, 240) drawingarea.has_tooltip = true - drawingarea.signal_connect('expose_event') { - cr = drawingarea.window.create_cairo_context + drawingarea.signal_connect('draw') { |w,cr| +# cr = drawingarea.window.create_cairo_context cr.rectangle(0, 0, drawingarea.allocation.width, drawingarea.allocation.height) cr.set_source_rgb(1.0, 1.0, 1.0) cr.fill diff --git a/gtk3/sample/misc/tree_combo.rb b/gtk3/sample/misc/tree_combo.rb index 0f1336a..a2677d2 100644 --- a/gtk3/sample/misc/tree_combo.rb +++ b/gtk3/sample/misc/tree_combo.rb @@ -11,12 +11,6 @@ require 'gtk3' -if str = Gtk.check_version(2, 6, 0) - puts "This sample requires GTK+ 2.6.0 or later" - puts str - exit -end - T_APPLICATION = 0 T_COMBO_TEXT_COLUMN = 1 T_COMBO_MODEL = 2 diff --git a/gtk3/sample/misc/tree_progress.rb b/gtk3/sample/misc/tree_progress.rb index adea118..baeaadd 100644 --- a/gtk3/sample/misc/tree_progress.rb +++ b/gtk3/sample/misc/tree_progress.rb @@ -11,12 +11,6 @@ require 'gtk3' -if str = Gtk.check_version(2, 6, 0) - puts "This sample requires GTK+ 2.6.0 or later" - puts str - exit -end - win = Gtk::Window.new("Gtk::CellRendererProgress sample") win.set_default_size(300, 50) model = Gtk::ListStore.new(String, Float) diff --git a/gtk3/sample/misc/treemodelfilter.rb b/gtk3/sample/misc/treemodelfilter.rb index 213d63f..94d6350 100644 --- a/gtk3/sample/misc/treemodelfilter.rb +++ b/gtk3/sample/misc/treemodelfilter.rb @@ -9,12 +9,6 @@ =end require 'gtk3' -if str = Gtk.check_version(2, 4, 0) - puts "This sample requires GTK+ 2.4.0 or later" - puts str - exit -end - ls = Gtk::ListStore.new(String, Integer) column1 = Gtk::TreeViewColumn.new("data1", diff --git a/gtk3/sample/misc/treeview.rb b/gtk3/sample/misc/treeview.rb index b2038f5..00aa4ef 100644 --- a/gtk3/sample/misc/treeview.rb +++ b/gtk3/sample/misc/treeview.rb @@ -23,7 +23,7 @@ root_iter[2] = Gdk::Color.new(0, 65535, 0) root_iter[3] = 5.0 # column 2 -root_iter[4] = window.render_icon(Gtk::Stock::NEW, Gtk::IconSize::DIALOG, "icon1") +root_iter[4] = window.render_icon_pixbuf(Gtk::Stock::NEW, Gtk::IconSize::IconSize::DIALOG) child_iter1 = model.append(root_iter) child_iter1[0] = "Child_Iter1" @@ -32,7 +32,7 @@ child_iter1[2] = Gdk::Color.new(65535, 0, 0) child_iter1[3] = 3.0 # column 2 -child_iter1[4] = window.render_icon(Gtk::Stock::OPEN, Gtk::IconSize::MENU, "icon2") +child_iter1[4] = window.render_icon_pixbuf(Gtk::Stock::OPEN, Gtk::IconSize::IconSize::MENU) child_iter2 = model.append(root_iter) child_iter2[0] = "Child_Iter2" @@ -41,7 +41,7 @@ child_iter2[2] = Gdk::Color.new(0, 0, 65535) child_iter2[3] = 0.9 # column 2 -child_iter2[4] = window.render_icon(Gtk::Stock::QUIT, Gtk::IconSize::BUTTON, "icon3") +child_iter2[4] = window.render_icon_pixbuf(Gtk::Stock::QUIT, Gtk::IconSize::IconSize::BUTTON) # Create view diff --git a/gtk3/sample/misc/uimanager.rb b/gtk3/sample/misc/uimanager.rb index dfe0f51..f8ea2c6 100644 --- a/gtk3/sample/misc/uimanager.rb +++ b/gtk3/sample/misc/uimanager.rb @@ -12,17 +12,7 @@ require 'gtk3' -if str = Gtk.check_version(2, 4, 0) - puts "This sample requires GTK+ 2.4.0 or later" - puts str - exit -end - -if not Gtk.check_version(2, 12, 0) - recentmenuitem = "" -else - recentmenuitem = "" -end +recentmenuitem = "" ui_info = %Q[ @@ -120,15 +110,13 @@ actiongroup.add_radio_actions(color_radio_actions, 1) do |action, current| end actiongroup.add_radio_actions(shape_radio_actions, 2, callback_radio) -if not Gtk.check_version(2, 12, 0) - action = Gtk::RecentAction.new('recent', 'Open Recent', nil, 'gtk-open') - [ 'item-activated', 'activate' ].each { |signal| - action.signal_connect(signal) { |action| - puts "`Recent' #{signal}, uri=#{action.current_uri || 'no item selected'}" - } - } - actiongroup.add_action(action) -end +action = Gtk::RecentAction.new('recent', {:label => 'recent',:tooltip => 'Open Recent', :manager => Gtk::RecentManager::default}) +[ 'item-activated', 'activate' ].each { |signal| + action.signal_connect(signal) { |action| + puts "`Recent' #{signal}, uri=#{action.current_uri || 'no item selected'}" + } +} +actiongroup.add_action(action) uimanager = Gtk::UIManager.new uimanager.insert_action_group(actiongroup, 0) @@ -136,7 +124,7 @@ window.add_accel_group(uimanager.accel_group) uimanager.add_ui(ui_info) -vbox = Gtk::VBox.new +vbox = Gtk::Box.new(:vertical) vbox.pack_start(uimanager["/MenuBar"], false, false) vbox.pack_start(Gtk::Label.new("Gtk::UIManager Sample")) window.add(vbox) diff --git a/gtk3/sample/misc/uimanager2.rb b/gtk3/sample/misc/uimanager2.rb index 3810d25..1965fe7 100644 --- a/gtk3/sample/misc/uimanager2.rb +++ b/gtk3/sample/misc/uimanager2.rb @@ -9,12 +9,6 @@ =end require 'gtk3' -if str = Gtk.check_version(2, 4, 0) - puts "This sample requires GTK+ 2.4.0 or later" - puts str - exit -end - callback = Proc.new {|actiongroup, action| puts "`#{action.name}' is clicked. " if action.is_a? Gtk::ToggleAction diff --git a/gtk3/sample/misc/window.rb b/gtk3/sample/misc/window.rb index 92c78f7..3ae373a 100644 --- a/gtk3/sample/misc/window.rb +++ b/gtk3/sample/misc/window.rb @@ -13,7 +13,7 @@ require 'gtk3' window = Gtk::Window.new("Gtk::Window sample") window.signal_connect("destroy"){Gtk.main_quit} -button = Gtk::Button.new("Hello World") +button = Gtk::Button.new(:label => "Hello World") button.signal_connect("clicked") do puts "hello world" Gtk.main_quit diff --git a/gtk3/sample/testgtk/fontselection.rb b/gtk3/sample/testgtk/fontselection.rb index de8b227..c414a3c 100644 --- a/gtk3/sample/testgtk/fontselection.rb +++ b/gtk3/sample/testgtk/fontselection.rb @@ -32,7 +32,7 @@ Original Copyright: require 'sample' -class FontSelectionSample < Gtk::FontSelectionDialog +class FontSelectionSample < Gtk::FontChooserDialog include Sample extend SampleClass