YSTest
PreAlpha_b380_20130211
The YSLib Test Project
|
菜单宿主。 More...
#include <menu.h>
Public Types | |
typedef Menu * | ItemType |
菜单组项目类型:记录菜单控件指针。 | |
typedef map< Menu::ID, ItemType > | MenuMap |
菜单组类型。 | |
typedef MenuMap::value_type | ValueType |
Public Member Functions | |||
MenuHost (Window &) | |||
virtual | ~MenuHost () | ||
析构。 | |||
void | operator+= (const ValueType &) | ||
向菜单组添加标识和指针指定的菜单。 | |||
void | operator+= (Menu &) | ||
向菜单组添加菜单。 | |||
bool | operator-= (Menu::ID) | ||
从菜单组移除菜单标识指定的菜单。 | |||
Menu & | operator[] (Menu::ID id) | ||
访问菜单标识指定的菜单。
| |||
bool | IsShowing (Menu::ID) | ||
判断框架窗口中是否正在显示菜单标识指定的菜单。 | |||
bool | Contains (Menu::ID id) | ||
判断菜单组中是否存在菜单标识指定的菜单。 | |||
bool | Contains (Menu &) | ||
判断菜单组中是否存在指定的菜单。 | |||
void | Clear () | ||
清除菜单组。 | |||
void | Show (Menu::ID, ZOrderType=DefaultMenuZOrder) | ||
按指定 Z 顺序显示菜单组中菜单标识指定的菜单。 | |||
void | Show (Menu &mnu, ZOrderType z=DefaultMenuZOrder) | ||
按指定 Z 顺序显示指定菜单 mnu 。 | |||
void | ShowAll (ZOrderType=DefaultMenuZOrder) | ||
按指定 Z 顺序显示菜单组中的所有菜单。 | |||
void | Hide (Menu::ID) | ||
隐藏菜单组中菜单标识指定的菜单。 | |||
void | Hide (Menu &mnu) | ||
隐藏指定菜单 mnu。 | |||
void | HideAll () | ||
隐藏菜单组中的所有菜单。 | |||
void | HideUnrelated (Menu &mnu, Menu &mnuParent) | ||
隐藏从 mnu 起向上层遍历菜单树的过程中不相关的菜单。 | |||
Public Attributes | |
Window & | Frame |
框架窗口。 | |
map< IWidget *, Menu::ID > | Roots |
根菜单关联映射。 | |
Protected Attributes | |
MenuMap | mMenus |
菜单组:存储非空菜单指针。 | |
Private Member Functions | |
void | ShowRaw (Menu &mnu, ZOrderType=DefaultMenuZOrder) |
按指定 Z 顺序显示指定菜单 mnu 。 | |
void | HideRaw (Menu &mnu) |
隐藏指定菜单 mnu。 | |
![]() | |
noncopyable (const noncopyable &)=delete | |
禁止复制构造。 | |
noncopyable & | operator= (const noncopyable &)=delete |
禁止赋值复制。 | |
noncopyable ()=default | |
protected 构造:默认实现。 | |
~noncopyable ()=default | |
protected 析构:默认实现。 | |
typedef map<Menu::ID, ItemType> YSLib::Components::MenuHost::MenuMap |
typedef MenuMap::value_type YSLib::Components::MenuHost::ValueType |
|
virtual |
void MenuHost::Clear | ( | ) |
清除菜单组。
Definition at line 295 of file menu.cpp.
References delete_second_mem, and mMenus.
Referenced by ~MenuHost().
|
inline |
判断菜单组中是否存在菜单标识指定的菜单。
Definition at line 246 of file menu.h.
Referenced by HideUnrelated().
bool YSLib::Components::MenuHost::Contains | ( | Menu & | ) |
判断菜单组中是否存在指定的菜单。
void YSLib::Components::MenuHost::Hide | ( | Menu::ID | ) |
隐藏菜单组中菜单标识指定的菜单。
|
inline |
隐藏指定菜单 mnu。
Definition at line 302 of file menu.h.
References Contains(), and YAssert.
void MenuHost::HideAll | ( | ) |
隐藏菜单组中的所有菜单。
Definition at line 341 of file menu.cpp.
References ystdex::get_value, HideRaw(), and mMenus.
Referenced by HideUnrelated(), and ~MenuHost().
|
private |
隐藏指定菜单 mnu。
Definition at line 353 of file menu.cpp.
References Frame, YSLib::Components::Invalidate(), YSLib::Components::IsVisible(), and YSLib::Components::ReleaseFocus().
Referenced by HideAll(), and HideUnrelated().
bool MenuHost::IsShowing | ( | Menu::ID | id | ) |
判断框架窗口中是否正在显示菜单标识指定的菜单。
Definition at line 278 of file menu.cpp.
References YSLib::Components::MUIContainer::Contains(), Frame, and mMenus.
void YSLib::Components::MenuHost::operator+= | ( | const ValueType & | ) |
向菜单组添加标识和指针指定的菜单。
void YSLib::Components::MenuHost::operator+= | ( | Menu & | ) |
向菜单组添加菜单。
bool MenuHost::operator-= | ( | Menu::ID | id | ) |
void YSLib::Components::MenuHost::Show | ( | Menu::ID | , |
ZOrderType | = DefaultMenuZOrder |
||
) |
按指定 Z 顺序显示菜单组中菜单标识指定的菜单。
|
inline |
按指定 Z 顺序显示指定菜单 mnu 。
Definition at line 271 of file menu.h.
References Contains(), and YAssert.
void MenuHost::ShowAll | ( | ZOrderType | z = DefaultMenuZOrder | ) |
按指定 Z 顺序显示菜单组中的所有菜单。
Definition at line 311 of file menu.cpp.
References ystdex::get_value, mMenus, and ShowRaw().
|
private |
按指定 Z 顺序显示指定菜单 mnu 。
Definition at line 323 of file menu.cpp.
References YSLib::Components::Window::Add(), Frame, and YSLib::Components::RequestFocus().
Referenced by ShowAll().
Window& YSLib::Components::MenuHost::Frame |
|
protected |
菜单组:存储非空菜单指针。
Definition at line 191 of file menu.h.
Referenced by Clear(), HideAll(), HideUnrelated(), IsShowing(), operator-=(), and ShowAll().