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 V ┃
Length: 9919 (0x26bf) Types: TextFile Names: »V«
└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00 └─ ⟦0c20f784e⟧ »DATA« └─⟦1abbe589f⟧ └─⟦059497ac5⟧ └─⟦this⟧
with Xlbt_Arithmetic; use Xlbt_Arithmetic; with Xlbt_Basic; use Xlbt_Basic; with Xlbt_Key; use Xlbt_Key; with Xlbt_String; use Xlbt_String; package Xlbp_Key is ------------------------------------------------------------------------------ -- X Library Keys -- -- Xlbp_Key - Used to translate key codes to/from key symbols and strings. ------------------------------------------------------------------------------ -- Copyright 1989 - 1991 by Rational, Santa Clara, California. -- Copyright 1987 - 1989 by Digital Equipment Corporation, Maynard, Mass. -- Copyright 1987 - 1989 by Massachusetts Institute of Technology, -- Cambridge, Massachusetts. -- -- All Rights Reserved. -- -- Permission to use, copy, modify, and distribute this software and its -- documentation for any purpose and without fee is hereby granted, -- provided that the above copyright notice(s) appear in all copies and that -- both that copyright notice(s) and this permission notice appear in -- supporting documentation, and that the names of Digital, MIT, or Rational -- not be used in advertising or publicity pertaining to distribution of -- the software without specific, written prior permission. -- -- Digital, MIT, and Rational disclaim all warranties with regard to this -- software, including all implied warranties of merchantability and fitness, -- in no event shall Digital, MIT, or Rational be liable for any special, -- indirect or consequential damages or any damages whatsoever resulting from -- loss of use, data or profits, whether in an action of contract, negligence -- or other tortious action, arising out of or in connection with the use or -- performance of this software. ------------------------------------------------------------------------------ --\f function X_Key_Code_To_Key_Sym (Display : X_Display; Key_Code : X_Key_Code; Column : U_Char) return X_Key_Sym; ------------------------------------------------------------------------------ -- Display - Specifies the X_Display context to use in the translation. -- Key_Code - Specifies the key code to translate. -- Column - Specifies the element of the key symbol vector for this key code -- to return. -- -- Each key code has a list of possible key symbols associated with it. That -- list contains only No_Symbol's if the key does not exist. For keys that -- exist the first element of the list (0'th) is the unshifted key name. -- The second element (1'st) is the shifted key name. See section 7.9 of the -- MIT X Library manual ("Keyboard Encoding") for details. ------------------------------------------------------------------------------ function X_Key_Sym_To_Key_Code (Display : X_Display; Key_Symbol : X_Key_Sym) return X_Key_Code; ------------------------------------------------------------------------------ -- Display - Specifies the X_Display context to use in the translation. -- Key_Symbol - Specifies the key symbol to be searched out. -- -- Returns the key code corresponding to the specified key symbol. (There may -- be more than one such key code; the first found is returned.) Returns 0 if -- there is no such key for this server/keyboard. ------------------------------------------------------------------------------ function X_Key_Sym_To_String (Key_Symbol : X_Key_Sym) return X_String; ------------------------------------------------------------------------------ -- Key_Symbol - Specifies the key symbol to be named. -- -- Returns the name of the key symbol; returns "" if there is no such key -- symbol. ------------------------------------------------------------------------------ function X_Lookup_Key_Sym (Event : X_Event; Column : U_Char) return X_Key_Sym; ------------------------------------------------------------------------------ -- Event - Specifies the Event containing the key-stroke to be translated. -- Column - Specifies the index into the key symbol table. -- -- Uses a given keyboard event and the index specified to return the key symbol -- corresponding to the key code recorded in the event. The event has an -- associated X_Display. That display's key symbol table is used for the -- lookup. ------------------------------------------------------------------------------ procedure X_Lookup_String (Event : X_Event; Buffer : in out X_String; Result : out S_Natural; Key_Symbol : out X_Key_Sym; Status : out X_Compose_Status); ------------------------------------------------------------------------------ -- Event - Specifies the Event containing the key-stroke to be translated. -- This indirectly specifies the X_Display which in turn specifies -- the key symbol table to be used to make the translation. -- Buffer - Receives the translated characters. -- Result - Receives the number of characters used in the Buffer by the -- translation. -- Key_Symbol - Receives the key symbol computed from the event. -- Status - Specifies an X_Compose_Status record. -- -- Maps a key event into an 8-bit Ascii string. ------------------------------------------------------------------------------ procedure X_Rebind_Key_Sym (Display : X_Display; Key_Symbol : X_Key_Sym; Modifier_List : X_Key_Sym_Array; Binding : X_String); ------------------------------------------------------------------------------ -- Display - Specifies the X_Display context to rebind within. -- Key_Symbol - Specifies the key symbol being rebound. -- Modifier_List - Specifies the key symbols which are the modifiers associated -- with the key-chord being rebound. -- Binding - Specifies the the 8-bit Ascii string to be associated with -- the rebound key-chord. -- -- Rebinds, within this application, the meaning of a particular -- key-chord (a key symbol with zero or more modifiers) for all display -- connections. X_Lookup_String will return this string when called with a -- key event representing this chord. This provides an easy way to bind -- long strings to keys. ------------------------------------------------------------------------------ function X_String_To_Key_Sym (Name : X_String) return X_Key_Sym; ------------------------------------------------------------------------------ -- Name - Specifies the name of the key symbol to convert. -- -- Converts the name of a key symbol to the associated key symbol code. Returns -- No_Symbol if S is not the name of a valid key symbol. ------------------------------------------------------------------------------ procedure X_Refresh_Keyboard_Mapping (Event : X_Event); ------------------------------------------------------------------------------ -- Event - Specifies the event that caused the procedure call. Typically -- this is a Mapping_Notify event. -- -- Refreshes the stored modifier and keymap information. The information is -- stored on a per-X_Display basis. The Event has an associated X_Display and -- that X_Display has its tables refreshed. ------------------------------------------------------------------------------ --\f ------------------------------------------------------------------------------ -- Key symbol macros, used on Key symbols to test for classes of symbols ------------------------------------------------------------------------------ function X_Is_Keypad_Key (Key_Symbol : X_Key_Sym) return Boolean; ------------------------------------------------------------------------------ -- Key_Symbol - Specifies the key symbol to be categorized. -- -- Returns True if the key symbol is on the key pad. ------------------------------------------------------------------------------ function X_Is_Cursor_Key (Key_Symbol : X_Key_Sym) return Boolean; ------------------------------------------------------------------------------ -- Key_Symbol - Specifies the key symbol to be categorized. -- -- Returns True if the key symbol is a cursor key. ------------------------------------------------------------------------------ function X_Is_Pf_Key (Key_Symbol : X_Key_Sym) return Boolean; ------------------------------------------------------------------------------ -- Key_Symbol - Specifies the key symbol to be categorized. -- -- Returns True if the key symbol is a PF key. ------------------------------------------------------------------------------ function X_Is_Function_Key (Key_Symbol : X_Key_Sym) return Boolean; ------------------------------------------------------------------------------ -- Key_Symbol - Specifies the key symbol to be categorized. -- -- Returns True if the key symbol is a function key. ------------------------------------------------------------------------------ function X_Is_Misc_Function_Key (Key_Symbol : X_Key_Sym) return Boolean; ------------------------------------------------------------------------------ -- Key_Symbol - Specifies the key symbol to be categorized. -- -- Returns True if the key symbol is a miscellaneous function key. ------------------------------------------------------------------------------ function X_Is_Modifier_Key (Key_Symbol : X_Key_Sym) return Boolean; ------------------------------------------------------------------------------ -- Key_Symbol - Specifies the key symbol to be categorized. -- -- Returns True if the key symbol is a modifier key. ------------------------------------------------------------------------------ --\f end Xlbp_Key;