DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T r ┃
Length: 5809 (0x16b1) Types: TextFile Names: »ratmenu.h«
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦8e9e227a9⟧ └─⟦0b3b13f5b⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦144d629ab⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦34224b4fb⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦50f09e4e4⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦5cb9d2efd⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦610eb0a19⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦7d9cab9a9⟧ └─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦8e9e227a9⟧ └─⟦7d9cab9a9⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦85ff0a957⟧ └─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦8e9e227a9⟧ └─⟦85ff0a957⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦8fb0c967c⟧ └─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦8e9e227a9⟧ └─⟦8fb0c967c⟧ └─ ⟦this⟧ »ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦afaca67b5⟧ └─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦8e9e227a9⟧ └─⟦afaca67b5⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦5d656759a⟧ └─⟦d97085656⟧ └─ ⟦this⟧ »./ratmenu.h« └─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦8e9e227a9⟧ └─⟦e9895db93⟧ └─ ⟦this⟧ »./ratmenu.h«
/*--SubMenu info gets stored in one of these */ typedef struct { String item[10]; /* user defined RatMenu items */ String menu[10]; /* user defined RatMenu submenus */ } SubMenuRes; /*--Rational Menu Default Resources */ typedef struct { Pixel background; /* menu background color to use */ Pixel border_pixel; /* menu border color to use */ Pixel foreground; /* menu foreground color to use */ XFontStruct *font; /* menu font to use */ Boolean want_menu_labels; /* should menus have labels? */ Boolean want_submenu_labels; /* should submenus have labels? */ Boolean slide_subs; /* should "=>"s be slid right? */ Boolean permanent; /* RatMenu is permanently mapped */ Boolean warp; /* should we warp ptr on a map? */ int menu_border_width; /* width of menu borders */ int menu_whitespace; /* space left/rigth of menu items */ int item_border_width; /* width of item borders */ int item_pad; /* space up/down of menu items */ int sub_border_width; /* width of "=>" borders */ int sub_horiz_distance; /* space between sub label and "=>" */ char *env_menu_file; /* place to find RXI_Env_Menu file */ } RatMenuDefaultsType; extern RatMenuDefaultsType RatMenuDefaults; /****************************************************************************** * R1000 "Keys" - each key is a MOUSE_PREFIX character followed by one of the * other characters defined in this list. ******************************************************************************/ #define MOUSE_PREFIX 'z' #define MENU_PICK '0' /* #define MOUSE_ARGUMENT '1' */ #define MOUSE_DOWN '2' #define MOUSE_RIGHT '3' #define MOUSE_IMAGE_DOWN '4' #define MOUSE_IMAGE_RIGHT '5' #define MOUSE_BUTTON1 '@' #define MOUSE_BUTTON2 'A' #define MOUSE_BUTTON3 'B' #define MOUSE_BUTTON4 'C' #define MOUSE_BUTTON5 'D' #define MOUSE_BUTTON6 'E' #define MOUSE_BUTTON1_UP 'F' #define MOUSE_BUTTON2_UP 'G' #define MOUSE_BUTTON3_UP 'H' #define MOUSE_BUTTON4_UP 'I' #define MOUSE_BUTTON5_UP 'J' #define MOUSE_BUTTON6_UP 'K' #define MOUSE_BUTTON1_DBL 'L' #define MOUSE_BUTTON2_DBL 'M' #define MOUSE_BUTTON3_DBL 'N' #define MOUSE_BUTTON4_DBL 'O' #define MOUSE_BUTTON5_DBL 'P' #define MOUSE_BUTTON6_DBL 'Q' #define MOUSE_MINUS '-' #define MOUSE_0 '!' #define MOUSE_1 '"' #define MOUSE_2 '#' #define MOUSE_3 '$' #define MOUSE_4 '%' #define MOUSE_5 '&' #define MOUSE_6 '\'' #define MOUSE_7 '(' #define MOUSE_8 ')' #define MOUSE_9 '*' #define X_NO_OP 'a' #define X_SCREEN_HEIGHT 'b' #define X_SCREEN_WIDTH 'c' #define X_SCREEN_REDRAW 'd' #define MIN_COLS 6 #define MIN_ROWS 6 /*--Magic Fake Menu KeySyms */ #define MENU_JOB_KILL ((KeySym)0xFF00) /* Job.Kill */ #define MENU_JOB_DISABLE ((KeySym)0xFF01) /* Job.Disable */ #define MENU_DEBUG_STOP ((KeySym)0xFF02) /* Debug.Stop */ #define MENU_RETURN ((KeySym)0xFF03) /* Editor.Line.Insert*/ /*--Masks for modifier keys. If we ever need more we will either add them * at the top of the (presently 16 + 3 == 19 bit) value or else we will * change the <<11 to <<12 or <<13 or whatever. We have room for 21 bits * total. We have 2 to spare with this scheme. */ #define RNoMask 0 #define RControlMask 0x01 #define RMod1Mask 0x02 #define RShiftMask 0x04 /*--GEB 4/17/89 - purposely leave out LockMask here. Keeps screwing people up. * GEB 11/19/90 - purposely leave out Mod2..Mod5Mask here. OpenLook on the * Suns implements a toggling Num_Lock with Mod4. * RXI only uses Shift, Control, and Meta/Mod1 anyway. */ #define AllMasks \ (ShiftMask|ControlMask|Mod1Mask) /*--Insert a modified KeySym into a buffer for output. */ #define DoRMaskChar(cp,mask,ks) \ { register unsigned long keyy = (unsigned)ks; \ keyy = ((keyy >> 8) << 11) | (mask << 8) | (keyy & 0xFFL); \ if (keyy >= 1<<12) { \ *cp++ = (char)(0x30 + ( keyy >> 18) ); \ *cp++ = (char)(0x20 + ((keyy >> 12) & 0x3F)); \ *cp++ = (char)(0x20 + ((keyy >> 6) & 0x3F)); \ *cp++ = (char)(0x20 + ( keyy & 0x3F)); \ } else if (keyy >= 1<<6) { \ *cp++ = (char)(0x28); \ *cp++ = (char)(0x20 + ((keyy >> 6) & 0x3F)); \ *cp++ = (char)(0x20 + ( keyy & 0x3F)); \ } else { \ *cp++ = (char)(0x20); \ *cp++ = (char)(0x20 + ( keyy & 0x3F)); \ } \ } /*--Insert a normal KeySym into a buffer for output. (mask == 0) */ #define DoRChar(cp,ks) \ { register unsigned long keyy = (unsigned)ks; \ keyy = ((keyy >> 8) << 11) | (keyy & 0xFFL); \ if (keyy >= 1<<12) { \ *cp++ = (char)(0x30 + ( keyy >> 18) ); \ *cp++ = (char)(0x20 + ((keyy >> 12) & 0x3F)); \ *cp++ = (char)(0x20 + ((keyy >> 6) & 0x3F)); \ *cp++ = (char)(0x20 + ( keyy & 0x3F)); \ } else if (keyy >= 1<<6) { \ *cp++ = (char)(0x28); \ *cp++ = (char)(0x20 + ((keyy >> 6) & 0x3F)); \ *cp++ = (char)(0x20 + ( keyy & 0x3F)); \ } else { \ *cp++ = (char)(0x20); \ *cp++ = (char)(0x20 + ( keyy & 0x3F)); \ } \ } /*--This is called inside of all functions that can be tied to a mouse button. * We check to see if we should override the normal operation due to being * in Rational mode. */ extern int menu_grab; /* set to TRUE when a HandleModeMenu has happened but * the MenuButtonReleased hasn't yet; gets around * silly behavior in the TM code where a quick click * will not do a Grab so that the menu can get the * up event which occurred before the menu was mapped*/ #define CHECK_RATIONAL_MODE() \ if (menu_grab) return; \ if (term->misc.rational && \ (event->type == ButtonPress || \ event->type == ButtonRelease) && \ ((((XButtonEvent*)event)->state & AllMasks) == 0 || \ (((XButtonEvent*)event)->state & AllMasks) == ShiftMask)) { \ RationalButton( (XButtonEvent*)event ); \ return; \ }