/*
  ---------------------------------------------------
  MacMenu Public Constants and Types
  ---------------------------------------------------
*/

/*
  ---------------------------------------------------
  Public Constants
  ---------------------------------------------------
*/

#define TRUE            1
#define FALSE           0

/* Data values for menu item data fields */

#define D_NONE          0
#define D_STRING        1
#define D_INT           2
#define D_FLOAT         3
#define D_DOUBLE        4

#define NIL_MENU_ID     0xff


/* Nil menu select key - causes MACMenu to output a blank line */

#define NIL_KEY         0x00

/* DOS: Command select keys, which are the 2nd byte of the two byte scan   */
/* code, with the upper bit set. For example, PF1 produces (00, 3B) as the */
/* scan code. MACMenu returns BB as the command key (3B + 80). Even though */
/* it only produces a one byte code, ESC is included in this list, as it   */
/* logically belongs here.                                                 */

/* Linux: the ncurses keypad() function is used to map the Function keys.  */
/* They return a single code, which is mapped in MACMenu to the codes      */
/* shown below                                                             */

#define CMD_ESC         0x1b

#define CMD_PF1         0xbb
#define CMD_PF3         0xbd

#define ncurses_F1      0x109
#define ncurses_F3      0x10b

/* Pop up window items */

#define W_CENTER        0xaa

/* MACMenu result codes */

#define E_OK                          0
#define E_WINDOW_CREATE_FAILURE       1

/* ncurses color pair numbers - a static set of color pairs is used for all */
/* of MACMenu.                                                              */

#define MENU_PAIR_NUM                 2
#define SYS_LINES_PAIR_NUM            3
#define POPUP_PAIR_NUM                4
#define POPUP_TITLE_PAIR_NUM          5

/*
  ---------------------------------------------------
  Public Types
  ---------------------------------------------------
*/

typedef int BOOL;       /* Define the type "bool" for logical operations    */
typedef int MENU_ID;    /* Define a type for returned menu tokens           */

