MyGUI_ComboBox.cpp
Go to the documentation of this file.
/*
* This source file is part of MyGUI. For the latest info, see http://mygui.info/
* Distributed under the MIT License
* (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
*/
#include "MyGUI_Precompiled.h"
#include "MyGUI_ComboBox.h"
#include "MyGUI_ControllerManager.h"
#include "MyGUI_InputManager.h"
#include "MyGUI_WidgetManager.h"
#include "MyGUI_Gui.h"
#include "MyGUI_ListBox.h"
#include "MyGUI_Button.h"
#include "MyGUI_ResourceSkin.h"
#include "MyGUI_LayerManager.h"
#include "MyGUI_LanguageManager.h"
namespace MyGUI
{
const float COMBO_ALPHA_MAX = ALPHA_MAX;
const float COMBO_ALPHA_MIN = ALPHA_MIN;
const float COMBO_ALPHA_COEF = 4.0f;
void ComboBox::initialiseOverride()
{
Base::initialiseOverride();
assignWidget(mButton, "Button");
if (mButton != nullptr)
{
mButton->eventMouseButtonPressed += newDelegate(this, &ComboBox::notifyButtonPressed);
}
assignWidget(mList, "List");
if (mList == nullptr)
{
std::string_view list_skin = getUserString("ListSkin");
std::string_view list_layer = getUserString("ListLayer");
mList = static_cast<ListBox*>(_createSkinWidget(
WidgetStyle::Popup,
ListBox::getClassTypeName(),
list_skin,
IntCoord(),
Align::Default,
list_layer));
}
if (mList != nullptr)
{
mList->setActivateOnClick(true);
mList->setVisible(false);
mList->eventKeyLostFocus += newDelegate(this, &ComboBox::notifyListLostFocus);
mList->eventListSelectAccept += newDelegate(this, &ComboBox::notifyListSelectAccept);
mList->eventListMouseItemActivate += newDelegate(this, &ComboBox::notifyListMouseItemActivate);
mList->eventListChangePosition += newDelegate(this, &ComboBox::notifyListChangePosition);
mList->setNeedToolTip(true);
mList->eventToolTip += newDelegate(this, &ComboBox::notifyToolTip);
}
// подписываем дочерние классы на скролл
if (mScrollViewClient != nullptr)
{
mScrollViewClient->eventMouseWheel += newDelegate(this, &ComboBox::notifyMouseWheel);
mScrollViewClient->eventMouseButtonPressed += newDelegate(this, &ComboBox::notifyMousePressed);
mScrollViewClient->setNeedToolTip(true);
mScrollViewClient->eventToolTip += newDelegate(this, &ComboBox::notifyToolTip);
}
// подписываемся на изменения текста
eventEditTextChange += newDelegate(this, &ComboBox::notifyEditTextChange);
}
void ComboBox::shutdownOverride()
{
mList = nullptr;
mButton = nullptr;
Base::shutdownOverride();
}
void ComboBox::notifyButtonPressed(Widget* _sender, int _left, int _top, MouseButton _id)
{
if (MouseButton::Left != _id)
return;
mDropMouse = true;
if (mListShow)
hideList();
else
showList();
}
void ComboBox::notifyListLostFocus(Widget* _sender, Widget* _new)
{
if (mDropMouse)
{
mDropMouse = false;
Widget* focus = InputManager::getInstance().getMouseFocusWidget();
// кнопка сама уберет список
if (focus == mButton)
return;
// в режиме дропа все окна учавствуют
if (mModeDrop && focus == mScrollViewClient)
return;
}
hideList();
}
void ComboBox::notifyListSelectAccept(ListBox* _widget, size_t _position)
{
mItemIndex = _position;
Base::setCaption(mItemIndex != ITEM_NONE ? mList->getItemNameAt(mItemIndex) : UString());
mDropMouse = false;
InputManager::getInstance().setKeyFocusWidget(this);
if (mModeDrop)
{
_resetContainer(false);
eventComboAccept(this, mItemIndex);
}
}
void ComboBox::notifyListChangePosition(ListBox* _widget, size_t _position)
{
mItemIndex = _position;
_resetContainer(false);
eventComboChangePosition(this, _position);
}
void ComboBox::onKeyButtonPressed(KeyCode _key, Char _char)
{
Base::onKeyButtonPressed(_key, _char);
// при нажатии вниз, показываем лист
if (_key == KeyCode::ArrowDown)
{
// выкидываем список только если мыша свободна
if (!InputManager::getInstance().isCaptureMouse())
{
showList();
}
}
// нажат ввод в окне редиктирования
else if ((_key == KeyCode::Return) || (_key == KeyCode::NumpadEnter))
{
_resetContainer(false);
eventComboAccept(this, mItemIndex);
}
}
void ComboBox::notifyListMouseItemActivate(ListBox* _widget, size_t _position)
{
mItemIndex = _position;
Base::setCaption(mItemIndex != ITEM_NONE ? mList->getItemNameAt(mItemIndex) : UString());
InputManager::getInstance().setKeyFocusWidget(this);
if (mModeDrop)
{
_resetContainer(false);
eventComboAccept(this, mItemIndex);
}
}
void ComboBox::notifyMouseWheel(Widget* _sender, int _rel)
{
if (mList->getItemCount() == 0)
return;
if (InputManager::getInstance().getKeyFocusWidget() != this)
return;
if (InputManager::getInstance().isCaptureMouse())
return;
if (_rel > 0)
{
if (mItemIndex != 0)
{
if (mItemIndex == ITEM_NONE)
mItemIndex = 0;
else
mItemIndex--;
Base::setCaption(mList->getItemNameAt(mItemIndex));
mList->setIndexSelected(mItemIndex);
mList->beginToItemAt(mItemIndex);
_resetContainer(false);
eventComboChangePosition(this, mItemIndex);
}
}
else if (_rel < 0)
{
if ((mItemIndex + 1) < mList->getItemCount())
{
if (mItemIndex == ITEM_NONE)
mItemIndex = 0;
else
mItemIndex++;
Base::setCaption(mList->getItemNameAt(mItemIndex));
mList->setIndexSelected(mItemIndex);
mList->beginToItemAt(mItemIndex);
_resetContainer(false);
eventComboChangePosition(this, mItemIndex);
}
}
}
void ComboBox::notifyMousePressed(Widget* _sender, int _left, int _top, MouseButton _id)
{
// обязательно отдаем отцу, а то мы у него в наглую отняли
Base::notifyMousePressed(_sender, _left, _top, _id);
mDropMouse = true;
// показываем список
if (mModeDrop)
notifyButtonPressed(nullptr, _left, _top, _id);
}
void ComboBox::notifyEditTextChange(EditBox* _sender)
{
// сбрасываем выделенный элемент
if (ITEM_NONE != mItemIndex)
{
mItemIndex = ITEM_NONE;
mList->setIndexSelected(mItemIndex);
mList->beginToItemFirst();
_resetContainer(false);
eventComboChangePosition(this, mItemIndex);
}
}
void ComboBox::showList()
{
// пустой список не показываем
if (mList->getItemCount() == 0)
return;
if (mListShow)
return;
mListShow = true;
IntCoord coord = calculateListPosition();
mList->setCoord(coord);
if (mShowSmooth)
{
ControllerFadeAlpha* controller = createControllerFadeAlpha(COMBO_ALPHA_MAX, COMBO_ALPHA_COEF, true);
ControllerManager::getInstance().addItem(mList, controller);
}
else
{
mList->setVisible(true);
}
InputManager::getInstance().setKeyFocusWidget(mList);
}
void ComboBox::actionWidgetHide(Widget* _widget, ControllerItem* _controller)
{
_widget->setVisible(false);
_widget->setEnabled(true);
}
void ComboBox::hideList()
{
if (!mListShow)
return;
mListShow = false;
if (mShowSmooth)
{
ControllerFadeAlpha* controller = createControllerFadeAlpha(COMBO_ALPHA_MIN, COMBO_ALPHA_COEF, false);
controller->eventPostAction += newDelegate(this, &ComboBox::actionWidgetHide);
ControllerManager::getInstance().addItem(mList, controller);
}
else
{
mList->setVisible(false);
}
}
void ComboBox::setIndexSelected(size_t _index)
{
MYGUI_ASSERT_RANGE_AND_NONE(_index, mList->getItemCount(), "ComboBox::setIndexSelected");
mItemIndex = _index;
mList->setIndexSelected(_index);
if (_index == ITEM_NONE)
{
Base::setCaption(UString());
return;
}
Base::setCaption(mList->getItemNameAt(_index));
Base::updateView(); // hook for update
}
void ComboBox::setItemNameAt(size_t _index, const UString& _name)
{
mList->setItemNameAt(_index, _name);
mItemIndex = ITEM_NONE; //FIXME
mList->setIndexSelected(mItemIndex); //FIXME
}
void ComboBox::setItemDataAt(size_t _index, Any _data)
{
mList->setItemDataAt(_index, _data);
mItemIndex = ITEM_NONE; //FIXME
mList->setIndexSelected(mItemIndex); //FIXME
}
void ComboBox::insertItemAt(size_t _index, const UString& _item, Any _data)
{
mList->insertItemAt(_index, _item, _data);
mItemIndex = ITEM_NONE; //FIXME
mList->setIndexSelected(mItemIndex); //FIXME
}
void ComboBox::removeItemAt(size_t _index)
{
mList->removeItemAt(_index);
mItemIndex = ITEM_NONE; //FIXME
mList->clearIndexSelected(); //FIXME
}
void ComboBox::removeAllItems()
{
mItemIndex = ITEM_NONE; //FIXME
mList->removeAllItems(); //FIXME заново созданные строки криво стоят
}
void ComboBox::setComboModeDrop(bool _drop)
{
mModeDrop = _drop;
setEditStatic(mModeDrop);
}
ControllerFadeAlpha* ComboBox::createControllerFadeAlpha(float _alpha, float _coef, bool _enable)
{
ControllerItem* item = ControllerManager::getInstance().createItem(ControllerFadeAlpha::getClassTypeName());
ControllerFadeAlpha* controller = item->castType<ControllerFadeAlpha>();
controller->setAlpha(_alpha);
controller->setCoef(_coef);
controller->setEnabled(_enable);
return controller;
}
size_t ComboBox::findItemIndexWith(const UString& _name)
{
return mList->findItemIndexWith(_name);
}
void ComboBox::setFlowDirection(FlowDirection _value)
{
mFlowDirection = _value;
}
IntCoord ComboBox::calculateListPosition()
{
int length = 0;
if (mFlowDirection.isVertical())
length = mList->getOptimalHeight();
else
length = mMaxListLength;
if (mMaxListLength > 0 && length > mMaxListLength)
length = mMaxListLength;
IntCoord coord = getAbsoluteCoord();
// layer size
IntSize sizeView = mList->getParentSize();
if (mFlowDirection == FlowDirection::TopToBottom)
{
if ((coord.bottom() + length) <= sizeView.height)
coord.top += coord.height;
else
coord.top -= length;
coord.height = length;
}
else if (mFlowDirection == FlowDirection::BottomToTop)
{
if ((coord.top - length) >= 0)
coord.top -= length;
else
coord.top += coord.height;
coord.height = length;
}
else if (mFlowDirection == FlowDirection::LeftToRight)
{
if ((coord.right() + length) <= sizeView.width)
coord.left += coord.width;
else
coord.left -= length;
coord.width = length;
}
else if (mFlowDirection == FlowDirection::RightToLeft)
{
if ((coord.left - length) >= 0)
coord.left -= length;
else
coord.left += coord.width;
coord.width = length;
}
return coord;
}
void ComboBox::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (_key == "ModeDrop")
setComboModeDrop(utility::parseValue<bool>(_value));
else if (_key == "FlowDirection")
setFlowDirection(utility::parseValue<FlowDirection>(_value));
else if (_key == "MaxListLength")
setMaxListLength(utility::parseValue<int>(_value));
else if (_key == "SmoothShow")
setSmoothShow(utility::parseValue<bool>(_value));
// не коментировать
else if (_key == "AddItem")
addItem(LanguageManager::getInstance().replaceTags(UString(_value)));
else
{
Base::setPropertyOverride(_key, _value);
return;
}
eventChangeProperty(this, _key, _value);
}
size_t ComboBox::getItemCount() const
{
return mList->getItemCount();
}
void ComboBox::addItem(const UString& _name, Any _data)
{
return insertItemAt(ITEM_NONE, _name, _data);
}
size_t ComboBox::getIndexSelected() const
{
return mItemIndex;
}
void ComboBox::clearIndexSelected()
{
setIndexSelected(ITEM_NONE);
}
void ComboBox::clearItemDataAt(size_t _index)
{
setItemDataAt(_index, Any::Null);
}
const UString& ComboBox::getItemNameAt(size_t _index) const
{
return mList->getItemNameAt(_index);
}
void ComboBox::beginToItemAt(size_t _index)
{
mList->beginToItemAt(_index);
}
void ComboBox::beginToItemFirst()
{
if (getItemCount())
beginToItemAt(0);
}
void ComboBox::beginToItemLast()
{
if (getItemCount())
beginToItemAt(getItemCount() - 1);
}
void ComboBox::beginToItemSelected()
{
if (getIndexSelected() != ITEM_NONE)
beginToItemAt(getIndexSelected());
}
bool ComboBox::getComboModeDrop() const
{
return mModeDrop;
}
void ComboBox::setSmoothShow(bool _value)
{
mShowSmooth = _value;
}
bool ComboBox::getSmoothShow() const
{
return mShowSmooth;
}
void ComboBox::setMaxListLength(int _value)
{
mMaxListLength = _value;
}
int ComboBox::getMaxListLength() const
{
return mMaxListLength;
}
FlowDirection ComboBox::getFlowDirection() const
{
return mFlowDirection;
}
void ComboBox::notifyToolTip(Widget* _sender, const ToolTipInfo& _info)
{
if (getNeedToolTip())
eventToolTip(this, _info);
}
size_t ComboBox::_getItemCount() const
{
return getItemCount();
}
void ComboBox::_addItem(const MyGUI::UString& _name)
{
addItem(_name);
}
void ComboBox::_removeItemAt(size_t _index)
{
removeItemAt(_index);
}
void ComboBox::_setItemNameAt(size_t _index, const UString& _name)
{
setItemNameAt(_index, _name);
}
const UString& ComboBox::_getItemNameAt(size_t _index) const
{
return getItemNameAt(_index);
}
void ComboBox::_resetContainer(bool _update)
{
Base::_resetContainer(_update);
if (mList != nullptr)
mList->_resetContainer(_update);
}
} // namespace MyGUI
MyGUI_Button.h
MyGUI_ComboBox.h
MyGUI_ControllerManager.h
MYGUI_ASSERT_RANGE_AND_NONE
#define MYGUI_ASSERT_RANGE_AND_NONE(index, size, owner)
Definition MyGUI_Diagnostic.h:46
MyGUI_Gui.h
MyGUI_InputManager.h
MyGUI_LanguageManager.h
MyGUI_LayerManager.h
MyGUI_ListBox.h
MyGUI_Precompiled.h
MyGUI_ResourceSkin.h
MyGUI_WidgetManager.h
MyGUI::Any
Definition MyGUI_Any.h:56
MyGUI::Any::Null
static const Any Null
Definition MyGUI_Any.h:58
MyGUI::ComboBox::addItem
void addItem(const UString &_name, Any _data=Any::Null)
Add an item to the end of a array.
Definition MyGUI_ComboBox.cpp:469
MyGUI::ComboBox::beginToItemSelected
void beginToItemSelected()
Move all elements so selected becomes visible.
Definition MyGUI_ComboBox.cpp:511
MyGUI::ComboBox::eventComboAccept
EventPairAddParameter< EventHandle_WidgetVoid, EventHandle_ComboBoxPtrSizeT > eventComboAccept
Definition MyGUI_ComboBox.h:143
MyGUI::ComboBox::findItemIndexWith
size_t findItemIndexWith(const UString &_name)
Search item, returns the position of the first occurrence in array or ITEM_NONE if item not found.
Definition MyGUI_ComboBox.cpp:372
MyGUI::ComboBox::_setItemNameAt
void _setItemNameAt(size_t _index, const UString &_name) override
Definition MyGUI_ComboBox.cpp:568
MyGUI::ComboBox::clearIndexSelected
void clearIndexSelected()
Clear item selection.
Definition MyGUI_ComboBox.cpp:479
MyGUI::ComboBox::setItemNameAt
void setItemNameAt(size_t _index, const UString &_name)
Replace an item name at a specified position.
Definition MyGUI_ComboBox.cpp:320
MyGUI::ComboBox::setIndexSelected
void setIndexSelected(size_t _index)
Select specified _index.
Definition MyGUI_ComboBox.cpp:306
MyGUI::ComboBox::removeAllItems
void removeAllItems()
Remove all items.
Definition MyGUI_ComboBox.cpp:348
MyGUI::ComboBox::_addItem
void _addItem(const MyGUI::UString &_name) override
Definition MyGUI_ComboBox.cpp:558
MyGUI::ComboBox::onKeyButtonPressed
void onKeyButtonPressed(KeyCode _key, Char _char) override
Definition MyGUI_ComboBox.cpp:147
MyGUI::ComboBox::_getItemNameAt
const UString & _getItemNameAt(size_t _index) const override
Definition MyGUI_ComboBox.cpp:573
MyGUI::ComboBox::_removeItemAt
void _removeItemAt(size_t _index) override
Definition MyGUI_ComboBox.cpp:563
MyGUI::ComboBox::shutdownOverride
void shutdownOverride() override
Definition MyGUI_ComboBox.cpp:82
MyGUI::ComboBox::insertItemAt
void insertItemAt(size_t _index, const UString &_item, Any _data=Any::Null)
Insert an item into a array at a specified position.
Definition MyGUI_ComboBox.cpp:334
MyGUI::ComboBox::getIndexSelected
size_t getIndexSelected() const
Get index of selected item (ITEM_NONE if none selected).
Definition MyGUI_ComboBox.cpp:474
MyGUI::ComboBox::beginToItemAt
void beginToItemAt(size_t _index)
Move all elements so specified becomes visible.
Definition MyGUI_ComboBox.cpp:494
MyGUI::ComboBox::getSmoothShow
bool getSmoothShow() const
Get smooth show of list flag.
Definition MyGUI_ComboBox.cpp:527
MyGUI::ComboBox::setFlowDirection
void setFlowDirection(FlowDirection _value)
Set direction, where drop down list appears (TopToBottom by default).
Definition MyGUI_ComboBox.cpp:377
MyGUI::ComboBox::beginToItemLast
void beginToItemLast()
Move all elements so last becomes visible.
Definition MyGUI_ComboBox.cpp:505
MyGUI::ComboBox::setMaxListLength
void setMaxListLength(int _value)
Get max list length.
Definition MyGUI_ComboBox.cpp:532
MyGUI::ComboBox::initialiseOverride
void initialiseOverride() override
Definition MyGUI_ComboBox.cpp:26
MyGUI::ComboBox::getComboModeDrop
bool getComboModeDrop() const
Get drop list mode flag.
Definition MyGUI_ComboBox.cpp:517
MyGUI::ComboBox::eventComboChangePosition
EventPair< EventHandle_WidgetSizeT, EventHandle_ComboBoxPtrSizeT > eventComboChangePosition
Definition MyGUI_ComboBox.h:150
MyGUI::ComboBox::setSmoothShow
void setSmoothShow(bool _value)
Set smooth show of list.
Definition MyGUI_ComboBox.cpp:522
MyGUI::ComboBox::setItemDataAt
void setItemDataAt(size_t _index, Any _data)
Replace an item data at a specified position.
Definition MyGUI_ComboBox.cpp:327
MyGUI::ComboBox::_getItemCount
size_t _getItemCount() const override
Definition MyGUI_ComboBox.cpp:553
MyGUI::ComboBox::removeItemAt
void removeItemAt(size_t _index)
Remove item at a specified position.
Definition MyGUI_ComboBox.cpp:341
MyGUI::ComboBox::clearItemDataAt
void clearItemDataAt(size_t _index)
Clear an item data at a specified position.
Definition MyGUI_ComboBox.cpp:484
MyGUI::ComboBox::_resetContainer
void _resetContainer(bool _update) override
Definition MyGUI_ComboBox.cpp:578
MyGUI::ComboBox::getMaxListLength
int getMaxListLength() const
Set max list length.
Definition MyGUI_ComboBox.cpp:537
MyGUI::ComboBox::beginToItemFirst
void beginToItemFirst()
Move all elements so first becomes visible.
Definition MyGUI_ComboBox.cpp:499
MyGUI::ComboBox::getItemCount
size_t getItemCount() const
Get number of items.
Definition MyGUI_ComboBox.cpp:464
MyGUI::ComboBox::getFlowDirection
FlowDirection getFlowDirection() const
Get direction, where drop down list appears.
Definition MyGUI_ComboBox.cpp:542
MyGUI::ComboBox::setPropertyOverride
void setPropertyOverride(std::string_view _key, std::string_view _value) override
Definition MyGUI_ComboBox.cpp:433
MyGUI::ComboBox::getItemNameAt
const UString & getItemNameAt(size_t _index) const
Get item name from specified position.
Definition MyGUI_ComboBox.cpp:489
MyGUI::ComboBox::setComboModeDrop
void setComboModeDrop(bool _drop)
Set drop list mode (text can not be edited).
Definition MyGUI_ComboBox.cpp:354
MyGUI::ControllerFadeAlpha
Definition MyGUI_ControllerFadeAlpha.h:19
MyGUI::ControllerFadeAlpha::getClassTypeName
static std::string_view getClassTypeName()
Definition MyGUI_ControllerFadeAlpha.h:20
MyGUI::ControllerFadeAlpha::setAlpha
void setAlpha(float _value)
Definition MyGUI_ControllerFadeAlpha.cpp:83
MyGUI::ControllerFadeAlpha::setCoef
void setCoef(float _value)
Definition MyGUI_ControllerFadeAlpha.cpp:88
MyGUI::ControllerFadeAlpha::setEnabled
void setEnabled(bool _value)
Definition MyGUI_ControllerFadeAlpha.cpp:93
MyGUI::ControllerItem
Definition MyGUI_ControllerItem.h:26
MyGUI::ControllerManager::createItem
ControllerItem * createItem(std::string_view _type)
Definition MyGUI_ControllerManager.cpp:71
MyGUI::ControllerManager::getInstance
static ControllerManager & getInstance()
MyGUI::ControllerManager::addItem
void addItem(Widget *_widget, ControllerItem *_item)
Definition MyGUI_ControllerManager.cpp:77
MyGUI::EditBox
widget description should be here.
Definition MyGUI_EditBox.h:26
MyGUI::EditBox::updateView
void updateView()
Definition MyGUI_EditBox.cpp:1809
MyGUI::EditBox::setEditStatic
void setEditStatic(bool _value)
Definition MyGUI_EditBox.cpp:2028
MyGUI::EditBox::eventEditTextChange
EventPair< EventHandle_WidgetVoid, EventHandle_EditPtr > eventEditTextChange
Definition MyGUI_EditBox.h:248
MyGUI::EditBox::setCaption
void setCaption(const UString &_value) override
Definition MyGUI_EditBox.cpp:1638
MyGUI::ICroppedRectangle::getAbsoluteCoord
IntCoord getAbsoluteCoord() const
Definition MyGUI_ICroppedRectangle.h:76
MyGUI::IObject::castType
Type * castType(bool _throw=true)
Definition MyGUI_IObject.h:18
MyGUI::InputManager::setKeyFocusWidget
void setKeyFocusWidget(Widget *_widget)
Definition MyGUI_InputManager.cpp:388
MyGUI::InputManager::getMouseFocusWidget
Widget * getMouseFocusWidget() const
Definition MyGUI_InputManager.cpp:638
MyGUI::InputManager::getInstance
static InputManager & getInstance()
MyGUI::LanguageManager::getInstance
static LanguageManager & getInstance()
Definition MyGUI_LanguageManager.cpp:18
MyGUI::ListBox
widget description should be here.
Definition MyGUI_ListBox.h:28
MyGUI::ListBox::getClassTypeName
static std::string_view getClassTypeName()
Definition MyGUI_ListBox.h:29
MyGUI::ListBox::getItemNameAt
const UString & getItemNameAt(size_t _index) const
Get item name from specified position.
Definition MyGUI_ListBox.cpp:733
MyGUI::ListBox::getOptimalHeight
int getOptimalHeight() const
Return optimal height to fit all items in ListBox.
Definition MyGUI_ListBox.cpp:863
MyGUI::ScrollViewBase::mScrollViewClient
Widget * mScrollViewClient
Definition MyGUI_ScrollViewBase.h:45
MyGUI::UString
A UTF-16 string with implicit conversion to/from std::string and std::wstring.
Definition MyGUI_UString.h:144
MyGUI::UserData::getUserString
std::string_view getUserString(std::string_view _key) const
Definition MyGUI_WidgetUserData.cpp:20
MyGUI::Widget
widget description should be here.
Definition MyGUI_Widget.h:40
MyGUI::Widget::eventChangeProperty
EventHandle_WidgetStringString eventChangeProperty
Definition MyGUI_Widget.h:324
MyGUI::Widget::getParentSize
IntSize getParentSize() const
Definition MyGUI_Widget.cpp:1082
MyGUI::Widget::assignWidget
void assignWidget(T *&_widget, std::string_view _name)
Definition MyGUI_Widget.h:413
MyGUI::Widget::_createSkinWidget
Widget * _createSkinWidget(WidgetStyle _style, std::string_view _type, std::string_view _skin, const IntCoord &_coord, Align _align, std::string_view _layer={}, std::string_view _name={})
Definition MyGUI_Widget.cpp:1206
MyGUI::WidgetInput::getNeedToolTip
bool getNeedToolTip() const
Definition MyGUI_WidgetInput.cpp:127
MyGUI::WidgetInput::eventToolTip
EventHandle_WidgetToolTip eventToolTip
Definition MyGUI_WidgetInput.h:226
MyGUI::utility::parseValue
T parseValue(std::string_view _value)
Definition MyGUI_StringUtility.h:60
MyGUI
Definition MyGUI_ActionController.h:15
MyGUI::ALPHA_MAX
constexpr float ALPHA_MAX
Definition MyGUI_Macros.h:20
MyGUI::ALPHA_MIN
constexpr float ALPHA_MIN
Definition MyGUI_Macros.h:21
MyGUI::COMBO_ALPHA_MAX
const float COMBO_ALPHA_MAX
Definition MyGUI_ComboBox.cpp:22
MyGUI::COMBO_ALPHA_MIN
const float COMBO_ALPHA_MIN
Definition MyGUI_ComboBox.cpp:23
MyGUI::Char
unsigned int Char
Definition MyGUI_Types.h:50
MyGUI::ITEM_NONE
constexpr size_t ITEM_NONE
Definition MyGUI_Macros.h:19
MyGUI::IntCoord
types::TCoord< int > IntCoord
Definition MyGUI_Types.h:36
MyGUI::IntSize
types::TSize< int > IntSize
Definition MyGUI_Types.h:30
MyGUI::COMBO_ALPHA_COEF
const float COMBO_ALPHA_COEF
Definition MyGUI_ComboBox.cpp:24
MyGUI::newDelegate
delegates::DelegateFunction< Args... > * newDelegate(void(*_func)(Args... args))
Definition MyGUI_Delegate.h:100
MyGUI::Align::Default
@ Default
Definition MyGUI_Align.h:36
MyGUI::FlowDirection
Definition MyGUI_FlowDirection.h:19
MyGUI::FlowDirection::isVertical
bool isVertical() const
Definition MyGUI_FlowDirection.h:54
MyGUI::FlowDirection::TopToBottom
@ TopToBottom
Definition MyGUI_FlowDirection.h:24
MyGUI::FlowDirection::RightToLeft
@ RightToLeft
Definition MyGUI_FlowDirection.h:23
MyGUI::FlowDirection::BottomToTop
@ BottomToTop
Definition MyGUI_FlowDirection.h:25
MyGUI::FlowDirection::LeftToRight
@ LeftToRight
Definition MyGUI_FlowDirection.h:22
MyGUI::KeyCode
Definition MyGUI_KeyCode.h:16
MyGUI::KeyCode::NumpadEnter
@ NumpadEnter
Definition MyGUI_KeyCode.h:125
MyGUI::KeyCode::ArrowDown
@ ArrowDown
Definition MyGUI_KeyCode.h:145
MyGUI::KeyCode::Return
@ Return
Definition MyGUI_KeyCode.h:47
MyGUI::MouseButton
Definition MyGUI_MouseButton.h:16
MyGUI::MouseButton::Left
@ Left
Definition MyGUI_MouseButton.h:21
MyGUI::ToolTipInfo
Definition MyGUI_WidgetToolTip.h:18
MyGUI::WidgetStyle::Popup
@ Popup
Definition MyGUI_WidgetStyle.h:23
MyGUI::types::TCoord::height
T height
Definition MyGUI_TCoord.h:23
MyGUI::types::TCoord::right
T right() const
Definition MyGUI_TCoord.h:125
MyGUI::types::TCoord::width
T width
Definition MyGUI_TCoord.h:22
MyGUI::types::TCoord::top
T top
Definition MyGUI_TCoord.h:21
MyGUI::types::TCoord::left
T left
Definition MyGUI_TCoord.h:20
MyGUI::types::TCoord::bottom
T bottom() const
Definition MyGUI_TCoord.h:130
MyGUI::types::TSize::width
T width
Definition MyGUI_TSize.h:19
MyGUI::types::TSize::height
T height
Definition MyGUI_TSize.h:20