class Glimmer::SWT::ProgressBarProxy
Constants
- STYLE
Attributes
indeterminate[R]
indeterminate?[R]
maximum[R]
minimum[RW]
selection[R]
state[RW]
vertical[R]
vertical?[R]
Public Class Methods
new(parent, args, block)
click to toggle source
Calls superclass method
# File lib/glimmer/swt/progress_bar_proxy.rb, line 42 def initialize(parent, args, block) @vertical = args.detect { |arg| SWTProxy[arg] == SWTProxy[:vertical] } @indeterminate = args.detect { |arg| SWTProxy[arg] == SWTProxy[:indeterminate] } super(parent, args, block) # initialize manually if vertical dom_element.progressbar if horizontal? self.minimum = 0 self.selection = false if indeterminate? end
Public Instance Methods
dom()
click to toggle source
# File lib/glimmer/swt/progress_bar_proxy.rb, line 90 def dom progress_bar_id = id progress_bar_class = name progress_bar_class += ' vertical ui-progressbar ui-corner-all ui-widget ui-widget-content' if vertical? progress_bar_class += ' indeterminate' if indeterminate? @dom ||= html { div(id: progress_bar_id, class: progress_bar_class) { if vertical? div(class: 'ui-progressbar-value ui-corner-left ui-widget-header', style: 'height: 0%;') end } }.to_s end
element()
click to toggle source
# File lib/glimmer/swt/progress_bar_proxy.rb, line 82 def element 'div' end
horizontal()
click to toggle source
# File lib/glimmer/swt/progress_bar_proxy.rb, line 52 def horizontal !vertical end
Also aliased as: horizontal?
maximum=(value)
click to toggle source
# File lib/glimmer/swt/progress_bar_proxy.rb, line 64 def maximum=(value) @maximum = value if horizontal? dom_element.progressbar('option', 'max', @maximum - @minimum) end end
minimum=(value)
click to toggle source
# File lib/glimmer/swt/progress_bar_proxy.rb, line 57 def minimum=(value) @minimum = value # re-update maximum and selection since they depend on minimum self.maximum = @maximum if @maximum self.selection = @selection if @selection end
selection=(selection_value)
click to toggle source
# File lib/glimmer/swt/progress_bar_proxy.rb, line 71 def selection=(selection_value) @selection = selection_value if horizontal? value = @selection ? (@selection - @minimum) : @selection dom_element.progressbar('option', 'value', value) else value = ((@selection - @minimum) / (@maximum - @minimum)) * 100 selection_dom_element.css('height', "#{value}%") end end
selection_dom_element()
click to toggle source
# File lib/glimmer/swt/progress_bar_proxy.rb, line 86 def selection_dom_element dom_element.find('.ui-progressbar-value') end