Annotation of 43BSDTahoe/new/X/xterm/menu.h, revision 1.1

1.1     ! root        1: /*
        !             2:  *     $Source: /u1/X/xterm/RCS/menu.h,v $
        !             3:  *     $Header: menu.h,v 10.100 86/12/01 14:40:05 jg Rel $
        !             4:  */
        !             5: 
        !             6: /* @(#)menu.h       X10/6.6B 12/26/86 */
        !             7: /*
        !             8:  * Menu items are constructed as follows, starting from the left side:
        !             9:  *
        !            10:  *     menuItemPad
        !            11:  *     space for check mark
        !            12:  *     menuItemPad
        !            13:  *     text + padding
        !            14:  *     menuItemPad
        !            15:  *
        !            16:  * The padding for the text is that amount that this text is narrower than the
        !            17:  * widest text.
        !            18:  */
        !            19: 
        !            20: typedef struct _menuItem {
        !            21:        int itemHeight;                 /* total height of this item */
        !            22:        int itemFlags;                  /* flags of item */
        !            23: 
        !            24: #define        itemDisabled            0x0001  /* item is disabled */
        !            25: #define        itemChecked             0x0002  /* item has check mark */
        !            26: #define        itemStateMask           0x0003  /* mask for current state */
        !            27: #define        itemSetDisabled         0x0004  /* item wants to be disabled */
        !            28: #define        itemSetChecked          0x0008  /* item wants check mark */
        !            29: #define        itemSetMask             0x000c  /* mask for desired state */
        !            30: #define        itemSetMaskShift        2       /* for comparison with actual */
        !            31: #define        itemChanged             0x0010  /* item desires change */
        !            32: 
        !            33:        char *itemText;                 /* text of item */
        !            34:        int itemTextWidth;              /* width of text */
        !            35:        int itemTextLength;             /* length of text */
        !            36:        struct _menuItem *nextItem;     /* next item in chain */
        !            37: } MenuItem;
        !            38: 
        !            39: typedef struct _menu {
        !            40:        int menuWidth;                  /* full width of menu */
        !            41:        int menuHeight;                 /* full height of menu */
        !            42:        int menuFlags;                  /* flags of this menu */
        !            43: 
        !            44: # define       menuChanged     0x0001          /* menu changed, must redraw */
        !            45: # define       menuItemChanged 0x0002          /* item changed, must redraw */
        !            46: # define       menuMapped      0x0004          /* menu is now mapped */
        !            47: # define       menuFreeze      0x0008          /* freeze when doing menu */
        !            48: # define       menuSaveMenu    0x0010          /* save copy of menu */
        !            49: 
        !            50:        int menuMaxTextWidth;           /* width of widest text */
        !            51:        int menuInitialItem;            /* < 0 none, >= 0 initial item */
        !            52:        int menuBorderWidth;            /* width of border */
        !            53:        int menuBgColor;                /* background color */
        !            54:        int menuFgColor;                /* foreground color */
        !            55:        Pixmap menuBgTile;              /* backgroud tile */
        !            56:        FontInfo *menuFontInfo;         /* fontinfo for menu font */
        !            57:        int menuItemPad;                /* pad amount */
        !            58:        Window menuWindow;              /* window of menu */
        !            59:        int (*menuEventHandler)();      /* external event handler */
        !            60:        Cursor menuCursor;              /* cursor used in menu */
        !            61:        Pixmap menuSaved;               /* copy of menu */
        !            62:        Pixmap menuSavedImage;          /* copy of image under menu */
        !            63:        int menuSavedImageX;            /* X coordinate of the saved image */
        !            64:        int menuSavedImageY;            /* Y coordinate of the saved image */
        !            65:        MenuItem *menuItems;            /* head of menu item chain */
        !            66:        char *menuTitle;                /* title of menu */
        !            67:        int menuTitleWidth;             /* width of title */
        !            68:        int menuTitleLength;            /* length of title */
        !            69:        int menuItemTop;                /* position of top of first item */
        !            70: } Menu;
        !            71: 
        !            72: #define        checkMarkWidth          9
        !            73: #define        checkMarkHeight         8
        !            74: #define        defaultCursorWidth      16
        !            75: #define        defaultCursorHeight     16
        !            76: #define        defaultCursorX          1
        !            77: #define        defaultCursorY          1
        !            78: #define        grayHeight              16
        !            79: #define        grayWidth               16
        !            80: #define        lineSeparatorHeight     9
        !            81: 
        !            82: #define        CheckItem(menu,item)    SetItemCheck(menu,item,1)
        !            83: #define        DisableItem(menu,item)  SetItemDisable(menu,item,1)
        !            84: #define        EnableItem(menu,item)   SetItemDisable(menu,item,0)
        !            85: #define        SetMenuEventHandler(menu,f)     menu->menuEventHandler = f
        !            86: #define        UncheckItem(menu,item)  SetItemCheck(menu,item,0)
        !            87: 
        !            88: extern Menu *NewMenu();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.