MyMenu* MyMenu::create(const CCSize& contentSize,CCMenuItem* item, ...){ va_list args; va_start(args,item); MyMenu *pRet = new MyMenu(); CCArray* pArray = NULL; if( item ) { pArray = CCArray::create(item, NULL); CCMenuItem *i = va_arg(args, CCMenuItem*); while(i) { pArray->addObject(i); i = va_arg(args, CCMenuItem*); } } if (pRet && pRet->initWithArray(pArray)) { pRet->autorelease(); va_end(args); pRet->contentSizeByTiled = contentSize; MyTiledMenuItemSprite* myItem= dynamic_cast<MyTiledMenuItemSprite*>(item); if(myItem != NULL) { //TODO // myItem -> setTag(myTiledMenuItemTag); } return pRet; } va_end(args); CC_SAFE_DELETE(pRet); return NULL; }
void DbReader::setPlayerDefaultName(const int plyr, const std::string &name) { db->setStringForKey(("Player"+std::to_string(plyr)+"Name").c_str(),name.c_str()); G_playersDefaultNames[plyr - 1] = name; MyMenu *menu; if (G_dir()->getRunningScene() && (menu = dynamic_cast<MyMenu*>(G_dir()->getRunningScene()->getChildByTag(LAYER_HUD)))) //menu { menu->UPDATEPLAYERNAME(); } }
MyMenu* MyMenu::createWithArray(CCArray* pArrayOfItems) { MyMenu *pRet = new MyMenu(); if (pRet && pRet->initWithArray(pArrayOfItems)) { pRet->autorelease(); } else { CC_SAFE_DELETE(pRet); } return pRet; }
/************************************************************** *** ** ContextMenuProvider --- getNewViewMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getNewViewMenu() { const int vedicitems[] = { 0, CMD_CHILD_NEW_DASA, CMD_CHILD_NEW_GRAPHICALDASA, CMD_CHILD_NEW_TRANSIT, 0, CMD_CHILD_NEW_YOGA, CMD_CHILD_NEW_ASHTAKAVARGA, CMD_CHILD_NEW_SOLAR, -1 }; const int westernitems[5] = { 0, CMD_CHILD_NEW_URANIAN, CMD_CHILD_NEW_TRANSIT, CMD_CHILD_NEW_SOLAR, -1 }; const int appitems[5] = { APP_SHOWEPHEM, APP_SHOWECLIPSE, APP_SHOWHORA, APP_NEW_PARTNER, -1 }; MyMenu *menu = new MyMenu( _( "New View" ), view ); bool vedicmode = view->isVedic(); if ( wxGetKeyState( WXK_SHIFT )) vedicmode = ! vedicmode; if ( view->getDoc()) { // Varga submenu or western chart if ( vedicmode ) menu->addVargaMenu(); else menu->addItem( CMD_CHILD_NEW_WCHART ); if ( vedicmode ) { menu->addItem( CMD_CHILD_NEW_VARGA ); menu->addItem( CMD_CHILD_NEW_SBC ); } menu->addItem( CMD_CHILD_NEW_TEXT ); menu->addArray( vedicmode ? vedicitems : westernitems ); } else { menu->addArray( appitems ); } return menu; }
/************************************************************** *** ** ContextMenuProvider --- getSarvatobhadraMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getSarvatobhadraMenu() { MyMenu *menu = new MyMenu( _( "Sarvatobhadra" ), view ); menu->Append( CMD_CHILD_VSHOWRETRO, _( "Retrograde Planets"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWRETRO, view->getVedicGraphicStyle() & VGRAPHIC_SHOW_RETRO ); menu->Append( CMD_CHILD_VSHOWPLANETCOLORS, _( "Colors for Planet Symbols"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWPLANETCOLORS, view->getVedicGraphicStyle() & VGRAPHIC_SHOW_PLANET_COLORS ); menu->Append( CMD_CHILD_VSHOWSANSKRITSYMBOLS, _( "Sanskrit Symbols"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWSANSKRITSYMBOLS, view->getVedicGraphicStyle() & VGRAPHIC_SHOW_SANSKRIT_SYMBOLS ); menu->Append( CMD_CHILD_VSHOWAFFLICTIONS, _( "Afflictions"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWAFFLICTIONS, view->getVedicGraphicStyle() & VGRAPHIC_SHOW_AFFLICTIONS ); return menu; }
/***************************************************** ** ** ChildWindow --- OnCommand ** ******************************************************/ void ChildWindow::OnCommand( wxCommandEvent &event ) { if ( ! isvalid ) return; // nothing to do for closing views BasicView *bview = 0; wxObject *oo = event.GetEventObject(); if ( oo ) { if ( oo->GetClassInfo()->IsKindOf( CLASSINFO( MyMenu ))) { MyMenu *menu = (MyMenu*)oo; bview = (BasicView*)menu->getView(); } } if ( event.GetId() >= CMD_CHILD_NEW_TEXT && event.GetId() <= CMD_CHILD_NEW_RASI+30 ) { event.Skip(); // Delegate to parent } else dispatchCommand( event.GetId(), bview ); }
/************************************************************** *** ** ContextMenuProvider --- getSkinMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getSkinMenu() { unsigned int i = 0; MyMenu *menu = new MyMenu( _( "Skin" ), view ); if ( view->isVedic()) { vector<VedicChartConfig*> list = VedicChartConfigLoader::get()->getConfigs(); for ( unsigned i = 0; i < list.size(); i++ ) { menu->addCheckItem( CMD_CHILD_GRAPHIC_STYLE + i, list[i]->name, i == (unsigned int)view->getSkin()); } } else { vector<WesternChartConfig*> list = WesternChartConfigLoader::get()->getConfigs(); for ( i = 0; i < list.size(); i++ ) { menu->addCheckItem( CMD_CHILD_GRAPHIC_STYLE + i, list[i]->name, i == (unsigned int) view->getSkin()); } } return menu; }
/************************************************************** *** ** ContextMenuProvider --- getChartMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getChartMenu() { MyMenu *menu = new MyMenu( _( "File" ), view ); menu->addItem( CMD_CHILD_CLOSE ); if ( view->getDoc() ) { menu->addItem( CMD_CHILD_CLOSE_DOC ); menu->addItem( CMD_CHILD_SAVE ); menu->addItem( CMD_CHILD_SAVEAS ); menu->addItem( CMD_CHILD_PRINT ); menu->addItem( CMD_CHILD_QUICKPRINT ); } return menu; }
/************************************************************** *** ** ContextMenuProvider --- getAppWindowContextMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getAppWindowContextMenu() { const int appmenuitems[] = { APP_FILENEW, APP_FILEOPEN, 0, APP_SHOWEPHEM, APP_SHOWECLIPSE, APP_SHOWHORA, APP_NEW_PARTNER, 0, -1 }; MyMenu *menu = new MyMenu( _( "Main Window Menu" ), view ); menu->addArray( appmenuitems ); menu->addWindowListMenu(); menu->addItem( APP_CONFIGURE ); menu->addItem( APP_LOCATION ); menu->AppendSeparator(); menu->addItem( APP_FILEQUIT ); return menu; }
void FileManager::menu() { MyMenu menu; string option; menu.cambiarTitulo("File Manager Menu I"); menu.agregarOpcion("User Manual for Editor I"); menu.agregarOpcion("Create a new File I"); menu.agregarOpcion("Open an existing File I"); menu.agregarOpcion("Clone File to new File I"); menu.agregarOpcion("Exit I"); menu.cambiarPregunta("Please choose one of the option shown above. I"); cout << "_____________________________________________" << endl; cout << menu << endl; cout << "_____________________________________________I" << endl; cin >> option; if (option == "1") { FileManager::openreadme(); FileManager::menu(); } else if (option == "2") { FileManager::createFile(); FileManager::menu(); } else if (option == "3") { FileManager::openFile(); FileManager::menu(); } else if (option == "4") { FileManager::copyFile(); FileManager::menu(); } else if (option == "5") { cout << "Thank you,Bye!" << endl; return; } else { cout << "\aInvalid input, please try again" << endl; FileManager::menu(); } }
int main() { cout << "Implement your code" << endl; MyMenu* myMenu = new MyMenu(); myMenu->printMenu(); return 0; }
/************************************************************** *** ** ContextMenuProvider --- getGraphicStyleMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getGraphicStyleMenu() { wxMenu *menu = new MyMenu( _( "Graphic Options" ), view ); if ( view->isVedic()) { menu->Append( CMD_CHILD_VSHOWSOUTHINDIAN, _("South Indian Style"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWSOUTHINDIAN, view->getVedicGraphicStyle() & VGRAPHIC_SOUTH_INDIAN ); menu->Append( CMD_CHILD_VSHOWNORTHINDIAN, _("North Indian Style"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWNORTHINDIAN, view->getVedicGraphicStyle() & VGRAPHIC_NORTH_INDIAN ); menu->Append( CMD_CHILD_VSHOWEASTINDIAN, _("East Indian Style"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWEASTINDIAN, view->getVedicGraphicStyle() & VGRAPHIC_EAST_INDIAN ); if ( view->getVedicGraphicStyle() & VGRAPHIC_NORTH_INDIAN ) { wxMenu *northmenu = new wxMenu(); northmenu->Append( CMD_CHILD_VSHOWNORTHASC, _("Ascendant Only"), wxT( "" ), true ); northmenu->Check( CMD_CHILD_VSHOWNORTHASC, view->getVedicGraphicStyle() & VGRAPHIC_NORTH_INDIAN_ASC ); northmenu->Append( CMD_CHILD_VSHOWNORTHNUMBER, _("Number"), wxT( "" ), true ); northmenu->Check( CMD_CHILD_VSHOWNORTHNUMBER, view->getVedicGraphicStyle() & VGRAPHIC_NORTH_INDIAN_NUMBER ); northmenu->Append( CMD_CHILD_VSHOWNORTHSHORT, _("Short String"), wxT( "" ), true ); northmenu->Check( CMD_CHILD_VSHOWNORTHSHORT, view->getVedicGraphicStyle() & VGRAPHIC_NORTH_INDIAN_SHORT ); northmenu->Append( CMD_CHILD_VSHOWNORTHSYMBOL, _("Symbol"), wxT( "" ), true ); northmenu->Check( CMD_CHILD_VSHOWNORTHSYMBOL, view->getVedicGraphicStyle() & VGRAPHIC_NORTH_INDIAN_SYMBOL ); menu->Append( -1, _( "Display Signs" ), northmenu ); } if ( view->supportsFullGraphicStyleToggle()) { MyMenu *centermenu = new MyMenu( _( "Chart Center" ), view ); centermenu->Append( CMD_CHILD_VSHOWCENTERNOTHING, _("Nothing"), wxT( "" ), true ); centermenu->Check( CMD_CHILD_VSHOWCENTERNOTHING, view->getVedicGraphicStyle() & VGRAPHIC_CHART_CENTER_NOTHING ); centermenu->Append( CMD_CHILD_VSHOWCENTERVARGA, _("Varga"), wxT( "" ), true ); centermenu->Check( CMD_CHILD_VSHOWCENTERVARGA, view->getVedicGraphicStyle() & VGRAPHIC_CHART_CENTER_VARGA ); centermenu->Append( CMD_CHILD_VSHOWCENTERDIVISION, _("Division"), wxT( "" ), true ); centermenu->Check( CMD_CHILD_VSHOWCENTERDIVISION, view->getVedicGraphicStyle() & VGRAPHIC_CHART_CENTER_DIVISION ); menu->Append( -1, _( "Chart Center" ), centermenu ); } menu->AppendSeparator(); if ( view->supportsFullGraphicStyleToggle()) { menu->Append( CMD_CHILD_VSHOWRETRO, _( "Retrograde Planets"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWRETRO, view->getVedicGraphicStyle() & VGRAPHIC_SHOW_RETRO ); menu->Append( CMD_CHILD_VSHOWARUDHA, _( "Arudhas"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWARUDHA, view->getVedicGraphicStyle() & VGRAPHIC_SHOW_ARUDHAS ); } menu->Append( CMD_CHILD_VSHOWPLANETCOLORS, _( "Colors for Planet Symbols"), wxT( "" ), true ); menu->Check( CMD_CHILD_VSHOWPLANETCOLORS, view->getVedicGraphicStyle() & VGRAPHIC_SHOW_PLANET_COLORS ); } else { menu->Append( CMD_CHILD_WSHOWRETRO, _( "Show Retrograde Planets"), wxT( "" ), true ); menu->Check( CMD_CHILD_WSHOWRETRO, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_RETRO ); menu->Append( CMD_CHILD_WSHOWASPECTS, _( "Show Aspects"), wxT( "" ), true ); menu->Check( CMD_CHILD_WSHOWASPECTS, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_ASPECTS ); menu->Append( CMD_CHILD_WSHOWASPECTSYMBOLS, _( "Show Aspect Symbols"), wxT( "" ), true ); menu->Check( CMD_CHILD_WSHOWASPECTSYMBOLS, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_ASPECT_SYMBOLS ); menu->Append( CMD_CHILD_WSHOWHOUSES, _( "Show Houses"), wxT( "" ), true ); menu->Check( CMD_CHILD_WSHOWHOUSES, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_HOUSES ); MyMenu *leftsidemenu = new MyMenu( _( "Left Side" ), view ); leftsidemenu->Append( CMD_CHILD_WSHOWLEFTASC, _( "Ascendant"), wxT( "" ), true ); leftsidemenu->Check( CMD_CHILD_WSHOWLEFTASC, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_LEFT_ASC ); leftsidemenu->Append( CMD_CHILD_WSHOWLEFTARIES, _( "Aries"), wxT( "" ), true ); leftsidemenu->Check( CMD_CHILD_WSHOWLEFTARIES, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_LEFT_ARIES ); leftsidemenu->Append( CMD_CHILD_WSHOWLEFTCANCER, _( "Cancer"), wxT( "" ), true ); leftsidemenu->Check( CMD_CHILD_WSHOWLEFTCANCER, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_LEFT_CANCER ); leftsidemenu->Append( CMD_CHILD_WSHOWLEFTLIBRA, _( "Libra"), wxT( "" ), true ); leftsidemenu->Check( CMD_CHILD_WSHOWLEFTLIBRA, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_LEFT_LIBRA ); leftsidemenu->Append( CMD_CHILD_WSHOWLEFTCAPRICORN, _( "Capricorn"), wxT( "" ), true ); leftsidemenu->Check( CMD_CHILD_WSHOWLEFTCAPRICORN, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_LEFT_CAPRICORN ); menu->Append( -1, _( "Left Side" ), leftsidemenu ); MyMenu *colormenu = new MyMenu( wxEmptyString, view ); colormenu->Append( CMD_CHILD_WSHOWPLANETCOLORS, _( "Planets"), wxT( "" ), true ); colormenu->Check( CMD_CHILD_WSHOWPLANETCOLORS, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_PLANET_COLORS ); colormenu->Append( CMD_CHILD_WSHOWSIGNCOLORS, _( "Signs"), wxT( "" ), true ); colormenu->Check( CMD_CHILD_WSHOWSIGNCOLORS, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_SIGN_COLORS ); colormenu->Append( CMD_CHILD_WSHOWHOUSECOLORS, _( "Houses"), wxT( "" ), true ); colormenu->Check( CMD_CHILD_WSHOWHOUSECOLORS, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_HOUSE_COLORS ); colormenu->Append( CMD_CHILD_WSHOWASPECTCOLORS, _( "Aspects"), wxT( "" ), true ); colormenu->Check( CMD_CHILD_WSHOWASPECTCOLORS, view->getWesternGraphicStyle() & WGRAPHIC_SHOW_ASPECT_COLORS ); } return menu; }
/************************************************************** *** ** ContextMenuProvider --- getObjectSubMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getObjectSubMenu() { MyMenu *menu = new MyMenu( _( "Objects" ), view ); menu->addCheckItem( CMD_CHILD_SHOWOUTER, _( "3 Outer Planets"), view->getObjectStyle() & OBJECTS_INCLUDE_OUTER ); menu->addCheckItem( CMD_CHILD_SHOWDRAGONHEAD, _( "Dragon Head"), view->getObjectStyle() & OBJECTS_INCLUDE_DRAGONHEAD ); menu->addCheckItem( CMD_CHILD_SHOWDRAGONTAIL, _( "Dragon Tail"), view->getObjectStyle() & OBJECTS_INCLUDE_DRAGONTAIL ); if ( ! view->supportsRestrictedObjectToggle() ) { menu->addCheckItem( CMD_CHILD_SHOWASCENDANT, _( "Ascendant"), view->getObjectStyle() & OBJECTS_INCLUDE_ASCENDANT ); menu->addCheckItem( CMD_CHILD_SHOWMERIDIAN, _( "Meridian"), view->getObjectStyle() & OBJECTS_INCLUDE_MERIDIAN ); } menu->addCheckItem( CMD_CHILD_SHOWURANIAN, _( "8 Uranian"), view->getObjectStyle() & OBJECTS_INCLUDE_URANIAN ); menu->addCheckItem( CMD_CHILD_SHOWCHIRON, _( "Chiron"), view->getObjectStyle() & OBJECTS_INCLUDE_CHIRON ); menu->addCheckItem( CMD_CHILD_SHOWPHOLUS, _( "Pholus"), view->getObjectStyle() & OBJECTS_INCLUDE_PHOLUS ); menu->addCheckItem( CMD_CHILD_SHOWPLANETOIDS, _( "4 Planetoids"), view->getObjectStyle() & OBJECTS_INCLUDE_PLANETOIDS ); menu->addCheckItem( CMD_CHILD_SHOWLILITH, _( "Lilith (Black Moon)"), view->getObjectStyle() & OBJECTS_INCLUDE_LILITH ); if ( ! view->supportsRestrictedObjectToggle() ) { menu->addCheckItem( CMD_CHILD_SHOWARIES, _( "Aries"), view->getObjectStyle() & OBJECTS_INCLUDE_ARIES ); menu->addCheckItem( CMD_CHILD_SHOWUPAGRAHAS, _( "5 Upagrahas"), view->getObjectStyle() & OBJECTS_INCLUDE_UPAGRAHAS ); menu->addCheckItem( CMD_CHILD_SHOWKALAVELAS, _( "Kalavelas"), view->getObjectStyle() & OBJECTS_INCLUDE_KALAVELAS ); menu->addCheckItem( CMD_CHILD_SHOWSPECIALLAGNAS, _( "3 Special Lagnas"), view->getObjectStyle() & OBJECTS_INCLUDE_SPECIALLAGNAS ); menu->addCheckItem( CMD_CHILD_SHOWD9LAGNA, _( "Sphuta Navamsa Lagna"), view->getObjectStyle() & OBJECTS_INCLUDE_D9_LAGNA ); size_t size = ( view->isVedic() ? config->vArabicParts.Count() : config->wArabicParts.Count() ); if ( size > 0 ) { menu->addCheckItem( CMD_CHILD_SHOWARABICPARTS, _( "Arabic Parts"), view->getObjectStyle() & OBJECTS_INCLUDE_ARABICPARTS ); } // show houses only for text views, not in graphical charts if ( ! view->supportsRestrictedObjectToggle() ) { menu->addCheckItem( CMD_CHILD_MAIN_SHOW_HOUSES, _( "Houses" ), view->getObjectStyle() & MAIN_CHILD_SHOW_HOUSES ); } } return menu; }
/************************************************************** *** ** ContextMenuProvider --- getContextMenu *** ***************************************************************/ wxMenu *ContextMenuProvider::getContextMenu( ChildWindow *child, BasicView *basicview ) { assert( basicview ); int count = 0; view = basicview; MyMenu *menu = new MyMenu( child->GetTitle(), view ); bool ismainview = view->isMainView(); menu->Append( -1, _( "File" ), getChartMenu()); if ( view->getDoc()) menu->addItem( CMD_CHILD_EDITDATA ); if ( view->supportsEWToggle() ) { menu->AppendSeparator(); menu->addCheckItem( CMD_CHILD_VEDICMODE, view->isVedic()); menu->addCheckItem( CMD_CHILD_WESTERNMODE, ! view->isVedic()); } menu->AppendSeparator(); if ( view->supportsObjectToggle() || view->supportsRestrictedObjectToggle()) { menu->AppendSubMenu( getObjectSubMenu(), _( "Objects")); count++; } if ( view->supportsFullGraphicStyleToggle() || view->supportsRestrictedGraphicStyleToggle()) { menu->AppendSubMenu( getGraphicStyleMenu(), _( "Graphic Options")); count++; } if ( view->supportsSbcStyleToggle() ) // SBC { menu->AppendSubMenu( getSarvatobhadraMenu(), _( "Sarvatobhadra")); count++; } if ( view->supportsSkinToggle()) { menu->AppendSubMenu( getSkinMenu(), _( "Skin" )); count++; } if ( ismainview ) { menu->AppendSubMenu( getMainViewColumnMenu(), _( "Columns")); count++; } if ( count > 0 ) menu->AppendSeparator(); menu->AppendSubMenu( getNewViewMenu(), _( "New View")); if ( view->getDoc()) // TODO auch für non doc { menu->AppendSeparator(); menu->Append( CMD_CHILD_ANIMATE, _( "Animate"), wxT( "" ), true ); menu->Check( CMD_CHILD_ANIMATE, view->getDoc()->isAnimated()); } if ( view->supportsGraphicExport() ) { menu->AppendSeparator(); menu->addItem( CMD_CHILD_EXPORT ); } if ( view->supportsTextExport() ) { menu->AppendSeparator(); //menu->addItem( CMD_CHILD_SELECT_ALL ); //menu->addItem( CMD_CHILD_COPY ); menu->addItem( CMD_CHILD_SAVETEXT ); } return menu; }
/************************************************************** *** ** MyMenu --- addVargaMenu *** ***************************************************************/ void MyMenu::addVargaMenu() { MyMenu *menu = new MyMenu( wxEmptyString, view ); for( int i = 0; i < NB_VARGAS; i++ ) menu->addItem( CMD_CHILD_NEW_RASI + i ); Append( -1, _( "Varga"), menu ); }