Class: Glimmer::Tk::MenuProxy
- Inherits:
-
WidgetProxy
- Object
- WidgetProxy
- Glimmer::Tk::MenuProxy
- Defined in:
- lib/glimmer/tk/menu_proxy.rb
Constant Summary
Constants inherited from WidgetProxy
WidgetProxy::FONTS_PREDEFINED, WidgetProxy::HEXADECIMAL_CHARACTERS
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Attributes inherited from WidgetProxy
#args, #bind_ids, #children, #destroyed, #keyword, #parent_proxy, #tk
Attributes included from DraggableAndDroppable
Instance Method Summary collapse
- #application? ⇒ Boolean
- #help? ⇒ Boolean
-
#initialize(underscored_widget_name, parent_proxy, args, &block) ⇒ MenuProxy
constructor
A new instance of MenuProxy.
- #label ⇒ Object
- #post_add_content ⇒ Object
- #system? ⇒ Boolean
- #window? ⇒ Boolean
Methods inherited from WidgetProxy
#add_observer, #ancestor_proxies, #apply_style, #attribute_argument_normalizers, #attribute_setter, #clear_children, #content, create, #destroy, #disabled, #disabled=, #enabled, #enabled=, #event_generate, #font=, #get_attribute, #grid, #handle_listener, #has_attribute?, #has_attributes_attribute?, #has_state?, #hidden, #hidden=, #image_argument, #inspect, #method_missing, #normalize_attribute_arguments, #on, #post_initialize_child, #respond_to?, #root_parent_proxy, #set_attribute, #style=, tk_widget_class_for, #tk_widget_has_attribute_getter_setter?, #tk_widget_has_attribute_setter?, #toplevel_parent_proxy, #unbind_all, #visible, #visible=, #widget_attribute_listener_installers, #widget_custom_attribute_mapping, widget_exists?, widget_proxy_class
Methods included from DraggableAndDroppable
#drag_source=, #drop_target=, #handle_listener, #make_draggable, #make_droppable, #make_non_draggable, #make_non_droppable, #on_drag_start_block=, #on_drop_block=, #textvariable_defined?
Constructor Details
#initialize(underscored_widget_name, parent_proxy, args, &block) ⇒ MenuProxy
Returns a new instance of MenuProxy.
29 30 31 32 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 29 def initialize(, parent_proxy, args, &block) @options = args.last.is_a?(Hash) ? args.last : {} super end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Glimmer::Tk::WidgetProxy
Instance Attribute Details
#options ⇒ Object (readonly)
Returns the value of attribute options.
27 28 29 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 27 def @options end |
Instance Method Details
#application? ⇒ Boolean
72 73 74 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 72 def application? @args.first == :application end |
#help? ⇒ Boolean
60 61 62 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 60 def help? label == 'Help' end |
#label ⇒ Object
56 57 58 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 56 def label @options[:label] end |
#post_add_content ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 34 def post_add_content case @parent_proxy when ToplevelProxy if @keyword == 'menu_bar' @parent_proxy.tk['menu'] = @tk elsif @options[:bind].nil? || @options[:bind] if OS.mac? @parent_proxy.handle_listener('2') do |event| popup(event.x_root, event.y_root) end @parent_proxy.handle_listener('Control-1') do |event| popup(event.x_root, event.y_root) end else @parent_proxy.handle_listener('3') do |event| popup(event.x_root, event.y_root) end end end end end |
#system? ⇒ Boolean
68 69 70 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 68 def system? label == 'System' end |
#window? ⇒ Boolean
64 65 66 |
# File 'lib/glimmer/tk/menu_proxy.rb', line 64 def window? label == 'Window' end |