Class: Ruflet::UI::Controls::RufletComponents::BrowserContextMenuControl

Inherits:
Control
  • Object
show all
Defined in:
lib/ruflet_ui/ruflet/ui/controls/shared/browsercontextmenu_control.rb

Constant Summary collapse

TYPE =
"browsercontextmenu".freeze
WIRE =
"BrowserContextMenu".freeze

Constants inherited from Control

Control::HOST_EXPANDED_TYPES

Instance Attribute Summary

Attributes inherited from Control

#children, #id, #props, #runtime_page, #type, #wire_id

Instance Method Summary collapse

Methods inherited from Control

#emit, generate_id, #has_handler?, #on, #to_patch

Constructor Details

#initialize(id: nil, data: nil, disabled: nil, key: nil) ⇒ BrowserContextMenuControl

Returns a new instance of BrowserContextMenuControl.



11
12
13
14
15
16
17
# File 'lib/ruflet_ui/ruflet/ui/controls/shared/browsercontextmenu_control.rb', line 11

def initialize(id: nil, data: nil, disabled: nil, key: nil)
  props = {}
  props[:data] = data unless data.nil?
  props[:disabled] = disabled unless disabled.nil?
  props[:key] = key unless key.nil?
  super(type: TYPE, id: id, **props)
end

Instance Method Details

#disable(timeout: 10, on_result: nil) ⇒ Object



19
20
21
22
# File 'lib/ruflet_ui/ruflet/ui/controls/shared/browsercontextmenu_control.rb', line 19

def disable(timeout: 10, on_result: nil)
  props["disabled"] = true
  runtime_page&.invoke(self, "disable_menu", timeout: timeout, on_result: on_result)
end

#enable(timeout: 10, on_result: nil) ⇒ Object



24
25
26
27
# File 'lib/ruflet_ui/ruflet/ui/controls/shared/browsercontextmenu_control.rb', line 24

def enable(timeout: 10, on_result: nil)
  props["disabled"] = false
  runtime_page&.invoke(self, "enable_menu", timeout: timeout, on_result: on_result)
end