home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright (C) 1994, Silicon Graphics, Inc.
- * All Rights Reserved.
- *
- * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
- * the contents of this file may not be disclosed to third parties, copied or
- * duplicated in any form, in whole or in part, without the prior written
- * permission of Silicon Graphics, Inc.
- *
- * RESTRICTED RIGHTS LEGEND:
- * Use, duplication or disclosure by the Government is subject to restrictions
- * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
- * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
- * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
- * rights reserved under the Copyright Laws of the United States.
- */
- #ifndef _PULL_DOWNS_
- #define _PULL_DOWNS_
-
- #include <X11/StringDefs.h>
- #include <X11/Intrinsic.h>
- #include <X11/Xatom.h>
-
- #include <Xm/Xm.h>
- #include <Xm/RowColumn.h>
- #include <Xm/BulletinB.h>
- #include <Xm/CascadeB.h>
- #include <Xm/CascadeBG.h>
- #include <Xm/FileSB.h>
- #include <Xm/Form.h>
- #include <Xm/Label.h>
- #include <Xm/FileSB.h>
- #include <Xm/PushB.h>
- #include <Xm/PushBG.h>
- #include <Xm/SeparatoG.h>
- #include <Xm/Text.h>
- #include <Xm/ToggleB.h>
- #include <Xm/ToggleBG.h>
-
- #define MENUS_IN_POPUP
-
- #include "Interface.h"
-
- enum MenuEntries {
- MM_FILE = 0,
- MM_FILE_NEW,
- MM_FILE_OPEN,
- MM_FILE_SAVE,
- MM_FILE_SAVE_AS,
- MM_FILE_SAVE_VANILLA,
- MM_FILE_QUIT,
-
- MM_EDIT,
- MM_EDIT_NEW,
- MM_EDIT_SEP,
- MM_EDIT_DELETE,
- MM_EDIT_UNDELETE,
- MM_EDIT_SEP2,
- MM_EDIT_COPY,
- MM_EDIT_COPY_ALL,
-
- MM_PARTS,
- MM_PARTS_SIDES,
- MM_PARTS_TOP_CAP,
- MM_PARTS_BOT_CAP,
-
- MM_SHAPE,
- MM_SHAPE_FACE_SET,
- MM_SHAPE_TRI_STRIP,
- MM_SHAPE_QUAD_MESH,
- MM_SHAPE_CUBIC_SPLINE,
- MM_SHAPE_CUBIC_TO_EDGE,
- MM_SHAPE_BEZIER,
-
- MM_MANIPS,
- MM_MANIPS_HBOX,
- MM_MANIPS_TRACKBALL,
- MM_MANIPS_NONE,
-
- MM_GIZMOS,
- MM_GIZMOS_TEXTURE,
- MM_GIZMOS_SURFACE,
-
- MM_ABOUT,
- MM_ABOUT_ABOUT,
-
- MM_MENU_NUM // this must be the last entry
- };
-
- enum ButtonTypes {
- MM_SEPARATOR,
- MM_PUSH_BUTTON,
- MM_TOGGLE_BUTTON,
- MM_RADIO_BUTTON,
- };
-
- static NoodleButtonInfo fileData[] = {
- {"New...", MM_FILE_NEW, MM_PUSH_BUTTON, 0, "Alt Shift <Key> n", "Alt+N" },
- {"Open...", MM_FILE_OPEN, MM_PUSH_BUTTON, 0, "Alt <Key> o", "Alt+o" },
- {"Save", MM_FILE_SAVE, MM_PUSH_BUTTON, 0, "Alt <Key> s", "Alt+s" },
- {"Save As...", MM_FILE_SAVE_AS, MM_PUSH_BUTTON, 0, "Alt Shift <Key> s", "Alt+S" },
- {"Save Standard Inventor...", MM_FILE_SAVE_VANILLA, MM_PUSH_BUTTON, 0, "Alt <Key> v", "Alt+v" },
- {"Quit", MM_FILE_QUIT, MM_PUSH_BUTTON, 0, "Alt <Key> q", "Alt+q" },
- };
-
- static NoodleButtonInfo editData[] = {
- {"New", MM_EDIT_NEW, MM_PUSH_BUTTON, 0, "Alt <Key> n", "Alt+n" },
- {"", MM_EDIT_SEP, MM_SEPARATOR, 0, 0, 0 },
- {"Delete", MM_EDIT_DELETE, MM_PUSH_BUTTON, 0, "Alt <Key> d", "Alt+d" },
- {"Undelete", MM_EDIT_UNDELETE, MM_PUSH_BUTTON, 0, "Alt <Key> u", "Alt+u" },
- {"", MM_EDIT_SEP2, MM_SEPARATOR, 0, 0, 0 },
- {"Copy", MM_EDIT_COPY, MM_PUSH_BUTTON, 0, "Alt <Key> c", "Alt+c" },
- {"CopyAll", MM_EDIT_COPY_ALL, MM_PUSH_BUTTON, 0, "Alt Shift <Key> c", "Alt+C" },
- };
-
- static NoodleButtonInfo partsData[] = {
- {"Sides", MM_PARTS_SIDES, MM_TOGGLE_BUTTON, 1, 0, 0 },
- {"Top Cap", MM_PARTS_TOP_CAP, MM_TOGGLE_BUTTON, 1, 0, 0 },
- {"Bottom Cap", MM_PARTS_BOT_CAP, MM_TOGGLE_BUTTON, 1, 0, 0 },
- };
-
- static NoodleButtonInfo shapeData[] = {
- {"Face Set", MM_SHAPE_FACE_SET, MM_RADIO_BUTTON, 1, 0, 0 },
- {"Triangle Strip Set", MM_SHAPE_TRI_STRIP, MM_RADIO_BUTTON, 0, 0, 0 },
- {"Quad Mesh", MM_SHAPE_QUAD_MESH, MM_RADIO_BUTTON, 0, 0, 0 },
- {"Cubic Spline", MM_SHAPE_CUBIC_SPLINE, MM_RADIO_BUTTON, 0, 0, 0 },
- {"Cubic Spline To Edge", MM_SHAPE_CUBIC_TO_EDGE, MM_RADIO_BUTTON, 0, 0, 0 },
- {"Bezier", MM_SHAPE_BEZIER, MM_RADIO_BUTTON, 0, 0, 0 },
- };
-
- static NoodleButtonInfo manipsData[] = {
- {"HandleBox", MM_MANIPS_HBOX, MM_RADIO_BUTTON, 1, 0, 0 },
- {"Trackball", MM_MANIPS_TRACKBALL, MM_RADIO_BUTTON, 0, 0, 0 },
- {"None", MM_MANIPS_NONE, MM_RADIO_BUTTON, 0, 0, 0 },
- };
-
- static NoodleButtonInfo gizmosData[] = {
- {"Texture Gizmo", MM_GIZMOS_TEXTURE, MM_PUSH_BUTTON, 0, 0, 0 },
- {"Surface Gizmo", MM_GIZMOS_SURFACE, MM_PUSH_BUTTON, 0, 0, 0 },
- };
-
- static NoodleButtonInfo aboutData[] = {
- {"About Noodle...", MM_ABOUT_ABOUT, MM_PUSH_BUTTON, 0, "Alt <Key> h", "Alt+h" },
- };
-
- static NoodleMenu pulldownData[] = {
- // {name, id, subMenu, subItemCount}
- {"File", MM_FILE, fileData, XtNumber(fileData) },
- {"Edit", MM_EDIT, editData, XtNumber(editData) },
- {"Parts", MM_PARTS, partsData, XtNumber(partsData) },
- {"ShapeStyle", MM_SHAPE, shapeData, XtNumber(shapeData) },
- {"Manips", MM_MANIPS, manipsData, XtNumber(manipsData) },
- {"Gizmos", MM_GIZMOS, gizmosData, XtNumber(gizmosData) },
- {"About", MM_ABOUT, aboutData, XtNumber(aboutData) },
- };
-
- #endif /* _PULL_DOWNS_ */
-