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: 16938 (0x422a) Types: TextFile Names: »V«
└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00 └─ ⟦0c20f784e⟧ »DATA« └─⟦1abbe589f⟧ └─⟦059497ac5⟧ └─⟦this⟧
with Unchecked_Deallocation; with Xlbt_Arithmetic; use Xlbt_Arithmetic; with Xlbt_Basic3; use Xlbt_Basic3; with Xlbt_Misc; use Xlbt_Misc; with Xlbt_String; use Xlbt_String; with Xlbt_Window4; use Xlbt_Window4; --/ if Record_Rep_Clauses then --// with Xlbmt_Parameters; --// use Xlbmt_Parameters; --/ end if; package Xlbt_Hint3 is ------------------------------------------------------------------------------ -- X Library Window Manager Hints - Full Interface -- -- Xlbt_Hint3 - Structures used to give hints to window managers. ------------------------------------------------------------------------------ -- 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 ------------------------------------------------------------------------------ -- Class Hints ------------------------------------------------------------------------------ type X_Class_Hint is record Res_Name : X_String_Pointer; Res_Class : X_String_Pointer; end record; None_X_Class_Hint : constant X_Class_Hint := (None_X_String_Pointer, None_X_String_Pointer); -- procedure Free_X_Class_Hint (Hint : in out X_Class_Hint); ------------------------------------------------------------------------------ -- X_Icon_Size - Icon Size Hints ------------------------------------------------------------------------------ type X_Icon_Size is record Min_Width : S_Long := 0; Min_Height : S_Long := 0; Max_Width : S_Long := 0; Max_Height : S_Long := 0; Width_Inc : S_Long := 0; Height_Inc : S_Long := 0; end record; --/ if Length_Clauses then for X_Icon_Size'Size use 6 * 32; --/ end if; --/ if Record_Rep_Clauses then --// --// for X_Icon_Size use --// record --// Min_Width at 0 * X_Word range X_Word0a .. X_Word0b; --// Min_Height at 1 * X_Word range X_Word0a .. X_Word0b; --// Max_Width at 2 * X_Word range X_Word0a .. X_Word0b; --// Max_Height at 3 * X_Word range X_Word0a .. X_Word0b; --// Width_Inc at 4 * X_Word range X_Word0a .. X_Word0b; --// Height_Inc at 5 * X_Word range X_Word0a .. X_Word0b; --// end record; --// --/ end if; type X_Icon_Size_Array is array (S_Natural range <>) of X_Icon_Size; type X_Icon_Size_List is access X_Icon_Size_Array; --/ if Pack then --// pragma Pack (X_Icon_Size_Array); --/ end if; --/ if Enable_Deallocation then pragma Enable_Deallocation (X_Icon_Size_List); --/ end if; None_X_Icon_Size : constant X_Icon_Size := (0, 0, 0, 0, 0, 0); None_X_Icon_Size_List : constant X_Icon_Size_List := null; procedure Free_X_Icon_Size_List is new Unchecked_Deallocation (X_Icon_Size_Array, X_Icon_Size_List); ------------------------------------------------------------------------------ -- X_Initial_Window_State ------------------------------------------------------------------------------ type X_Initial_Window_State is (Withdrawn_State, -- for windows that are not mapped Normal_State, -- most applications want to start this way Xiw02, Iconic_State, -- application want to start as an icon Xiw04, Xiw05, Xiw06, Xiw07); --/ if Length_Clauses then for X_Initial_Window_State'Size use 32; --/ end if; None_X_Initial_Window_State : constant X_Initial_Window_State := X_Initial_Window_State'Val (0); ------------------------------------------------------------------------------ -- X_Size_Hints_Flags - Argument flags for Property Size and Size hints ------------------------------------------------------------------------------ --/ if Bit0_Sign_Bit then type X_Size_Hints_Flags_Index is (Xshfi31, Xshfi30, Xshfi29, Xshfi28, Xshfi27, Xshfi26, Xshfi25, Xshfi24, Xshfi23, Xshfi22, Xshfi21, Xshfi20, Xshfi19, Xshfi18, Xshfi17, Xshfi16, Xshfi15, Xshfi14, Xshfi13, Xshfi12, Xshfi11, Xshfi10, -- Unused P_Win_Gravity, -- program specified window gravity P_Base_Size, -- program specified base for incrementing P_Aspect, -- program specified min and max aspect ratios P_Resize_Inc, -- program specified resize increments P_Max_Size, -- program specified maximum size P_Min_Size, -- program specified minimum size P_Size, -- program specified size P_Position, -- program specified position U_S_Size, -- user specified width, height U_S_Position); -- user specified x, y --/ else -- not Bit0_Sign_Bit then --// --// type X_Size_Hints_Flags_Index is --// (U_S_Position, -- user specified x, y --// U_S_Size, -- user specified width, height --// P_Position, -- program specified position --// P_Size, -- program specified size --// P_Min_Size, -- program specified minimum size --// P_Max_Size, -- program specified maximum size --// P_Resize_Inc, -- program specified resize increments --// P_Aspect, -- program specified min and max aspect ratios --// P_Base_Size, -- program specified base for incrementing --// P_Win_Gravity, -- program specified window gravity --// Xshfi10, Xshfi11, Xshfi12, Xshfi13, Xshfi14, Xshfi15, --// Xshfi16, Xshfi17, Xshfi18, Xshfi19, Xshfi20, Xshfi21, Xshfi22, Xshfi23, --// Xshfi24, Xshfi25, Xshfi26, Xshfi27, Xshfi28, Xshfi29, Xshfi30, Xshfi31); --// --/ end if; type X_Size_Hints_Flags is array (X_Size_Hints_Flags_Index) of Boolean; --/ if Length_Clauses then for X_Size_Hints_Flags'Size use 32; --/ elsif Pack then --// pragma Pack (X_Size_Hints_Flags); --/ end if; None_X_Size_Hints_Flags : constant X_Size_Hints_Flags := (others => False); ------------------------------------------------------------------------------ -- X_Size_Hints ------------------------------------------------------------------------------ type Aspect_Record is record X : S_Long := 0; -- numerator Y : S_Long := 0; -- denominator end record; --/ if Length_Clauses then for Aspect_Record'Size use 2 * 32; --/ end if; --/ if Record_Rep_Clauses then --// for Aspect_Record use --// record --// X at 0 * X_Word range X_Word0a .. X_Word0b; --// Y at 1 * X_Word range X_Word0a .. X_Word0b; --// end record; --/ end if; type X_Size_Hints is record Flags : -- marks which fields in this structure are valid X_Size_Hints_Flags := None_X_Size_Hints_Flags; X : S_Long := 0; Y : S_Long := 0; Width : S_Long := 0; Height : S_Long := 0; Min_Width : S_Long := 0; Min_Height : S_Long := 0; Max_Width : S_Long := 0; Max_Height : S_Long := 0; Width_Inc : S_Long := 0; Height_Inc : S_Long := 0; Min_Aspect : Aspect_Record; Max_Aspect : Aspect_Record; Base_Width : S_Long := 0; Base_Height : S_Long := 0; Win_Gravity : X_Window_Gravity := None_X_Window_Gravity; end record; None_X_Size_Hints : constant X_Size_Hints := (None_X_Size_Hints_Flags, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (0, 0), (0, 0), 0, 0, None_X_Window_Gravity); ------------------------------------------------------------------------------ -- X_Standard_Colormap - This defines a window manager property that -- clients may use to share standard color maps of type RGB_COLOR_MAP: ------------------------------------------------------------------------------ type X_Standard_Colormap is record Colormap : X_Colormap := None_X_Colormap; Red_Max : S_Long := 0; Red_Mult : S_Long := 0; Green_Max : S_Long := 0; Green_Mult : S_Long := 0; Blue_Max : S_Long := 0; Blue_Mult : S_Long := 0; Base_Pixel : X_Pixel := None_X_Pixel; Visual_Id : X_Visual_Id := None_X_Visual_Id; -- ICCCM V1 Kill_Id : X_Id := None_X_Id; -- ICCCM V1 ----Kill_Id has special Release_By_Freeing_Colormap value. end record; --/ if Length_Clauses then for X_Standard_Colormap'Size use 10 * 32; --/ end if; --/ if Record_Rep_Clauses then --// --// for X_Standard_Colormap use --// record --// Colormap at 0 * X_Word range X_Word0a .. X_Word0b; --// Red_Max at 1 * X_Word range X_Word0a .. X_Word0b; --// Red_Mult at 2 * X_Word range X_Word0a .. X_Word0b; --// Green_Max at 3 * X_Word range X_Word0a .. X_Word0b; --// Green_Mult at 4 * X_Word range X_Word0a .. X_Word0b; --// Blue_Max at 5 * X_Word range X_Word0a .. X_Word0b; --// Blue_Mult at 6 * X_Word range X_Word0a .. X_Word0b; --// Base_Pixel at 7 * X_Word range X_Word0a .. X_Word0b; --// Visual_Id at 8 * X_Word range X_Word0a .. X_Word0b; --// Kill_Id at 9 * X_Word range X_Word0a .. X_Word0b; --// end record; --// --/ end if; type X_Standard_Colormap_Array is array (S_Natural range <>) of X_Standard_Colormap; type X_Standard_Colormap_List is access X_Standard_Colormap_Array; --/ if Pack then --// pragma Pack (X_Standard_Colormap_Array); --/ end if; --/ if Enable_Deallocation then pragma Enable_Deallocation (X_Standard_Colormap_List); --/ end if; None_X_Standard_Colormap : constant X_Standard_Colormap := (None_X_Colormap, 0, 0, 0, 0, 0, 0, None_X_Pixel, None_X_Visual_Id, None_X_Id); None_X_Standard_Colormap_List : constant X_Standard_Colormap_List := null; procedure Free_X_Standard_Colormap_List is new Unchecked_Deallocation (X_Standard_Colormap_Array, X_Standard_Colormap_List); ------------------------------------------------------------------------------ -- X_Text_Property - Structure for manipulating TEXT properties; used with -- Wm_Name, Wm_Icon_Name, Wm_Client_Machine, and Wm_Command. ------------------------------------------------------------------------------ type X_Text_Property is record Encoding : X_Atom := None_X_Atom; -- Property type Format : U_Char := 0; -- Property format: 8, 16, or 32 N_Items : S_Natural := 0; -- Number of data items in value Value : U_Char_List := None_U_Char_List; end record; None_X_Text_Property : constant X_Text_Property := (None_X_Atom, 0, 0, None_U_Char_List); ------------------------------------------------------------------------------ -- X_Wm_Hints_Flags - Argument flags for X_WM_Hints ------------------------------------------------------------------------------ --/ if Bit0_Sign_Bit then type X_Wm_Hints_Flags_Index is (Xwhfi31, Xwhfi30, Xwhfi29, Xwhfi28, Xwhfi27, Xwhfi26, Xwhfi25, Xwhfi24, Xwhfi23, Xwhfi22, Xwhfi21, Xwhfi20, Xwhfi19, Xwhfi18, Xwhfi17, Xwhfi16, Xwhfi15, Xwhfi14, Xwhfi13, Xwhfi12, Xwhfi11, Xwhfi10, Xwhfi09, Xwhfi08, Xwhfi07, -- Unused Window_Group_Hint, Icon_Mask_Hint, Icon_Position_Hint, Icon_Window_Hint, Icon_Pixmap_Hint, State_Hint, Input_Hint); --/ else -- not Bit0_Sign_Bit then --// --// type X_Wm_Hints_Flags_Index is --// (Input_Hint, --// State_Hint, --// Icon_Pixmap_Hint, --// Icon_Window_Hint, --// Icon_Position_Hint, --// Icon_Mask_Hint, --// Window_Group_Hint, --// Xwhfi07, Xwhfi08, Xwhfi09, Xwhfi10, Xwhfi11, Xwhfi12, --// Xwhfi13, Xwhfi14, Xwhfi15, Xwhfi16, Xwhfi17, Xwhfi18, --// Xwhfi19, Xwhfi20, Xwhfi21, Xwhfi22, Xwhfi23, Xwhfi24, --// Xwhfi25, Xwhfi26, Xwhfi27, Xwhfi28, Xwhfi29, Xwhfi30, --// Xwhfi31); --// --/ end if; type X_Wm_Hints_Flags is array (X_Wm_Hints_Flags_Index) of Boolean; --/ if Length_Clauses then for X_Wm_Hints_Flags'Size use 32; --/ elsif Pack then --// pragma Pack (X_Wm_Hints_Flags); --/ end if; None_X_Wm_Hints_Flags : constant X_Wm_Hints_Flags := (others => False); All_Hints : constant X_Wm_Hints_Flags := X_Wm_Hints_Flags' (Input_Hint | State_Hint | Icon_Pixmap_Hint | Icon_Window_Hint | Icon_Position_Hint | Icon_Mask_Hint | Window_Group_Hint => True, others => False); ------------------------------------------------------------------------------ -- X_Wm_Hints - Window Manager Hints ------------------------------------------------------------------------------ type X_Wm_Hints is record Flags : -- marks which fields in this X_Wm_Hints_Flags := -- structure are defined None_X_Wm_Hints_Flags; Input : X_Boolean_Long := False;-- get keyboard input? Initial_State : -- see below X_Initial_Window_State := None_X_Initial_Window_State; Icon_Pixmap : -- pixmap to be used as icon X_Pixmap := None_X_Pixmap; Icon_Window : -- window to be used as icon X_Window := None_X_Window; Icon_X : S_Long := 0; -- initial position of icon Icon_Y : S_Long := 0; -- initial position of icon Icon_Mask : -- icon mask bitmap X_Pixmap := None_X_Pixmap; Window_Group : X_Window := None_X_Window; -- this structure may be extended in the future end record; --/ if Length_Clauses then for X_Wm_Hints'Size use 9 * 32; --/ end if; --/ if Record_Rep_Clauses then --// --// for X_Wm_Hints use --// record --// Flags at 0 * X_Word range X_Word0a .. X_Word0b; --// Input at 1 * X_Word range X_Word0a .. X_Word0b; --// Initial_State at 2 * X_Word range X_Word0a .. X_Word0b; --// Icon_Pixmap at 3 * X_Word range X_Word0a .. X_Word0b; --// Icon_Window at 4 * X_Word range X_Word0a .. X_Word0b; --// Icon_X at 5 * X_Word range X_Word0a .. X_Word0b; --// Icon_Y at 6 * X_Word range X_Word0a .. X_Word0b; --// Icon_Mask at 7 * X_Word range X_Word0a .. X_Word0b; --// Window_Group at 8 * X_Word range X_Word0a .. X_Word0b; --// end record; --// --/ end if; None_X_Wm_Hints : constant X_Wm_Hints := (None_X_Wm_Hints_Flags, False, None_X_Initial_Window_State, None_X_Pixmap, None_X_Window, 0, 0, None_X_Pixmap, None_X_Window); end Xlbt_Hint3;