7#ifndef MYGUI_MENU_CONTROL_H_
8#define MYGUI_MENU_CONTROL_H_
73 void setVisible(
bool _value)
override;
76 void setVisibleSmooth(
bool _value);
82 size_t getItemCount()
const;
93 void removeItemAt(
size_t _index);
98 void removeAllItems();
122 void clearItemDataAt(
size_t _index);
127 template <
typename ValueType>
134 template <
typename ValueType>
141 void setItemIdAt(
size_t _index,
const std::string&
_id);
146 const std::string& getItemIdAt(
size_t _index)
const;
151 MenuItem* getItemById(
const std::string&
_id)
const;
157 size_t getItemIndexById(
const std::string&
_id)
const;
183 template <
typename Type>
186 return static_cast<Type*
>(createItemChildByType(
_index, Type::getClassTypeName()));
190 template <
typename Type>
209 void removeItemChildAt(
size_t _index);
227 void setPopupAccept(
bool _value);
229 bool getPopupAccept()
const;
232 MenuItem* getMenuItemParent()
const;
235 void setVerticalAlignment(
bool _value);
237 bool getVerticalAlignment()
const;
262 size_t _getItemCount()
const override;
264 void _removeItemAt(
size_t _index)
override;
270 void _updateItems(
size_t _index);
271 void _updateSizeForEmpty();
274 void initialiseOverride()
override;
275 void shutdownOverride()
override;
277 void onKeyChangeRootFocus(
bool _focus)
override;
281 void setPropertyOverride(
const std::string&
_key,
const std::string&
_value)
override;
316 std::string mItemNormalSkin;
317 std::string mItemPopupSkin;
318 std::string mItemSeparatorSkin;
320 std::string mSubMenuSkin;
321 std::string mSubMenuLayer;
326 bool mVerticalAlignment;
332 bool mChangeChildSkin;
333 bool mInternalCreateChild;
#define MYGUI_ASSERT_RANGE(index, size, owner)
#define MYGUI_RTTI_DERIVED(DerivedType)
A UTF-16 string with implicit conversion to/from std::string and std::wstring.
delegates::CMultiDelegate2< MenuControl *, MenuItem * > EventHandle_MenuCtrlPtrMenuItemPtr
delegates::CMultiDelegate1< MenuControl * > EventHandle_MenuCtrlPtr