Class: Glimmer::LibUI::ControlProxy::FontButtonProxy
- Inherits:
-
Glimmer::LibUI::ControlProxy
- Object
- Glimmer::LibUI::ControlProxy
- Glimmer::LibUI::ControlProxy::FontButtonProxy
- Defined in:
- lib/glimmer/libui/control_proxy/font_button_proxy.rb
Overview
Proxy for LibUI font button objects
Follows the Proxy Design Pattern
Constant Summary
Constants inherited from Glimmer::LibUI::ControlProxy
BOOLEAN_PROPERTIES, KEYWORD_ALIASES, STRING_PROPERTIES, TransformProxy
Instance Attribute Summary
Attributes inherited from Glimmer::LibUI::ControlProxy
#args, #block, #content_added, #custom_control, #keyword, #libui, #options, #parent_custom_control, #parent_proxy, #slot
Instance Method Summary collapse
- #data_bind_read(property, model_binding) ⇒ Object
- #data_bind_write(property, model_binding) ⇒ Object
- #destroy ⇒ Object
- #family ⇒ Object
- #font ⇒ Object
- #italic ⇒ Object
- #size ⇒ Object
- #stretch ⇒ Object
- #weight ⇒ Object
Methods inherited from Glimmer::LibUI::ControlProxy
#append_properties, #append_property, #bind_content, #can_handle_listener?, constant_symbol, #content, control_proxies, control_proxy_class, create, #custom_listener_name_aliases, #custom_listener_names, #default_destroy, #deregister_all_custom_listeners, #deregister_custom_listeners, descendant_keyword_constant_map, #destroy_child, #enabled, exists?, #handle_custom_listener, #handle_listener, #has_custom_listener?, image_proxies, #initialize, keyword, #libui_api_keyword, #listeners, #listeners_for, main_window_proxy, map_descendant_keyword_constants_for, menu_proxies, #method_missing, new_control, #notify_custom_listeners, #post_add_content, #post_initialize_child, reset_descendant_keyword_constant_map, #respond_to?, #respond_to_libui?, #send_to_libui, #visible, #window_proxy
Methods included from DataBindable
#data_bind, #data_binding_model_attribute_observer_registrations
Methods included from Parent
#children, #post_initialize_child
Constructor Details
This class inherits a constructor from Glimmer::LibUI::ControlProxy
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Glimmer::LibUI::ControlProxy
Instance Method Details
#data_bind_read(property, model_binding) ⇒ Object
68 69 70 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 68 def data_bind_read(property, model_binding) # No Op end |
#data_bind_write(property, model_binding) ⇒ Object
72 73 74 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 72 def data_bind_write(property, model_binding) handle_listener('on_changed') { model_binding.call(font) } if property == 'font' end |
#destroy ⇒ Object
63 64 65 66 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 63 def destroy ::LibUI.(@font_descriptor) unless @font_descriptor.nil? super end |
#family ⇒ Object
43 44 45 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 43 def family font[:family] end |
#font ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 31 def font @font_descriptor ||= ::LibUI::FFI::FontDescriptor.malloc ::LibUI.(@libui, @font_descriptor) { family: @font_descriptor.Family.to_s, size: @font_descriptor.Size, weight: Glimmer::LibUI.enum_value_to_symbol(:text_weight, @font_descriptor.Weight), italic: Glimmer::LibUI.enum_value_to_symbol(:text_italic, @font_descriptor.Italic), stretch: Glimmer::LibUI.enum_value_to_symbol(:text_stretch, @font_descriptor.Stretch), } end |
#italic ⇒ Object
55 56 57 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 55 def italic font[:italic] end |
#size ⇒ Object
47 48 49 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 47 def size font[:size] end |
#stretch ⇒ Object
59 60 61 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 59 def stretch font[:stretch] end |
#weight ⇒ Object
51 52 53 |
# File 'lib/glimmer/libui/control_proxy/font_button_proxy.rb', line 51 def weight font[:weight] end |