class Glimmer::SWT::TableColumnProxy
Constants
- STYLE
Attributes
editor[R]
no_sort[R]
no_sort?[R]
sort_block[RW]
sort_by_block[RW]
sort_property[R]
text[R]
width[R]
Public Class Methods
new(parent, args, block)
click to toggle source
Calls superclass method
# File lib/glimmer/swt/table_column_proxy.rb, line 26 def initialize(parent, args, block) @no_sort = args.delete(:no_sort) super(parent, args, block) unless no_sort? content { on_widget_selected { |event| parent.sort_by_column!(self) } } end end
Public Instance Methods
dom()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 101 def dom table_column_text = text table_column_id = id table_column_id_style = "width: #{width}px;" table_column_css_classes = css_classes table_column_css_classes << name @dom ||= html { th(id: table_column_id, style: table_column_id_style, class: table_column_css_classes.to_a.join(' ')) { span {table_column_text} span(class: sort_icon_class) } }.to_s end
editable?()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 83 def editable? !@editor&.include?(:none) end
editor=(*args)
click to toggle source
Sets editor (e.g. combo)
# File lib/glimmer/swt/table_column_proxy.rb, line 79 def editor=(*args) @editor = args end
element()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 64 def element 'th' end
observation_request_to_event_mapping()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 87 def observation_request_to_event_mapping { 'on_widget_selected' => { event: 'click', event_handler: -> (event_listener) { -> (event) { event_listener.call(event) redraw_sort_direction } } }, } end
parent_path()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 60 def parent_path parent.columns_path end
redraw_sort_direction()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 46 def redraw_sort_direction sort_icon_dom_element.attr('class', sort_icon_class) end
sort_direction()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 42 def sort_direction parent.sort_direction if parent.sort_column == self end
sort_icon_class()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 68 def sort_icon_class @sort_icon_class = 'sort-direction' @sort_icon_class += (sort_direction == SWTProxy[:up] ? ' ui-icon ui-icon-caret-1-n' : ' ui-icon ui-icon-caret-1-s') unless sort_direction.nil? @sort_icon_class end
sort_icon_dom_element()
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 74 def sort_icon_dom_element dom_element.find('.sort-direction') end
sort_property=(args)
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 38 def sort_property=(args) @sort_property = args unless args.empty? end
text=(value)
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 50 def text=(value) @text = value redraw end
width=(value)
click to toggle source
# File lib/glimmer/swt/table_column_proxy.rb, line 55 def width=(value) @width = value redraw end