class Glimmer::LibUI::ControlProxy::DateTimePickerProxy
Proxy for LibUI
date time picker objects
Follows the Proxy Design Pattern
Public Instance Methods
data_bind_write(property, model_binding)
click to toggle source
# File lib/glimmer/libui/control_proxy/date_time_picker_proxy.rb, line 68 def data_bind_write(property, model_binding) handle_listener('on_changed') { model_binding.call(time) } if property == 'time' end
destroy()
click to toggle source
Calls superclass method
Glimmer::LibUI::ControlProxy#destroy
# File lib/glimmer/libui/control_proxy/date_time_picker_proxy.rb, line 63 def destroy Fiddle.free @time unless @time.nil? super end
libui_api_keyword()
click to toggle source
# File lib/glimmer/libui/control_proxy/date_time_picker_proxy.rb, line 31 def libui_api_keyword 'date_time_picker' end
time(value = nil)
click to toggle source
# File lib/glimmer/libui/control_proxy/date_time_picker_proxy.rb, line 35 def time(value = nil) @time ||= ::LibUI::FFI::TM.malloc ::LibUI.date_time_picker_time(@libui, @time) if value.nil? { sec: @time.tm_sec, min: @time.tm_min, hour: @time.tm_hour, mday: @time.tm_mday, mon: @time.tm_mon + 1, year: @time.tm_year + 1900, wday: @time.tm_wday + 1, yday: @time.tm_yday + 1, dst: @time.tm_isdst == 1 } else @time.tm_sec = value[:sec] unless value[:sec].nil? @time.tm_min = value[:min] unless value[:min].nil? @time.tm_hour = value[:hour] unless value[:hour].nil? @time.tm_mday = value[:mday] unless value[:mday].nil? @time.tm_mon = value[:mon] - 1 unless value[:mon].nil? @time.tm_year = value[:year] - 1900 unless value[:year].nil? ::LibUI.date_time_picker_set_time(@libui, @time) end end