// 23 april 2015 #include "test.h" uiMenu *fileMenu; uiMenuItem *newItem; uiMenuItem *openItem; uiMenuItem *shouldQuitItem; uiMenuItem *quitItem; uiMenu *editMenu; uiMenuItem *undoItem; uiMenuItem *checkItem; uiMenuItem *accelItem; uiMenuItem *prefsItem; uiMenu *testMenu; uiMenuItem *enabledItem; uiMenuItem *enableThisItem; uiMenuItem *forceCheckedItem; uiMenuItem *forceUncheckedItem; uiMenuItem *whatWindowItem; uiMenuItem *resizeableItem; uiMenu *moreTestsMenu; uiMenuItem *quitEnabledItem; uiMenuItem *prefsEnabledItem; uiMenuItem *aboutEnabledItem; uiMenuItem *checkEnabledItem; uiMenu *multiMenu; uiMenu *helpMenu; uiMenuItem *helpItem; uiMenuItem *aboutItem; static void enableItemTest(uiMenuItem *item, uiWindow *w, void *data) { if (uiMenuItemChecked(item)) uiMenuItemEnable(uiMenuItem(data)); else uiMenuItemDisable(uiMenuItem(data)); } static void forceOn(uiMenuItem *item, uiWindow *w, void *data) { uiMenuItemSetChecked(enabledItem, 1); } static void forceOff(uiMenuItem *item, uiWindow *w, void *data) { uiMenuItemSetChecked(enabledItem, 0); } static void whatWindow(uiMenuItem *item, uiWindow *w, void *data) { printf("menu item clicked on window %p\n", (void *) w); } static void toggleResize(uiMenuItem *item, uiWindow *w, void *data) { uiWindowSetResizeable(w, uiMenuItemChecked(item)); } void initMenus(void) { fileMenu = uiNewMenu("File"); newItem = uiMenuAppendItem(fileMenu, "New"); openItem = uiMenuAppendItem(fileMenu, "Open"); uiMenuAppendSeparator(fileMenu); shouldQuitItem = uiMenuAppendCheckItem(fileMenu, "Should Quit"); quitItem = uiMenuAppendQuitItem(fileMenu); editMenu = uiNewMenu("Edit"); undoItem = uiMenuAppendItem(editMenu, "Undo"); uiMenuItemDisable(undoItem); uiMenuAppendSeparator(editMenu); checkItem = uiMenuAppendCheckItem(editMenu, "Check Me\tTest"); accelItem = uiMenuAppendItem(editMenu, "A&ccele&&rator T_es__t"); prefsItem = uiMenuAppendPreferencesItem(editMenu); testMenu = uiNewMenu("Test"); enabledItem = uiMenuAppendCheckItem(testMenu, "Enable Below Item"); uiMenuItemSetChecked(enabledItem, 1); enableThisItem = uiMenuAppendItem(testMenu, "This Will Be Enabled"); uiMenuItemOnClicked(enabledItem, enableItemTest, enableThisItem); forceCheckedItem = uiMenuAppendItem(testMenu, "Force Above Checked"); uiMenuItemOnClicked(forceCheckedItem, forceOn, NULL); forceUncheckedItem = uiMenuAppendItem(testMenu, "Force Above Unchecked"); uiMenuItemOnClicked(forceUncheckedItem, forceOff, NULL); uiMenuAppendSeparator(testMenu); whatWindowItem = uiMenuAppendItem(testMenu, "What Window?"); uiMenuItemOnClicked(whatWindowItem, whatWindow, NULL); resizeableItem = uiMenuAppendCheckItem(testMenu, "Enable Resize"); uiMenuItemSetChecked(resizeableItem, 1); uiMenuItemOnClicked(resizeableItem, toggleResize, NULL); moreTestsMenu = uiNewMenu("More Tests"); quitEnabledItem = uiMenuAppendCheckItem(moreTestsMenu, "Quit Item Enabled"); uiMenuItemSetChecked(quitEnabledItem, 1); prefsEnabledItem = uiMenuAppendCheckItem(moreTestsMenu, "Preferences Item Enabled"); uiMenuItemSetChecked(prefsEnabledItem, 1); aboutEnabledItem = uiMenuAppendCheckItem(moreTestsMenu, "About Item Enabled"); uiMenuItemSetChecked(aboutEnabledItem, 1); uiMenuAppendSeparator(moreTestsMenu); checkEnabledItem = uiMenuAppendCheckItem(moreTestsMenu, "Check Me Item Enabled"); uiMenuItemSetChecked(checkEnabledItem, 1); multiMenu = uiNewMenu("Multi"); uiMenuAppendSeparator(multiMenu); uiMenuAppendSeparator(multiMenu); uiMenuAppendItem(multiMenu, "Item && Item && Item"); uiMenuAppendSeparator(multiMenu); uiMenuAppendSeparator(multiMenu); uiMenuAppendItem(multiMenu, "Item __ Item __ Item"); uiMenuAppendSeparator(multiMenu); uiMenuAppendSeparator(multiMenu); helpMenu = uiNewMenu("Help"); helpItem = uiMenuAppendItem(helpMenu, "Help"); aboutItem = uiMenuAppendAboutItem(helpMenu); uiMenuItemOnClicked(quitEnabledItem, enableItemTest, quitItem); uiMenuItemOnClicked(prefsEnabledItem, enableItemTest, prefsItem); uiMenuItemOnClicked(aboutEnabledItem, enableItemTest, aboutItem); uiMenuItemOnClicked(checkEnabledItem, enableItemTest, checkItem); }