module Rabbit::Action

Public Class Methods

action_group(canvas, name="Rabbit") click to toggle source
# File lib/rabbit/action.rb, line 70
def action_group(canvas, name="Rabbit")
  Stock.init(canvas)
  group = Gtk::ActionGroup.new(name)
  group.set_translate_func(&method(:_))
  group.add_actions(to_gtk_actions(@@actions, canvas))
  actions = to_gtk_actions(@@toggle_actions, canvas, true)
  group.add_toggle_actions(actions)
  add_radio_actions(group, @@radio_actions, canvas)
  group
end
method_added(name) click to toggle source
# File lib/rabbit/action.rb, line 55
def method_added(name)
  case name.to_s
  when /_config$/
    # ignore
  when /^act_(radio_.+)$/
    @@radio_actions << [Utils.to_class_name($1), name]
  when /^act_(toggle_.+)$/
    @@toggle_actions << [Utils.to_class_name($1), name]
  when /^act_(.+)$/
    @@actions << [Utils.to_class_name($1), name]
  when /^update_(.+)_status$/
    @@update_status_methods << name
  end
end
update_status(canvas) click to toggle source
# File lib/rabbit/action.rb, line 81
def update_status(canvas)
  @@update_status_methods.each do |method|
    __send__(method, canvas)
  end
end

Private Class Methods

add_radio_actions(group, actions, canvas) click to toggle source
# File lib/rabbit/action.rb, line 111
def add_radio_actions(group, actions, canvas)
  actions.each do |name, action|
    default_value = nil
    gtk_actions = methods(false).find_all do |method_name|
      /^#{action}_(?:.+)_config$/ =~ method_name
    end.collect do |config_method|
      /^act_(.*)_config$/ =~ config_method
      action_name = Utils.to_class_name($1)
      config = {:label => action_name}
      __send__(config_method, config, canvas)
      default_value = config[:value] if config[:default]
      [
        action_name,
        config[:stock_id],
        config[:label],
        config[:accelerator],
        config[:tooltip],
        config[:value],
      ]
    end

    callback = method(action)
    group.add_radio_actions(gtk_actions, default_value) do |act, current|
      guard(canvas) do
        callback.call(act, current, group, canvas)
      end
    end
  end
end
guard(canvas) { || ... } click to toggle source
# File lib/rabbit/action.rb, line 141
def guard(canvas)
  begin
    yield
  rescue Exception
    canvas.logger.warn($!)
  end
end
to_gtk_actions(actions, canvas, toggle=false) click to toggle source
# File lib/rabbit/action.rb, line 88
def to_gtk_actions(actions, canvas, toggle=false)
  actions.collect do |name, action|
    config = {:label => name}
    config_method = "#{action}_config"
    __send__(config_method, config, canvas) if respond_to?(config_method)
    callback = method(action)
    result = [
      name,
      config[:stock_id],
      config[:label],
      config[:accelerator],
      config[:tooltip],
      Proc.new do |group, act|
        guard(canvas) do
          callback.call(act, group, canvas)
        end
      end
    ]
    result << config[:is_active] if toggle
    result
  end
end

Public Instance Methods

act_cache_all_slides(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 171
def act_cache_all_slides(action, group, canvas)
  canvas.cache_all_slides
end
act_cache_all_slides_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 174
def act_cache_all_slides_config(config, canvas)
  config[:label] = N_("Cache all slides")
end
act_change_graffiti_color(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 202
def act_change_graffiti_color(action, group, canvas)
  canvas.change_graffiti_color
end
act_change_graffiti_color_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 205
def act_change_graffiti_color_config(config, canvas)
  config[:label] = N_("Change graffiti color")
  config[:stock_id] = Gtk::Stock::SELECT_COLOR
end
act_change_theme(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 95
def act_change_theme(action, group, canvas)
  if action.block_given?
    entry, block = action.call(action, group, canvas)
    canvas.apply_theme(entry.name, &block)
  end
end
act_change_theme_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 101
def act_change_theme_config(config, canvas)
  config[:label] = N_("Change theme")
end
act_clear_graffiti(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 186
def act_clear_graffiti(action, group, canvas)
  canvas.clear_graffiti
end
act_clear_graffiti_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 189
def act_clear_graffiti_config(config, canvas)
  config[:label] = N_("Clear graffiti")
  config[:stock_id] = Gtk::Stock::CLEAR
end
act_clear_slide(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 133
def act_clear_slide(action, group, canvas)
  canvas.clear_slide
end
act_clear_slide_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 136
def act_clear_slide_config(config, canvas)
  config[:label] = N_("Clear slide")
  config[:stock_id] = Gtk::Stock::CLEAR
end
act_expand_hole(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 236
def act_expand_hole(action, group, canvas)
  canvas.expand_hole
end
act_expand_hole_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 239
def act_expand_hole_config(config, canvas)
  config[:label] = N_("Expand hole")
end
act_first_slide(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 36
def act_first_slide(action, group, canvas)
  canvas.move_to_first
end
act_first_slide_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 39
def act_first_slide_config(config, canvas)
  config[:label] = N_("First slide")
  config[:stock_id] = Gtk::Stock::GOTO_FIRST
end
act_graffiti(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 178
def act_graffiti(action, group, canvas)
  update_graffiti_action_status(canvas)
end
act_graffiti_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 181
def act_graffiti_config(config, canvas)
  config[:label] = N_("Graffiti")
  config[:stock_id] = Gtk::Stock::EDIT
end
act_iconify(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 87
def act_iconify(action, group, canvas)
  canvas.iconify
end
act_iconify_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 90
def act_iconify_config(config, canvas)
  config[:label] = N_("Iconify")
  config[:stock_id] = Stock::RABBIT
end
act_jump_to(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 52
def act_jump_to(action, group, canvas)
  if action.block_given?
    canvas.move_to_if_can(action.call(action, group, canvas))
  end
end
act_jump_to_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 57
def act_jump_to_config(config, canvas)
  config[:label] = N_("Jump to")
  config[:stock_id] = Gtk::Stock::JUMP_TO
end
act_last_slide(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 44
def act_last_slide(action, group, canvas)
  canvas.move_to_last
end
act_last_slide_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 47
def act_last_slide_config(config, canvas)
  config[:label] = N_("Last slide")
  config[:stock_id] = Gtk::Stock::GOTO_LAST
end
act_log_level(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 298
def act_log_level(action, group, canvas)
end
act_log_level_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 300
def act_log_level_config(config, canvas)
  config[:label] = N_("Log Level")
end
act_merge_theme(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 105
def act_merge_theme(action, group, canvas)
  if action.block_given?
    entry, block = action.call(action, group, canvas)
    canvas.merge_theme(entry.name, &block)
  end
end
act_merge_theme_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 111
def act_merge_theme_config(config, canvas)
  config[:label] = N_("Merge theme")
end
act_narrow_hole(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 243
def act_narrow_hole(action, group, canvas)
  canvas.narrow_hole
end
act_narrow_hole_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 246
def act_narrow_hole_config(config, canvas)
  config[:label] = N_("Narrow hole")
end
act_next(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 4
def act_next(action, group, canvas)
  canvas.move_to_next_if_can
end
act_next_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 7
def act_next_config(config, canvas)
  config[:label] = N_("Next")
  config[:stock_id] = Gtk::Stock::GO_FORWARD
end
act_next_slide(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 20
def act_next_slide(action, group, canvas)
  canvas.move_to_next_slide_if_can
end
act_next_slide_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 23
def act_next_slide_config(config, canvas)
  config[:label] = N_("Next slide")
  config[:stock_id] = Gtk::Stock::GO_FORWARD
end
act_previous(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 12
def act_previous(action, group, canvas)
  canvas.move_to_previous_if_can
end
act_previous_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 15
def act_previous_config(config, canvas)
  config[:label] = N_("Previous")
  config[:stock_id] = Gtk::Stock::GO_BACK
end
act_previous_slide(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 28
def act_previous_slide(action, group, canvas)
  canvas.move_to_previous_slide_if_can
end
act_previous_slide_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 31
def act_previous_slide_config(config, canvas)
  config[:label] = N_("Previous slide")
  config[:stock_id] = Gtk::Stock::GO_BACK
end
act_print(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 79
def act_print(action, group, canvas)
  canvas.print
end
act_print_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 82
def act_print_config(config, canvas)
  config[:label] = N_("Print")
  config[:stock_id] = Gtk::Stock::PRINT
end
act_quit(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 156
def act_quit(action, group, canvas)
  if !canvas.processing? or
      canvas.confirm(_("Now processing... Do you really quit?"))
    canvas.quit
  end
end
act_quit_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 162
def act_quit_config(config, canvas)
  config[:label] = quit_action_label(canvas)
  config[:stock_id] = Gtk::Stock::QUIT
end
act_radio_blank(action, current, group, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 9
def act_radio_blank(action, current, group, canvas)
  case @@radio_blank_values.rassoc(current.value)[0]
  when :white
    canvas.toggle_whiteout
  when :black
    canvas.toggle_blackout
  when :show
    if canvas.whiteouting?
      canvas.toggle_whiteout
    elsif canvas.blackouting?
      canvas.toggle_blackout
    end
  else
    p "????"
  end
end
act_radio_blank_blackout_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 31
def act_radio_blank_blackout_config(config, canvas)
  config[:label] = N_("Blackout")
  config[:value] = @@radio_blank_values.assoc(:black)[1]
  config[:default] = canvas.blackouting?
end
act_radio_blank_show_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 36
def act_radio_blank_show_config(config, canvas)
  config[:label] = N_("Show")
  config[:value] = @@radio_blank_values.assoc(:show)[1]
  config[:default] = !canvas.whiteouting? && !canvas.blackouting?
end
act_radio_blank_whiteout_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 26
def act_radio_blank_whiteout_config(config, canvas)
  config[:label] = N_("Whiteout")
  config[:value] = @@radio_blank_values.assoc(:white)[1]
  config[:default] = canvas.whiteouting?
end
act_radio_log_level(action, current, group, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 43
def act_radio_log_level(action, current, group, canvas)
  canvas.logger.level = current.value
end
act_radio_log_level_debug_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 47
def act_radio_log_level_debug_config(config, canvas)
  config[:label] = N_("Debug")
  config[:value] = Logger::Severity::DEBUG
  config[:default] = canvas.logger.level == config[:value]
end
act_radio_log_level_error_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 62
def act_radio_log_level_error_config(config, canvas)
  config[:label] = N_("Error")
  config[:value] = Logger::Severity::ERROR
  config[:default] = canvas.logger.level == config[:value]
end
act_radio_log_level_fatal_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 67
def act_radio_log_level_fatal_config(config, canvas)
  config[:label] = N_("Fatal")
  config[:value] = Logger::Severity::FATAL
  config[:default] = canvas.logger.level == config[:value]
end
act_radio_log_level_info_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 52
def act_radio_log_level_info_config(config, canvas)
  config[:label] = N_("Info")
  config[:value] = Logger::Severity::INFO
  config[:default] = canvas.logger.level == config[:value]
end
act_radio_log_level_unknown_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 72
def act_radio_log_level_unknown_config(config, canvas)
  config[:label] = N_("Unknown")
  config[:value] = Logger::Severity::UNKNOWN
  config[:default] = canvas.logger.level == config[:value]
end
act_radio_log_level_warning_config(config, canvas) click to toggle source
# File lib/rabbit/action/radio.rb, line 57
def act_radio_log_level_warning_config(config, canvas)
  config[:label] = N_("Warning")
  config[:value] = Logger::Severity::WARNING
  config[:default] = canvas.logger.level == config[:value]
end
act_redraw(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 125
def act_redraw(action, group, canvas)
  canvas.redraw
end
act_redraw_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 128
def act_redraw_config(config, canvas)
  config[:label] = N_("Redraw")
  config[:stock_id] = Gtk::Stock::REFRESH
end
act_reload_theme(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 115
def act_reload_theme(action, group, canvas)
  block = nil
  block = action.call(action, group, canvas) if action.block_given?
  canvas.reload_theme(&block)
end
act_reload_theme_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 120
def act_reload_theme_config(config, canvas)
  config[:label] = N_("Reload theme")
  config[:stock_id] = Gtk::Stock::REFRESH
end
act_reset_adjustment(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 220
def act_reset_adjustment(action, group, canvas)
  canvas.reset_adjustment
end
act_reset_adjustment_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 223
def act_reset_adjustment_config(config, canvas)
  config[:label] = N_("Reset adjustment")
  config[:stock_id] = Gtk::Stock::CLEAR
end
act_reset_timer(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 228
def act_reset_timer(action, group, canvas)
  canvas.reset_timer
end
act_reset_timer_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 231
def act_reset_timer_config(config, canvas)
  config[:label] = N_("Reset timer")
  config[:stock_id] = Gtk::Stock::CLEAR
end
act_save_as_image(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 71
def act_save_as_image(action, group, canvas)
  canvas.save_as_image
end
act_save_as_image_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 74
def act_save_as_image_config(config, canvas)
  config[:label] = N_("Save as image")
  config[:stock_id] = Gtk::Stock::SAVE
end
act_search_slide_backward(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 258
def act_search_slide_backward(action, group, canvas)
  canvas.search_slide(false)
  update_saarch_action_status(canvas)
end
act_search_slide_backward_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 262
def act_search_slide_backward_config(config, canvas)
  config[:label] = N_("Search slide backward")
end
act_search_slide_backward_next(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 274
def act_search_slide_backward_next(action, group, canvas)
  canvas.search_slide(false)
  update_saarch_action_status(canvas)
end
act_search_slide_backward_next_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 278
def act_search_slide_backward_next_config(config, canvas)
  config[:label] = N_("Search slide backward next")
end
act_search_slide_forward(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 250
def act_search_slide_forward(action, group, canvas)
  canvas.search_slide(true)
  update_saarch_action_status(canvas)
end
act_search_slide_forward_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 254
def act_search_slide_forward_config(config, canvas)
  config[:label] = N_("Search slide forward")
end
act_search_slide_forward_next(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 266
def act_search_slide_forward_next(action, group, canvas)
  canvas.search_slide(true)
  update_saarch_action_status(canvas)
end
act_search_slide_forward_next_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 270
def act_search_slide_forward_next_config(config, canvas)
  config[:label] = N_("Search slide forward next")
end
act_stop_slide_search_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 286
def act_stop_slide_search_config(config, canvas)
  config[:label] = N_("Stop slide search")
end
act_toggle_blackout(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 15
def act_toggle_blackout(action, group, canvas)
  if canvas.blackouting?
    canvas.activate("RadioBlankShow")
  else
    canvas.activate("RadioBlankBlackout")
  end
end
act_toggle_blackout_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 22
def act_toggle_blackout_config(config, canvas)
  config[:label] = N_("Blackout")
end
act_toggle_full_screen(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 34
def act_toggle_full_screen(action, group, canvas)
  canvas.toggle_fullscreen
end
act_toggle_full_screen_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 37
def act_toggle_full_screen_config(config, canvas)
  config[:label] = N_("Full screen")
  if Gtk::Stock.const_defined?(:FULLSCREEN)
    config[:stock_id] = Gtk::Stock::FULLSCREEN
  else
    config[:stock_id] = Gtk::Stock::ZOOM_FIT
  end
end
act_toggle_graffiti_mode(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 46
def act_toggle_graffiti_mode(action, group, canvas)
  canvas.toggle_graffiti_mode
end
act_toggle_graffiti_mode_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 49
def act_toggle_graffiti_mode_config(config, canvas)
  config[:label] = N_("Graffiti mode")
  config[:stock_id] = Gtk::Stock::EDIT
end
act_toggle_index_mode(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 26
def act_toggle_index_mode(action, group, canvas)
  canvas.toggle_index_mode
end
act_toggle_index_mode_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 29
def act_toggle_index_mode_config(config, canvas)
  config[:label] = N_("Index mode")
  config[:stock_id] = Gtk::Stock::INDEX
end
act_toggle_info_window(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 54
def act_toggle_info_window(action, group, canvas)
  canvas.toggle_info_window
end
act_toggle_info_window_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 57
def act_toggle_info_window_config(config, canvas)
  config[:label] = N_("Information window")
end
act_toggle_magnifier(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 68
def act_toggle_magnifier(action, group, canvas)
  canvas.toggle_magnifier
end
act_toggle_magnifier_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 71
def act_toggle_magnifier_config(config, canvas)
  config[:label] = N_("Magnifier")
end
act_toggle_spotlight(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 61
def act_toggle_spotlight(action, group, canvas)
  canvas.toggle_spotlight
end
act_toggle_spotlight_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 64
def act_toggle_spotlight_config(config, canvas)
  config[:label] = N_("Spotlight")
end
act_toggle_terminal(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 75
def act_toggle_terminal(action, group, canvas)
  canvas.toggle_terminal
end
act_toggle_terminal_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 78
def act_toggle_terminal_config(config, canvas)
  config[:label] = N_("Terminal")
end
act_toggle_whiteout(action, group, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 4
def act_toggle_whiteout(action, group, canvas)
  if canvas.whiteouting?
    canvas.activate("RadioBlankShow")
  else
    canvas.activate("RadioBlankWhiteout")
  end
end
act_toggle_whiteout_config(config, canvas) click to toggle source
# File lib/rabbit/action/toggle.rb, line 11
def act_toggle_whiteout_config(config, canvas)
  config[:label] = N_("Whiteout")
end
act_undo_graffiti(action, group, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 194
def act_undo_graffiti(action, group, canvas)
  canvas.undo_graffiti
end
act_undo_graffiti_config(config, canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 197
def act_undo_graffiti_config(config, canvas)
  config[:label] = N_("Undo graffiti")
  config[:stock_id] = Gtk::Stock::UNDO
end
quit_action_label(canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 152
def quit_action_label(canvas)
  canvas.processing? ? @@quit_with_confirmation_label : @@quit_label
end
update_graffiti_action_status(canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 210
def update_graffiti_action_status(canvas)
  graffiti_available = canvas.graffiti_mode? || canvas.have_graffiti?
  canvas.action("Graffiti").sensitive = graffiti_available
  #canvas.action("ClearGraffiti").sensitive = canvas.have_graffiti?
  #canvas.action("UndoGraffiti").sensitive = canvas.can_undo_graffiti?
  canvas.action("ClearGraffiti").sensitive = graffiti_available
  canvas.action("UndoGraffiti").sensitive = graffiti_available
  canvas.action("ChangeGraffitiColor").sensitive = graffiti_available
end
update_move_slide_action_status(canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 62
def update_move_slide_action_status(canvas)
  canvas.action("Previous").sensitive = canvas.have_previous?
  canvas.action("Next").sensitive = canvas.have_next?
  canvas.action("PreviousSlide").sensitive = canvas.have_previous_slide?
  canvas.action("NextSlide").sensitive = canvas.have_next_slide?
  canvas.action("FirstSlide").sensitive = !canvas.first_slide?
  canvas.action("LastSlide").sensitive = !canvas.last_slide?
end
update_processing_action_status(canvas) click to toggle source
# File lib/rabbit/action.rb, line 151
def update_processing_action_status(canvas)
  canvas.action("ToggleIndexMode").sensitive = !canvas.processing?
  canvas.action("CacheAllSlides").sensitive = !canvas.processing?
  canvas.action("SaveAsImage").sensitive = !canvas.processing?
  canvas.action("Print").sensitive = !canvas.processing?
end
update_quit_action_status(canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 167
def update_quit_action_status(canvas)
  canvas.action("Quit").label = _(quit_action_label(canvas))
end
update_saarch_action_status(canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 290
def update_saarch_action_status(canvas)
  canvas.action("SearchSlideForward").sensitive = !canvas.searching?
  canvas.action("SearchSlideBackward").sensitive = !canvas.searching?
  canvas.action("SearchSlideForwardNext").sensitive = canvas.searching?
  canvas.action("SearchSlideBackwardNext").sensitive = canvas.searching?
  canvas.action("StopSlideSearch").sensitive = canvas.searching?
end
update_theme_action_status(canvas) click to toggle source
# File lib/rabbit/action/basic.rb, line 141
def update_theme_action_status(canvas)
  not_applying = !canvas.applying?
  canvas.action("ReloadTheme").sensitive = not_applying
  canvas.action("ChangeTheme").sensitive = not_applying
  canvas.action("MergeTheme").sensitive = not_applying
  canvas.action("CacheAllSlides").sensitive = not_applying
  canvas.action("ToggleFullScreen").sensitive = not_applying
end