7#ifndef MYGUI_ITEM_BOX_H_
8#define MYGUI_ITEM_BOX_H_
43 size_t getItemCount()
const;
46 void insertItemAt(
size_t _index,
Any _data = Any::Null,
bool update =
true);
49 void addItem(
Any _data = Any::Null,
bool update =
true);
52 void removeItemAt(
size_t _index,
bool update =
true);
55 void removeAllItems();
58 void redrawItemAt(
size_t _index);
61 void redrawAllItems();
68 size_t getIndexSelected()
const;
71 void setIndexSelected(
size_t _index);
74 void clearIndexSelected();
84 void clearItemDataAt(
size_t _index);
87 template <
typename ValueType>
96 void setVerticalAlignment(
bool _value);
98 bool getVerticalAlignment()
const;
104 Widget* getWidgetDrag()
const;
123 using Widget::setPosition;
124 using Widget::setSize;
125 using Widget::setCoord;
128 void setVisibleVScroll(
bool _value);
130 bool isVisibleVScroll()
const;
133 void setVisibleHScroll(
bool _value);
135 bool isVisibleHScroll()
const;
142 IntSize getViewSize()
const override;
197 void _resetContainer(
bool _update)
override;
200 void initialiseOverride()
override;
201 void shutdownOverride()
override;
217 void onMouseWheel(
int _rel)
override;
227 size_t _getItemIndex(
Widget*
_item)
const override;
233 void removeDropItems()
override;
234 void updateDropItems()
override;
238 void updateMetrics();
241 void _updateAllVisible(
bool _redraw);
243 void updateFromResize();
252 void resetCurrentActiveItem();
254 void findCurrentActiveItem();
259 void setPropertyOverride(
const std::string&
_key,
const std::string&
_value)
override;
264 void requestItemSize();
266 IntSize getContentSize()
const override;
267 IntPoint getContentPosition()
const override;
268 void eraseContent()
override;
269 size_t getHScrollPage()
const override;
270 size_t getVScrollPage()
const override;
271 Align getContentAlign()
const override;
287 int mCountItemInLine;
292 int mFirstVisibleIndex;
295 int mFirstOffsetIndex;
317 std::string mDragLayer;
#define MYGUI_ASSERT_RANGE(index, size, owner)
#define MYGUI_RTTI_DERIVED(DerivedType)
widget description should be here.
widget description should be here.
EventHandle_ItemBoxPtrWidgetPtrCIBCellDrawInfoRef requestDrawItem
std::vector< ItemDataInfo > VectorItemInfo
EventHandle_ItemBoxPtrSizeT eventMouseItemActivate
EventHandle_ItemBoxPtrWidgetPtr requestCreateWidgetItem
EventHandle_ItemBoxPtrSizeT eventSelectItemAccept
ValueType * getItemDataAt(size_t _index, bool _throw=true)
Get item data from specified position.
EventHandle_ItemBoxPtrIntCoordRefBool requestCoordItem
EventHandle_ItemBoxPtrCIBNotifyCellDataRef eventNotifyItem
EventHandle_ItemBoxPtrSizeT eventChangeItemPosition
delegates::CDelegate3< ItemBox *, IntCoord &, bool > EventHandle_ItemBoxPtrIntCoordRefBool
delegates::CMultiDelegate2< ItemBox *, size_t > EventHandle_ItemBoxPtrSizeT
delegates::CDelegate2< ItemBox *, Widget * > EventHandle_ItemBoxPtrWidgetPtr
std::vector< Widget * > VectorWidgetPtr
delegates::CDelegate3< ItemBox *, Widget *, const IBDrawItemInfo & > EventHandle_ItemBoxPtrWidgetPtrCIBCellDrawInfoRef
delegates::CMultiDelegate2< ItemBox *, const IBNotifyItemData & > EventHandle_ItemBoxPtrCIBNotifyCellDataRef