Class: Tgui::ListBox
- Inherits:
-
Widget
show all
- Defined in:
- lib/white_gold/dsl/list_box.rb,
lib/white_gold/generated/tgui-abi-loader.gf.rb
Defined Under Namespace
Classes: Item, SignalItem, Theme
Constant Summary
collapse
- @@auto_item_id =
"@/"
Constants included
from ApiChild
ApiChild::API_CHILD_PREFIX
Instance Attribute Summary
Attributes inherited from Widget
#page
Attributes inherited from ExternObject
#pointer
Instance Method Summary
collapse
Methods inherited from Widget
#_abi_ask_tool_tip, #_abi_can_gain_focus, _abi_finalizer, #_abi_finish_all_animations, #_abi_get_absolute_position, #_abi_get_boolean_renderer_property, #_abi_get_color_renderer_property, #_abi_get_float_renderer_property, #_abi_get_font_renderer_property, #_abi_get_full_size, #_abi_get_mouse_cursor, #_abi_get_name, #_abi_get_outline_renderer_property, #_abi_get_position, #_abi_get_size, #_abi_get_string_renderer_property, #_abi_get_text_size, #_abi_get_text_styles_renderer_property, #_abi_get_texture_renderer_property, #_abi_get_tool_tip, _abi_get_type, _abi_get_unshared, #_abi_get_widget_name, #_abi_hide_with_effect, #_abi_is_animation_playing, #_abi_is_container, #_abi_is_enabled, #_abi_is_focusable, #_abi_is_focused, #_abi_is_mouse_down, #_abi_is_visible, #_abi_key_pressed, #_abi_left_mouse_pressed, #_abi_left_mouse_released, #_abi_mouse_moved, #_abi_move_to_back, #_abi_move_to_front, #_abi_move_with_animation, #_abi_on_animation_finish, #_abi_on_focus, #_abi_on_mouse_enter, #_abi_on_mouse_leave, #_abi_on_position_change, #_abi_on_show_effect_finish, #_abi_on_size_change, #_abi_on_unfocus, #_abi_resize_with_animation, #_abi_right_mouse_pressed, #_abi_right_mouse_released, #_abi_scrolled, #_abi_set_boolean_renderer_property, #_abi_set_color_renderer_property, #_abi_set_enabled, #_abi_set_float_renderer_property, #_abi_set_focusable, #_abi_set_focused, #_abi_set_font_renderer_property, #_abi_set_height, #_abi_set_mouse_cursor, #_abi_set_outline_renderer_property, #_abi_set_position, #_abi_set_renderer, #_abi_set_size, #_abi_set_string_renderer_property, #_abi_set_text_size, #_abi_set_text_styles_renderer_property, #_abi_set_texture_renderer_property, #_abi_set_tool_tip, #_abi_set_visible, #_abi_set_widget_name, #_abi_set_width, #_abi_show_with_effect, #_abi_text_entered, api_attr, finalizer, #flags=, #height, #hide, #method_missing, #pack_animation_time, #renderer=, #respond_to?, #self_cast_up, self_renderer, #show, #theme_comp, #visible=, #width, #window
Methods included from ApiChild
#api_child
Methods included from BangDef
#def!
#bang_method_missing, #bang_object_stack, #bang_respond_to?, #self!, #upon!
abi_attr, abi_bit_enum, abi_def, abi_enum, #abi_pack, abi_signal, abi_static, #abi_unpack, callback_storage, callback_storage=, data_storage=, finalizer, global_callback_storage, global_callback_storage=, #initialized, self_abi_def, self_abi_def_setter
Methods included from Packer
#abi_pack, #abi_packer, #abi_packer_method_name
Methods included from Unpacker
#abi_unpack, #abi_unpacker, #abi_unpacker_method_name
Constructor Details
#initialize(*a, pointer: nil) ⇒ ListBox
Returns a new instance of ListBox.
1306
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1306
def initialize(*a, pointer: nil); Abi.call_arg_map! a; super(pointer: pointer || Abi.ABI_ListBox_new(*a)); initialized(); end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
in the class Tgui::Widget
Instance Method Details
#[](object) ⇒ Object
126
127
128
129
|
# File 'lib/white_gold/dsl/list_box.rb', line 126
def [](object)
id = self_find_id_by_object object
id ? Item.new(self, id) : nil
end
|
#_abi_add_item(*a) ⇒ Object
1307
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1307
def _abi_add_item(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_addItem(@pointer, *a); end
|
#_abi_change_item(*a) ⇒ Object
1323
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1323
def _abi_change_item(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_changeItem(@pointer, *a); end
|
#_abi_change_item_by_id(*a) ⇒ Object
1324
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1324
def _abi_change_item_by_id(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_changeItemById(@pointer, *a); end
|
#_abi_change_item_by_index(*a) ⇒ Object
1325
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1325
def _abi_change_item_by_index(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_changeItemByIndex(@pointer, *a); end
|
#_abi_contains(*a) ⇒ Object
1337
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1337
def _abi_contains(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_contains(@pointer, *a); end
|
#_abi_contains_id(*a) ⇒ Object
1338
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1338
def _abi_contains_id(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_containsId(@pointer, *a); end
|
#_abi_deselect_item(*a) ⇒ Object
1311
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1311
def _abi_deselect_item(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_deselectItem(@pointer, *a); end
|
1334
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1334
def _abi_get_auto_scroll(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getAutoScroll(@pointer, *a); end
|
#_abi_get_id_by_index(*a) ⇒ Object
1319
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1319
def _abi_get_id_by_index(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getIdByIndex(@pointer, *a); end
|
#_abi_get_index_by_id(*a) ⇒ Object
1318
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1318
def _abi_get_index_by_id(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getIndexById(@pointer, *a); end
|
#_abi_get_item_by_id(*a) ⇒ Object
1316
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1316
def _abi_get_item_by_id(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getItemById(@pointer, *a); end
|
#_abi_get_item_by_index(*a) ⇒ Object
1317
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1317
def _abi_get_item_by_index(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getItemByIndex(@pointer, *a); end
|
#_abi_get_item_count(*a) ⇒ Object
1326
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1326
def _abi_get_item_count(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getItemCount(@pointer, *a); end
|
#_abi_get_item_height(*a) ⇒ Object
1330
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1330
def _abi_get_item_height(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getItemHeight(@pointer, *a); end
|
#_abi_get_item_ids(*a) ⇒ Object
1328
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1328
def _abi_get_item_ids(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getItemIds(@pointer, *a); end
|
#_abi_get_items(*a) ⇒ Object
1327
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1327
def _abi_get_items(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getItems(@pointer, *a); end
|
#_abi_get_maximum_items(*a) ⇒ Object
1332
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1332
def _abi_get_maximum_items(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getMaximumItems(@pointer, *a); end
|
1340
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1340
def _abi_get_scrollbar_value(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getScrollbarValue(@pointer, *a); end
|
#_abi_get_selected_item(*a) ⇒ Object
1320
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1320
def _abi_get_selected_item(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getSelectedItem(@pointer, *a); end
|
#_abi_get_selected_item_id(*a) ⇒ Object
1321
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1321
def _abi_get_selected_item_id(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getSelectedItemId(@pointer, *a); end
|
#_abi_get_selected_item_index(*a) ⇒ Object
1322
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1322
def _abi_get_selected_item_index(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getSelectedItemIndex(@pointer, *a); end
|
#_abi_get_text_alignment(*a) ⇒ Object
1336
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1336
def _abi_get_text_alignment(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_getTextAlignment(@pointer, *a); end
|
#_abi_on_double_click(*a) ⇒ Object
1344
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1344
def _abi_on_double_click(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_onDoubleClick(@pointer, *a); end
|
#_abi_on_item_select(*a) ⇒ Object
1341
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1341
def _abi_on_item_select(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_onItemSelect(@pointer, *a); end
|
#_abi_on_mouse_press(*a) ⇒ Object
1342
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1342
def _abi_on_mouse_press(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_onMousePress(@pointer, *a); end
|
#_abi_on_mouse_release(*a) ⇒ Object
1343
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1343
def _abi_on_mouse_release(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_onMouseRelease(@pointer, *a); end
|
1345
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1345
def _abi_on_scroll(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_onScroll(@pointer, *a); end
|
#_abi_remove_all_items(*a) ⇒ Object
1315
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1315
def _abi_remove_all_items(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_removeAllItems(@pointer, *a); end
|
#_abi_remove_item(*a) ⇒ Object
1312
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1312
def _abi_remove_item(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_removeItem(@pointer, *a); end
|
#_abi_remove_item_by_id(*a) ⇒ Object
1313
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1313
def _abi_remove_item_by_id(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_removeItemById(@pointer, *a); end
|
#_abi_remove_item_by_index(*a) ⇒ Object
1314
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1314
def _abi_remove_item_by_index(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_removeItemByIndex(@pointer, *a); end
|
1333
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1333
def _abi_set_auto_scroll(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setAutoScroll(@pointer, *a); end
|
#_abi_set_item_height(*a) ⇒ Object
1329
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1329
def _abi_set_item_height(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setItemHeight(@pointer, *a); end
|
#_abi_set_maximum_items(*a) ⇒ Object
1331
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1331
def _abi_set_maximum_items(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setMaximumItems(@pointer, *a); end
|
1339
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1339
def _abi_set_scrollbar_value(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setScrollbarValue(@pointer, *a); end
|
#_abi_set_selected_item(*a) ⇒ Object
1308
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1308
def _abi_set_selected_item(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setSelectedItem(@pointer, *a); end
|
#_abi_set_selected_item_by_id(*a) ⇒ Object
1309
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1309
def _abi_set_selected_item_by_id(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setSelectedItemById(@pointer, *a); end
|
#_abi_set_selected_item_by_index(*a) ⇒ Object
1310
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1310
def _abi_set_selected_item_by_index(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setSelectedItemByIndex(@pointer, *a); end
|
#_abi_set_text_alignment(*a) ⇒ Object
1335
|
# File 'lib/white_gold/generated/tgui-abi-loader.gf.rb', line 1335
def _abi_set_text_alignment(*a); Abi.call_arg_map! a; Abi.ABI_ListBox_setTextAlignment(@pointer, *a); end
|
122
123
124
|
# File 'lib/white_gold/dsl/list_box.rb', line 122
def items
self_objects.values
end
|
#items=(items) ⇒ Object
115
116
117
118
119
120
|
# File 'lib/white_gold/dsl/list_box.rb', line 115
def items=(items)
remove_all
items.each do |item|
self.item item
end
end
|
#remove(object) ⇒ Object
107
108
109
110
111
112
113
|
# File 'lib/white_gold/dsl/list_box.rb', line 107
def remove object
id = self_find_id_by_object object
if id
_abi_remove_item_by_id abi_pack_string(id)
self_objects.delete id
end
end
|
#remove_all ⇒ Object
90
91
92
93
|
# File 'lib/white_gold/dsl/list_box.rb', line 90
def remove_all
self_objects.clear
_abi_remove_all_items
end
|
95
96
97
|
# File 'lib/white_gold/dsl/list_box.rb', line 95
def selected
return self_objects[abi_unpack_string _abi_get_selected_item_id]
end
|
#selected=(object) ⇒ Object
99
100
101
102
103
|
# File 'lib/white_gold/dsl/list_box.rb', line 99
def selected=(object)
id = self_find_id_by_object object
raise "`#{object}` is out of the listbox" if !id
_abi_set_selected_item_by_id abi_pack_string(id)
end
|
#self_find_id_by_object(object) ⇒ Object
141
142
143
|
# File 'lib/white_gold/dsl/list_box.rb', line 141
def self_find_id_by_object object
self_objects.find{ _2 == object }&.at(0)
end
|
#self_get_object_by_id(id) ⇒ Object
137
138
139
|
# File 'lib/white_gold/dsl/list_box.rb', line 137
def self_get_object_by_id id
return self_objects[id]
end
|