PLUGIN_API int XPluginStart( char * outName, char * outSig, char * outDesc) { strcpy(outName, "ATIS Printer"); strcpy(outSig, "de.bwravencl.atis_printer"); strcpy(outDesc, "A plugin that prints ATIS data from the VATSIM network."); XPLMMenuID menu = XPLMCreateMenu("ACARS Weather", NULL, 0, MyHandleMenuCallback, 0); XPLMAppendMenuItem(menu, "Departure ATIS", (void *) 0, 1); XPLMAppendMenuItem(menu, "Destination ATIS", (void *) 1, 1); XPLMAppendMenuItem(menu, "Departure METAR", (void *) 2, 1); XPLMAppendMenuItem(menu, "Destination METAR", (void *) 3, 1); mainWindow = XPLMCreateWindow( WINDOW_POS_X, WINDOW_POS_Y, WINDOW_POS_X + WINDOW_WIDTH, WINDOW_POS_Y - WINDOW_HEIGHT, 1, MyDrawWindowCallback, MyHandleKeyCallback, MyHandleMouseClickCallback, NULL); return 1; }
void create_menu() { ui_menu_main_ix = XPLMAppendMenuItem(XPLMFindPluginsMenu(), "EZPushback", NULL, 1); ui_menu_id = XPLMCreateMenu("EZPushback", XPLMFindPluginsMenu(), ui_menu_main_ix, menu_handler, NULL); if (ui_menu_id == NULL) { debug("could not create UI menu!"); return; } ui_menu_push_ix = XPLMAppendMenuItem(ui_menu_id, "Start Pushback (reverse)", (void*) UI_MENU_ITEM_START_PUSH, 1); ui_menu_tug_ix = XPLMAppendMenuItem(ui_menu_id, "Start Tug (forward)", (void*) UI_MENU_ITEM_START_TUG, 1); XPLMAppendMenuSeparator(ui_menu_id); ui_menu_stop_ix = XPLMAppendMenuItem(ui_menu_id, "Stop", (void*) UI_MENU_ITEM_STOP, 1); set_menu_idle_state(); }
PLUGIN_API int XPluginStart( char * outName, char * outSig, char * outDesc) { int PluginSubMenuItem; int ChecklistsSubMenuItem; xcDebug("Xchecklist: ver " VERSION_NUMBER "\n"); /* First set up our plugin info. */ strcpy(outName, "Xchecklist ver " VERSION_NUMBER); strcpy(outSig, "Michal_Bill.Example.Xchecklist"); strcpy(outDesc, "A plugin to display checklists in a widget window."); ext_view = XPLMFindDataRef("sim/graphics/view/view_is_external"); // Create our menu PluginSubMenuItem = XPLMAppendMenuItem( XPLMFindPluginsMenu(), "Xchecklist", NULL, 1); PluginMenu = XPLMCreateMenu( "Xchecklist", XPLMFindPluginsMenu(), PluginSubMenuItem, xCheckListMenuHandler, (void *)0); XPLMAppendMenuItem(PluginMenu, "Open CheckList", (void *) "checklist", 1); XPLMAppendMenuItem(PluginMenu, "Open Setup", (void *) "setup", 1); ChecklistsSubMenuItem = XPLMAppendMenuItem( PluginMenu, "CheckLists", NULL, 1); checklistsMenu = XPLMCreateMenu( "CheckLists", PluginMenu, ChecklistsSubMenuItem, xCheckListMenuHandler, (void *)1); XPLMAppendMenuItem(checklistsMenu, "CheckList1", (void *) 0, 1); XPLMAppendMenuItem(checklistsMenu, "CheckList2", (void *) 1, 1); cmdcheckitem = XPLMCreateCommand("bgood/xchecklist/check_item","Check Item"); cmdnextchecklist = XPLMCreateCommand("bgood/xchecklist/next_checklist","Next Checklist"); cmdprevchecklist = XPLMCreateCommand("bgood/xchecklist/prev_checklist","Prev Checklist"); cmdhidechecklist = XPLMCreateCommand("bgood/xchecklist/hide_checklist","Hide Checklist"); XPLMRegisterCommandHandler( cmdcheckitem, MyCommandCallback, true, (void *)CHECK_ITEM_COMMAND); XPLMRegisterCommandHandler( cmdnextchecklist, MyCommandCallback, true, (void *)NEXT_CHECKLIST_COMMAND); XPLMRegisterCommandHandler( cmdprevchecklist, MyCommandCallback, true, (void *)PREV_CHECKLIST_COMMAND); XPLMRegisterCommandHandler( cmdhidechecklist, MyCommandCallback, true, (void *)HIDE_CHECKLIST_COMMAND); return 1; }
int createMenus() { int res = 0; //Create the Show/Hide Data Menu //First we put a new menu item into the plugin menu. //This menu item will contain a submenu for us. myMenu = XPLMAppendMenuItem( XPLMFindPluginsMenu(), // Put in plugins menu MENU_NAME, // Item Title 0, // Item Ref 1); // Force English // Now create a submenu attached to our menu item. */ mySubMenu = XPLMCreateMenu( SUBMENU_NAME, XPLMFindPluginsMenu(), myMenu, // Menu Item to attach to. myMenuHandlerCallback, // The handler 0); // Handler Ref // Append a few menu items to our submenu. We will use the refcon to XPLMAppendMenuItem( mySubMenu, "Open", (void *) MENU_OPEN, 1); XPLMAppendMenuItem( mySubMenu, "Close", (void *) MENU_CLOSE, 1); XPLMAppendMenuSeparator(mySubMenu); XPLMAppendMenuItem( mySubMenu, "Show", (void *) MENU_SHOW, 1); XPLMAppendMenuItem( mySubMenu, "Hide", (void *) MENU_HIDE, 1); XPLMAppendMenuSeparator(mySubMenu); XPLMAppendMenuItem( mySubMenu, "Increase size", (void *) MENU_SIZE_INC, 1); XPLMAppendMenuItem( mySubMenu, "Decrease size", (void *) MENU_SIZE_DEC, 1); XPLMAppendMenuItem( mySubMenu, "Restore size", (void *) MENU_SIZE_RESTORE, 1); XPLMAppendMenuSeparator(mySubMenu); myMenuItemWAASAutoipilot = XPLMAppendMenuItem( mySubMenu, "Autopilot connected", (void *) MENU_AUTOPILOT_CONNECTED, 1); XPLMCheckMenuItem(mySubMenu, myMenuItemWAASAutoipilot, xplm_Menu_Unchecked); autopilotConnected = false; logMessageEx("--- Menu created"); return res; }
/* Create the Menu */ void create_menu(void) { PluginSubMenuItem = XPLMAppendMenuItem(XPLMFindPluginsMenu(), "XPUDPng", NULL, 1); PluginMenu = XPLMCreateMenu("XPUDPng " VERSION, XPLMFindPluginsMenu(), PluginSubMenuItem, AboutMenuHandler, NULL); XPLMAppendMenuItem(PluginMenu, "About XPUDPNG", (void *)+1, 1); }