module TopinambourActions
Those are all the actions that can be called via the interface with the label 'app.my_action' for a method my_action.
Public Class Methods
add_action_to(name, application)
click to toggle source
# File lib/actions.rb, line 28 def self.add_action_to(name, application) method_name = "generate_#{name}_action".to_sym return false unless methods.include?(method_name) action = method(method_name).call(application) application.add_action(action) end
add_actions_to(application)
click to toggle source
# File lib/actions.rb, line 94 def self.add_actions_to(application) %w(quit about preferences term_copy term_paste shortcuts reload_css_config).each do |name| add_action_to(name, application) end end
generate_about_action(application)
click to toggle source
# File lib/actions.rb, line 35 def self.generate_about_action(application) action = generate_action("about") do |_act, _param| application.windows[0].display_about end action end
generate_action(name) { |act, param| ... }
click to toggle source
# File lib/actions.rb, line 20 def self.generate_action(name) action = Gio::SimpleAction.new(name) action.signal_connect("activate") do |act, param| yield(act, param) if block_given? end action end
generate_preferences_action(application)
click to toggle source
# File lib/actions.rb, line 42 def self.generate_preferences_action(application) action = generate_action("preferences") do |_act, _param| dialog = TopinambourPreferences.new(application.windows.first) dialog.show_all end action end
generate_quit_action(application)
click to toggle source
# File lib/actions.rb, line 50 def self.generate_quit_action(application) action = generate_action("quit") do |_act, _param| application.quit end action end
generate_reload_css_config_action(application)
click to toggle source
# File lib/actions.rb, line 87 def self.generate_reload_css_config_action(application) action = generate_action("reload_css_config") do |_act, _param| application.reload_css_config end action end
generate_shortcuts_action(application)
click to toggle source
# File lib/actions.rb, line 80 def self.generate_shortcuts_action(application) action = generate_action("shortcuts") do |_act, _param| application.windows[0].show_shortcuts end action end
generate_term_copy_action(application)
click to toggle source
# File lib/actions.rb, line 57 def self.generate_term_copy_action(application) action = generate_action("term_copy") do |_act, _param| term = application.windows[0].terminal event = Gtk.current_event _match, regex_type = term.match_check_event(event) if term.has_selection? || regex_type == -1 term.copy_clipboard else clipboard = Gtk::Clipboard.get_default(Gdk::Display.default) clipboard.text = term.last_match unless term.last_match.nil? end end action end
generate_term_paste_action(application)
click to toggle source
# File lib/actions.rb, line 73 def self.generate_term_paste_action(application) action = generate_action("term_paste") do |_act, _param| application.windows[0].terminal.paste_clipboard end action end