home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
yacl-012.zip
/
uidemo
/
menu_dbl
/
main.cxx
< prev
next >
Wrap
C/C++ Source or Header
|
1995-04-08
|
2KB
|
72 lines
#include "ui/menu.h"
#include "ui/applic.h"
#include "ui/composit.h"
#include "menudrv.h"
#include "ids.h"
#ifdef __BORLANDC__
extern unsigned _stklen = 35000;
#endif
UI_MenuItemDescriptor App1Submenu [] = {
{"A one", ID_SUBMENU1}
, {"A two", ID_SUBMENU2}
, {NULL, 0}
};
UI_MenuItemDescriptor App1Menu [] = {
{"&Jan", ID_JAN, NULL }
, {"&Feb", ID_FEB, NULL }
, {"&Mar", ID_MAR, App1Submenu}
, {UIMenu_Separator, NULL, NULL }
, {"&Apr", ID_APR, NULL }
, {"Ma&y", ID_MAY, NULL }
, {NULL, 0, NULL }
};
UI_MenuItemDescriptor App2Menu [] = {
{"Monday", ID_MON}
, {"Tuesday", ID_TUE}
, {"Wednesday", ID_WED}
, {0, 0}
};
UI_MenuItemDescriptor MainMenuDesc [] = {
{"&One", ID_APP1, App1Menu}
, {"&Two", ID_APP2, App2Menu}
, {NULL , 0, NULL }
};
typedef CL_Binding<MenuDriver> MenuBinding;
// ======================== Main program ===========================
int UI_Application::Main (int, char* [])
{
UI_CompositeVObject* root = new UI_CompositeVObject
(NULL, NULL, FALSE, UI_Rectangle (100, 100, 250, 250));
MakeTopWindow (root);
root->Title() = "Parent window";
UI_MenuBar* mainMenu = new UI_MenuBar (root, MainMenuDesc);
MenuDriver driver;
driver.Setup (mainMenu);
UI_CompositeVObject* child = new UI_CompositeVObject
(root, NULL, FALSE, UI_Rectangle (200, 200, 250, 250));
child->Title() = "Child window";
UI_MenuBar* childMenu = new UI_MenuBar (child, MainMenuDesc);
MenuDriver childDriver;
childDriver.Setup (childMenu);
Run();
return 0;
}