TGUI
0.9.5
|
Combo box widget. More...
#include <TGUI/Widgets/ComboBox.hpp>
Public Types | |
enum class | ExpandDirection { Down , Up , Automatic } |
The side where the list will be displayed. More... | |
typedef std::shared_ptr< ComboBox > | Ptr |
Shared widget pointer. | |
typedef std::shared_ptr< const ComboBox > | ConstPtr |
Shared constant widget pointer. | |
Public Types inherited from tgui::Widget | |
typedef std::shared_ptr< Widget > | Ptr |
Shared widget pointer. | |
typedef std::shared_ptr< const Widget > | ConstPtr |
Shared constant widget pointer. | |
Public Member Functions | |
ComboBox (const char *typeName="ComboBox", bool initRenderer=true) | |
ComboBox (const ComboBox &other) | |
ComboBox (ComboBox &&other) | |
ComboBox & | operator= (const ComboBox &other) |
ComboBox & | operator= (ComboBox &&other) |
ComboBoxRenderer * | getSharedRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
const ComboBoxRenderer * | getSharedRenderer () const |
ComboBoxRenderer * | getRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
const ComboBoxRenderer * | getRenderer () const |
void | setSize (const Layout2d &size) override |
Changes the size of the combo box. | |
void | setEnabled (bool enabled) override |
Enables or disables the widget. | |
void | setItemsToDisplay (std::size_t nrOfItemsInListToDisplay) |
Changes the number of items that are displayed in the list. | |
std::size_t | getItemsToDisplay () const |
Returns the number of items that are displayed in the list. | |
std::size_t | addItem (const String &itemName, const String &id="") |
Adds an item to the list, so that it can be selected later. | |
bool | setSelectedItem (const String &itemName) |
Selects an item from the list. | |
bool | setSelectedItemById (const String &id) |
Selects an item from the list. | |
bool | setSelectedItemByIndex (std::size_t index) |
Selects an item in the list. | |
void | deselectItem () |
Deselects the selected item. | |
bool | removeItem (const String &itemName) |
Removes the item from the list with the given name. | |
bool | removeItemById (const String &id) |
Removes the item that were added with the given id. | |
bool | removeItemByIndex (std::size_t index) |
Removes the item from the list. | |
void | removeAllItems () |
Removes all items from the list. | |
String | getItemById (const String &id) const |
Returns the item name of the item with the given id. | |
String | getSelectedItem () const |
Returns the currently selected item. | |
String | getSelectedItemId () const |
Gets the id of the selected item. | |
int | getSelectedItemIndex () const |
Gets the index of the selected item. | |
bool | changeItem (const String &originalValue, const String &newValue) |
Changes an item with name originalValue to newValue. | |
bool | changeItemById (const String &id, const String &newValue) |
Changes the name of an item with the given id to newValue. | |
bool | changeItemByIndex (std::size_t index, const String &newValue) |
Changes the name of an item at the given index to newValue. | |
std::size_t | getItemCount () const |
Returns the amount of items in the combo box. | |
std::vector< String > | getItems () const |
Returns a copy of the items in the combo box. | |
std::vector< String > | getItemIds () const |
Returns a copy of the item ids in the combo box. | |
void | setMaximumItems (std::size_t maximumItems=0) |
Changes the maximum items that the combo box can contain. | |
std::size_t | getMaximumItems () const |
Returns the maximum items that the combo box can contain. | |
void | setTextSize (unsigned int textSize) override |
Changes the text size of the items. | |
unsigned int | getTextSize () const override |
Returns the text size of the items. | |
void | setDefaultText (const String &defaultText) |
Changes the default text of the combo box. This is the text drawn when no item is selected. | |
const String & | getDefaultText () const |
Returns the default text of the combo box. This is the text drawn when no item is selected. | |
void | setExpandDirection (ExpandDirection direction) |
Changes the side where the list is displayed. | |
ExpandDirection | getExpandDirection () const |
Returns the side where the list is displayed. | |
bool | contains (const String &item) const |
Returns whether the combo box contains the given item. | |
bool | containsId (const String &id) const |
Returns whether the combo box contains an item with the given id. | |
void | setChangeItemOnScroll (bool changeOnScroll) |
Changes whether the mouse wheel can be used to change the selected item while the list is closed. | |
bool | getChangeItemOnScroll () const |
Returns whether the mouse wheel can be used to change the selected item while the list is closed. | |
void | setParent (Container *parent) override |
bool | isMouseOnWidget (Vector2f pos) const override |
Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget. | |
void | leftMousePressed (Vector2f pos) override |
bool | mouseWheelScrolled (float delta, Vector2f pos) override |
void | draw (BackendRenderTargetBase &target, RenderStates states) const override |
Draw the widget to a render target. | |
virtual void | setSize (const Layout2d &size) |
Changes the size of the widget. | |
void | setSize (Layout width, Layout height) |
Changes the size of the widget. | |
Public Member Functions inherited from tgui::Widget | |
Widget (const char *typeName, bool initRenderer) | |
Widget (const Widget &) | |
Copy constructor. | |
Widget (Widget &&) | |
Move constructor. | |
virtual | ~Widget () |
Destructor. | |
Widget & | operator= (const Widget &) |
Overload of copy assignment operator. | |
Widget & | operator= (Widget &&) |
Move assignment. | |
void | setRenderer (std::shared_ptr< RendererData > rendererData) |
Sets a new renderer for the widget. The renderer determines how the widget looks. | |
WidgetRenderer * | getSharedRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
const WidgetRenderer * | getSharedRenderer () const |
WidgetRenderer * | getRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
const WidgetRenderer * | getRenderer () const |
virtual void | setPosition (const Layout2d &position) |
sets the position of the widget | |
void | setPosition (Layout x, Layout y) |
Sets the position of the widget. | |
Vector2f | getPosition () const |
Gets the position of the widget. | |
void | setSize (Layout width, Layout height) |
Changes the size of the widget. | |
void | setWidth (Layout width) |
Changes the width of the widget. | |
void | setHeight (Layout height) |
Changes the height of the widget. | |
Vector2f | getSize () const |
Returns the size of the widget. | |
virtual Vector2f | getFullSize () const |
Returns the entire size that the widget is using. | |
virtual Vector2f | getAbsolutePosition () const |
Get the absolute position of the top-left point of the widget instead of the relative position to its parent. | |
virtual Vector2f | getWidgetOffset () const |
Returns the distance between the position where the widget is drawn and where the widget is placed. | |
void | setOrigin (float x, float y) |
Sets the origin point on which the position, scale and rotation is based. | |
void | setOrigin (Vector2f origin) |
Sets the origin point on which the position, scale and rotation is based. | |
Vector2f | getOrigin () const |
Returns the relative origin point on which the position, scale and rotation is based. | |
void | setScale (Vector2f scaleFactors) |
Sets the scaling to be applied to the widget. | |
void | setScale (Vector2f scaleFactors, Vector2f origin) |
Sets the scaling to be applied to the widget. | |
void | setScale (float scaleFactor) |
Sets the scaling to be applied to the widget. | |
void | setScale (float scaleFactor, Vector2f origin) |
Sets the scaling to be applied to the widget. | |
Vector2f | getScale () const |
Returns the scaling to be applied to the widget. | |
Vector2f | getScaleOrigin () const |
Returns the origin used for scaling. | |
void | setRotation (float angle) |
Sets the rotation to be applied to the widget. | |
void | setRotation (float angle, Vector2f origin) |
Sets the rotation to be applied to the widget. | |
float | getRotation () const |
Returns the rotation to be applied to the widget. | |
Vector2f | getRotationOrigin () const |
Returns the origin used for rotations. | |
void | showWithEffect (ShowEffectType type, Duration duration) |
Shows the widget by introducing it with an animation. | |
void | hideWithEffect (ShowEffectType type, Duration duration) |
Hides the widget by making it leave with an animation. | |
virtual void | setVisible (bool visible) |
Shows or hides a widget. | |
bool | isVisible () const |
Returns true when the widget is visible. | |
bool | isEnabled () const |
Returns true when the widget is enabled. | |
virtual void | setFocused (bool focused) |
Focus or unfocus the widget. | |
bool | isFocused () const |
Returns true when the widget is focused and false otherwise. | |
const String & | getWidgetType () const |
Returns the type of the widget. | |
Container * | getParent () const |
Returns a pointer to the parent widget. | |
GuiBase * | getParentGui () const |
Returns a pointer to the gui to which this widget belongs. | |
bool | isAnimationPlaying () const |
Returns whether there is an active animation (started with showWithEffect or hideWithEffect) | |
void | moveToFront () |
Places the widget before all other widgets. | |
void | moveToBack () |
Places the widget behind all other widgets. | |
void | setUserData (Any userData) |
Stores some data into the widget. | |
template<typename T > | |
T | getUserData () const |
Returns data stored in the widget. | |
void | setInheritedFont (const Font &font) |
Sets the font of the widget that is used when no font is set in the renderer. | |
const Font & | getInheritedFont () const |
Returns the font of the widget that is used when no font is set in the renderer. | |
void | setInheritedOpacity (float opacity) |
Sets the opacity of the widget that will be multiplied with the opacity set in the renderer. | |
float | getInheritedOpacity () const |
Returns the opacity of the widget that is multiplied with the opacity set in the renderer. | |
void | setToolTip (Widget::Ptr toolTip) |
Sets the tool tip that should be displayed when hovering over the widget. | |
Widget::Ptr | getToolTip () const |
Returns the tool tip that is displayed when hovering over the widget. | |
void | setWidgetName (const String &name) |
Changes the name of a widget. | |
String | getWidgetName () const |
Returns the name of a widget. | |
void | setMouseCursor (Cursor::Type cursor) |
Changes which mouse cursor is shown when hovering over the widget. | |
Cursor::Type | getMouseCursor () const |
Returns which mouse cursor is shown when hovering over the widget. | |
void | setFocusable (bool focusable) |
Changes whether a widget could be focused. | |
bool | isFocusable () const |
Returns whether a widget could be focused. | |
virtual bool | canGainFocus () const |
Returns whether the widget can currently gain focus. | |
bool | isContainer () const |
Returns whether the widget is a container widget or not. | |
bool | isDraggableWidget () const |
Returns whether the widget has something to drag (e.g. slider or scrollbar thumbs) | |
bool | isMouseDown () const |
Returns whether the left mouse button has been pressed on top of the widget. | |
virtual bool | updateTime (Duration elapsedTime) |
virtual void | leftMouseReleased (Vector2f pos) |
virtual void | rightMousePressed (Vector2f pos) |
virtual void | rightMouseReleased (Vector2f pos) |
virtual void | mousePressed (Event::MouseButton button, Vector2f pos) |
virtual void | mouseReleased (Event::MouseButton button, Vector2f pos) |
virtual void | mouseMoved (Vector2f pos) |
virtual void | keyPressed (const Event::KeyEvent &event) |
virtual void | textEntered (char32_t key) |
virtual void | mouseNoLongerOnWidget () |
virtual void | leftMouseButtonNoLongerDown () |
virtual void | rightMouseButtonNoLongerDown () |
virtual Widget::Ptr | askToolTip (Vector2f mousePos) |
const Layout2d & | getPositionLayout () const |
const Layout2d & | getSizeLayout () const |
void | bindPositionLayout (Layout *layout) |
void | unbindPositionLayout (Layout *layout) |
void | bindSizeLayout (Layout *layout) |
void | unbindSizeLayout (Layout *layout) |
template<typename WidgetType > | |
std::shared_ptr< const WidgetType > | cast () const |
Downcast const widget. | |
template<typename WidgetType > | |
std::shared_ptr< WidgetType > | cast () |
Downcast widget. | |
Static Public Member Functions | |
static ComboBox::Ptr | create () |
Creates a new combo box widget. | |
static ComboBox::Ptr | copy (ComboBox::ConstPtr comboBox) |
Makes a copy of another combo box. | |
Public Attributes | |
SignalItem | onItemSelect = {"ItemSelected"} |
An item was selected in the combo box. Optional parameter: selected item or its index. | |
Public Attributes inherited from tgui::Widget | |
SignalVector2f | onPositionChange = {"PositionChanged"} |
The position of the widget changed. Optional parameter: new position. | |
SignalVector2f | onSizeChange = {"SizeChanged"} |
The size of the widget changed. Optional parameter: new size. | |
Signal | onFocus = {"Focused"} |
The widget was focused. | |
Signal | onUnfocus = {"Unfocused"} |
The widget was unfocused. | |
Signal | onMouseEnter = {"MouseEntered"} |
The mouse entered the widget. | |
Signal | onMouseLeave = {"MouseLeft"} |
The mouse left the widget. | |
SignalShowEffect | onAnimationFinish = {"AnimationFinished"} |
SignalShowEffect | onShowEffectFinish = {"ShowEffectFinished"} |
A show or hide animation finished. Optional parameters: animation type, new widget visibility or both. | |
Protected Member Functions | |
Signal & | getSignal (String signalName) override |
Retrieves a signal based on its name. | |
void | rendererChanged (const String &property) override |
Function called when one of the properties of the renderer is changed. | |
std::unique_ptr< DataIO::Node > | save (SavingRenderersMap &renderers) const override |
Saves the widget as a tree node in order to save it to a file. | |
void | load (const std::unique_ptr< DataIO::Node > &node, const LoadingRenderersMap &renderers) override |
Loads the widget from a tree of nodes. | |
Vector2f | getInnerSize () const |
void | updateListBoxHeight () |
void | showListBox () |
void | hideListBox () |
void | initListBox () |
Widget::Ptr | clone () const override |
Makes a copy of the widget if you don't know its exact type. | |
Protected Member Functions inherited from tgui::Widget | |
virtual void | mouseEnteredWidget () |
This function is called when the mouse enters the widget. | |
virtual void | mouseLeftWidget () |
This function is called when the mouse leaves the widget. | |
Protected Attributes | |
std::size_t | m_nrOfItemsToDisplay = 0 |
ListBox::Ptr | m_listBox = ListBox::create() |
Text | m_text |
Text | m_defaultText |
int | m_previousSelectedItemIndex = -1 |
bool | m_changeItemOnScroll = false |
ExpandDirection | m_expandDirection = ExpandDirection::Automatic |
Sprite | m_spriteBackground |
Sprite | m_spriteBackgroundDisabled |
Sprite | m_spriteArrow |
Sprite | m_spriteArrowHover |
Sprite | m_spriteArrowDisabled |
Borders | m_bordersCached |
Padding | m_paddingCached |
Color | m_borderColorCached |
Color | m_backgroundColorCached |
Color | m_backgroundColorDisabledCached |
Color | m_arrowColorCached |
Color | m_arrowColorHoverCached |
Color | m_arrowColorDisabledCached |
Color | m_arrowBackgroundColorCached |
Color | m_arrowBackgroundColorHoverCached |
Color | m_arrowBackgroundColorDisabledCached |
Color | m_textColorCached |
Color | m_textColorDisabledCached |
Protected Attributes inherited from tgui::Widget | |
String | m_type |
String | m_name |
Layout2d | m_position |
Layout2d | m_size |
unsigned int | m_textSize = 0 |
Vector2f | m_origin |
Optional< Vector2f > | m_rotationOrigin |
Optional< Vector2f > | m_scaleOrigin |
Vector2f | m_scaleFactors = {1, 1} |
float | m_rotationDeg = 0 |
Vector2f | m_prevPosition |
Vector2f | m_prevSize |
std::unordered_set< Layout * > | m_boundPositionLayouts |
std::unordered_set< Layout * > | m_boundSizeLayouts |
bool | m_enabled = true |
bool | m_visible = true |
Container * | m_parent = nullptr |
GuiBase * | m_parentGui = nullptr |
bool | m_mouseHover = false |
bool | m_mouseDown = false |
bool | m_focused = false |
bool | m_focusable = true |
Duration | m_animationTimeElapsed |
bool | m_draggableWidget = false |
bool | m_containerWidget = false |
Widget::Ptr | m_toolTip = nullptr |
aurora::CopiedPtr< WidgetRenderer > | m_renderer = nullptr |
std::vector< std::shared_ptr< priv::Animation > > | m_showAnimations |
Font | m_inheritedFont |
float | m_inheritedOpacity = 1 |
Font | m_fontCached = Font::getGlobalFont() |
float | m_opacityCached = 1 |
bool | m_transparentTextureCached = false |
Any | m_userData |
Cursor::Type | m_mouseCursor = Cursor::Type::Arrow |
std::function< void(const String &property)> | m_rendererChangedCallback = [this](const String& property){ rendererChangedCallback(property); } |
Additional Inherited Members | |
Protected Types inherited from tgui::Widget | |
using | SavingRenderersMap = std::map< const Widget *, std::pair< std::unique_ptr< DataIO::Node >, String > > |
using | LoadingRenderersMap = std::map< String, std::shared_ptr< RendererData > > |
Combo box widget.
|
strong |
Adds an item to the list, so that it can be selected later.
itemName | The name of the item you want to add (this is the text that will be displayed inside the combo box) |
id | Optional unique id given to this item for the purpose to later identifying this item |
Changes an item with name originalValue to newValue.
originalValue | The name of the item which you want to change |
newValue | The new name for that item |
In case the names are not unique, only the first item with that name will be changed.
Changes the name of an item with the given id to newValue.
id | The unique id of the item which you want to change |
newValue | The new name for that item |
In case the id is not unique, only the first item with that id will be changed.
bool tgui::ComboBox::changeItemByIndex | ( | std::size_t | index, |
const String & | newValue | ||
) |
Changes the name of an item at the given index to newValue.
index | The index of the item which you want to change |
newValue | The new name for that item |
|
inlineoverrideprotectedvirtual |
Makes a copy of the widget if you don't know its exact type.
This function should only be used when you don't know the type of the widget. If you know what kind of widget you are copying, you should use the copy function.
Implements tgui::Widget.
bool tgui::ComboBox::contains | ( | const String & | item | ) | const |
Returns whether the combo box contains the given item.
bool tgui::ComboBox::containsId | ( | const String & | id | ) | const |
Returns whether the combo box contains an item with the given id.
|
static |
Makes a copy of another combo box.
comboBox | The other combo box |
|
static |
Creates a new combo box widget.
void tgui::ComboBox::deselectItem | ( | ) |
Deselects the selected item.
The combo box will be empty after this function is called.
|
overridevirtual |
Draw the widget to a render target.
target | Render target to draw to |
states | Current render states |
Implements tgui::Widget.
bool tgui::ComboBox::getChangeItemOnScroll | ( | ) | const |
Returns whether the mouse wheel can be used to change the selected item while the list is closed.
const String & tgui::ComboBox::getDefaultText | ( | ) | const |
Returns the default text of the combo box. This is the text drawn when no item is selected.
ExpandDirection tgui::ComboBox::getExpandDirection | ( | ) | const |
Returns the side where the list is displayed.
Returns the item name of the item with the given id.
id | The id of the item that was given to it when it was added |
In case the id is not unique, the first item with that id will be returned.
std::size_t tgui::ComboBox::getItemCount | ( | ) | const |
Returns the amount of items in the combo box.
std::vector< String > tgui::ComboBox::getItemIds | ( | ) | const |
Returns a copy of the item ids in the combo box.
Items that were not given an id simply have an empty string as id.
std::vector< String > tgui::ComboBox::getItems | ( | ) | const |
Returns a copy of the items in the combo box.
std::size_t tgui::ComboBox::getItemsToDisplay | ( | ) | const |
Returns the number of items that are displayed in the list.
When there is no scrollbar then this is the maximum number of items. If there is one, then it will only become visible when there are more items than this number.
When set to zero then all items are shown (then there will never be a scrollbar).
std::size_t tgui::ComboBox::getMaximumItems | ( | ) | const |
Returns the maximum items that the combo box can contain.
ComboBoxRenderer * tgui::ComboBox::getRenderer | ( | ) |
Returns the renderer, which gives access to functions that determine how the widget is displayed.
String tgui::ComboBox::getSelectedItem | ( | ) | const |
Returns the currently selected item.
String tgui::ComboBox::getSelectedItemId | ( | ) | const |
Gets the id of the selected item.
int tgui::ComboBox::getSelectedItemIndex | ( | ) | const |
Gets the index of the selected item.
ComboBoxRenderer * tgui::ComboBox::getSharedRenderer | ( | ) |
Returns the renderer, which gives access to functions that determine how the widget is displayed.
Retrieves a signal based on its name.
signalName | Name of the signal |
Exception | when the name does not match any signal |
Reimplemented from tgui::Widget.
|
overridevirtual |
|
overridevirtual |
Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget.
Implements tgui::Widget.
|
overridevirtual |
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Loads the widget from a tree of nodes.
Reimplemented from tgui::Widget.
|
overridevirtual |
Reimplemented from tgui::Widget.
bool tgui::ComboBox::removeItem | ( | const String & | itemName | ) |
Removes the item from the list with the given name.
itemName | The item to remove |
In case the names are not unique, only the first item with that name will be removed.
bool tgui::ComboBox::removeItemById | ( | const String & | id | ) |
Removes the item that were added with the given id.
id | Id that was given to the addItem function |
In case the id is not unique, only the first item with that id will be removed.
bool tgui::ComboBox::removeItemByIndex | ( | std::size_t | index | ) |
Removes the item from the list.
index | Index of the item in the list |
|
overrideprotectedvirtual |
Function called when one of the properties of the renderer is changed.
property | Name of the property that was changed |
Reimplemented from tgui::Widget.
|
overrideprotectedvirtual |
Saves the widget as a tree node in order to save it to a file.
Reimplemented from tgui::Widget.
void tgui::ComboBox::setChangeItemOnScroll | ( | bool | changeOnScroll | ) |
Changes whether the mouse wheel can be used to change the selected item while the list is closed.
changeOnScroll | Should the selected item be changed when scrolling while the mouse is on top of the combo box? |
void tgui::ComboBox::setDefaultText | ( | const String & | defaultText | ) |
Changes the default text of the combo box. This is the text drawn when no item is selected.
defaultText | The new default text |
|
overridevirtual |
Enables or disables the widget.
enabled | Is the widget enabled? |
The disabled widget will no longer receive events and thus no longer send callbacks. All widgets are enabled by default.
Reimplemented from tgui::Widget.
void tgui::ComboBox::setExpandDirection | ( | ExpandDirection | direction | ) |
Changes the side where the list is displayed.
direction | On which side of the combo box should the list be displayed? |
void tgui::ComboBox::setItemsToDisplay | ( | std::size_t | nrOfItemsInListToDisplay | ) |
Changes the number of items that are displayed in the list.
nrOfItemsInListToDisplay | The maximum number of items to display when the list of items is shown |
When there is no scrollbar then this is the maximum number of items. If there is one, then it will only become visible when there are more items than this number.
When set to zero then all items are shown (then there will never be a scrollbar).
void tgui::ComboBox::setMaximumItems | ( | std::size_t | maximumItems = 0 | ) |
Changes the maximum items that the combo box can contain.
maximumItems | The maximum items inside the combo box. When the maximum is set to 0 then the limit will be disabled |
If no scrollbar was loaded then there is always a limitation because there will be a limited space for the items.
|
overridevirtual |
Reimplemented from tgui::Widget.
bool tgui::ComboBox::setSelectedItem | ( | const String & | itemName | ) |
Selects an item from the list.
When adding items to the combo box with the addItem function, none of them will be selected. If you don't want the combo box to stay empty until the user selects something, but you want a default item instead, then you can use this function to select an item.
itemName | The item you want to select |
In case the names are not unique, the first item with that name will be selected.
bool tgui::ComboBox::setSelectedItemById | ( | const String & | id | ) |
Selects an item from the list.
When adding items to the combo box with the addItem function, none of them will be selected. If you don't want the combo box to stay empty until the user selects something, but you want a default item instead, then you can use this function to select an item.
id | Unique id passed to addItem |
In case the id would not be unique, the first item with that id will be selected.
bool tgui::ComboBox::setSelectedItemByIndex | ( | std::size_t | index | ) |
Selects an item in the list.
index | Index of the item in the list |
|
virtual |
Changes the size of the widget.
size | Size of the widget |
Usage examples:
Reimplemented from tgui::Widget.
|
overridevirtual |
Changes the size of the combo box.
This size does not include the borders.
size | The new size of the combo box |
Reimplemented from tgui::Widget.
Changes the size of the widget.
width | Width of the widget |
height | Height of the widget |
|
overridevirtual |
Changes the text size of the items.
textSize | The size size of the text |
When passing 0 to this function, the text will be auto-sized to nicely fit inside the combo box.
Reimplemented from tgui::Widget.