! ! Copyright (C) Keith Whitwell 1996 ! module viewer_menubar objects = { XmLabel = gadget; XmCascadeButton = gadget; XmPushButton = gadget; XmToggleButton = gadget; XmSeparator = gadget; } include file 'application.uih'; object menubar : exported XmMenuBar { controls { XmCascadeButton file; XmCascadeButton display; }; }; object file : XmCascadeButton { controls { file_menu : XmPulldownMenu { controls { XmPushButton open; unmanaged XmPushButton close; XmPushButton save; XmSeparator { }; XmPushButton exit; }; }; }; arguments { XmNlabelString = "File"; XmNmnemonic = keysym ('F'); }; }; object open : XmPushButton { arguments { XmNlabelString = "Open..."; XmNmnemonic = keysym ('O'); }; callbacks { XmNactivateCallback = procedures { motif_dialog_cb (DIALOG_OPEN); }; }; }; object close : XmPushButton { arguments { XmNlabelString = "Close..."; XmNmnemonic = keysym ('O'); }; callbacks { }; }; object save : XmPushButton { arguments { XmNlabelString = "Save..."; XmNmnemonic = keysym ('S'); }; callbacks { XmNactivateCallback = procedures { motif_dialog_cb (DIALOG_SAVE); }; }; }; object exit : XmPushButton { arguments { XmNlabelString = "Exit"; XmNmnemonic = keysym ('x'); XmNaccelerator = 'Ctrlc'; XmNacceleratorText = "Ctrl+C"; }; callbacks { XmNactivateCallback = procedure quit_cb(); }; }; object display : XmCascadeButton { controls { display_menu : XmPulldownMenu { controls { XmPushButton flat; XmPushButton wire; XmPushButton smooth; XmPushButton texture; XmSeparator { }; XmToggleButton perspective; XmToggleButton debug; XmSeparator { }; XmPushButton light; }; }; }; arguments { XmNlabelString = "Display"; XmNmnemonic = keysym ('D'); }; }; object smooth : XmPushButton { arguments { XmNlabelString = "Smooth"; XmNmnemonic = keysym ('M'); }; callbacks { XmNactivateCallback = procedures { set_smooth(); }; }; }; object wire : XmPushButton { arguments { XmNlabelString = "Wire (buggy)"; XmNmnemonic = keysym ('M'); }; callbacks { XmNactivateCallback = procedures { set_wire(); }; }; }; object flat : XmPushButton { arguments { XmNlabelString = "Flat"; XmNmnemonic = keysym ('M'); }; callbacks { XmNactivateCallback = procedures { set_flat(); }; }; }; object texture : XmPushButton { arguments { XmNlabelString = "Texture"; XmNmnemonic = keysym ('M'); }; callbacks { XmNactivateCallback = procedures { set_texture(); }; }; }; object perspective : XmToggleButton { arguments { XmNlabelString = "Orthogonal"; XmNmnemonic = keysym ('O'); XmNset = false; }; callbacks { XmNvalueChangedCallback = procedures { toggle_ortho(); }; }; }; object debug : XmToggleButton { arguments { XmNlabelString = "Debug"; XmNmnemonic = keysym ('D'); XmNset = false; }; callbacks { XmNvalueChangedCallback = procedures { toggle_debug(); }; }; }; object light : XmPushButton { arguments { XmNlabelString = "Lighting..."; XmNmnemonic = keysym ('L'); }; callbacks { XmNactivateCallback = procedures { shell_dialog_cb (DIALOG_LIGHT); }; }; }; end module;