Class: Ruflet::UI::Controls::RufletComponents::MapControl
- Includes:
- MapValueNormalizer
- Defined in:
- lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb
Constant Summary collapse
- TYPE =
"map".freeze
- WIRE =
"Map".freeze
Constants inherited from Control
Instance Attribute Summary
Attributes inherited from Control
#children, #id, #props, #runtime_page, #type, #wire_id
Instance Method Summary collapse
- #center_on(point = nil, coordinates: nil, zoom: nil, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) ⇒ Object
-
#initialize(id: nil, layers: nil, initial_center: nil, initial_zoom: nil, min_zoom: nil, max_zoom: nil, interaction_configuration: nil, keep_alive: nil, bgcolor: nil, data: nil, expand: nil, height: nil, key: nil, visible: nil, width: nil, on_init: nil, on_long_press: nil, on_position_change: nil, on_secondary_tap: nil, on_tap: nil) ⇒ MapControl
constructor
A new instance of MapControl.
- #move_to(destination = nil, coordinates: nil, zoom: nil, rotation: nil, offset: nil, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) ⇒ Object
- #reset_rotation(timeout: 10, on_result: nil) ⇒ Object
- #rotate_from(degree, timeout: 10, on_result: nil) ⇒ Object
- #zoom_in(delta: nil, timeout: 10, on_result: nil) ⇒ Object
- #zoom_out(delta: nil, timeout: 10, on_result: nil) ⇒ Object
- #zoom_to(zoom, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) ⇒ Object
Methods inherited from Control
#emit, generate_id, #has_handler?, #on, #to_patch
Constructor Details
#initialize(id: nil, layers: nil, initial_center: nil, initial_zoom: nil, min_zoom: nil, max_zoom: nil, interaction_configuration: nil, keep_alive: nil, bgcolor: nil, data: nil, expand: nil, height: nil, key: nil, visible: nil, width: nil, on_init: nil, on_long_press: nil, on_position_change: nil, on_secondary_tap: nil, on_tap: nil) ⇒ MapControl
Returns a new instance of MapControl.
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 34 def initialize(id: nil, layers: nil, initial_center: nil, initial_zoom: nil, min_zoom: nil, max_zoom: nil, interaction_configuration: nil, keep_alive: nil, bgcolor: nil, data: nil, expand: nil, height: nil, key: nil, visible: nil, width: nil, on_init: nil, on_long_press: nil, on_position_change: nil, on_secondary_tap: nil, on_tap: nil) props = {} props[:layers] = layers unless layers.nil? props[:initial_center] = normalize_map_coordinate(initial_center) unless initial_center.nil? props[:initial_zoom] = initial_zoom unless initial_zoom.nil? props[:min_zoom] = min_zoom unless min_zoom.nil? props[:max_zoom] = max_zoom unless max_zoom.nil? props[:interaction_configuration] = interaction_configuration unless interaction_configuration.nil? props[:keep_alive] = keep_alive unless keep_alive.nil? props[:bgcolor] = bgcolor unless bgcolor.nil? props[:data] = data unless data.nil? props[:expand] = unless .nil? props[:height] = height unless height.nil? props[:key] = key unless key.nil? props[:visible] = visible unless visible.nil? props[:width] = width unless width.nil? props[:on_init] = on_init unless on_init.nil? props[:on_long_press] = on_long_press unless on_long_press.nil? props[:on_position_change] = on_position_change unless on_position_change.nil? props[:on_secondary_tap] = on_secondary_tap unless on_secondary_tap.nil? props[:on_tap] = on_tap unless on_tap.nil? super(type: TYPE, id: id, **props) end |
Instance Method Details
#center_on(point = nil, coordinates: nil, zoom: nil, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 58 def center_on(point = nil, coordinates: nil, zoom: nil, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) point ||= coordinates invoke_map( "center_on", args: compact_args( "point" => normalize_map_coordinate(point), "zoom" => zoom, "duration" => duration, "curve" => curve, "cancel_ongoing_animations" => cancel_ongoing_animations ), timeout: timeout, on_result: on_result ) end |
#move_to(destination = nil, coordinates: nil, zoom: nil, rotation: nil, offset: nil, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) ⇒ Object
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 74 def move_to(destination = nil, coordinates: nil, zoom: nil, rotation: nil, offset: nil, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) destination ||= coordinates invoke_map( "move_to", args: compact_args( "destination" => normalize_map_coordinate(destination), "zoom" => zoom, "rotation" => rotation, "offset" => offset, "duration" => duration, "curve" => curve, "cancel_ongoing_animations" => cancel_ongoing_animations ), timeout: timeout, on_result: on_result ) end |
#reset_rotation(timeout: 10, on_result: nil) ⇒ Object
118 119 120 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 118 def reset_rotation(timeout: 10, on_result: nil) invoke_map("reset_rotation", timeout: timeout, on_result: on_result) end |
#rotate_from(degree, timeout: 10, on_result: nil) ⇒ Object
114 115 116 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 114 def rotate_from(degree, timeout: 10, on_result: nil) invoke_map("rotate_from", args: { "degree" => degree }, timeout: timeout, on_result: on_result) end |
#zoom_in(delta: nil, timeout: 10, on_result: nil) ⇒ Object
106 107 108 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 106 def zoom_in(delta: nil, timeout: 10, on_result: nil) invoke_map("zoom_in", args: compact_args("delta" => delta), timeout: timeout, on_result: on_result) end |
#zoom_out(delta: nil, timeout: 10, on_result: nil) ⇒ Object
110 111 112 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 110 def zoom_out(delta: nil, timeout: 10, on_result: nil) invoke_map("zoom_out", args: compact_args("delta" => delta), timeout: timeout, on_result: on_result) end |
#zoom_to(zoom, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) ⇒ Object
92 93 94 95 96 97 98 99 100 101 102 103 104 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/map_controls.rb', line 92 def zoom_to(zoom, duration: nil, curve: nil, cancel_ongoing_animations: nil, timeout: 10, on_result: nil) invoke_map( "zoom_to", args: compact_args( "zoom" => zoom, "duration" => duration, "curve" => curve, "cancel_ongoing_animations" => cancel_ongoing_animations ), timeout: timeout, on_result: on_result ) end |