/*
 *  WICONIFY    A utility that allows you to iconify any Intuition window
 *              on any screen, and to open WB windows on any screen.
 *
 *  wMenu.h     Include file containing menu ID numbers and other
 *              menu structure information.
 *
 *  Copyright 1990 by Davide P. Cervone, all rights reserved.
 *  You may use this code, provided this copyright notice is kept intact.
 */

#define ICON_MENU       0
#define   IM_OPEN         0
#define   IM_CLOSE        1
#define   IM_LOCK         2
#define   IM_CLEANUP      3
#define   IM_LINE1        4
#define   IM_ORGANIZE     5
#define   IM_OPENALL      6
#define   IM_LINE2        7
#define   IM_ABOUT        8
#define   IM_END          9

#define SCREEN_MENU     1
#define   SM_TOFRONT      0
#define   SM_TOBACK       1
#define   SM_WBTOFRONT    2
#define   SM_LINE1        3
#define   SM_TOGGLE       4
#define   SM_ICONIFY      5
#define   SM_LINE2        6
#define   SM_NEWCLI       7
#define   SM_MAKEWB       8
#define   SM_OPENWINDOW   9
#define     OW_ON           0
#define     OW_ACTIVESCRN   1
#define     OW_CURRENTWB    2
#define     OW_REALWB       3
#define     OW_LINE         4
#define     OW_AUTORESIZE   5
#define   SM_NEWSCREEN    10
#define     NS_DEPTH        0
#define     NS_DEPTH1       1
#define     NS_DEPTH2       2
#define     NS_DEPTH3       3
#define     NS_DEPTH4       4
#define     NS_DEPTH5       5
#define     NS_TYPE         6
#define     NS_HIRES        7
#define     NS_LORES        8
#define     NS_INTERLACE    9
#define     NS_HAM          10
#define   SM_CLOSESCREEN  11

#define CHARW       8
#define CHARH       8

#define MAX_ICON_LEN    8       /* size of item "Organize" */
#define MAX_SCRN_LEN    12      /* size of item "Toggle Title" */
#define MAX_OPEN_LEN    15      /* size of "  Active Screen" */
#define MAX_NSCR_LEN    11      /* size of "  Interlace" */
#define NEWSCREEN_LEN   10      /* size of item "New Screen" */

#define DISABLED        -ITEMENABLED
#define MX(x)           (1<<x)

#define MENUH           (CHARH+2)
#define MENUW(n)        (n*CHARW+COMMWIDTH+3*CHARW)
#define MENUID(m,i,s)   (SHIFTMENU(m)|SHIFTITEM(i)|SHIFTSUB(s)) 

#define NEXT(n)         &MENU_NAME[n+1].Item

#define MENUTEXT(x)     {2,0, JAM1, 6,1, &wFont, x, NULL}
#define CHKTEXT(x)      {2,0, JAM1, CHECKWIDTH+4,1, &wFont, x, NULL}
#define SUBTEXT(x)      {2,0, JAM1, 6,1, &wFont, x, NULL}
#define DEPTEXT(x)      {2,0, JAM1, 8,1, &wFont, x, NULL}

#define TOTAL_MENUH     (16*MENUH)


/*
 *  Menus will all be Text type, so they each contain their
 *  own IntuiTexts...
 */

struct wMenuItem
{
   struct MenuItem Item;
   struct IntuiText IText;
};
