Class: Motion::Xray::UIPlugin
- Defined in:
- lib/motion-xray/plugins/ui_plugin.rb
Instance Attribute Summary
Attributes inherited from Plugin
Instance Method Summary collapse
- #edit(target) ⇒ Object
-
#initialize ⇒ UIPlugin
constructor
A new instance of UIPlugin.
- #plugin_view(canvas) ⇒ Object
Methods inherited from Plugin
#get_plugin_view, #hide, name, #show, #xray_name
Constructor Details
#initialize ⇒ UIPlugin
Returns a new instance of UIPlugin.
6 7 8 |
# File 'lib/motion-xray/plugins/ui_plugin.rb', line 6 def initialize @editor_instances = [] end |
Instance Method Details
#edit(target) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/motion-xray/plugins/ui_plugin.rb', line 16 def edit(target) super @editors.subviews.each &:removeFromSuperview @editor_instances = [] properties = @target.xray sections = properties.keys properties.each do |section, editors| section_view = XraySectionHeader.alloc.initWithFrame([[0, 0], [Xray.ui.full_screen_width, 20]]) section_view.text = section @editors << section_view editors.each do |property, editor_class| next unless editor_class editor_instance = editor_class.with_target(@target, property:property) @editor_instances << editor_instance section_view.tracking_view << editor_instance.get_edit_view(@editors.bounds.size.width) end @editors << section_view.tracking_view end @editors.layoutIfNeeded end |
#plugin_view(canvas) ⇒ Object
10 11 12 13 14 |
# File 'lib/motion-xray/plugins/ui_plugin.rb', line 10 def plugin_view(canvas) @editors = XrayTypewriterView.alloc.initWithFrame(canvas.bounds) @editors.scroll_view = canvas @editors end |