#include "UnitTest.h" #include "Gwen/Controls/MenuStrip.h" using namespace Gwen; class MenuStrip : public GUnit { public: GWEN_CONTROL_INLINE(MenuStrip, GUnit) { Gwen::Controls::MenuStrip* menu = new Gwen::Controls::MenuStrip(this); { Gwen::Controls::MenuItem* pRoot = menu->AddItem(L"File"); pRoot->GetMenu()->AddItem(L"New", L"test16.png", GWEN_MCALL(ThisClass::MenuItemSelect)); pRoot->GetMenu()->AddItem(L"Load", L"test16.png", GWEN_MCALL(ThisClass::MenuItemSelect)); pRoot->GetMenu()->AddItem(L"Save", GWEN_MCALL(ThisClass::MenuItemSelect)); pRoot->GetMenu()->AddItem(L"Save As..", GWEN_MCALL(ThisClass::MenuItemSelect)); pRoot->GetMenu()->AddItem(L"Quit", GWEN_MCALL(ThisClass::MenuItemSelect)); } { Gwen::Controls::MenuItem* pRoot = menu->AddItem(L"\u043F\u0438\u0440\u0430\u0442\u0441\u0442\u0432\u043E"); pRoot->GetMenu()->AddItem(L"\u5355\u5143\u6D4B\u8BD5", GWEN_MCALL(ThisClass::MenuItemSelect)); pRoot->GetMenu()->AddItem(L"\u0111\u01A1n v\u1ECB th\u1EED nghi\u1EC7m", L"test16.png", GWEN_MCALL(ThisClass::MenuItemSelect)); } { Gwen::Controls::MenuItem* pRoot = menu->AddItem(L"Submenu"); pRoot->GetMenu()->AddItem("One")->SetCheckable(true); { Gwen::Controls::MenuItem* pRootB = pRoot->GetMenu()->AddItem("Two"); pRootB->GetMenu()->AddItem("Two.One"); pRootB->GetMenu()->AddItem("Two.Two"); pRootB->GetMenu()->AddItem("Two.Three"); pRootB->GetMenu()->AddItem("Two.Four"); pRootB->GetMenu()->AddItem("Two.Five"); pRootB->GetMenu()->AddItem("Two.Six"); pRootB->GetMenu()->AddItem("Two.Seven"); pRootB->GetMenu()->AddItem("Two.Eight"); pRootB->GetMenu()->AddItem("Two.Nine", "test16.png"); } pRoot->GetMenu()->AddItem("Three"); pRoot->GetMenu()->AddItem("Four"); pRoot->GetMenu()->AddItem("Five"); { Gwen::Controls::MenuItem* pRootB = pRoot->GetMenu()->AddItem("Six"); pRootB->GetMenu()->AddItem("Six.One"); pRootB->GetMenu()->AddItem("Six.Two"); pRootB->GetMenu()->AddItem("Six.Three"); pRootB->GetMenu()->AddItem("Six.Four"); pRootB->GetMenu()->AddItem("Six.Five", "test16.png"); { Gwen::Controls::MenuItem* pRootC = pRootB->GetMenu()->AddItem("Six.Six"); pRootC->GetMenu()->AddItem("Sheep"); pRootC->GetMenu()->AddItem("Goose"); { Gwen::Controls::MenuItem* pRootD = pRootC->GetMenu()->AddItem("Camel"); pRootD->GetMenu()->AddItem("Eyes"); pRootD->GetMenu()->AddItem("Nose"); { Gwen::Controls::MenuItem* pRootE = pRootD->GetMenu()->AddItem("Hair"); pRootE->GetMenu()->AddItem("Blonde"); pRootE->GetMenu()->AddItem("Black"); { Gwen::Controls::MenuItem* pRootF = pRootE->GetMenu()->AddItem("Red"); pRootF->GetMenu()->AddItem("Light"); pRootF->GetMenu()->AddItem("Medium"); pRootF->GetMenu()->AddItem("Dark"); } pRootE->GetMenu()->AddItem("Brown"); } pRootD->GetMenu()->AddItem("Ears"); } pRootC->GetMenu()->AddItem("Duck"); } pRootB->GetMenu()->AddItem("Six.Seven"); pRootB->GetMenu()->AddItem("Six.Eight"); pRootB->GetMenu()->AddItem("Six.Nine"); } pRoot->GetMenu()->AddItem("Seven"); } } void MenuItemSelect(Base* pControl) { Gwen::Controls::MenuItem* pMenuItem = (Gwen::Controls::MenuItem*)pControl; UnitPrint(Utility::Format(L"Menu Selected: %s", pMenuItem->GetText().c_str())); } }; DEFINE_UNIT_TEST(MenuStrip, L"MenuStrip");