7#ifndef MYGUI_MULTI_LIST_BOX_H_
8#define MYGUI_MULTI_LIST_BOX_H_
54 using Widget::setPosition;
55 using Widget::setSize;
56 using Widget::setCoord;
64 size_t getColumnCount()
const;
82 void removeColumnAt(
size_t _column);
85 void removeAllColumns();
124 int getColumnWidthAt(
size_t _column)
const;
150 void clearColumnDataAt(
size_t _index);
153 template<
typename ValueType>
171 size_t getItemCount()
const;
180 void removeItemAt(
size_t _index);
183 void removeAllItems();
203 size_t getIndexSelected()
const;
206 void setIndexSelected(
size_t _index);
209 void clearIndexSelected();
219 void clearItemDataAt(
size_t _index);
222 template<
typename ValueType>
257 template<
typename ValueType>
262 mVectorColumnInfo.begin()->list->getItemCount(),
263 "MultiListBox::getSubItemDataAt");
265 size_t index = BiIndexBase::convertToBack(
_index);
306 size_t _getItemCount()
const override;
308 void _removeItemAt(
size_t _index)
override;
314 void initialiseOverride()
override;
315 void shutdownOverride()
override;
328 void updateColumns();
329 void redrawButtons();
330 void updateOnlyEmpty();
338 void updateBackSelected(
size_t _index);
352 using VectorColumnInfo = std::vector<ColumnInfo>;
354 void frameEntered(
float _frame);
355 void frameAdvise(
bool _advise);
358 int getButtonHeight()
const;
366 bool getUpdateByResize()
const;
370 int mHeightButton{0};
372 std::string mSkinButton;
373 std::string mSkinList;
374 Widget* mWidgetEmpty{
nullptr};
376 VectorColumnInfo mVectorColumnInfo;
385 int mWidthSeparator{0};
386 std::string mSkinSeparator;
390 bool mFrameAdvise{
false};
391 Widget* mHeaderPlace{
nullptr};
#define MYGUI_ASSERT_RANGE(index, size, owner)
#define MYGUI_RTTI_DERIVED(DerivedType)
widget description should be here.
widget description should be here.
EventPair< EventHandle_MultiListPtrSizeTCUTFStringRefCUTFStringRefBoolRef, EventHandle_MultiListPtrSizeTSizeTSizeTBoolRef > requestOperatorLess
EventPair< EventHandle_WidgetSizeT, EventHandle_MultiListPtrSizeT > eventListChangePosition
EventPair< EventHandle_WidgetSizeT, EventHandle_MultiListPtrSizeT > eventListSelectAccept
ValueType * getSubItemDataAt(size_t _column, size_t _index, bool _throw=true)
Get item data from specified position.
EventHandle_MultiListPtrCIBNotifyCellDataRef eventNotifyItem
ValueType * getColumnDataAt(size_t _index, bool _throw=true)
Get item data from specified position.
ValueType * getItemDataAt(size_t _index, bool _throw=true)
Get item data from specified position.
widget description should be here.
A UTF-16 string with implicit conversion to/from std::string and std::wstring.
constexpr size_t ITEM_NONE
std::vector< Widget * > VectorWidgetPtr