DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ T V

⟦5a1be91e5⟧ TextFile

    Length: 295191 (0x48117)
    Types: TextFile
    Names: »V«

Derivation

└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00
    └─ ⟦0c20f784e⟧ »DATA« 
        └─⟦1abbe589f⟧ 
            └─⟦059497ac5⟧ 
                └─⟦this⟧ 

TextFile

with Xlbt_Arithmetic;  
use Xlbt_Arithmetic;  
with Xlbt_Atom_Defs;  
with Xlbt_Basic3;  
with Xlbt_Bitmap;  
with Xlbt_Color;
--/ if OLD_CONTEXT_MANAGER then
--// with Xlbt_Context_Manager;
--/ end if;
with Xlbt_Cursor_Font;  
with Xlbt_Cut_Buffer;  
with Xlbt_Display3;  
with Xlbt_Error3;  
with Xlbt_Event3;  
with Xlbt_Exceptions;  
with Xlbt_Font3;  
with Xlbt_Gc3;  
with Xlbt_Geometry;  
with Xlbt_Grab;  
with Xlbt_Graphics3;  
with Xlbt_Hint3;  
with Xlbt_Host3;  
with Xlbt_Image3;  
with Xlbt_Input_Focus;  
with Xlbt_Key3;  
with Xlbt_Keyboard3;  
with Xlbt_Key_Defs_Apl;  
with Xlbt_Key_Defs_Arabic;  
with Xlbt_Key_Defs_Cyrillic;  
with Xlbt_Key_Defs_Greek;  
with Xlbt_Key_Defs_Hebrew;  
with Xlbt_Key_Defs_Katakana;  
with Xlbt_Key_Defs_Latin1;  
with Xlbt_Key_Defs_Latin2;  
with Xlbt_Key_Defs_Latin3;  
with Xlbt_Key_Defs_Latin4;  
with Xlbt_Key_Defs_Misc;  
with Xlbt_Key_Defs_Publishing;  
with Xlbt_Key_Defs_Special;  
with Xlbt_Key_Defs_Technical;  
with Xlbt_Misc;  
with Xlbt_Pointer;  
with Xlbt_Region3;  
with Xlbt_Request3;  
with Xlbt_Rm3;  
with Xlbt_Screen_Saver;  
with Xlbt_String7;  
with Xlbt_String;  
with Xlbt_String16;  
with Xlbt_Text3;  
with Xlbt_Visual3;  
with Xlbt_Window3;  
with Xlbt_Window4;

with Xlbp_Atom;  
with Xlbp_Bitmap;  
with Xlbp_Color;
--/ if OLD_CONTEXT_MANAGER then
--// with Xlbp_Context_Manager;
--/ end if;
with Xlbp_Cursor;  
with Xlbp_Cut_Buffer;  
with Xlbp_Display;  
with Xlbp_Error;  
with Xlbp_Event;  
with Xlbp_Font;  
with Xlbp_Font_Names;  
with Xlbp_Gc;  
with Xlbp_Geometry;  
with Xlbp_Grab;  
with Xlbp_Graphics;  
with Xlbp_Hint;  
with Xlbp_Host;  
with Xlbp_Image;  
with Xlbp_Input_Focus;  
with Xlbp_Key;  
with Xlbp_Keyboard_Control;  
with Xlbp_Keyboard_Encoding;  
with Xlbp_Pixmap;  
with Xlbp_Pointer_Control;  
with Xlbp_Pointer_Motion;  
with Xlbp_Proc_Var;  
with Xlbp_Region;  
with Xlbp_Rm;  
with Xlbp_Rm_Name;  
with Xlbp_Rm_Quark;  
with Xlbp_Screen_Saver;  
with Xlbp_Selection;  
with Xlbp_Sync;  
with Xlbp_Text16;  
with Xlbp_Text;  
with Xlbp_Visual;  
with Xlbp_Window;  
with Xlbp_Window_Information;  
with Xlbp_Window_Property;

with Xlbmt_Network_Types;  
use Xlbmt_Network_Types;

package Xlib is
------------------------------------------------------------------------------
-- X Library - Normal user interface - all "normal" types and procedures
--
-- Xlib - Normal user interface at a gulp
------------------------------------------------------------------------------
-- Copyright 1990 - 1991 by Rational, Santa Clara, California.
--
--                  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 name of Rational not be used in
-- advertising or publicity pertaining to distribution of the software
-- without specific, written prior permission.
--
-- Rational disclaims all warranties with regard to this software, including
-- all implied warranties of merchantability and fitness, in no event shall
-- 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.
------------------------------------------------------------------------------

    package A2 renames Xlbt_Atom_Defs;  
    package B1 renames Xlbt_Basic3;  
    package B2 renames Xlbt_Bitmap;  
    package C1 renames Xlbt_Color;
--/ if OLD_CONTEXT_MANAGER then
--//     package C2 renames Xlbt_Context_Manager;
--/ end if;
    package C3 renames Xlbt_Cursor_Font;  
    package C4 renames Xlbt_Cut_Buffer;  
    package D1 renames Xlbt_Display3;  
    package E1 renames Xlbt_Error3;  
    package E2 renames Xlbt_Event3;  
    package E3 renames Xlbt_Exceptions;  
    package F1 renames Xlbt_Font3;  
    package G1 renames Xlbt_Gc3;  
    package G2 renames Xlbt_Geometry;  
    package G3 renames Xlbt_Grab;  
    package G4 renames Xlbt_Graphics3;  
    package H1 renames Xlbt_Hint3;  
    package H2 renames Xlbt_Host3;  
    package I1 renames Xlbt_Image3;  
    package I2 renames Xlbt_Input_Focus;  
    package K1 renames Xlbt_Key3;  
    package K2 renames Xlbt_Keyboard3;  
    package M1 renames Xlbt_Misc;  
    package P1 renames Xlbt_Pointer;  
    package R1 renames Xlbt_Region3;  
    package R3 renames Xlbt_Request3;  
    package R4 renames Xlbt_Rm3;  
    package S1 renames Xlbt_Screen_Saver;  
    package S2 renames Xlbt_String7;  
    package S3 renames Xlbt_String;  
    package S4 renames Xlbt_String16;  
    package T1 renames Xlbt_Text3;  
    package V1 renames Xlbt_Visual3;  
    package W1 renames Xlbt_Window3;  
    package W2 renames Xlbt_Window4;

--\f

------------------------------------------------------------------------------
-- Xlbt_Basic - B1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Atom - a blob used to refer to a string whose contents are known mutually
--          between us and the server; shorter and easier to use than the string.
--
--  None_X_Atom         - No atom in particular
--  Any_Property_Type   - Special Atom, passed to Get_Property.
------------------------------------------------------------------------------

    subtype X_Atom       is B1.X_Atom;  
    subtype X_Atom_Array is B1.X_Atom_Array;  
    subtype X_Atom_List  is B1.X_Atom_List;

    None_X_Atom       : X_Atom      renames B1.None_X_Atom;  
    None_X_Atom_List  : X_Atom_List renames B1.None_X_Atom_List;  
    Any_Property_Type : X_Atom      renames B1.Any_Property_Type;

    function "=" (A, B : X_Atom)      return Boolean renames B1."=";  
    function "=" (A, B : X_Atom_List) return Boolean renames B1."=";

    procedure Free_X_Atom_List (List : in out X_Atom_List)  
        renames B1.Free_X_Atom_List;

------------------------------------------------------------------------------
-- X_Colormap
------------------------------------------------------------------------------

    subtype X_Colormap       is B1.X_Colormap;  
    subtype X_Colormap_Array is B1.X_Colormap_Array;  
    subtype X_Colormap_List  is B1.X_Colormap_List;

    None_X_Colormap           : X_Colormap renames B1.None_X_Colormap;  
    None_X_Colormap_List      : X_Colormap_List renames B1.None_X_Colormap_List;  
    Copy_From_Parent_Colormap : X_Colormap renames B1.Copy_From_Parent_Colormap;

    function "=" (A, B : X_Colormap)      return Boolean renames B1."=";  
    function "=" (A, B : X_Colormap_List) return Boolean renames B1."=";

    procedure Free_X_Colormap_List (List : in out X_Colormap_List)  
        renames B1.Free_X_Colormap_List;

------------------------------------------------------------------------------
-- X_Cursor
------------------------------------------------------------------------------

    subtype X_Cursor is B1.X_Cursor;

    None_X_Cursor : X_Cursor renames B1.None_X_Cursor;

    function "=" (A, B : X_Cursor) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_Drawable
------------------------------------------------------------------------------

    subtype X_Drawable is B1.X_Drawable;

    None_X_Drawable : X_Drawable renames B1.None_X_Drawable;

    function "=" (A, B : X_Drawable) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_Display
------------------------------------------------------------------------------

    subtype X_Display is D1.X_Display;

    None_X_Display : X_Display renames D1.None_X_Display;

    function "=" (A, B : X_Display) return Boolean renames D1."=";

------------------------------------------------------------------------------
-- X_Display_Number - simple index to the N'th display of a library
------------------------------------------------------------------------------

    subtype X_Display_Number is B1.X_Display_Number;

    None_X_Display_Number : X_Display_Number renames B1.None_X_Display_Number;

    function "="  (A, B : X_Display_Number) return Boolean renames B1."=";  
    function ">"  (A, B : X_Display_Number) return Boolean renames B1.">";  
    function ">=" (A, B : X_Display_Number) return Boolean renames B1.">=";  
    function "<"  (A, B : X_Display_Number) return Boolean renames B1."<";  
    function "<=" (A, B : X_Display_Number) return Boolean renames B1."<=";

    function "+" (A, B : X_Display_Number) return X_Display_Number  
        renames B1."+";  
    function "-" (A, B : X_Display_Number) return X_Display_Number  
        renames B1."-";  
    function "-" (A : X_Display_Number) return X_Display_Number renames B1."-";

------------------------------------------------------------------------------
-- X_Error_String - Error Reporting Strings
------------------------------------------------------------------------------

    subtype X_Error_String is D1.X_Error_String;
    ----We return an indication of errors via strings of this type.

    procedure Err (Dest   : out X_Error_String;  
                   Source :     Xlbt_String.X_String) renames D1.Err;
    ----We use this routine to assign error strings.

    function Err (Source : X_Error_String) return Xlbt_String.X_String  
        renames D1.Err;
    ----We use this function to read out error strings.

------------------------------------------------------------------------------
-- X_Event_Mask - Input Event Masks.  Used as event-mask window attribute and
--                as arguments to Grab requests.  Not to be confused with event
--                names.
--
--      Owner_Grab_Button_Mask
--      Colormap_Change_Mask
--      Property_Change_Mask
--      Focus_Change_Mask
--      Substructure_Redirect_Mask
--      Substructure_Notify_Mask
--      Resize_Redirect_Mask
--      Structure_Notify_Mask
--      Visibility_Change_Mask
--      Exposure_Mask
--      Keymap_State_Mask
--      Button_Motion_Mask
--      Button_5_Motion_Mask
--      Button_4_Motion_Mask
--      Button_3_Motion_Mask
--      Button_2_Motion_Mask
--      Button_1_Motion_Mask
--      Pointer_Motion_Hint_Mask
--      Pointer_Motion_Mask
--      Leave_Window_Mask
--      Enter_Window_Mask
--      Button_Release_Mask
--      Button_Press_Mask
--      Key_Release_Mask
--      Key_Press_Mask
------------------------------------------------------------------------------

    subtype X_Event_Mask_Index is B1.X_Event_Mask_Index;

    subtype Xemi is X_Event_Mask_Index;

    Owner_Grab_Button_Mask     : constant Xemi := B1.Owner_Grab_Button_Mask;  
    Colormap_Change_Mask       : constant Xemi := B1.Colormap_Change_Mask;  
    Property_Change_Mask       : constant Xemi := B1.Property_Change_Mask;  
    Focus_Change_Mask          : constant Xemi := B1.Focus_Change_Mask;  
    Substructure_Redirect_Mask : constant Xemi := B1.Substructure_Redirect_Mask;  
    Substructure_Notify_Mask   : constant Xemi := B1.Substructure_Notify_Mask;  
    Resize_Redirect_Mask       : constant Xemi := B1.Resize_Redirect_Mask;  
    Structure_Notify_Mask      : constant Xemi := B1.Structure_Notify_Mask;  
    Visibility_Change_Mask     : constant Xemi := B1.Visibility_Change_Mask;  
    Exposure_Mask              : constant Xemi := B1.Exposure_Mask;  
    Keymap_State_Mask          : constant Xemi := B1.Keymap_State_Mask;  
    Button_Motion_Mask         : constant Xemi := B1.Button_Motion_Mask;  
    Button_5_Motion_Mask       : constant Xemi := B1.Button_5_Motion_Mask;  
    Button_4_Motion_Mask       : constant Xemi := B1.Button_4_Motion_Mask;  
    Button_3_Motion_Mask       : constant Xemi := B1.Button_3_Motion_Mask;  
    Button_2_Motion_Mask       : constant Xemi := B1.Button_2_Motion_Mask;  
    Button_1_Motion_Mask       : constant Xemi := B1.Button_1_Motion_Mask;  
    Pointer_Motion_Hint_Mask   : constant Xemi := B1.Pointer_Motion_Hint_Mask;  
    Pointer_Motion_Mask        : constant Xemi := B1.Pointer_Motion_Mask;  
    Leave_Window_Mask          : constant Xemi := B1.Leave_Window_Mask;  
    Enter_Window_Mask          : constant Xemi := B1.Enter_Window_Mask;  
    Button_Release_Mask        : constant Xemi := B1.Button_Release_Mask;  
    Button_Press_Mask          : constant Xemi := B1.Button_Press_Mask;  
    Key_Release_Mask           : constant Xemi := B1.Key_Release_Mask;  
    Key_Press_Mask             : constant Xemi := B1.Key_Press_Mask;

    subtype X_Event_Mask is B1.X_Event_Mask;

    None_X_Event_Mask : X_Event_Mask renames B1.None_X_Event_Mask;

    All_Pointers   : X_Event_Mask renames B1.All_Pointers;  
    All_Buttons    : X_Event_Mask renames B1.All_Buttons;  
    All_Event_Mask : X_Event_Mask renames B1.All_Event_Mask;

    function "="   (A, B : Xemi)         return Boolean      renames B1."=";  
    function "="   (A, B : X_Event_Mask) return Boolean      renames B1."=";  
    function "and" (A, B : X_Event_Mask) return X_Event_Mask renames B1."and";  
    function "or"  (A, B : X_Event_Mask) return X_Event_Mask renames B1."or";  
    function "xor" (A, B : X_Event_Mask) return X_Event_Mask renames B1."xor";  
    function "not" (A : X_Event_Mask)    return X_Event_Mask renames B1."not";


------------------------------------------------------------------------------
-- Events queues - Events are queued within a display until they are requested
--
-- A queued Event always has an Event.Kind to uniquely identify what kind of
-- event it is.  The Display entry is always a pointer to the display the event
-- was read from.  The Window entry is nearly always a window of one type or
-- another, carefully selected to be useful to toolkit dispatchers.
------------------------------------------------------------------------------

    subtype X_Event is D1.X_Event;

------------------------------------------------------------------------------
-- X_Font
------------------------------------------------------------------------------

    subtype X_Font is B1.X_Font;

    None_X_Font : X_Font renames B1.None_X_Font;

    Font_Change : constant := B1.Font_Change;

    function "=" (A, B : X_Font) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_G_Context
------------------------------------------------------------------------------

    subtype X_G_Context is B1.X_G_Context;

    None_X_G_Context : X_G_Context renames B1.None_X_G_Context;

    function "=" (A, B : X_G_Context) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_Gc - Graphics context.  All X_lib routines deal in this rather than
-- in raw protocol G_Context ID's.  This is so that the library can keep
-- a "shadow" set of values, and thus avoid passing values over the
-- wire which are not in fact changing.
------------------------------------------------------------------------------

    subtype X_Gc is G1.X_Gc;

    None_X_Gc : X_Gc renames G1.None_X_Gc;

    function "=" (A, B : X_Gc) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X's Resource Type
------------------------------------------------------------------------------

    subtype X_Id is B1.X_Id;

    None_X_Id : X_Id renames B1.None_X_Id;
    ----Special value indicating no-id-specified

    All_Temporary : X_Id renames B1.All_Temporary;
    ----Special Resource ID passed to Kill_Client

    Release_By_Freeing_Colormap : X_Id renames B1.Release_By_Freeing_Colormap;
    ----Special Resource ID used in X_Standard_Colormap.kill_id.

    function "=" (A, B : X_Id) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_Pixel - encodes what a Pixel is
------------------------------------------------------------------------------

    subtype X_Pixel       is B1.X_Pixel;  
    subtype X_Pixel_Array is B1.X_Pixel_Array;  
    subtype X_Pixel_List  is B1.X_Pixel_List;

    None_X_Pixel      : X_Pixel      renames B1.None_X_Pixel;  
    None_X_Pixel_List : X_Pixel_List renames B1.None_X_Pixel_List;

    function "=" (A, B : X_Pixel)      return Boolean renames B1."=";  
    function "=" (A, B : X_Pixel_List) return Boolean renames B1."=";

    function ">"  (A, B : X_Pixel) return Boolean renames B1.">";  
    function ">=" (A, B : X_Pixel) return Boolean renames B1.">=";  
    function "<"  (A, B : X_Pixel) return Boolean renames B1."<";  
    function "<=" (A, B : X_Pixel) return Boolean renames B1."<=";

    function "+"   (A, B : X_Pixel) return X_Pixel renames B1."+";  
    function "-"   (A : X_Pixel)    return X_Pixel renames B1."-";  
    function "-"   (A, B : X_Pixel) return X_Pixel renames B1."-";  
    function "*"   (A, B : X_Pixel) return X_Pixel renames B1."*";  
    function "/"   (A, B : X_Pixel) return X_Pixel renames B1."/";  
    function "rem" (A, B : X_Pixel) return X_Pixel renames B1."rem";  
    function "not" (A : X_Pixel)    return X_Pixel renames B1."not";  
    function "and" (A, B : X_Pixel) return X_Pixel renames B1."and";  
    function "or"  (A, B : X_Pixel) return X_Pixel renames B1."or";  
    function "xor" (A, B : X_Pixel) return X_Pixel renames B1."xor";  
    function Shift (A : X_Pixel;  
                    B : Integer)    return X_Pixel renames B1.Shift;

    procedure Free_X_Pixel_List (List : in out X_Pixel_List)  
        renames B1.Free_X_Pixel_List;

------------------------------------------------------------------------------
-- X_Pixmap
------------------------------------------------------------------------------

    subtype X_Pixmap is B1.X_Pixmap;

    None_X_Pixmap : X_Pixmap renames B1.None_X_Pixmap;

    Copy_From_Parent_Pixmap : X_Pixmap renames B1.Copy_From_Parent_Pixmap;
    ----Border pixmap in Create_Window and Change_Window_Attributes

    Parent_Relative : X_Pixmap renames B1.Parent_Relative;
    ----Background pixmap in Create_Window and Change_Window_Attributes

    function "=" (A, B : X_Pixmap) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_Plane_Mask - used to indicate the display planes affected by an operation
--
--  No_Planes   - No planes at all; all 0's
--  All_Planes  - All planes; all 1's
------------------------------------------------------------------------------

    subtype X_Plane_Mask       is B1.X_Plane_Mask;  
    subtype X_Plane_Mask_Array is B1.X_Plane_Mask_Array;  
    subtype X_Plane_Mask_List  is B1.X_Plane_Mask_List;

    None_X_Plane_Mask      : X_Plane_Mask renames B1.None_X_Plane_Mask;  
    None_X_Plane_Mask_List : X_Plane_Mask_List  
        renames B1.None_X_Plane_Mask_List;  
    No_Planes              : X_Plane_Mask renames B1.No_Planes;  
    All_Planes             : X_Plane_Mask renames B1.All_Planes;

    function "="  (A, B : X_Plane_Mask) return Boolean renames B1."=";  
    function ">"  (A, B : X_Plane_Mask) return Boolean renames B1.">";  
    function ">=" (A, B : X_Plane_Mask) return Boolean renames B1.">=";  
    function "<"  (A, B : X_Plane_Mask) return Boolean renames B1."<";  
    function "<=" (A, B : X_Plane_Mask) return Boolean renames B1."<=";

    function "+"   (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."+";  
    function "-"   (A : X_Plane_Mask)    return X_Plane_Mask renames B1."-";  
    function "-"   (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."-";  
    function "*"   (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."*";  
    function "/"   (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."/";  
    function "rem" (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."rem";  
    function "not" (A : X_Plane_Mask)    return X_Plane_Mask renames B1."not";  
    function "and" (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."and";  
    function "or"  (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."or";  
    function "xor" (A, B : X_Plane_Mask) return X_Plane_Mask renames B1."xor";  
    function Shift (A : X_Plane_Mask;  
                    B : Integer)         return X_Plane_Mask renames B1.Shift;

    procedure Free_X_Plane_Mask_List (List : in out X_Plane_Mask_List)  
        renames B1.Free_X_Plane_Mask_List;

------------------------------------------------------------------------------
-- X_Screen
------------------------------------------------------------------------------

    subtype X_Screen is D1.X_Screen;

    None_X_Screen : X_Screen renames D1.None_X_Screen;

    function "=" (A, B : X_Screen) return Boolean renames D1."=";

------------------------------------------------------------------------------
-- X_Screen_Format
------------------------------------------------------------------------------

    subtype X_Screen_Format is D1.X_Screen_Format;

    None_X_Screen_Format : X_Screen_Format renames D1.None_X_Screen_Format;

    function "=" (A, B : X_Screen_Format) return Boolean renames D1."=";

------------------------------------------------------------------------------
-- X_Screen_Number - simple index to the N'th screen of the display
------------------------------------------------------------------------------

    subtype X_Screen_Number is B1.X_Screen_Number;

    None_X_Screen_Number : X_Screen_Number renames B1.None_X_Screen_Number;

    function "="  (A, B : X_Screen_Number) return Boolean renames B1."=";  
    function ">"  (A, B : X_Screen_Number) return Boolean renames B1.">";  
    function ">=" (A, B : X_Screen_Number) return Boolean renames B1.">=";  
    function "<"  (A, B : X_Screen_Number) return Boolean renames B1."<";  
    function "<=" (A, B : X_Screen_Number) return Boolean renames B1."<=";

    function "+" (A, B : X_Screen_Number) return X_Screen_Number renames B1."+";  
    function "-" (A, B : X_Screen_Number) return X_Screen_Number renames B1."-";  
    function "-" (A : X_Screen_Number)    return X_Screen_Number renames B1."-";

------------------------------------------------------------------------------
-- Status for Procedure returns
--
--      Failed      - Operation did not succeed/work/complete
--      Successful  - Operation completed/worked
------------------------------------------------------------------------------

    subtype X_Status is B1.X_Status;

    Failed     : constant X_Status := B1.Failed;  
    Successful : constant X_Status := B1.Successful;

    function "=" (A, B : X_Status) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_Time - it is important to be able to do arithmetic with these
------------------------------------------------------------------------------

    subtype X_Time is B1.X_Time;

    Current_Time : X_Time renames B1.Current_Time;

    function "="  (A, B : X_Time) return Boolean renames B1."=";  
    function "<"  (A, B : X_Time) return Boolean renames B1."<";  
    function "<=" (A, B : X_Time) return Boolean renames B1."<=";  
    function ">"  (A, B : X_Time) return Boolean renames B1.">";  
    function ">=" (A, B : X_Time) return Boolean renames B1.">=";

    function "+"   (A, B : X_Time) return X_Time renames B1."+";  
    function "-"   (A : X_Time)    return X_Time renames B1."-";  
    function "-"   (A, B : X_Time) return X_Time renames B1."-";  
    function "*"   (A, B : X_Time) return X_Time renames B1."*";  
    function "/"   (A, B : X_Time) return X_Time renames B1."/";  
    function "rem" (A, B : X_Time) return X_Time renames B1."rem";

------------------------------------------------------------------------------
-- X_Visual_Id
------------------------------------------------------------------------------

    subtype X_Visual_Id is B1.X_Visual_Id;

    None_X_Visual_Id : X_Visual_Id renames B1.None_X_Visual_Id;

    Copy_From_Parent_Visual_Id : X_Visual_Id  
        renames B1.Copy_From_Parent_Visual_Id;

    function "=" (A, B : X_Visual_Id) return Boolean renames B1."=";

------------------------------------------------------------------------------
-- X_Window
--
--  Input_Focus     - Destination window in Send_Event
--  Pointer_Window  - Destination window in Send-Event
--  Pointer_Root    - Focus window in Set_Input_Focus
------------------------------------------------------------------------------

    subtype X_Window       is B1.X_Window;  
    subtype X_Window_Array is B1.X_Window_Array;  
    subtype X_Window_List  is B1.X_Window_List;

    None_X_Window      : X_Window      renames B1.None_X_Window;  
    None_X_Window_List : X_Window_List renames B1.None_X_Window_List;  
    Input_Focus        : X_Window      renames B1.Input_Focus;  
    Pointer_Root       : X_Window      renames B1.Pointer_Root;  
    Pointer_Window     : X_Window      renames B1.Pointer_Window;

    function "=" (A, B : X_Window)      return Boolean renames B1."=";  
    function "=" (A, B : X_Window_List) return Boolean renames B1."=";

    procedure Free_X_Window_List (List : in out X_Window_List)  
        renames B1.Free_X_Window_List;

--\f

------------------------------------------------------------------------------
-- Xlbt_Atom_Defs - A2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- Predefined Atoms
------------------------------------------------------------------------------

    Xa_Primary             : X_Atom renames A2.Xa_Primary;  
    Xa_Secondary           : X_Atom renames A2.Xa_Secondary;  
    Xa_Arc                 : X_Atom renames A2.Xa_Arc;  
    Xa_Atom                : X_Atom renames A2.Xa_Atom;  
    Xa_Bitmap              : X_Atom renames A2.Xa_Bitmap;  
    Xa_Cardinal            : X_Atom renames A2.Xa_Cardinal;  
    Xa_Colormap            : X_Atom renames A2.Xa_Colormap;  
    Xa_Cursor              : X_Atom renames A2.Xa_Cursor;  
    Xa_Cut_Buffer0         : X_Atom renames A2.Xa_Cut_Buffer0;  
    Xa_Cut_Buffer1         : X_Atom renames A2.Xa_Cut_Buffer1;  
    Xa_Cut_Buffer2         : X_Atom renames A2.Xa_Cut_Buffer2;  
    Xa_Cut_Buffer3         : X_Atom renames A2.Xa_Cut_Buffer3;  
    Xa_Cut_Buffer4         : X_Atom renames A2.Xa_Cut_Buffer4;  
    Xa_Cut_Buffer5         : X_Atom renames A2.Xa_Cut_Buffer5;  
    Xa_Cut_Buffer6         : X_Atom renames A2.Xa_Cut_Buffer6;  
    Xa_Cut_Buffer7         : X_Atom renames A2.Xa_Cut_Buffer7;  
    Xa_Drawable            : X_Atom renames A2.Xa_Drawable;  
    Xa_Font                : X_Atom renames A2.Xa_Font;  
    Xa_Integer             : X_Atom renames A2.Xa_Integer;  
    Xa_Pixmap              : X_Atom renames A2.Xa_Pixmap;  
    Xa_Point               : X_Atom renames A2.Xa_Point;  
    Xa_Rectangle           : X_Atom renames A2.Xa_Rectangle;  
    Xa_Resource_Manager    : X_Atom renames A2.Xa_Resource_Manager;  
    Xa_Rgb_Color_Map       : X_Atom renames A2.Xa_Rgb_Color_Map;  
    Xa_Rgb_Best_Map        : X_Atom renames A2.Xa_Rgb_Best_Map;  
    Xa_Rgb_Blue_Map        : X_Atom renames A2.Xa_Rgb_Blue_Map;  
    Xa_Rgb_Default_Map     : X_Atom renames A2.Xa_Rgb_Default_Map;  
    Xa_Rgb_Gray_Map        : X_Atom renames A2.Xa_Rgb_Gray_Map;  
    Xa_Rgb_Green_Map       : X_Atom renames A2.Xa_Rgb_Green_Map;  
    Xa_Rgb_Red_Map         : X_Atom renames A2.Xa_Rgb_Red_Map;  
    Xa_String              : X_Atom renames A2.Xa_String;  
    Xa_Visualid            : X_Atom renames A2.Xa_Visualid;  
    Xa_Window              : X_Atom renames A2.Xa_Window;  
    Xa_Wm_Command          : X_Atom renames A2.Xa_Wm_Command;  
    Xa_Wm_Hints            : X_Atom renames A2.Xa_Wm_Hints;  
    Xa_Wm_Client_Machine   : X_Atom renames A2.Xa_Wm_Client_Machine;  
    Xa_Wm_Icon_Name        : X_Atom renames A2.Xa_Wm_Icon_Name;  
    Xa_Wm_Icon_Size        : X_Atom renames A2.Xa_Wm_Icon_Size;  
    Xa_Wm_Name             : X_Atom renames A2.Xa_Wm_Name;  
    Xa_Wm_Normal_Hints     : X_Atom renames A2.Xa_Wm_Normal_Hints;  
    Xa_Wm_Size_Hints       : X_Atom renames A2.Xa_Wm_Size_Hints;  
    Xa_Wm_Zoom_Hints       : X_Atom renames A2.Xa_Wm_Zoom_Hints;  
    Xa_Min_Space           : X_Atom renames A2.Xa_Min_Space;  
    Xa_Norm_Space          : X_Atom renames A2.Xa_Norm_Space;  
    Xa_Max_Space           : X_Atom renames A2.Xa_Max_Space;  
    Xa_End_Space           : X_Atom renames A2.Xa_End_Space;  
    Xa_Superscript_X       : X_Atom renames A2.Xa_Superscript_X;  
    Xa_Superscript_Y       : X_Atom renames A2.Xa_Superscript_Y;  
    Xa_Subscript_X         : X_Atom renames A2.Xa_Subscript_X;  
    Xa_Subscript_Y         : X_Atom renames A2.Xa_Subscript_Y;  
    Xa_Underline_Position  : X_Atom renames A2.Xa_Underline_Position;  
    Xa_Underline_Thickness : X_Atom renames A2.Xa_Underline_Thickness;  
    Xa_Strikeout_Ascent    : X_Atom renames A2.Xa_Strikeout_Ascent;  
    Xa_Strikeout_Descent   : X_Atom renames A2.Xa_Strikeout_Descent;  
    Xa_Italic_Angle        : X_Atom renames A2.Xa_Italic_Angle;  
    Xa_X_Height            : X_Atom renames A2.Xa_X_Height;  
    Xa_Quad_Width          : X_Atom renames A2.Xa_Quad_Width;  
    Xa_Weight              : X_Atom renames A2.Xa_Weight;  
    Xa_Point_Size          : X_Atom renames A2.Xa_Point_Size;  
    Xa_Resolution          : X_Atom renames A2.Xa_Resolution;  
    Xa_Copyright           : X_Atom renames A2.Xa_Copyright;  
    Xa_Notice              : X_Atom renames A2.Xa_Notice;  
    Xa_Font_Name           : X_Atom renames A2.Xa_Font_Name;  
    Xa_Family_Name         : X_Atom renames A2.Xa_Family_Name;  
    Xa_Full_Name           : X_Atom renames A2.Xa_Full_Name;  
    Xa_Cap_Height          : X_Atom renames A2.Xa_Cap_Height;  
    Xa_Wm_Class            : X_Atom renames A2.Xa_Wm_Class;  
    Xa_Wm_Transient_For    : X_Atom renames A2.Xa_Wm_Transient_For;

    Xa_Last_Predefined : X_Atom renames A2.Xa_Last_Predefined;


--\f

------------------------------------------------------------------------------
-- Xlbt_Bitmap - B2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Bitmap_Returns
------------------------------------------------------------------------------

    subtype X_Bitmap_Returns is B2.X_Bitmap_Returns;

    Bitmap_Success       : constant X_Bitmap_Returns := B2.Bitmap_Success;  
    Bitmap_Open_Failed   : constant X_Bitmap_Returns := B2.Bitmap_Open_Failed;  
    Bitmap_File_Invalid  : constant X_Bitmap_Returns := B2.Bitmap_File_Invalid;  
    Bitmap_No_Memory     : constant X_Bitmap_Returns := B2.Bitmap_No_Memory;  
    Bitmap_Image_Failure : constant X_Bitmap_Returns := B2.Bitmap_Image_Failure;

    function "=" (A, B : X_Bitmap_Returns) return Boolean renames B2."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Color - C1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Color_Flags
------------------------------------------------------------------------------

    subtype X_Color_Flags_Index is C1.X_Color_Flags_Index;  
    subtype X_Color_Flags       is C1.X_Color_Flags;

    Xcfi0    : constant X_Color_Flags_Index := C1.Xcfi0;  
    Xcfi1    : constant X_Color_Flags_Index := C1.Xcfi1;  
    Xcfi2    : constant X_Color_Flags_Index := C1.Xcfi2;  
    Xcfi3    : constant X_Color_Flags_Index := C1.Xcfi3;  
    Xcfi4    : constant X_Color_Flags_Index := C1.Xcfi4;  
    Do_Blue  : constant X_Color_Flags_Index := C1.Do_Blue;  
    Do_Green : constant X_Color_Flags_Index := C1.Do_Green;  
    Do_Red   : constant X_Color_Flags_Index := C1.Do_Red;

    None_X_Color_Flags : X_Color_Flags renames C1.None_X_Color_Flags;

    function "=" (A, B : X_Color_Flags_Index) return Boolean renames C1."=";  
    function "=" (A, B : X_Color_Flags)       return Boolean renames C1."=";

------------------------------------------------------------------------------
-- X_Color_Mask
------------------------------------------------------------------------------

    subtype X_Color_Mask is C1.X_Color_Mask;

    subtype X_Red_Color_Mask   is C1.X_Red_Color_Mask;  
    subtype X_Green_Color_Mask is C1.X_Green_Color_Mask;  
    subtype X_Blue_Color_Mask  is C1.X_Blue_Color_Mask;

    None_X_Color_Mask : X_Color_Mask renames C1.None_X_Color_Mask;

    function "=" (A, B : X_Color_Mask) return Boolean renames C1."=";

------------------------------------------------------------------------------
-- X_Color - Data structure used by color operations
------------------------------------------------------------------------------

    subtype X_Color       is C1.X_Color;  
    subtype X_Color_Array is C1.X_Color_Array;  
    subtype X_Color_List  is C1.X_Color_List;

    None_X_Color      : X_Color      renames C1.None_X_Color;  
    None_X_Color_List : X_Color_List renames C1.None_X_Color_List;

    function "=" (A, B : X_Color)       return Boolean renames C1."=";  
    function "=" (A, B : X_Color_Array) return Boolean renames C1."=";  
    function "=" (A, B : X_Color_List)  return Boolean renames C1."=";

    procedure Free_X_Color_List (List : in out X_Color_List)  
        renames C1.Free_X_Color_List;

------------------------------------------------------------------------------
-- X_Colormap_Alloc
--
--      Alloc_None   -- create map with no entries
--      Alloc_All    -- allocate entire map writable
------------------------------------------------------------------------------

    subtype X_Colormap_Alloc is C1.X_Colormap_Alloc;

    Alloc_None : constant X_Colormap_Alloc := C1.Alloc_None;  
    Alloc_All  : constant X_Colormap_Alloc := C1.Alloc_All;

    function "=" (A, B : X_Colormap_Alloc) return Boolean renames C1."=";

--\f

--/ if OLD_CONTEXT_MANAGER then
--// ------------------------------------------------------------------------------
--// -- Xlbt_Context_Manager - D1
--// ------------------------------------------------------------------------------
--//
--// ------------------------------------------------------------------------------
--// -- X_Associative_Returns
--// --
--// --      Xc_Success      - No error.
--// --      Xc_No_Mem       - Out of memory.
--// --      Xc_No_Ent       - No entry in table.
--// ------------------------------------------------------------------------------
--//
--//     subtype X_Associative_Returns is C2.X_Associative_Returns;
--//
--//     Xc_Success : constant X_Associative_Returns := C2.Xc_Success;
--//     Xc_No_Mem  : constant X_Associative_Returns := C2.Xc_No_Mem;
--//     Xc_No_Ent  : constant X_Associative_Returns := C2.Xc_No_Ent;
--//
--//     function "=" (A, B : X_Associative_Returns) return Boolean renames C2."=";
--//
--// ------------------------------------------------------------------------------
--// -- X_Context
--// ------------------------------------------------------------------------------
--//
--//     subtype X_Context is C2.X_Context;
--//
--//     None_X_Context : X_Context renames C2.None_X_Context;
--//
--//     function "=" (A, B : X_Context) return Boolean renames C2."=";
--//
--/ end if;

--\f

------------------------------------------------------------------------------
-- Xlbt_Cursor_Font - C3
------------------------------------------------------------------------------

    subtype X_Cursor_Font is C3.X_Cursor_Font;

    Xc_Num_Glyphs : X_Cursor_Font renames C3.Xc_Num_Glyphs;

    Xc_X_Cursor            : X_Cursor_Font renames C3.Xc_X_Cursor;  
    Xc_Arrow               : X_Cursor_Font renames C3.Xc_Arrow;  
    Xc_Based_Arrow_Down    : X_Cursor_Font renames C3.Xc_Based_Arrow_Down;  
    Xc_Based_Arrow_Up      : X_Cursor_Font renames C3.Xc_Based_Arrow_Up;  
    Xc_Boat                : X_Cursor_Font renames C3.Xc_Boat;  
    Xc_Bogosity            : X_Cursor_Font renames C3.Xc_Bogosity;  
    Xc_Bottom_Left_Corner  : X_Cursor_Font renames C3.Xc_Bottom_Left_Corner;  
    Xc_Bottom_Right_Corner : X_Cursor_Font renames C3.Xc_Bottom_Right_Corner;  
    Xc_Bottom_Side         : X_Cursor_Font renames C3.Xc_Bottom_Side;  
    Xc_Bottom_Tee          : X_Cursor_Font renames C3.Xc_Bottom_Tee;  
    Xc_Box_Spiral          : X_Cursor_Font renames C3.Xc_Box_Spiral;  
    Xc_Center_Ptr          : X_Cursor_Font renames C3.Xc_Center_Ptr;  
    Xc_Circle              : X_Cursor_Font renames C3.Xc_Circle;  
    Xc_Clock               : X_Cursor_Font renames C3.Xc_Clock;  
    Xc_Coffee_Mug          : X_Cursor_Font renames C3.Xc_Coffee_Mug;  
    Xc_Cross               : X_Cursor_Font renames C3.Xc_Cross;  
    Xc_Cross_Reverse       : X_Cursor_Font renames C3.Xc_Cross_Reverse;  
    Xc_Crosshair           : X_Cursor_Font renames C3.Xc_Crosshair;  
    Xc_Diamond_Cross       : X_Cursor_Font renames C3.Xc_Diamond_Cross;  
    Xc_Dot                 : X_Cursor_Font renames C3.Xc_Dot;  
    Xc_Dot_Box_Mask        : X_Cursor_Font renames C3.Xc_Dot_Box_Mask;  
    Xc_Double_Arrow        : X_Cursor_Font renames C3.Xc_Double_Arrow;  
    Xc_Draft_Large         : X_Cursor_Font renames C3.Xc_Draft_Large;  
    Xc_Draft_Small         : X_Cursor_Font renames C3.Xc_Draft_Small;  
    Xc_Draped_Box          : X_Cursor_Font renames C3.Xc_Draped_Box;  
    Xc_Exchange            : X_Cursor_Font renames C3.Xc_Exchange;  
    Xc_Fleur               : X_Cursor_Font renames C3.Xc_Fleur;  
    Xc_Gobbler             : X_Cursor_Font renames C3.Xc_Gobbler;  
    Xc_Gumby               : X_Cursor_Font renames C3.Xc_Gumby;  
    Xc_Hand1               : X_Cursor_Font renames C3.Xc_Hand1;  
    Xc_Hand2               : X_Cursor_Font renames C3.Xc_Hand2;  
    Xc_Heart               : X_Cursor_Font renames C3.Xc_Heart;  
    Xc_Icon                : X_Cursor_Font renames C3.Xc_Icon;  
    Xc_Iron_Cross          : X_Cursor_Font renames C3.Xc_Iron_Cross;  
    Xc_Left_Ptr            : X_Cursor_Font renames C3.Xc_Left_Ptr;  
    Xc_Left_Side           : X_Cursor_Font renames C3.Xc_Left_Side;  
    Xc_Left_Tee            : X_Cursor_Font renames C3.Xc_Left_Tee;  
    Xc_Leftbutton          : X_Cursor_Font renames C3.Xc_Leftbutton;  
    Xc_Ll_Angle            : X_Cursor_Font renames C3.Xc_Ll_Angle;  
    Xc_Lr_Angle            : X_Cursor_Font renames C3.Xc_Lr_Angle;  
    Xc_Man                 : X_Cursor_Font renames C3.Xc_Man;  
    Xc_Middlebutton        : X_Cursor_Font renames C3.Xc_Middlebutton;  
    Xc_Mouse               : X_Cursor_Font renames C3.Xc_Mouse;  
    Xc_Pencil              : X_Cursor_Font renames C3.Xc_Pencil;  
    Xc_Pirate              : X_Cursor_Font renames C3.Xc_Pirate;  
    Xc_Plus                : X_Cursor_Font renames C3.Xc_Plus;  
    Xc_Question_Arrow      : X_Cursor_Font renames C3.Xc_Question_Arrow;  
    Xc_Right_Ptr           : X_Cursor_Font renames C3.Xc_Right_Ptr;  
    Xc_Right_Side          : X_Cursor_Font renames C3.Xc_Right_Side;  
    Xc_Right_Tee           : X_Cursor_Font renames C3.Xc_Right_Tee;  
    Xc_Rightbutton         : X_Cursor_Font renames C3.Xc_Rightbutton;  
    Xc_Rtl_Logo            : X_Cursor_Font renames C3.Xc_Rtl_Logo;  
    Xc_Sailboat            : X_Cursor_Font renames C3.Xc_Sailboat;  
    Xc_Sb_Down_Arrow       : X_Cursor_Font renames C3.Xc_Sb_Down_Arrow;  
    Xc_Sb_H_Double_Arrow   : X_Cursor_Font renames C3.Xc_Sb_H_Double_Arrow;  
    Xc_Sb_Left_Arrow       : X_Cursor_Font renames C3.Xc_Sb_Left_Arrow;  
    Xc_Sb_Right_Arrow      : X_Cursor_Font renames C3.Xc_Sb_Right_Arrow;  
    Xc_Sb_Up_Arrow         : X_Cursor_Font renames C3.Xc_Sb_Up_Arrow;  
    Xc_Sb_V_Double_Arrow   : X_Cursor_Font renames C3.Xc_Sb_V_Double_Arrow;  
    Xc_Shuttle             : X_Cursor_Font renames C3.Xc_Shuttle;  
    Xc_Sizing              : X_Cursor_Font renames C3.Xc_Sizing;  
    Xc_Spider              : X_Cursor_Font renames C3.Xc_Spider;  
    Xc_Spraycan            : X_Cursor_Font renames C3.Xc_Spraycan;  
    Xc_Star                : X_Cursor_Font renames C3.Xc_Star;  
    Xc_Target              : X_Cursor_Font renames C3.Xc_Target;  
    Xc_Tcross              : X_Cursor_Font renames C3.Xc_Tcross;  
    Xc_Top_Left_Arrow      : X_Cursor_Font renames C3.Xc_Top_Left_Arrow;  
    Xc_Top_Left_Corner     : X_Cursor_Font renames C3.Xc_Top_Left_Corner;  
    Xc_Top_Right_Corner    : X_Cursor_Font renames C3.Xc_Top_Right_Corner;  
    Xc_Top_Side            : X_Cursor_Font renames C3.Xc_Top_Side;  
    Xc_Top_Tee             : X_Cursor_Font renames C3.Xc_Top_Tee;  
    Xc_Trek                : X_Cursor_Font renames C3.Xc_Trek;  
    Xc_Ul_Angle            : X_Cursor_Font renames C3.Xc_Ul_Angle;  
    Xc_Umbrella            : X_Cursor_Font renames C3.Xc_Umbrella;  
    Xc_Ur_Angle            : X_Cursor_Font renames C3.Xc_Ur_Angle;  
    Xc_Watch               : X_Cursor_Font renames C3.Xc_Watch;  
    Xc_Xterm               : X_Cursor_Font renames C3.Xc_Xterm;

--\f

------------------------------------------------------------------------------
-- Xlbt_Cut_Buffer - C4
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Cut_Buffer_Number
------------------------------------------------------------------------------

    subtype X_Cut_Buffer_Number is C4.X_Cut_Buffer_Number;

--\f

------------------------------------------------------------------------------
-- Xlbt_Error - E1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Error_Code
--
--      Success       - everything's okay
--      Bad_Request   - bad request code
--      Bad_Value     - int parameter out of range
--      Bad_Window    - parameter not a Window
--      Bad_Pixmap    - parameter not a Pixmap
--      Bad_Atom      - parameter not an Atom
--      Bad_Cursor    - parameter not a Cursor
--      Bad_Font      - parameter not a Font
--      Bad_Match     - parameter mismatch
--      Bad_Drawable  - parameter not a Pixmap or Window
--      Bad_Access    - depending on context: key/button already grabbed,
--                      attempt to free an illegal color map entry,
--                      attempt to store into a read-only color map entry,
--                      attempt to modify the access control list from other
--                      than the local host.
--      Bad_Alloc     - insufficient resources
--      Bad_Color     - no such colormap
--      Bad_Gc        - parameter not a GC
--      Bad_Id_Choice - choice not in range or already used
--      Bad_Name      - font or color name doesn't exist
--      Bad_Length    - Request length incorrect
--
--      Bad_Implementation - server defective
--
--      First_Extension_Error
--      Last_Extension_Error
------------------------------------------------------------------------------

    subtype X_Error_Code is E1.X_Error_Code;

    Success            : constant X_Error_Code := E1.Success;  
    Bad_Request        : constant X_Error_Code := E1.Bad_Request;  
    Bad_Value          : constant X_Error_Code := E1.Bad_Value;  
    Bad_Window         : constant X_Error_Code := E1.Bad_Window;  
    Bad_Pixmap         : constant X_Error_Code := E1.Bad_Pixmap;  
    Bad_Atom           : constant X_Error_Code := E1.Bad_Atom;  
    Bad_Cursor         : constant X_Error_Code := E1.Bad_Cursor;  
    Bad_Font           : constant X_Error_Code := E1.Bad_Font;  
    Bad_Match          : constant X_Error_Code := E1.Bad_Match;  
    Bad_Drawable       : constant X_Error_Code := E1.Bad_Drawable;  
    Bad_Access         : constant X_Error_Code := E1.Bad_Access;  
    Bad_Alloc          : constant X_Error_Code := E1.Bad_Alloc;  
    Bad_Color          : constant X_Error_Code := E1.Bad_Color;  
    Bad_Gc             : constant X_Error_Code := E1.Bad_Gc;  
    Bad_Id_Choice      : constant X_Error_Code := E1.Bad_Id_Choice;  
    Bad_Name           : constant X_Error_Code := E1.Bad_Name;  
    Bad_Length         : constant X_Error_Code := E1.Bad_Length;  
    Bad_Implementation : constant X_Error_Code := E1.Bad_Implementation;

    First_Extension_Error : constant X_Error_Code := E1.First_Extension_Error;  
    Last_Extension_Error  : constant X_Error_Code := E1.Last_Extension_Error;

    function "=" (A, B : X_Error_Code) return Boolean renames E1."=";

    None_X_Error_Code : constant X_Error_Code := E1.None_X_Error_Code;

------------------------------------------------------------------------------
-- Error Events are differentiated using this record type.
------------------------------------------------------------------------------

    subtype X_Error_Contents is E1.X_Error_Contents;

------------------------------------------------------------------------------
-- X Protocol Error Packets
------------------------------------------------------------------------------

    subtype X_Error_With_Atom     is E1.X_Error_With_Atom;  
    subtype X_Error_With_Nothing  is E1.X_Error_With_Nothing;  
    subtype X_Error_With_Resource is E1.X_Error_With_Resource;  
    subtype X_Error_With_Value    is E1.X_Error_With_Value;

--\f

------------------------------------------------------------------------------
-- Xlbt_Event - E2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Event_Code
--
--  X_Event_Code_8 - used in all X protocol structures
--  X_Event_Code   - used in all user interfaces
------------------------------------------------------------------------------

    subtype X_Event_Code_8 is E2.X_Event_Code_8;  
    subtype X_Event_Code   is E2.X_Event_Code;

    subtype Xec is X_Event_Code;

    Error_Event       : constant Xec := E2.Error_Event; -- Error notice from
                                                        --  server.
    Reply_Event       : constant Xec := E2.Reply_Event; -- Simple reply from
                                                        --  server
    Key_Press         : constant Xec := E2.Key_Press;  
    Key_Release       : constant Xec := E2.Key_Release;  
    Button_Press      : constant Xec := E2.Button_Press;  
    Button_Release    : constant Xec := E2.Button_Release;  
    Motion_Notify     : constant Xec := E2.Motion_Notify;  
    Enter_Notify      : constant Xec := E2.Enter_Notify;  
    Leave_Notify      : constant Xec := E2.Leave_Notify;  
    Focus_In          : constant Xec := E2.Focus_In;  
    Focus_Out         : constant Xec := E2.Focus_Out;  
    Keymap_Notify     : constant Xec := E2.Keymap_Notify;  
    Expose            : constant Xec := E2.Expose;  
    Graphics_Expose   : constant Xec := E2.Graphics_Expose;  
    No_Expose         : constant Xec := E2.No_Expose;  
    Visibility_Notify : constant Xec := E2.Visibility_Notify;  
    Create_Notify     : constant Xec := E2.Create_Notify;  
    Destroy_Notify    : constant Xec := E2.Destroy_Notify;  
    Unmap_Notify      : constant Xec := E2.Unmap_Notify;  
    Map_Notify        : constant Xec := E2.Map_Notify;  
    Map_Request       : constant Xec := E2.Map_Request;  
    Reparent_Notify   : constant Xec := E2.Reparent_Notify;  
    Configure_Notify  : constant Xec := E2.Configure_Notify;  
    Configure_Request : constant Xec := E2.Configure_Request;  
    Gravity_Notify    : constant Xec := E2.Gravity_Notify;  
    Resize_Request    : constant Xec := E2.Resize_Request;  
    Circulate_Notify  : constant Xec := E2.Circulate_Notify;  
    Circulate_Request : constant Xec := E2.Circulate_Request;  
    Property_Notify   : constant Xec := E2.Property_Notify;  
    Selection_Clear   : constant Xec := E2.Selection_Clear;  
    Selection_Request : constant Xec := E2.Selection_Request;  
    Selection_Notify  : constant Xec := E2.Selection_Notify;  
    Colormap_Notify   : constant Xec := E2.Colormap_Notify;  
    Client_Message    : constant Xec := E2.Client_Message;  
    Mapping_Notify    : constant Xec := E2.Mapping_Notify;  
    Last_Event        : constant Xec := E2.Last_Event; -- Must be bigger than
                                                       -- any other predefined
                                                       -- event number

    function "=" (A, B : X_Event_Code_8) return Boolean renames E2."=";

    None_X_Event_Code : constant X_Event_Code := E2.None_X_Event_Code;

------------------------------------------------------------------------------
-- X_Event_Queuing
--
--      Queued_Already
--      Queued_After_Reading
--      Queued_After_Flush
------------------------------------------------------------------------------

    subtype X_Event_Queuing is E2.X_Event_Queuing;

    Queued_Already       : constant X_Event_Queuing := E2.Queued_Already;  
    Queued_After_Reading : constant X_Event_Queuing := E2.Queued_After_Reading;  
    Queued_After_Flush   : constant X_Event_Queuing := E2.Queued_After_Flush;

    function "=" (A, B : X_Event_Queuing) return Boolean renames E2."=";

------------------------------------------------------------------------------
-- This array can be used with an event type to determine the mask bits
-- that could have generated it.
------------------------------------------------------------------------------

    subtype X_Event_To_Mask_Array is E2.X_Event_To_Mask_Array;

    X_Event_To_Mask : X_Event_To_Mask_Array renames E2.X_Event_To_Mask;

------------------------------------------------------------------------------
-- X Protocol Specific Event Types
------------------------------------------------------------------------------

    subtype X_Key_Press_Event         is D1.X_Event (Key_Press);  
    subtype X_Key_Release_Event       is D1.X_Event (Key_Release);  
    subtype X_Button_Press_Event      is D1.X_Event (Button_Press);  
    subtype X_Button_Release_Event    is D1.X_Event (Button_Release);  
    subtype X_Motion_Notify_Event     is D1.X_Event (Motion_Notify);  
    subtype X_Enter_Notify_Event      is D1.X_Event (Enter_Notify);  
    subtype X_Leave_Notify_Event      is D1.X_Event (Leave_Notify);  
    subtype X_Focus_In_Event          is D1.X_Event (Focus_In);  
    subtype X_Focus_Out_Event         is D1.X_Event (Focus_Out);  
    subtype X_Keymap_Notify_Event     is D1.X_Event (Keymap_Notify);  
    subtype X_Expose_Event            is D1.X_Event (Expose);  
    subtype X_Graphics_Expose_Event   is D1.X_Event (Graphics_Expose);  
    subtype X_No_Expose_Event         is D1.X_Event (No_Expose);  
    subtype X_Visibility_Notify_Event is D1.X_Event (Visibility_Notify);  
    subtype X_Create_Notify_Event     is D1.X_Event (Create_Notify);  
    subtype X_Destroy_Notify_Event    is D1.X_Event (Destroy_Notify);  
    subtype X_Unmap_Notify_Event      is D1.X_Event (Unmap_Notify);  
    subtype X_Map_Notify_Event        is D1.X_Event (Map_Notify);  
    subtype X_Map_Request_Event       is D1.X_Event (Map_Request);  
    subtype X_Reparent_Notify_Event   is D1.X_Event (Reparent_Notify);  
    subtype X_Configure_Notify_Event  is D1.X_Event (Configure_Notify);  
    subtype X_Configure_Request_Event is D1.X_Event (Configure_Request);  
    subtype X_Gravity_Notify_Event    is D1.X_Event (Gravity_Notify);  
    subtype X_Resize_Request_Event    is D1.X_Event (Resize_Request);  
    subtype X_Circulate_Notify_Event  is D1.X_Event (Circulate_Notify);  
    subtype X_Circulate_Request_Event is D1.X_Event (Circulate_Request);  
    subtype X_Property_Notify_Event   is D1.X_Event (Property_Notify);  
    subtype X_Selection_Clear_Event   is D1.X_Event (Selection_Clear);  
    subtype X_Selection_Request_Event is D1.X_Event (Selection_Request);  
    subtype X_Selection_Notify_Event  is D1.X_Event (Selection_Notify);  
    subtype X_Colormap_Notify_Event   is D1.X_Event (Colormap_Notify);  
    subtype X_Client_Message_Event    is D1.X_Event (Client_Message);  
    subtype X_Mapping_Notify_Event    is D1.X_Event (Mapping_Notify);

--\f

------------------------------------------------------------------------------
-- Xlbt_Exceptions - E3
------------------------------------------------------------------------------

    X_Network_Io_Error : exception renames E3.X_Network_Io_Error;
    ----An error occurred during an attempt to Receive/Transmit on the network.
    --  The default handler reports the error to the error log and then
    -- raises this exception.

    X_Unhandled_Error : exception renames E3.X_Unhandled_Error;
    ----An Error event occurred and no user handler was set up.  The default
    --  error handler reports the error to the error log and then raises this
    --  exception.

    X_Invalid_Procedure_Variable : exception  
                                       renames E3.X_Invalid_Procedure_Variable;
    ----Raised when some procedure variable operation is performed upon
    --  a) a None_X_Procedure_Variable value (an actual value is required),
    --  b) an inappropriate procedure variable value (the value is for a
    --     procedure with a different parameter profile), or,
    --  c) a "bad" procedure variable is used (one example is a dynamic
    --     procedure that is referenced but is not longer available, it may
    --     not be possible to detect this in all cases).

    X_Invalid_Universal_Pointer : exception  
                                      renames E3.X_Invalid_Universal_Pointer;
    ----Raised when some universal pointer operation is performed upon
    --  a) a None_X_Universal_Pointer value (an actual value is required),
    --  b) an inappropriate universal pointer value (a value cannot be
    --     converted to the requested Access_Type), or,
    --  c) a previously freed universal pointer value is referenced (it may
    --     not be possible to detect this in all cases).

    X_Library_Confusion : exception renames E3.X_Library_Confusion;
    ----The X Library is in some place or in some state that it is not prepared
    --  to handle.  This is probably a bug of some kind, not necessarily a bug
    --  within the X Library itself; it could be a bug in the X Server or even
    --  in the application.  This is only raised in those situations where
    --  the X Library must throw up its hands and appeal to higher authority.

--\f

------------------------------------------------------------------------------
-- Xlbt_Font - F1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Char_Struct - Font Character Structure
------------------------------------------------------------------------------

    subtype X_Char_Struct         is F1.X_Char_Struct;  
    subtype X_Char_Struct_List_2d is F1.X_Char_Struct_List_2d;

    None_X_Char_Struct         : X_Char_Struct renames F1.None_X_Char_Struct;  
    None_X_Char_Struct_List_2d : F1.X_Char_Struct_List_2d  
        renames F1.None_X_Char_Struct_List_2d;

    function "=" (A, B : X_Char_Struct_List_2d) return Boolean renames F1."=";

    procedure Free_X_Char_Struct_List_2d (List : in out X_Char_Struct_List_2d)  
        renames F1.Free_X_Char_Struct_List_2d;

    function Ci_Non_Exist_Char (Cs : X_Char_Struct) return Boolean  
        renames F1.Ci_Non_Exist_Char;
    ----Returns true if this character doesn't really exist in this font.

------------------------------------------------------------------------------
-- Font_Direction - used in Query_Font -- drawing direction
------------------------------------------------------------------------------

    subtype X_Font_Direction is F1.X_Font_Direction;

    Font_Left_To_Right : constant X_Font_Direction := F1.Font_Left_To_Right;  
    Font_Right_To_Left : constant X_Font_Direction := F1.Font_Right_To_Left;

    None_X_Font_Direction : X_Font_Direction renames F1.None_X_Font_Direction;

------------------------------------------------------------------------------
-- X_Font_Struct
------------------------------------------------------------------------------

    subtype X_Font_Struct      is F1.X_Font_Struct;  
    subtype X_Font_Struct_List is F1.X_Font_Struct_List;

    None_X_Font_Struct      : X_Font_Struct renames F1.None_X_Font_Struct;  
    None_X_Font_Struct_List : X_Font_Struct_List  
        renames F1.None_X_Font_Struct_List;

    function "=" (A, B : X_Font_Struct)      return Boolean renames F1."=";  
    function "=" (A, B : X_Font_Struct_List) return Boolean renames F1."=";

    procedure Free_X_Font_Struct      (Font : in out X_Font_Struct)  
        renames F1.Free_X_Font_Struct;  
    procedure Free_X_Font_Struct_List (List : in out X_Font_Struct_List)  
        renames F1.Free_X_Font_Struct_List;

------------------------------------------------------------------------------
-- X_Fonts_With_Info
------------------------------------------------------------------------------

    subtype X_Fonts_With_Info is F1.X_Fonts_With_Info;

    procedure Free_X_Fonts_With_Info (Info : in out X_Fonts_With_Info)  
        renames F1.Free_X_Fonts_With_Info;

------------------------------------------------------------------------------
-- X_Per_Char_Flags - Font Metric Information.
------------------------------------------------------------------------------

    subtype X_Per_Char_Flags_Index is F1.X_Per_Char_Flags_Index;

    Xpcfi15 : constant X_Per_Char_Flags_Index := F1.Xpcfi15;  
    Xpcfi14 : constant X_Per_Char_Flags_Index := F1.Xpcfi14;  
    Xpcfi13 : constant X_Per_Char_Flags_Index := F1.Xpcfi13;  
    Xpcfi12 : constant X_Per_Char_Flags_Index := F1.Xpcfi12;  
    Xpcfi11 : constant X_Per_Char_Flags_Index := F1.Xpcfi11;  
    Xpcfi10 : constant X_Per_Char_Flags_Index := F1.Xpcfi10;  
    Xpcfi09 : constant X_Per_Char_Flags_Index := F1.Xpcfi09;  
    Xpcfi08 : constant X_Per_Char_Flags_Index := F1.Xpcfi08;  
    Xpcfi07 : constant X_Per_Char_Flags_Index := F1.Xpcfi07;  
    Xpcfi06 : constant X_Per_Char_Flags_Index := F1.Xpcfi06;  
    Xpcfi05 : constant X_Per_Char_Flags_Index := F1.Xpcfi05;  
    Xpcfi04 : constant X_Per_Char_Flags_Index := F1.Xpcfi04;  
    Xpcfi03 : constant X_Per_Char_Flags_Index := F1.Xpcfi03;  
    Xpcfi02 : constant X_Per_Char_Flags_Index := F1.Xpcfi02;  
    Xpcfi01 : constant X_Per_Char_Flags_Index := F1.Xpcfi01;  
    Xpcfi00 : constant X_Per_Char_Flags_Index := F1.Xpcfi00;

    subtype X_Per_Char_Flags is F1.X_Per_Char_Flags;

    None_X_Per_Char_Flags : X_Per_Char_Flags renames F1.None_X_Per_Char_Flags;

    function "=" (A, B : X_Per_Char_Flags_Index) return Boolean renames F1."=";  
    function "=" (A, B : X_Per_Char_Flags)       return Boolean renames F1."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Gc - G1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Arc_Mode
--
--      Arc_Chord       - join endpoints of arc
--      Arc_Pie_Slice   - join endpoints to center of arc
------------------------------------------------------------------------------

    subtype X_Arc_Mode is G1.X_Arc_Mode;

    Arc_Chord     : constant X_Arc_Mode := G1.Arc_Chord;  
    Arc_Pie_Slice : constant X_Arc_Mode := G1.Arc_Pie_Slice;

    None_X_Arc_Mode : X_Arc_Mode renames G1.None_X_Arc_Mode;

    function "=" (A, B : X_Arc_Mode) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Best_Size_Class
--
--      Cursor_Shape    - largest size that can be displayed
--      Tile_Shape      - size tiled fastest
--      Stipple_Shape   - size stippled fastest
------------------------------------------------------------------------------

    subtype X_Best_Size_Class is G1.X_Best_Size_Class;

    Cursor_Shape  : constant X_Best_Size_Class := G1.Cursor_Shape;  
    Tile_Shape    : constant X_Best_Size_Class := G1.Tile_Shape;  
    Stipple_Shape : constant X_Best_Size_Class := G1.Stipple_Shape;

    function "=" (A, B : X_Best_Size_Class) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Cap_Style
--
--      Cap_Not_Last
--      Cap_Butt
--      Cap_Round
--      Cap_Projecting
------------------------------------------------------------------------------

    subtype X_Cap_Style is G1.X_Cap_Style;

    Cap_Not_Last   : constant X_Cap_Style := G1.Cap_Not_Last;  
    Cap_Butt       : constant X_Cap_Style := G1.Cap_Butt;  
    Cap_Round      : constant X_Cap_Style := G1.Cap_Round;  
    Cap_Projecting : constant X_Cap_Style := G1.Cap_Projecting;

    None_X_Cap_Style : X_Cap_Style renames G1.None_X_Cap_Style;

    function "=" (A, B : X_Cap_Style) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Clip_Ordering
--
--      Unsorted
--      Y_Sorted
--      Y_X_Sorted
--      Y_X_Banded
------------------------------------------------------------------------------

    subtype X_Clip_Ordering is G1.X_Clip_Ordering;

    Unsorted   : constant X_Clip_Ordering := G1.Unsorted;  
    Y_Sorted   : constant X_Clip_Ordering := G1.Y_Sorted;  
    Y_X_Sorted : constant X_Clip_Ordering := G1.Y_X_Sorted;  
    Y_X_Banded : constant X_Clip_Ordering := G1.Y_X_Banded;

    None_X_Clip_Ordering : X_Clip_Ordering renames G1.None_X_Clip_Ordering;

    function "=" (A, B : X_Clip_Ordering) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Fill_Rule
--
--      Even_Odd_Rule
--      Winding_Rule
------------------------------------------------------------------------------

    subtype X_Fill_Rule is G1.X_Fill_Rule;

    Even_Odd_Rule : constant X_Fill_Rule := G1.Even_Odd_Rule;  
    Winding_Rule  : constant X_Fill_Rule := G1.Winding_Rule;

    None_X_Fill_Rule : X_Fill_Rule renames G1.None_X_Fill_Rule;

    function "=" (A, B : X_Fill_Rule) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Fill_Style
--
--      Fill_Solid
--      Fill_Tiled
--      Fill_Stippled
--      Fill_Opaque_Stippled
------------------------------------------------------------------------------

    subtype X_Fill_Style is G1.X_Fill_Style;

    Fill_Solid           : constant X_Fill_Style := G1.Fill_Solid;  
    Fill_Tiled           : constant X_Fill_Style := G1.Fill_Tiled;  
    Fill_Stippled        : constant X_Fill_Style := G1.Fill_Stippled;  
    Fill_Opaque_Stippled : constant X_Fill_Style := G1.Fill_Opaque_Stippled;

    None_X_Fill_Style : constant X_Fill_Style := X_Fill_Style'Val (0);

    function "=" (A, B : X_Fill_Style) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Gc_Components - masks used in Create_GC, Copy_GC, Change_GC, OR'ed into
-- GC.state_Changes
--
--      Gc_Arc_Mode
--      Gc_Dash_List
--      Gc_Dash_Offset
--      Gc_Clip_Mask
--      Gc_Clip_Y_Origin
--      Gc_Clip_X_Origin
--      Gc_Graphics_Exposures
--      Gc_Subwindow_Mode
--      Gc_Font
--      Gc_Tile_Stip_Y_Origin
--      Gc_Tile_Stip_X_Origin
--      Gc_Stipple
--      Gc_Tile
--      Gc_Fill_Rule
--      Gc_Fill_Style
--      Gc_Join_Style
--      Gc_Cap_Style
--      Gc_Line_Style
--      Gc_Line_Width
--      Gc_Background
--      Gc_Foreground
--      Gc_Plane_Mask
--      Gc_Function
--
--      Gc_Last_Bit - "highest" bit used; Gc_Function is the "first" bit used.
------------------------------------------------------------------------------

    subtype X_Gc_Components_Index is G1.X_Gc_Components_Index;  
    subtype X_Gc_Components       is G1.X_Gc_Components;

    Gc_Last_Bit          : X_Gc_Components_Index renames G1.Gc_Last_Bit;  
    None_X_Gc_Components : X_Gc_Components renames G1.None_X_Gc_Components;  
    All_Gc_Components    : X_Gc_Components renames G1.All_Gc_Components;

    subtype Xgci is X_Gc_Components_Index;

    Gc_Arc_Mode           : constant Xgci := G1.Gc_Arc_Mode;  
    Gc_Dash_List          : constant Xgci := G1.Gc_Dash_List;  
    Gc_Dash_Offset        : constant Xgci := G1.Gc_Dash_Offset;  
    Gc_Clip_Mask          : constant Xgci := G1.Gc_Clip_Mask;  
    Gc_Clip_Y_Origin      : constant Xgci := G1.Gc_Clip_Y_Origin;  
    Gc_Clip_X_Origin      : constant Xgci := G1.Gc_Clip_X_Origin;  
    Gc_Graphics_Exposures : constant Xgci := G1.Gc_Graphics_Exposures;  
    Gc_Subwindow_Mode     : constant Xgci := G1.Gc_Subwindow_Mode;  
    Gc_Font               : constant Xgci := G1.Gc_Font;  
    Gc_Tile_Stip_Y_Origin : constant Xgci := G1.Gc_Tile_Stip_Y_Origin;  
    Gc_Tile_Stip_X_Origin : constant Xgci := G1.Gc_Tile_Stip_X_Origin;  
    Gc_Stipple            : constant Xgci := G1.Gc_Stipple;  
    Gc_Tile               : constant Xgci := G1.Gc_Tile;  
    Gc_Fill_Rule          : constant Xgci := G1.Gc_Fill_Rule;  
    Gc_Fill_Style         : constant Xgci := G1.Gc_Fill_Style;  
    Gc_Join_Style         : constant Xgci := G1.Gc_Join_Style;  
    Gc_Cap_Style          : constant Xgci := G1.Gc_Cap_Style;  
    Gc_Line_Style         : constant Xgci := G1.Gc_Line_Style;  
    Gc_Line_Width         : constant Xgci := G1.Gc_Line_Width;  
    Gc_Background         : constant Xgci := G1.Gc_Background;  
    Gc_Foreground         : constant Xgci := G1.Gc_Foreground;  
    Gc_Plane_Mask         : constant Xgci := G1.Gc_Plane_Mask;  
    Gc_Function           : constant Xgci := G1.Gc_Function;

    function "=" (A, B : X_Gc_Components_Index) return Boolean renames G1."=";  
    function "=" (A, B : X_Gc_Components)       return Boolean renames G1."=";

    subtype Xgcc is X_Gc_Components;

    function "and" (A, B : Xgcc) return X_Gc_Components renames G1."and";  
    function "or"  (A, B : Xgcc) return X_Gc_Components renames G1."or";  
    function "xor" (A, B : Xgcc) return X_Gc_Components renames G1."xor";  
    function "not" (A : Xgcc)    return X_Gc_Components renames G1."not";

------------------------------------------------------------------------------
-- X_Gc_Values - Graphic data structure for setting a Graphics Context.
------------------------------------------------------------------------------

    subtype X_Gc_Values is G1.X_Gc_Values;

    None_X_Gc_Values : X_Gc_Values renames G1.None_X_Gc_Values;

------------------------------------------------------------------------------
-- X_Graphic_Function
--
--      Gx_Clear         - 0
--      Gx_And           - src AND dst
--      Gx_And_Reverse   - src AND NOT dst
--      Gx_Copy          - src
--      Gx_And_Inverted  - NOT src AND dst
--      Gx_Noop          - dst
--      Gx_Xor           - src X_OR dst
--      Gx_Or            - src OR dst
--      Gx_Nor           - NOT src AND NOT dst
--      Gx_Equiv         - NOT src X_OR dst
--      Gx_Invert        - NOT dst
--      Gx_Or_Reverse    - src OR NOT dst
--      Gx_Copy_Inverted - NOT src
--      Gx_Or_Inverted   - NOT src OR dst
--      Gx_Nand          - NOT src OR NOT dst
--      Gx_Set           - 1
------------------------------------------------------------------------------

    subtype X_Graphic_Function is G1.X_Graphic_Function;

    Gx_Clear         : constant X_Graphic_Function := G1.Gx_Clear;  
    Gx_And           : constant X_Graphic_Function := G1.Gx_And;  
    Gx_And_Reverse   : constant X_Graphic_Function := G1.Gx_And_Reverse;  
    Gx_Copy          : constant X_Graphic_Function := G1.Gx_Copy;  
    Gx_And_Inverted  : constant X_Graphic_Function := G1.Gx_And_Inverted;  
    Gx_Noop          : constant X_Graphic_Function := G1.Gx_Noop;  
    Gx_Xor           : constant X_Graphic_Function := G1.Gx_Xor;  
    Gx_Or            : constant X_Graphic_Function := G1.Gx_Or;  
    Gx_Nor           : constant X_Graphic_Function := G1.Gx_Nor;  
    Gx_Equiv         : constant X_Graphic_Function := G1.Gx_Equiv;  
    Gx_Invert        : constant X_Graphic_Function := G1.Gx_Invert;  
    Gx_Or_Reverse    : constant X_Graphic_Function := G1.Gx_Or_Reverse;  
    Gx_Copy_Inverted : constant X_Graphic_Function := G1.Gx_Copy_Inverted;  
    Gx_Or_Inverted   : constant X_Graphic_Function := G1.Gx_Or_Inverted;  
    Gx_Nand          : constant X_Graphic_Function := G1.Gx_Nand;  
    Gx_Set           : constant X_Graphic_Function := G1.Gx_Set;

    None_X_Graphic_Function : X_Graphic_Function  
        renames G1.None_X_Graphic_Function;

    function "=" (A, B : X_Graphic_Function) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Join_Style
--
--      Join_Miter
--      Join_Round
--      Join_Bevel
------------------------------------------------------------------------------

    subtype X_Join_Style is G1.X_Join_Style;

    Join_Miter : constant X_Join_Style := G1.Join_Miter;  
    Join_Round : constant X_Join_Style := G1.Join_Round;  
    Join_Bevel : constant X_Join_Style := G1.Join_Bevel;

    None_X_Join_Style : X_Join_Style renames G1.None_X_Join_Style;

    function "=" (A, B : X_Join_Style) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Line_Style
--
--      Line_Solid
--      Line_On_Off_Dash
--      Line_Double_Dash
------------------------------------------------------------------------------

    subtype X_Line_Style is G1.X_Line_Style;

    Line_Solid       : constant X_Line_Style := G1.Line_Solid;  
    Line_On_Off_Dash : constant X_Line_Style := G1.Line_On_Off_Dash;  
    Line_Double_Dash : constant X_Line_Style := G1.Line_Double_Dash;

    None_X_Line_Style : X_Line_Style renames G1.None_X_Line_Style;

    function "=" (A, B : X_Line_Style) return Boolean renames G1."=";

------------------------------------------------------------------------------
-- X_Subwindow_Mode
--
--      Clip_By_Children
--      Include_Inferiors
------------------------------------------------------------------------------

    subtype X_Subwindow_Mode is G1.X_Subwindow_Mode;

    Clip_By_Children  : constant X_Subwindow_Mode := G1.Clip_By_Children;  
    Include_Inferiors : constant X_Subwindow_Mode := G1.Include_Inferiors;

    None_X_Subwindow_Mode : X_Subwindow_Mode renames G1.None_X_Subwindow_Mode;

    function "=" (A, B : X_Subwindow_Mode) return Boolean renames G1."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Geometry - G2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Parse_Geometry_Flags - Bitmask returned by X_Parse_Geometry().  Each bit
-- tells if the corresponding value (x, y, width, height) was found in the
-- parsed string.
------------------------------------------------------------------------------

    subtype X_Parse_Geometry_Flags_Index is G2.X_Parse_Geometry_Flags_Index;  
    subtype X_Parse_Geometry_Flags       is G2.X_Parse_Geometry_Flags;

    Xpgfi31      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi31;  
    Xpgfi30      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi30;  
    Xpgfi29      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi29;  
    Xpgfi28      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi28;  
    Xpgfi27      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi27;  
    Xpgfi26      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi26;  
    Xpgfi25      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi25;  
    Xpgfi24      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi24;  
    Xpgfi23      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi23;  
    Xpgfi22      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi22;  
    Xpgfi21      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi21;  
    Xpgfi20      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi20;  
    Xpgfi19      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi19;  
    Xpgfi18      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi18;  
    Xpgfi17      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi17;  
    Xpgfi16      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi16;  
    Xpgfi15      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi15;  
    Xpgfi14      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi14;  
    Xpgfi13      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi13;  
    Xpgfi12      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi12;  
    Xpgfi11      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi11;  
    Xpgfi10      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi10;  
    Xpgfi09      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi09;  
    Xpgfi08      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi08;  
    Xpgfi07      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi07;  
    Xpgfi06      : constant X_Parse_Geometry_Flags_Index := G2.Xpgfi06;  
    Y_Negative   : constant X_Parse_Geometry_Flags_Index := G2.Y_Negative;  
    X_Negative   : constant X_Parse_Geometry_Flags_Index := G2.X_Negative;  
    Height_Value : constant X_Parse_Geometry_Flags_Index := G2.Height_Value;  
    Width_Value  : constant X_Parse_Geometry_Flags_Index := G2.Width_Value;  
    Y_Value      : constant X_Parse_Geometry_Flags_Index := G2.Y_Value;  
    X_Value      : constant X_Parse_Geometry_Flags_Index := G2.X_Value;

    None_X_Parse_Geometry_Flags : X_Parse_Geometry_Flags  
        renames G2.None_X_Parse_Geometry_Flags;

    All_Values : X_Parse_Geometry_Flags renames G2.All_Values;

    function "=" (A, B : X_Parse_Geometry_Flags) return Boolean renames G2."=";  
    function "=" (A, B : X_Parse_Geometry_Flags_Index) return Boolean  
        renames G2."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Grab - G3
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Allow_Event_Mode
------------------------------------------------------------------------------

    subtype X_Allow_Event_Mode is G3.X_Allow_Event_Mode;

    Async_Pointer   : constant X_Allow_Event_Mode := G3.Async_Pointer;  
    Sync_Pointer    : constant X_Allow_Event_Mode := G3.Sync_Pointer;  
    Replay_Pointer  : constant X_Allow_Event_Mode := G3.Replay_Pointer;  
    Async_Keyboard  : constant X_Allow_Event_Mode := G3.Async_Keyboard;  
    Sync_Keyboard   : constant X_Allow_Event_Mode := G3.Sync_Keyboard;  
    Replay_Keyboard : constant X_Allow_Event_Mode := G3.Replay_Keyboard;  
    Async_Both      : constant X_Allow_Event_Mode := G3.Async_Both;  
    Sync_Both       : constant X_Allow_Event_Mode := G3.Sync_Both;

    function "=" (A, B : X_Allow_Event_Mode) return Boolean renames G3."=";

------------------------------------------------------------------------------
-- X_Grab_Mode - Grab_Pointer, Grab_Button, Grab_Keyboard, Grab_Key Modes
------------------------------------------------------------------------------

    subtype X_Grab_Mode is G3.X_Grab_Mode;

    Grab_Mode_Sync  : constant X_Grab_Mode := G3.Grab_Mode_Sync;  
    Grab_Mode_Async : constant X_Grab_Mode := G3.Grab_Mode_Async;

    None_X_Grab_Mode : X_Grab_Mode renames G3.None_X_Grab_Mode;

    function "=" (A, B : X_Grab_Mode) return Boolean renames G3."=";

------------------------------------------------------------------------------
-- X_Grab_Status
------------------------------------------------------------------------------

    subtype X_Grab_Status is G3.X_Grab_Status;

    Grab_Success      : constant X_Grab_Status := G3.Grab_Success;  
    Already_Grabbed   : constant X_Grab_Status := G3.Already_Grabbed;  
    Grab_Invalid_Time : constant X_Grab_Status := G3.Grab_Invalid_Time;  
    Grab_Not_Viewable : constant X_Grab_Status := G3.Grab_Not_Viewable;  
    Grab_Frozen       : constant X_Grab_Status := G3.Grab_Frozen;

    None_X_Grab_Status : X_Grab_Status renames G3.None_X_Grab_Status;

    function "=" (A, B : X_Grab_Status) return Boolean renames G3."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Graphics - G4
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Arc - Description of Arcs
------------------------------------------------------------------------------

    subtype X_Arc       is G4.X_Arc;  
    subtype X_Arc_Array is G4.X_Arc_Array;  
    subtype X_Arc_List  is G4.X_Arc_List;

    None_X_Arc      : X_Arc      renames G4.None_X_Arc;  
    None_X_Arc_List : X_Arc_List renames G4.None_X_Arc_List;

    function "=" (A, B : X_Arc)      return Boolean renames G4."=";  
    function "=" (A, B : X_Arc_List) return Boolean renames G4."=";

------------------------------------------------------------------------------
-- Coordinate_Mode for drawing routines
--
--  Coord_Mode_Origin   - relative to the origin
--  Coord_Mode_Previous - relative to previous point
------------------------------------------------------------------------------

    subtype X_Coordinate_Mode is G4.X_Coordinate_Mode;

    Coord_Mode_Origin   : constant X_Coordinate_Mode := G4.Coord_Mode_Origin;  
    Coord_Mode_Previous : constant X_Coordinate_Mode := G4.Coord_Mode_Previous;

    None_X_Coordinate_Mode : X_Coordinate_Mode  
        renames G4.None_X_Coordinate_Mode;

    function "=" (A, B : X_Coordinate_Mode) return Boolean renames G4."=";

------------------------------------------------------------------------------
-- X_Point - Points in X
------------------------------------------------------------------------------

    subtype X_Point       is G4.X_Point;  
    subtype X_Point_Array is G4.X_Point_Array;  
    subtype X_Point_List  is G4.X_Point_List;

    None_X_Point      : X_Point      renames G4.None_X_Point;  
    None_X_Point_List : X_Point_List renames G4.None_X_Point_List;

    function "=" (A, B : X_Point)      return Boolean renames G4."=";  
    function "=" (A, B : X_Point_List) return Boolean renames G4."=";

------------------------------------------------------------------------------
-- X_Polygon_Shape
--
--  Complex     - paths may intersect
--  Nonconvex   - no paths intersect, but not convex
--  Convex      - wholly convex
------------------------------------------------------------------------------

    subtype X_Polygon_Shape is G4.X_Polygon_Shape;

    Complex   : constant X_Polygon_Shape := G4.Complex;  
    Nonconvex : constant X_Polygon_Shape := G4.Nonconvex;  
    Convex    : constant X_Polygon_Shape := G4.Convex;

    None_X_Polygon_Shape : X_Polygon_Shape renames G4.None_X_Polygon_Shape;

    function "=" (A, B : X_Polygon_Shape) return Boolean renames G4."=";

------------------------------------------------------------------------------
-- Xtangle - Rectangle
------------------------------------------------------------------------------

    subtype X_Rectangle       is G4.X_Rectangle;  
    subtype X_Rectangle_Array is G4.X_Rectangle_Array;  
    subtype X_Rectangle_List  is G4.X_Rectangle_List;

    None_X_Rectangle      : X_Rectangle      renames G4.None_X_Rectangle;  
    None_X_Rectangle_List : X_Rectangle_List renames G4.None_X_Rectangle_List;

    function "=" (A, B : X_Rectangle)      return Boolean renames G4."=";  
    function "=" (A, B : X_Rectangle_List) return Boolean renames G4."=";

------------------------------------------------------------------------------
-- X_Segment - Line Segment
------------------------------------------------------------------------------

    subtype X_Segment       is G4.X_Segment;  
    subtype X_Segment_Array is G4.X_Segment_Array;  
    subtype X_Segment_List  is G4.X_Segment_List;

    None_X_Segment      : X_Segment      renames G4.None_X_Segment;  
    None_X_Segment_List : X_Segment_List renames G4.None_X_Segment_List;

    function "=" (A, B : X_Segment)      return Boolean renames G4."=";  
    function "=" (A, B : X_Segment_List) return Boolean renames G4."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Hint - H1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- Class Hints
------------------------------------------------------------------------------

    subtype X_Class_Hint is H1.X_Class_Hint;

    None_X_Class_Hint : X_Class_Hint renames H1.None_X_Class_Hint;

------------------------------------------------------------------------------
-- X_Icon_Size hints
------------------------------------------------------------------------------

    subtype X_Icon_Size       is H1.X_Icon_Size;  
    subtype X_Icon_Size_Array is H1.X_Icon_Size_Array;  
    subtype X_Icon_Size_List  is H1.X_Icon_Size_List;

    None_X_Icon_Size      : X_Icon_Size      renames H1.None_X_Icon_Size;  
    None_X_Icon_Size_List : X_Icon_Size_List renames H1.None_X_Icon_Size_List;

    function "=" (A, B : X_Icon_Size_List) return Boolean renames H1."=";

    procedure Free_X_Icon_Size_List (List : in out X_Icon_Size_List)  
        renames H1.Free_X_Icon_Size_List;

------------------------------------------------------------------------------
-- X_Initial_Window_State
--
--      Withdrawn_State - for windows that are not mapped
--      Normal_State    - most applications want to start this way
--      Iconic_State    - application want to start as an icon
------------------------------------------------------------------------------

    subtype X_Initial_Window_State is H1.X_Initial_Window_State;

    Withdrawn_State : constant X_Initial_Window_State := H1.Withdrawn_State;  
    Normal_State    : constant X_Initial_Window_State := H1.Normal_State;  
    Iconic_State    : constant X_Initial_Window_State := H1.Iconic_State;

    None_X_Initial_Window_State : X_Initial_Window_State  
        renames H1.None_X_Initial_Window_State;

    function "=" (A, B : X_Initial_Window_State) return Boolean renames H1."=";

------------------------------------------------------------------------------
-- X_Size_Hints_Flags - Argument flags for Property Size and Size hints
--
--      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
------------------------------------------------------------------------------

    subtype X_Size_Hints_Flags_Index is H1.X_Size_Hints_Flags_Index;  
    subtype X_Size_Hints_Flags       is H1.X_Size_Hints_Flags;

    P_Base_Size   : constant X_Size_Hints_Flags_Index := H1.P_Base_Size;  
    P_Win_Gravity : constant X_Size_Hints_Flags_Index := H1.P_Win_Gravity;  
    P_Aspect      : constant X_Size_Hints_Flags_Index := H1.P_Aspect;  
    P_Resize_Inc  : constant X_Size_Hints_Flags_Index := H1.P_Resize_Inc;  
    P_Max_Size    : constant X_Size_Hints_Flags_Index := H1.P_Max_Size;  
    P_Min_Size    : constant X_Size_Hints_Flags_Index := H1.P_Min_Size;  
    P_Size        : constant X_Size_Hints_Flags_Index := H1.P_Size;  
    P_Position    : constant X_Size_Hints_Flags_Index := H1.P_Position;  
    U_S_Size      : constant X_Size_Hints_Flags_Index := H1.U_S_Size;  
    U_S_Position  : constant X_Size_Hints_Flags_Index := H1.U_S_Position;

    None_X_Size_Hints_Flags : X_Size_Hints_Flags  
        renames H1.None_X_Size_Hints_Flags;

    function "="   (A, B : X_Size_Hints_Flags_Index) return Boolean  
        renames H1."=";  
    function "="   (A, B : X_Size_Hints_Flags) return Boolean renames H1."=";  
    function "and" (A, B : X_Size_Hints_Flags) return X_Size_Hints_Flags  
        renames H1."and";  
    function "or"  (A, B : X_Size_Hints_Flags) return X_Size_Hints_Flags  
        renames H1."or";  
    function "xor" (A, B : X_Size_Hints_Flags) return X_Size_Hints_Flags  
        renames H1."xor";  
    function "not" (A : X_Size_Hints_Flags) return X_Size_Hints_Flags  
        renames H1."not";

------------------------------------------------------------------------------
-- X_Size_Hints
------------------------------------------------------------------------------

    subtype X_Size_Hints is H1.X_Size_Hints;

    None_X_Size_Hints : X_Size_Hints renames H1.None_X_Size_Hints;

------------------------------------------------------------------------------
-- X_Standard_Colormap - This defines a window manager property that
-- clients may use to share standard color maps of type RGB_COLOR_MAP:
------------------------------------------------------------------------------

    subtype X_Standard_Colormap       is H1.X_Standard_Colormap;  
    subtype X_Standard_Colormap_Array is H1.X_Standard_Colormap_Array;  
    subtype X_Standard_Colormap_List  is H1.X_Standard_Colormap_List;

    None_X_Standard_Colormap      : X_Standard_Colormap  
        renames H1.None_X_Standard_Colormap;  
    None_X_Standard_Colormap_List : X_Standard_Colormap_List  
        renames H1.None_X_Standard_Colormap_List;

    function "=" (A, B : X_Standard_Colormap_List) return Boolean  
        renames H1."=";

    procedure Free_X_Standard_Colormap_List  
                 (List : in out X_Standard_Colormap_List)  
        renames H1.Free_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.
------------------------------------------------------------------------------

    subtype X_Text_Property is H1.X_Text_Property;

    None_X_Text_Property : X_Text_Property renames H1.None_X_Text_Property;  
    function "=" (A, B : X_Text_Property) return Boolean renames H1."=";

------------------------------------------------------------------------------
-- X_Wm_Hints_Flags - Argument flags for X_WM_Hints
--
--      Window_Group_Hint
--      Icon_Mask_Hint
--      Icon_Position_Hint
--      Icon_Window_Hint
--      Icon_Pixmap_Hint
--      State_Hint
--      Input_Hint
------------------------------------------------------------------------------

    subtype X_Wm_Hints_Flags_Index is H1.X_Wm_Hints_Flags_Index;  
    subtype X_Wm_Hints_Flags       is H1.X_Wm_Hints_Flags;

    subtype Xwhfi is X_Wm_Hints_Flags_Index;

    Window_Group_Hint  : constant Xwhfi := H1.Window_Group_Hint;  
    Icon_Mask_Hint     : constant Xwhfi := H1.Icon_Mask_Hint;  
    Icon_Position_Hint : constant Xwhfi := H1.Icon_Position_Hint;  
    Icon_Window_Hint   : constant Xwhfi := H1.Icon_Window_Hint;  
    Icon_Pixmap_Hint   : constant Xwhfi := H1.Icon_Pixmap_Hint;  
    State_Hint         : constant Xwhfi := H1.State_Hint;  
    Input_Hint         : constant Xwhfi := H1.Input_Hint;

    None_X_Wm_Hints_Flags : X_Wm_Hints_Flags renames H1.None_X_Wm_Hints_Flags;  
    All_Hints             : X_Wm_Hints_Flags renames H1.All_Hints;

    function "=" (A, B : X_Wm_Hints_Flags_Index) return Boolean renames H1."=";  
    function "=" (A, B : X_Wm_Hints_Flags)       return Boolean renames H1."=";

------------------------------------------------------------------------------
-- X_Wm_Hints - Window Manager Hints
------------------------------------------------------------------------------

    subtype X_Wm_Hints is H1.X_Wm_Hints;

    None_X_Wm_Hints : X_Wm_Hints renames H1.None_X_Wm_Hints;

--\f

------------------------------------------------------------------------------
-- Xlbt_Host - H2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Change_Access
------------------------------------------------------------------------------

    subtype X_Change_Access is H2.X_Change_Access;

    Disable_Access : constant X_Change_Access := H2.Disable_Access;  
    Enable_Access  : constant X_Change_Access := H2.Enable_Access;

    function "=" (A, B : X_Change_Access) return Boolean renames H2."=";

------------------------------------------------------------------------------
-- X_Change_Hosts_Mode
------------------------------------------------------------------------------

    subtype X_Change_Hosts_Mode is H2.X_Change_Hosts_Mode;

    Host_Insert : constant X_Change_Hosts_Mode := H2.Host_Insert;  
    Host_Delete : constant X_Change_Hosts_Mode := H2.Host_Delete;

    function "=" (A, B : X_Change_Hosts_Mode) return Boolean renames H2."=";

------------------------------------------------------------------------------
-- X_Change_Save_Set_Mode
------------------------------------------------------------------------------

    subtype X_Change_Save_Set_Mode is H2.X_Change_Save_Set_Mode;

    Set_Mode_Insert : constant X_Change_Save_Set_Mode := H2.Set_Mode_Insert;  
    Set_Mode_Delete : constant X_Change_Save_Set_Mode := H2.Set_Mode_Delete;

    function "=" (A, B : X_Change_Save_Set_Mode) return Boolean renames H2."=";

------------------------------------------------------------------------------
-- X_Close_Down_Mode
------------------------------------------------------------------------------

    subtype X_Close_Down_Mode is H2.X_Close_Down_Mode;

    Destroy_All      : constant X_Close_Down_Mode := H2.Destroy_All;  
    Retain_Permanent : constant X_Close_Down_Mode := H2.Retain_Permanent;  
    Retain_Temporary : constant X_Close_Down_Mode := H2.Retain_Temporary;

    function "=" (A, B : X_Close_Down_Mode) return Boolean renames H2."=";

------------------------------------------------------------------------------
-- X_Host_Protocol_Family
------------------------------------------------------------------------------

    subtype X_Host_Protocol_Family is H2.X_Host_Protocol_Family;

    Family_Internet : constant X_Host_Protocol_Family := H2.Family_Internet;  
    Family_Decnet   : constant X_Host_Protocol_Family := H2.Family_Decnet;  
    Family_Chaos    : constant X_Host_Protocol_Family := H2.Family_Chaos;

    None_X_Host_Protocol_Family : X_Host_Protocol_Family  
        renames H2.None_X_Host_Protocol_Family;

    function "=" (A, B : X_Host_Protocol_Family) return Boolean renames H2."=";

------------------------------------------------------------------------------
-- X_Host_Address - holds the "address" of a host
------------------------------------------------------------------------------

    subtype X_Host_Address       is H2.X_Host_Address;  
    subtype X_Host_Address_Array is H2.X_Host_Address_Array;

    None_X_Host_Address : X_Host_Address renames H2.None_X_Host_Address;

    function "=" (A, B : X_Host_Address) return Boolean renames H2."=";

------------------------------------------------------------------------------
-- X_Host_Address_List - holds the "address" of several hosts
------------------------------------------------------------------------------

    subtype X_Host_Address_List is H2.X_Host_Address_List;

    None_X_Host_Address_List : X_Host_Address_List  
        renames H2.None_X_Host_Address_List;

    function "=" (A, B : X_Host_Address_List) return Boolean renames H2."=";

    procedure Free_X_Host_Address_List (List : in out X_Host_Address_List)  
        renames H2.Free_X_Host_Address_List;

------------------------------------------------------------------------------
-- X_Host_List
------------------------------------------------------------------------------

    subtype X_Host_List is H2.X_Host_List;

    None_X_Host_List : X_Host_List renames H2.None_X_Host_List;

    procedure Free_X_Host_List (List : in out X_Host_List)  
        renames H2.Free_X_Host_List;

--\f

------------------------------------------------------------------------------
-- Xlbt_Image - I1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Byte_Bit_Order
--
--      Lsb_First       - least-significant-first
--      Msb_First       - most-significant-first
------------------------------------------------------------------------------

    subtype X_Byte_Bit_Order is I1.X_Byte_Bit_Order;

    Lsb_First : constant X_Byte_Bit_Order := I1.Lsb_First;  
    Msb_First : constant X_Byte_Bit_Order := I1.Msb_First;

    None_X_Byte_Bit_Order : X_Byte_Bit_Order renames I1.None_X_Byte_Bit_Order;

    function "=" (A, B : X_Byte_Bit_Order) return Boolean renames I1."=";

------------------------------------------------------------------------------
-- X_Image_Format
--
--      X_Y_Bitmap  - depth 1, X_Y_Format
--      X_Y_Pixmap  - depth == drawable depth
--      Z_Pixmap    - depth == drawable depth
------------------------------------------------------------------------------

    subtype X_Image_Format is I1.X_Image_Format;

    X_Y_Bitmap : constant X_Image_Format := I1.X_Y_Bitmap;  
    X_Y_Pixmap : constant X_Image_Format := I1.X_Y_Pixmap;  
    Z_Pixmap   : constant X_Image_Format := I1.Z_Pixmap;

    None_X_Image_Format : X_Image_Format renames I1.None_X_Image_Format;

    function "=" (A, B : X_Image_Format) return Boolean renames I1."=";

------------------------------------------------------------------------------
-- X_Pixmap_Format_Values
------------------------------------------------------------------------------

    subtype X_Pixmap_Format_Values      is I1.X_Pixmap_Format_Values;  
    subtype X_Pixmap_Format_Values_List is I1.X_Pixmap_Format_Values_List;

    None_X_Pixmap_Format_Values      : X_Pixmap_Format_Values  
        renames I1.None_X_Pixmap_Format_Values;  
    None_X_Pixmap_Format_Values_List : X_Pixmap_Format_Values_List  
        renames I1.None_X_Pixmap_Format_Values_List;

    procedure Free_X_Pixmap_Format_Values_List  
                 (List : in out X_Pixmap_Format_Values_List)  
        renames I1.Free_X_Pixmap_Format_Values_List;

------------------------------------------------------------------------------
-- X_Image - Image data structure
------------------------------------------------------------------------------

    subtype X_Image is I1.X_Image;

    None_X_Image : X_Image renames I1.None_X_Image;

    function "=" (A, B : X_Image) return Boolean renames I1."=";

    procedure Free_X_Image (Image : in out X_Image) renames I1.Free_X_Image;

--\f

------------------------------------------------------------------------------
-- Xlbt_Input_Focus - I2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Revert_Focus_Mode - Used in Set_Input_Focus, Get_Input_Focus
------------------------------------------------------------------------------

    subtype X_Revert_Focus_Mode is I2.X_Revert_Focus_Mode;

    Revert_To_None : constant X_Revert_Focus_Mode := I2.Revert_To_None;  
    Revert_To_Pointer_Root : constant X_Revert_Focus_Mode :=  
       I2.Revert_To_Pointer_Root;  
    Revert_To_Parent : constant X_Revert_Focus_Mode := I2.Revert_To_Parent;

    None_X_Revert_Focus_Mode : X_Revert_Focus_Mode  
        renames I2.None_X_Revert_Focus_Mode;

    function "=" (A, B : X_Revert_Focus_Mode) return Boolean renames I2."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Key - K1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Compose_Status - Compose sequence status structure, used w/X_Lookup_String.
------------------------------------------------------------------------------

    subtype X_Compose_Status is K1.X_Compose_Status;

------------------------------------------------------------------------------
-- X_Key_Button_Mask
--
--      Any_Modifier
--      Button_5_Mask
--      Button_4_Mask
--      Button_3_Mask
--      Button_2_Mask
--      Button_1_Mask
--      Mod_5_Mask
--      Mod_4_Mask
--      Mod_3_Mask
--      Mod_2_Mask
--      Mod_1_Mask
--      Control_Mask
--      Lock_Mask
--      Shift_Mask
------------------------------------------------------------------------------

    subtype X_Key_Button_Mask_Index is K1.X_Key_Button_Mask_Index;  
    subtype X_Key_Button_Mask       is K1.X_Key_Button_Mask;

    Any_Modifier  : constant X_Key_Button_Mask_Index := K1.Any_Modifier;  
    Button_5_Mask : constant X_Key_Button_Mask_Index := K1.Button_5_Mask;  
    Button_4_Mask : constant X_Key_Button_Mask_Index := K1.Button_4_Mask;  
    Button_3_Mask : constant X_Key_Button_Mask_Index := K1.Button_3_Mask;  
    Button_2_Mask : constant X_Key_Button_Mask_Index := K1.Button_2_Mask;  
    Button_1_Mask : constant X_Key_Button_Mask_Index := K1.Button_1_Mask;  
    Mod_5_Mask    : constant X_Key_Button_Mask_Index := K1.Mod_5_Mask;  
    Mod_4_Mask    : constant X_Key_Button_Mask_Index := K1.Mod_4_Mask;  
    Mod_3_Mask    : constant X_Key_Button_Mask_Index := K1.Mod_3_Mask;  
    Mod_2_Mask    : constant X_Key_Button_Mask_Index := K1.Mod_2_Mask;  
    Mod_1_Mask    : constant X_Key_Button_Mask_Index := K1.Mod_1_Mask;  
    Control_Mask  : constant X_Key_Button_Mask_Index := K1.Control_Mask;  
    Lock_Mask     : constant X_Key_Button_Mask_Index := K1.Lock_Mask;  
    Shift_Mask    : constant X_Key_Button_Mask_Index := K1.Shift_Mask;

    None_X_Key_Button_Mask : X_Key_Button_Mask  
        renames K1.None_X_Key_Button_Mask;

    function "=" (A, B : X_Key_Button_Mask_Index) return Boolean renames K1."=";  
    function "=" (A, B : X_Key_Button_Mask) return Boolean renames K1."=";  
    function "and" (A, B : X_Key_Button_Mask) return X_Key_Button_Mask  
        renames K1."and";  
    function "or" (A, B : X_Key_Button_Mask) return X_Key_Button_Mask  
        renames K1."or";  
    function "xor" (A, B : X_Key_Button_Mask) return X_Key_Button_Mask  
        renames K1."xor";  
    function "not" (A : X_Key_Button_Mask) return X_Key_Button_Mask  
        renames K1."not";

------------------------------------------------------------------------------
-- X_Key_Code - simple "numeric" index of 8 bits
--
--  Any_Key - Special X_Key_Code passed to Grab_Key
------------------------------------------------------------------------------

    subtype X_Key_Code       is K1.X_Key_Code;  
    subtype X_Key_Code_Array is K1.X_Key_Code_Array;  
    subtype X_Key_Code_List  is K1.X_Key_Code_List;

    None_X_Key_Code      : X_Key_Code      renames K1.None_X_Key_Code;  
    None_X_Key_Code_List : X_Key_Code_List renames K1.None_X_Key_Code_List;  
    Any_Key              : X_Key_Code      renames K1.Any_Key;

    function "=" (A, B : X_Key_Code)      return Boolean    renames K1."=";  
    function "=" (A, B : X_Key_Code_List) return Boolean    renames K1."=";  
    function "+" (A, B : X_Key_Code)      return X_Key_Code renames K1."+";  
    function "-" (A, B : X_Key_Code)      return X_Key_Code renames K1."-";  
    function "-" (A : X_Key_Code)         return X_Key_Code renames K1."-";

    procedure Free_X_Key_Code_List (List : in out X_Key_Code_List)  
        renames K1.Free_X_Key_Code_List;

------------------------------------------------------------------------------
-- X_Key_Modifier names.  Used to build a Set_Modifier_Mapping request or
-- to read a Get_Modifier_Mapping request.  These correspond to the
-- masks defined above.
------------------------------------------------------------------------------

    subtype X_Key_Modifier is K1.X_Key_Modifier;

    Shift_Map_Index   : constant X_Key_Modifier := K1.Shift_Map_Index;  
    Lock_Map_Index    : constant X_Key_Modifier := K1.Lock_Map_Index;  
    Control_Map_Index : constant X_Key_Modifier := K1.Control_Map_Index;  
    Mod_1_Map_Index   : constant X_Key_Modifier := K1.Mod_1_Map_Index;  
    Mod_2_Map_Index   : constant X_Key_Modifier := K1.Mod_2_Map_Index;  
    Mod_3_Map_Index   : constant X_Key_Modifier := K1.Mod_3_Map_Index;  
    Mod_4_Map_Index   : constant X_Key_Modifier := K1.Mod_4_Map_Index;  
    Mod_5_Map_Index   : constant X_Key_Modifier := K1.Mod_5_Map_Index;

------------------------------------------------------------------------------
-- X_Key_Sym
------------------------------------------------------------------------------

    subtype X_Key_Sym is K1.X_Key_Sym;

    None_X_Key_Sym : X_Key_Sym renames K1.None_X_Key_Sym;

    No_Symbol : X_Key_Sym renames K1.No_Symbol;
    ----Special Key_Sym meaning "this key does nothing"

    subtype X_Key_Sym_Array    is K1.X_Key_Sym_Array;  
    subtype X_Key_Sym_Array_2d is K1.X_Key_Sym_Array_2d;  
    subtype X_Key_Sym_List_2d  is K1.X_Key_Sym_List_2d;

    None_X_Key_Sym_List_2d : X_Key_Sym_List_2d  
        renames K1.None_X_Key_Sym_List_2d;

    function "=" (A, B : X_Key_Sym_List_2d) return Boolean renames K1."=";


    function "="  (A, B : X_Key_Sym) return Boolean renames K1."=";  
    function "<"  (A, B : X_Key_Sym) return Boolean renames K1."<";  
    function "<=" (A, B : X_Key_Sym) return Boolean renames K1."<=";  
    function ">"  (A, B : X_Key_Sym) return Boolean renames K1.">";  
    function ">=" (A, B : X_Key_Sym) return Boolean renames K1.">=";

    function  "+" (A, B : X_Key_Sym) return X_Key_Sym renames K1."+";  
    function  "-" (A, B : X_Key_Sym) return X_Key_Sym renames K1."-";  
    function  "-" (A : X_Key_Sym) return X_Key_Sym renames K1."-";  
    function  "*" (A, B : X_Key_Sym) return X_Key_Sym renames K1."*";  
    function  "/" (A, B : X_Key_Sym) return X_Key_Sym renames K1."/";  
    function  "rem" (A, B : X_Key_Sym) return X_Key_Sym renames K1."rem";  
    function  "mod" (A, B : X_Key_Sym) return X_Key_Sym renames K1."mod";  
    procedure Free_X_Key_Sym_List_2d (List : in out X_Key_Sym_List_2d)  
        renames K1.Free_X_Key_Sym_List_2d;

------------------------------------------------------------------------------
-- X_Modifier_Keymap
------------------------------------------------------------------------------

    subtype X_Modifier_Keymap is K1.X_Modifier_Keymap;

    None_X_Modifier_Keymap : X_Modifier_Keymap  
        renames K1.None_X_Modifier_Keymap;

    function "=" (A, B : X_Modifier_Keymap) return Boolean renames K1."=";

    procedure Free_X_Modifier_Keymap (Map : in out X_Modifier_Keymap)  
        renames K1.Free_X_Modifier_Keymap;

--\f

------------------------------------------------------------------------------
-- Xlbt_Keyboard - K2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Auto_Repeat_Mode
--
--      Auto_Repeat_Mode_Off
--      Auto_Repeat_Mode_On
--      Auto_Repeat_Mode_Default
------------------------------------------------------------------------------

    subtype X_Auto_Repeat_Mode is K2.X_Auto_Repeat_Mode;

    Auto_Repeat_Mode_Off     : constant X_Auto_Repeat_Mode  
        := K2.Auto_Repeat_Mode_Off;  
    Auto_Repeat_Mode_On      : constant X_Auto_Repeat_Mode  
        := K2.Auto_Repeat_Mode_On;  
    Auto_Repeat_Mode_Default : constant X_Auto_Repeat_Mode  
        := K2.Auto_Repeat_Mode_Default;

    None_X_Auto_Repeat_Mode : X_Auto_Repeat_Mode  
        renames K2.None_X_Auto_Repeat_Mode;

    function "=" (A, B : X_Auto_Repeat_Mode) return Boolean renames K2."=";

------------------------------------------------------------------------------
-- X_Keyboard_As_Bits - key presence indicated by a 1 bit
------------------------------------------------------------------------------

    subtype X_Keyboard_As_Bits is K2.X_Keyboard_As_Bits;

    subtype X_Keyboard_As_Bits_Short is K2.X_Keyboard_As_Bits_Short;


    None_X_Keyboard_As_Bits : X_Keyboard_As_Bits  
        renames K2.None_X_Keyboard_As_Bits;

------------------------------------------------------------------------------
-- X_Keyboard_Control_Flags
--
--      Kb_Auto_Repeat_Mode
--      Kb_Key
--      Kb_Led_Mode
--      Kb_Led
--      Kb_Bell_Duration
--      Kb_Bell_Pitch
--      Kb_Bell_Percent
--      Kb_Key_Click_Percent
------------------------------------------------------------------------------

    subtype X_Keyboard_Control_Flags_Index is K2.X_Keyboard_Control_Flags_Index;  
    subtype X_Keyboard_Control_Flags       is K2.X_Keyboard_Control_Flags;

    subtype Xkcfi is K2.X_Keyboard_Control_Flags_Index;

    Kb_Auto_Repeat_Mode  : constant Xkcfi := K2.Kb_Auto_Repeat_Mode;  
    Kb_Key               : constant Xkcfi := K2.Kb_Key;  
    Kb_Led_Mode          : constant Xkcfi := K2.Kb_Led_Mode;  
    Kb_Led               : constant Xkcfi := K2.Kb_Led;  
    Kb_Bell_Duration     : constant Xkcfi := K2.Kb_Bell_Duration;  
    Kb_Bell_Pitch        : constant Xkcfi := K2.Kb_Bell_Pitch;  
    Kb_Bell_Percent      : constant Xkcfi := K2.Kb_Bell_Percent;  
    Kb_Key_Click_Percent : constant Xkcfi := K2.Kb_Key_Click_Percent;

    None_X_Keyboard_Control_Flags : X_Keyboard_Control_Flags renames  
       K2.None_X_Keyboard_Control_Flags;

    function "=" (A, B : X_Keyboard_Control_Flags_Index) return Boolean  
        renames K2."=";  
    function "=" (A, B : X_Keyboard_Control_Flags)       return Boolean  
        renames K2."=";

------------------------------------------------------------------------------
-- X_Keyboard_Control
------------------------------------------------------------------------------

    subtype X_Keyboard_Control is K2.X_Keyboard_Control;

------------------------------------------------------------------------------
-- X_Keyboard_State
------------------------------------------------------------------------------

    subtype X_Keyboard_State is K2.X_Keyboard_State;  
    None_X_Keyboard_State : X_Keyboard_State renames K2.None_X_Keyboard_State;

------------------------------------------------------------------------------
-- X_Led_Bits - One bit for each possible keyboard led.
------------------------------------------------------------------------------

    subtype X_Led_Bits_Index is K2.X_Led_Bits_Index;  
    subtype X_Led_Bits       is K2.X_Led_Bits;

    Led31 : constant X_Led_Bits_Index := K2.Led31;  
    Led30 : constant X_Led_Bits_Index := K2.Led30;  
    Led29 : constant X_Led_Bits_Index := K2.Led29;  
    Led28 : constant X_Led_Bits_Index := K2.Led28;  
    Led27 : constant X_Led_Bits_Index := K2.Led27;  
    Led26 : constant X_Led_Bits_Index := K2.Led26;  
    Led25 : constant X_Led_Bits_Index := K2.Led25;  
    Led24 : constant X_Led_Bits_Index := K2.Led24;  
    Led23 : constant X_Led_Bits_Index := K2.Led23;  
    Led22 : constant X_Led_Bits_Index := K2.Led22;  
    Led21 : constant X_Led_Bits_Index := K2.Led21;  
    Led20 : constant X_Led_Bits_Index := K2.Led20;  
    Led19 : constant X_Led_Bits_Index := K2.Led19;  
    Led18 : constant X_Led_Bits_Index := K2.Led18;  
    Led17 : constant X_Led_Bits_Index := K2.Led17;  
    Led16 : constant X_Led_Bits_Index := K2.Led16;  
    Led15 : constant X_Led_Bits_Index := K2.Led15;  
    Led14 : constant X_Led_Bits_Index := K2.Led14;  
    Led13 : constant X_Led_Bits_Index := K2.Led13;  
    Led12 : constant X_Led_Bits_Index := K2.Led12;  
    Led11 : constant X_Led_Bits_Index := K2.Led11;  
    Led10 : constant X_Led_Bits_Index := K2.Led10;  
    Led09 : constant X_Led_Bits_Index := K2.Led09;  
    Led08 : constant X_Led_Bits_Index := K2.Led08;  
    Led07 : constant X_Led_Bits_Index := K2.Led07;  
    Led06 : constant X_Led_Bits_Index := K2.Led06;  
    Led05 : constant X_Led_Bits_Index := K2.Led05;  
    Led04 : constant X_Led_Bits_Index := K2.Led04;  
    Led03 : constant X_Led_Bits_Index := K2.Led03;  
    Led02 : constant X_Led_Bits_Index := K2.Led02;  
    Led01 : constant X_Led_Bits_Index := K2.Led01;  
    Led00 : constant X_Led_Bits_Index := K2.Led00;

    None_X_Led_Bits : X_Led_Bits renames K2.None_X_Led_Bits;

    function "=" (A, B : X_Led_Bits_Index) return Boolean renames K2."=";  
    function "=" (A, B : X_Led_Bits)       return Boolean renames K2."=";

------------------------------------------------------------------------------
-- Led's On/Off
------------------------------------------------------------------------------

    subtype X_Led_Mode is K2.X_Led_Mode;

    Led_Mode_Off : constant X_Led_Mode := K2.Led_Mode_Off;  
    Led_Mode_On  : constant X_Led_Mode := K2.Led_Mode_On;

    None_X_Led_Mode : X_Led_Mode renames K2.None_X_Led_Mode;

    function "=" (A, B : X_Led_Mode) return Boolean renames K2."=";

------------------------------------------------------------------------------
-- X_Mapping_Status
------------------------------------------------------------------------------

    subtype X_Mapping_Status is K2.X_Mapping_Status;

    Mapping_Success : constant X_Mapping_Status := K2.Mapping_Success;  
    Mapping_Busy    : constant X_Mapping_Status := K2.Mapping_Busy;  
    Mapping_Failed  : constant X_Mapping_Status := K2.Mapping_Failed;

    function "=" (A, B : X_Mapping_Status) return Boolean renames K2."=";

------------------------------------------------------------------------------
-- Percentages
------------------------------------------------------------------------------

    subtype S_Percent is K2.S_Percent;  -- -100..+100

--\f

------------------------------------------------------------------------------
-- Xlbt_Key_Defs
------------------------------------------------------------------------------

    package Apl        renames Xlbt_Key_Defs_Apl;  
    package Arabic     renames Xlbt_Key_Defs_Arabic;  
    package Cyrillic   renames Xlbt_Key_Defs_Cyrillic;  
    package Greek      renames Xlbt_Key_Defs_Greek;  
    package Hebrew     renames Xlbt_Key_Defs_Hebrew;  
    package Katakana   renames Xlbt_Key_Defs_Katakana;  
    package Latin1     renames Xlbt_Key_Defs_Latin1;  
    package Latin2     renames Xlbt_Key_Defs_Latin2;  
    package Latin3     renames Xlbt_Key_Defs_Latin3;  
    package Latin4     renames Xlbt_Key_Defs_Latin4;  
    package Misc       renames Xlbt_Key_Defs_Misc;  
    package Publishing renames Xlbt_Key_Defs_Publishing;  
    package Special    renames Xlbt_Key_Defs_Special;  
    package Technical  renames Xlbt_Key_Defs_Technical;

--\f

------------------------------------------------------------------------------
-- Xlbt_Misc - M1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- 8-bit Boolean type
------------------------------------------------------------------------------

    subtype X_Boolean_Char is M1.X_Boolean_Char;

    False_Char : constant X_Boolean_Char := M1.False;  
    True_Char  : constant X_Boolean_Char := M1.True;

    function "=" (A, B : X_Boolean_Char) return Boolean renames M1."=";

    function To_Boolean   (B : X_Boolean_Char) return Boolean  
        renames M1.To_Boolean;  
    function From_Boolean (B : Boolean)        return X_Boolean_Char  
        renames M1.From_Boolean;

------------------------------------------------------------------------------
-- 32-bit Boolean type
------------------------------------------------------------------------------

    subtype X_Boolean_Long is M1.X_Boolean_Long;

    False_Long : constant X_Boolean_Long := M1.False;  
    True_Long  : constant X_Boolean_Long := M1.True;

    function "=" (A, B : X_Boolean_Long) return Boolean renames M1."=";

    function To_Boolean   (B : X_Boolean_Long) return Boolean  
        renames M1.To_Boolean;  
    function From_Boolean (B : Boolean)        return X_Boolean_Long  
        renames M1.From_Boolean;

------------------------------------------------------------------------------
-- Data returned on a client request.
------------------------------------------------------------------------------

    subtype X_Client_Data_Type is M1.X_Client_Data_Type;

    function "=" (A, B : X_Client_Data_Type) return Boolean renames M1."=";

------------------------------------------------------------------------------
----Conversion routines for those requiring access to Client_Message data under
--  its alternative interpretations.  (Ada is not capable of describing this
--  record type in any sensible fashion.)
------------------------------------------------------------------------------

    subtype S_Natural_0_19 is M1.S_Natural_0_19;  
    subtype S_Natural_0_9  is M1.S_Natural_0_9;  
    subtype S_Natural_0_4  is M1.S_Natural_0_4;

    function X_Client_Message_S_Char (Xe    : X_Client_Data_Type;  
                                      Index : S_Natural_0_19) return S_Char  
        renames M1.X_Client_Message_S_Char;
    ----Returns the Index'th S_Char from the data field.

    function X_Client_Message_S_Short (Xe    : X_Client_Data_Type;  
                                       Index : S_Natural_0_9) return S_Short  
        renames M1.X_Client_Message_S_Short;
    ----Returns the Index'th S_Short from the data field.

    function X_Client_Message_S_Long (Xe    : X_Client_Data_Type;  
                                      Index : S_Natural_0_4) return S_Long  
        renames M1.X_Client_Message_S_Long;
    ----Returns the Index'th S_Long from the data field.

    function X_Client_Message_U_Char (Xe    : X_Client_Data_Type;  
                                      Index : S_Natural_0_19) return U_Char  
        renames M1.X_Client_Message_U_Char;
    ----Returns the Index'th U_Char from the data field.

    function X_Client_Message_U_Short (Xe    : X_Client_Data_Type;  
                                       Index : S_Natural_0_9) return U_Short  
        renames M1.X_Client_Message_U_Short;
    ----Returns the Index'th U_Short from the data field.

    procedure X_Client_Message_S_Char (Xe    : in out X_Client_Data_Type;  
                                       Index :        S_Natural_0_19;  
                                       Data  :        S_Char)  
        renames M1.X_Client_Message_S_Char;
    ----Sets the Index'th S_Char from the data field.

    procedure X_Client_Message_S_Short (Xe    : in out X_Client_Data_Type;  
                                        Index :        S_Natural_0_9;  
                                        Data  :        S_Short)  
        renames M1.X_Client_Message_S_Short;
    ----Sets the Index'th S_Short from the data field.

    procedure X_Client_Message_S_Long (Xe    : in out X_Client_Data_Type;  
                                       Index :        S_Natural_0_4;  
                                       Data  :        S_Long)  
        renames M1.X_Client_Message_S_Long;
    ----Sets the Index'th S_Long from the data field.

    procedure X_Client_Message_U_Char (Xe    : in out X_Client_Data_Type;  
                                       Index :        S_Natural_0_19;  
                                       Data  :        U_Char)  
        renames M1.X_Client_Message_U_Char;
    ----Sets the Index'th U_Char from the data field.

    procedure X_Client_Message_U_Short (Xe    : in out X_Client_Data_Type;  
                                        Index :        S_Natural_0_9;  
                                        Data  :        U_Short)  
        renames M1.X_Client_Message_U_Short;
    ----Sets the Index'th U_Short from the data field.

------------------------------------------------------------------------------
-- X_Text_Elt
------------------------------------------------------------------------------

    subtype X_Text_Elt is M1.X_Text_Elt;

    function "=" (A, B : X_Text_Elt) return Boolean renames M1."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Pointer - P1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Button_Name.  Used as arguments to Grab_Button and as detail in
-- Button_Press and Button_Release events.  Not to be confused with button
-- masks.  Note that the 0'th is already defined in the masks as "Any_Button".
------------------------------------------------------------------------------

    subtype X_Button_Name is P1.X_Button_Name;

    Any_Button : constant X_Button_Name := P1.Any_Button;  
    Button_1   : constant X_Button_Name := P1.Button_1;  
    Button_2   : constant X_Button_Name := P1.Button_2;  
    Button_3   : constant X_Button_Name := P1.Button_3;  
    Button_4   : constant X_Button_Name := P1.Button_4;  
    Button_5   : constant X_Button_Name := P1.Button_5;

    None_X_Button_Name : X_Button_Name renames P1.None_X_Button_Name;

    function "=" (A, B : X_Button_Name) return Boolean renames P1."=";

------------------------------------------------------------------------------
-- X_Time_Coord - Data structure for X_Get_Motion_Events.
------------------------------------------------------------------------------

    subtype X_Time_Coord       is P1.X_Time_Coord;  
    subtype X_Time_Coord_Array is P1.X_Time_Coord_Array;  
    subtype X_Time_Coord_List  is P1.X_Time_Coord_List;

    None_X_Time_Coord      : X_Time_Coord renames P1.None_X_Time_Coord;  
    None_X_Time_Coord_List : X_Time_Coord_List  
        renames P1.None_X_Time_Coord_List;

    function "=" (A, B : X_Time_Coord)       return Boolean renames P1."=";  
    function "=" (A, B : X_Time_Coord_Array) return Boolean renames P1."=";  
    function "=" (A, B : X_Time_Coord_List)  return Boolean renames P1."=";

    procedure Free_X_Time_Coord_List (List : in out X_Time_Coord_List)  
        renames P1.Free_X_Time_Coord_List;

--\f

------------------------------------------------------------------------------
-- Xlbt_Region - R1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- Return values from X_Rect_In_Region()
--
--      Rectangle_Out
--      Rectangle_In
--      Rectangle_Part
------------------------------------------------------------------------------

    subtype X_Rect_In_Region_Returns is R1.X_Rect_In_Region_Returns;

    Rectangle_Out  : constant X_Rect_In_Region_Returns := R1.Rectangle_Out;  
    Rectangle_In   : constant X_Rect_In_Region_Returns := R1.Rectangle_In;  
    Rectangle_Part : constant X_Rect_In_Region_Returns := R1.Rectangle_Part;

    function "=" (A, B : X_Rect_In_Region_Returns) return Boolean  
        renames R1."=";

------------------------------------------------------------------------------
-- X_Region - clip regions
------------------------------------------------------------------------------

    subtype X_Region is R1.X_Region;

    None_X_Region : X_Region renames R1.None_X_Region;

    function "=" (A, B : X_Region) return Boolean renames R1."=";

    procedure Free_X_Region (Reg : in out X_Region) renames R1.Free_X_Region;

--\f

------------------------------------------------------------------------------
-- Xlbt_Request - R3
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Request_Code - X Protocol Request Codes
------------------------------------------------------------------------------

    subtype X_Request_Code is R3.X_Request_Code;

    function "=" (A, B : X_Request_Code) return Boolean renames R3."=";

    subtype Xrc is X_Request_Code;

    Invalid_Request            : constant Xrc := R3.Invalid_Request;  
    Create_Window              : constant Xrc := R3.Create_Window;  
    Change_Window_Attributes   : constant Xrc := R3.Change_Window_Attributes;  
    Get_Window_Attributes      : constant Xrc := R3.Get_Window_Attributes;  
    Destroy_Window             : constant Xrc := R3.Destroy_Window;  
    Destroy_Subwindows         : constant Xrc := R3.Destroy_Subwindows;  
    Change_Save_Set            : constant Xrc := R3.Change_Save_Set;  
    Reparent_Window            : constant Xrc := R3.Reparent_Window;  
    Map_Window                 : constant Xrc := R3.Map_Window;  
    Map_Subwindows             : constant Xrc := R3.Map_Subwindows;  
    Unmap_Window               : constant Xrc := R3.Unmap_Window;  
    Unmap_Subwindows           : constant Xrc := R3.Unmap_Subwindows;  
    Configure_Window           : constant Xrc := R3.Configure_Window;  
    Circulate_Window           : constant Xrc := R3.Circulate_Window;  
    Get_Geometry               : constant Xrc := R3.Get_Geometry;  
    Query_Tree                 : constant Xrc := R3.Query_Tree;  
    Intern_Atom                : constant Xrc := R3.Intern_Atom;  
    Get_Atom_Name              : constant Xrc := R3.Get_Atom_Name;  
    Change_Property            : constant Xrc := R3.Change_Property;  
    Delete_Property            : constant Xrc := R3.Delete_Property;  
    Get_Property               : constant Xrc := R3.Get_Property;  
    List_Properties            : constant Xrc := R3.List_Properties;  
    Set_Selection_Owner        : constant Xrc := R3.Set_Selection_Owner;  
    Get_Selection_Owner        : constant Xrc := R3.Get_Selection_Owner;  
    Convert_Selection          : constant Xrc := R3.Convert_Selection;  
    Send_Event                 : constant Xrc := R3.Send_Event;  
    Grab_Pointer               : constant Xrc := R3.Grab_Pointer;  
    Ungrab_Pointer             : constant Xrc := R3.Ungrab_Pointer;  
    Grab_Button                : constant Xrc := R3.Grab_Button;  
    Ungrab_Button              : constant Xrc := R3.Ungrab_Button;  
    Change_Active_Pointer_Grab : constant Xrc := R3.Change_Active_Pointer_Grab;  
    Grab_Keyboard              : constant Xrc := R3.Grab_Keyboard;  
    Ungrab_Keyboard            : constant Xrc := R3.Ungrab_Keyboard;  
    Grab_Key                   : constant Xrc := R3.Grab_Key;  
    Ungrab_Key                 : constant Xrc := R3.Ungrab_Key;  
    Allow_Events               : constant Xrc := R3.Allow_Events;  
    Grab_Server                : constant Xrc := R3.Grab_Server;  
    Ungrab_Server              : constant Xrc := R3.Ungrab_Server;  
    Query_Pointer              : constant Xrc := R3.Query_Pointer;  
    Get_Motion_Events          : constant Xrc := R3.Get_Motion_Events;  
    Translate_Coords           : constant Xrc := R3.Translate_Coords;  
    Warp_Pointer               : constant Xrc := R3.Warp_Pointer;  
    Set_Input_Focus            : constant Xrc := R3.Set_Input_Focus;  
    Get_Input_Focus            : constant Xrc := R3.Get_Input_Focus;  
    Query_Keymap               : constant Xrc := R3.Query_Keymap;  
    Open_Font                  : constant Xrc := R3.Open_Font;  
    Close_Font                 : constant Xrc := R3.Close_Font;  
    Query_Font                 : constant Xrc := R3.Query_Font;  
    Query_Text_Extents         : constant Xrc := R3.Query_Text_Extents;  
    List_Fonts                 : constant Xrc := R3.List_Fonts;  
    List_Fonts_With_Info       : constant Xrc := R3.List_Fonts_With_Info;  
    Set_Font_Path              : constant Xrc := R3.Set_Font_Path;  
    Get_Font_Path              : constant Xrc := R3.Get_Font_Path;  
    Create_Pixmap              : constant Xrc := R3.Create_Pixmap;  
    Free_Pixmap                : constant Xrc := R3.Free_Pixmap;  
    Create_Gc                  : constant Xrc := R3.Create_Gc;  
    Change_Gc                  : constant Xrc := R3.Change_Gc;  
    Copy_Gc                    : constant Xrc := R3.Copy_Gc;  
    Set_Dashes                 : constant Xrc := R3.Set_Dashes;  
    Set_Clip_Rectangles        : constant Xrc := R3.Set_Clip_Rectangles;  
    Free_Gc                    : constant Xrc := R3.Free_Gc;  
    Clear_Area                 : constant Xrc := R3.Clear_Area;  
    Copy_Area                  : constant Xrc := R3.Copy_Area;  
    Copy_Plane                 : constant Xrc := R3.Copy_Plane;  
    Poly_Point                 : constant Xrc := R3.Poly_Point;  
    Poly_Line                  : constant Xrc := R3.Poly_Line;  
    Poly_Segment               : constant Xrc := R3.Poly_Segment;  
    Poly_Rectangle             : constant Xrc := R3.Poly_Rectangle;  
    Poly_Arc                   : constant Xrc := R3.Poly_Arc;  
    Fill_Poly                  : constant Xrc := R3.Fill_Poly;  
    Poly_Fill_Rectangle        : constant Xrc := R3.Poly_Fill_Rectangle;  
    Poly_Fill_Arc              : constant Xrc := R3.Poly_Fill_Arc;  
    Put_Image                  : constant Xrc := R3.Put_Image;  
    Get_Image                  : constant Xrc := R3.Get_Image;  
    Poly_Text8                 : constant Xrc := R3.Poly_Text8;  
    Poly_Text16                : constant Xrc := R3.Poly_Text16;  
    Image_Text8                : constant Xrc := R3.Image_Text8;  
    Image_Text16               : constant Xrc := R3.Image_Text16;  
    Create_Colormap            : constant Xrc := R3.Create_Colormap;  
    Free_Colormap              : constant Xrc := R3.Free_Colormap;  
    Copy_Colormap_And_Free     : constant Xrc := R3.Copy_Colormap_And_Free;  
    Install_Colormap           : constant Xrc := R3.Install_Colormap;  
    Uninstall_Colormap         : constant Xrc := R3.Uninstall_Colormap;  
    List_Installed_Colormaps   : constant Xrc := R3.List_Installed_Colormaps;  
    Alloc_Color                : constant Xrc := R3.Alloc_Color;  
    Alloc_Named_Color          : constant Xrc := R3.Alloc_Named_Color;  
    Alloc_Color_Cells          : constant Xrc := R3.Alloc_Color_Cells;  
    Alloc_Color_Planes         : constant Xrc := R3.Alloc_Color_Planes;  
    Free_Colors                : constant Xrc := R3.Free_Colors;  
    Store_Colors               : constant Xrc := R3.Store_Colors;  
    Store_Named_Color          : constant Xrc := R3.Store_Named_Color;  
    Query_Colors               : constant Xrc := R3.Query_Colors;  
    Lookup_Color               : constant Xrc := R3.Lookup_Color;  
    Create_Cursor              : constant Xrc := R3.Create_Cursor;  
    Create_Glyph_Cursor        : constant Xrc := R3.Create_Glyph_Cursor;  
    Free_Cursor                : constant Xrc := R3.Free_Cursor;  
    Recolor_Cursor             : constant Xrc := R3.Recolor_Cursor;  
    Query_Best_Size            : constant Xrc := R3.Query_Best_Size;  
    Query_Extension            : constant Xrc := R3.Query_Extension;  
    List_Extensions            : constant Xrc := R3.List_Extensions;  
    Change_Keyboard_Mapping    : constant Xrc := R3.Change_Keyboard_Mapping;  
    Get_Keyboard_Mapping       : constant Xrc := R3.Get_Keyboard_Mapping;  
    Change_Keyboard_Control    : constant Xrc := R3.Change_Keyboard_Control;  
    Get_Keyboard_Control       : constant Xrc := R3.Get_Keyboard_Control;  
    Bell                       : constant Xrc := R3.Bell;  
    Change_Pointer_Control     : constant Xrc := R3.Change_Pointer_Control;  
    Get_Pointer_Control        : constant Xrc := R3.Get_Pointer_Control;  
    Set_Screen_Saver           : constant Xrc := R3.Set_Screen_Saver;  
    Get_Screen_Saver           : constant Xrc := R3.Get_Screen_Saver;  
    Change_Hosts               : constant Xrc := R3.Change_Hosts;  
    List_Hosts                 : constant Xrc := R3.List_Hosts;  
    Set_Access_Control         : constant Xrc := R3.Set_Access_Control;  
    Set_Close_Down_Mode        : constant Xrc := R3.Set_Close_Down_Mode;  
    Kill_Client                : constant Xrc := R3.Kill_Client;  
    Rotate_Properties          : constant Xrc := R3.Rotate_Properties;  
    Force_Screen_Saver         : constant Xrc := R3.Force_Screen_Saver;  
    Set_Pointer_Mapping        : constant Xrc := R3.Set_Pointer_Mapping;  
    Get_Pointer_Mapping        : constant Xrc := R3.Get_Pointer_Mapping;  
    Set_Modifier_Mapping       : constant Xrc := R3.Set_Modifier_Mapping;  
    Get_Modifier_Mapping       : constant Xrc := R3.Get_Modifier_Mapping;  
    No_Operation               : constant Xrc := R3.No_Operation;

    None_X_Request_Code : X_Request_Code renames R3.None_X_Request_Code;

------------------------------------------------------------------------------
-- X Protocol Requests - Only the names are visible.  This makes compilation
-- much much faster for modules that do not require the default Ada operations,
-- eg. "=".
------------------------------------------------------------------------------

    subtype X_Alloc_Color_Request          is R3.X_Alloc_Color_Request;  
    subtype X_Alloc_Color_Cells_Request    is R3.X_Alloc_Color_Cells_Request;  
    subtype X_Alloc_Color_Planes_Request   is R3.X_Alloc_Color_Planes_Request;  
    subtype X_Alloc_Named_Color_Request    is R3.X_Alloc_Named_Color_Request;  
    subtype X_Allow_Events_Request         is R3.X_Allow_Events_Request;  
    subtype X_Bell_Request                 is R3.X_Bell_Request;  
    subtype X_Change_Active_Pointer_Grab_Request  
        is R3.X_Change_Active_Pointer_Grab_Request;  
    subtype X_Change_Gc_Request            is R3.X_Change_Gc_Request;  
    subtype X_Change_Hosts_Request         is R3.X_Change_Hosts_Request;  
    subtype X_Change_Keyboard_Control_Request  
        is R3.X_Change_Keyboard_Control_Request;  
    subtype X_Change_Keyboard_Mapping_Request  
        is R3.X_Change_Keyboard_Mapping_Request;  
    subtype X_Change_Pointer_Control_Request  
        is R3.X_Change_Pointer_Control_Request;  
    subtype X_Change_Property_Request      is R3.X_Change_Property_Request;  
    subtype X_Change_Save_Set_Request      is R3.X_Change_Save_Set_Request;  
    subtype X_Change_Window_Attributes_Request  
        is R3.X_Change_Window_Attributes_Request;  
    subtype X_Circulate_Window_Request     is R3.X_Circulate_Window_Request;  
    subtype X_Clear_Area_Request           is R3.X_Clear_Area_Request;  
    subtype X_Close_Font_Request           is R3.X_Close_Font_Request;  
    subtype X_Configure_Window_Request     is R3.X_Configure_Window_Request;  
    subtype X_Convert_Selection_Request    is R3.X_Convert_Selection_Request;  
    subtype X_Copy_Area_Request            is R3.X_Copy_Area_Request;  
    subtype X_Copy_Colormap_And_Free_Request  
        is R3.X_Copy_Colormap_And_Free_Request;  
    subtype X_Copy_Gc_Request              is R3.X_Copy_Gc_Request;  
    subtype X_Copy_Plane_Request           is R3.X_Copy_Plane_Request;  
    subtype X_Create_Colormap_Request      is R3.X_Create_Colormap_Request;  
    subtype X_Create_Cursor_Request        is R3.X_Create_Cursor_Request;  
    subtype X_Create_Gc_Request            is R3.X_Create_Gc_Request;  
    subtype X_Create_Glyph_Cursor_Request  is R3.X_Create_Glyph_Cursor_Request;  
    subtype X_Create_Pixmap_Request        is R3.X_Create_Pixmap_Request;  
    subtype X_Create_Window_Request        is R3.X_Create_Window_Request;  
    subtype X_Delete_Property_Request      is R3.X_Delete_Property_Request;  
    subtype X_Destroy_Subwindows_Request   is R3.X_Destroy_Subwindows_Request;  
    subtype X_Destroy_Window_Request       is R3.X_Destroy_Window_Request;  
    subtype X_Fill_Poly_Request            is R3.X_Fill_Poly_Request;  
    subtype X_Force_Screen_Saver_Request   is R3.X_Force_Screen_Saver_Request;  
    subtype X_Free_Colormap_Request        is R3.X_Free_Colormap_Request;  
    subtype X_Free_Colors_Request          is R3.X_Free_Colors_Request;  
    subtype X_Free_Cursor_Request          is R3.X_Free_Cursor_Request;  
    subtype X_Free_Gc_Request              is R3.X_Free_Gc_Request;  
    subtype X_Free_Pixmap_Request          is R3.X_Free_Pixmap_Request;  
    subtype X_Get_Atom_Name_Request        is R3.X_Get_Atom_Name_Request;  
    subtype X_Get_Font_Path_Request        is R3.X_Get_Font_Path_Request;  
    subtype X_Get_Geometry_Request         is R3.X_Get_Geometry_Request;  
    subtype X_Get_Image_Request            is R3.X_Get_Image_Request;  
    subtype X_Get_Input_Focus_Request      is R3.X_Get_Input_Focus_Request;  
    subtype X_Get_Keyboard_Control_Request is R3.X_Get_Keyboard_Control_Request;  
    subtype X_Get_Keyboard_Mapping_Request is R3.X_Get_Keyboard_Mapping_Request;  
    subtype X_Get_Modifier_Mapping_Request is R3.X_Get_Modifier_Mapping_Request;  
    subtype X_Get_Motion_Events_Request    is R3.X_Get_Motion_Events_Request;  
    subtype X_Get_Pointer_Control_Request  is R3.X_Get_Pointer_Control_Request;  
    subtype X_Get_Pointer_Mapping_Request  is R3.X_Get_Pointer_Mapping_Request;  
    subtype X_Get_Property_Request         is R3.X_Get_Property_Request;  
    subtype X_Get_Screen_Saver_Request     is R3.X_Get_Screen_Saver_Request;  
    subtype X_Get_Selection_Owner_Request  is R3.X_Get_Selection_Owner_Request;  
    subtype X_Get_Window_Attributes_Request  
        is R3.X_Get_Window_Attributes_Request;  
    subtype X_Grab_Button_Request          is R3.X_Grab_Button_Request;  
    subtype X_Grab_Key_Request             is R3.X_Grab_Key_Request;  
    subtype X_Grab_Keyboard_Request        is R3.X_Grab_Keyboard_Request;  
    subtype X_Grab_Pointer_Request         is R3.X_Grab_Pointer_Request;  
    subtype X_Grab_Server_Request          is R3.X_Grab_Server_Request;  
    subtype X_Image_Text16_Request         is R3.X_Image_Text16_Request;  
    subtype X_Image_Text8_Request          is R3.X_Image_Text8_Request;  
    subtype X_Install_Colormap_Request     is R3.X_Install_Colormap_Request;  
    subtype X_Intern_Atom_Request          is R3.X_Intern_Atom_Request;  
    subtype X_Kill_Client_Request          is R3.X_Kill_Client_Request;  
    subtype X_List_Extensions_Request      is R3.X_List_Extensions_Request;  
    subtype X_List_Fonts_Request           is R3.X_List_Fonts_Request;  
    subtype X_List_Fonts_With_Info_Request is R3.X_List_Fonts_With_Info_Request;  
    subtype X_List_Hosts_Request           is R3.X_List_Hosts_Request;  
    subtype X_List_Installed_Colormaps_Request  
        is R3.X_List_Installed_Colormaps_Request;  
    subtype X_List_Properties_Request      is R3.X_List_Properties_Request;  
    subtype X_Lookup_Color_Request         is R3.X_Lookup_Color_Request;  
    subtype X_Map_Subwindows_Request       is R3.X_Map_Subwindows_Request;  
    subtype X_Map_Window_Request           is R3.X_Map_Window_Request;  
    subtype X_No_Operation_Request         is R3.X_No_Operation_Request;  
    subtype X_Open_Font_Request            is R3.X_Open_Font_Request;  
    subtype X_Poly_Arc_Request             is R3.X_Poly_Arc_Request;  
    subtype X_Poly_Fill_Arc_Request        is R3.X_Poly_Fill_Arc_Request;  
    subtype X_Poly_Fill_Rectangle_Request  is R3.X_Poly_Fill_Rectangle_Request;  
    subtype X_Poly_Line_Request            is R3.X_Poly_Line_Request;  
    subtype X_Poly_Point_Request           is R3.X_Poly_Point_Request;  
    subtype X_Poly_Rectangle_Request       is R3.X_Poly_Rectangle_Request;  
    subtype X_Poly_Segment_Request         is R3.X_Poly_Segment_Request;  
    subtype X_Poly_Text16_Request          is R3.X_Poly_Text16_Request;  
    subtype X_Poly_Text8_Request           is R3.X_Poly_Text8_Request;  
    subtype X_Put_Image_Request            is R3.X_Put_Image_Request;  
    subtype X_Query_Best_Size_Request      is R3.X_Query_Best_Size_Request;  
    subtype X_Query_Colors_Request         is R3.X_Query_Colors_Request;  
    subtype X_Query_Extension_Request      is R3.X_Query_Extension_Request;  
    subtype X_Query_Font_Request           is R3.X_Query_Font_Request;  
    subtype X_Query_Keymap_Request         is R3.X_Query_Keymap_Request;  
    subtype X_Query_Pointer_Request        is R3.X_Query_Pointer_Request;  
    subtype X_Query_Text_Extents_Request   is R3.X_Query_Text_Extents_Request;  
    subtype X_Query_Tree_Request           is R3.X_Query_Tree_Request;  
    subtype X_Recolor_Cursor_Request       is R3.X_Recolor_Cursor_Request;  
    subtype X_Reparent_Window_Request      is R3.X_Reparent_Window_Request;  
    subtype X_Rotate_Properties_Request    is R3.X_Rotate_Properties_Request;  
    subtype X_Send_Event_Request           is R3.X_Send_Event_Request;  
    subtype X_Set_Access_Control_Request   is R3.X_Set_Access_Control_Request;  
    subtype X_Set_Clip_Rectangles_Request  is R3.X_Set_Clip_Rectangles_Request;  
    subtype X_Set_Close_Down_Mode_Request  is R3.X_Set_Close_Down_Mode_Request;  
    subtype X_Set_Dashes_Request           is R3.X_Set_Dashes_Request;  
    subtype X_Set_Font_Path_Request        is R3.X_Set_Font_Path_Request;  
    subtype X_Set_Input_Focus_Request      is R3.X_Set_Input_Focus_Request;  
    subtype X_Set_Modifier_Mapping_Request is R3.X_Set_Modifier_Mapping_Request;  
    subtype X_Set_Pointer_Mapping_Request  is R3.X_Set_Pointer_Mapping_Request;  
    subtype X_Set_Screen_Saver_Request     is R3.X_Set_Screen_Saver_Request;  
    subtype X_Set_Selection_Owner_Request  is R3.X_Set_Selection_Owner_Request;  
    subtype X_Store_Colors_Request         is R3.X_Store_Colors_Request;  
    subtype X_Color_Item                   is R3.X_Color_Item;  
    subtype X_Store_Named_Color_Request    is R3.X_Store_Named_Color_Request;  
    subtype X_Translate_Coords_Request     is R3.X_Translate_Coords_Request;  
    subtype X_Ungrab_Button_Request        is R3.X_Ungrab_Button_Request;  
    subtype X_Ungrab_Key_Request           is R3.X_Ungrab_Key_Request;  
    subtype X_Ungrab_Keyboard_Request      is R3.X_Ungrab_Keyboard_Request;  
    subtype X_Ungrab_Pointer_Request       is R3.X_Ungrab_Pointer_Request;  
    subtype X_Ungrab_Server_Request        is R3.X_Ungrab_Server_Request;  
    subtype X_Uninstall_Colormap_Request   is R3.X_Uninstall_Colormap_Request;  
    subtype X_Unmap_Subwindows_Request     is R3.X_Unmap_Subwindows_Request;  
    subtype X_Unmap_Window_Request         is R3.X_Unmap_Window_Request;  
    subtype X_Warp_Pointer_Request         is R3.X_Warp_Pointer_Request;

--\f

------------------------------------------------------------------------------
-- Xlbt_Rm - R4
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- Misc. X Resource Manager Types
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Rm_Dims
------------------------------------------------------------------------------

    subtype X_Rm_Dims is R4.X_Rm_Dims;

    function "=" (A, B : X_Rm_Dims) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Pos
------------------------------------------------------------------------------

    subtype X_Rm_Pos is R4.X_Rm_Pos;

    function "=" (A, B : X_Rm_Pos) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Geometry
------------------------------------------------------------------------------

    subtype X_Rm_Geometry is R4.X_Rm_Geometry;

    function "=" (A, B : X_Rm_Geometry) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Option_Kind
--
--      X_Rm_Option_No_Arg      - Value is specified in Option_Desc.value
--      X_Rm_Option_Is_Arg      - Value is the option string itself
--      X_Rm_Option_Sticky_Arg  - Value is text immediately following option
--      X_Rm_Option_Sep_Arg     - Value is next argument in arg_v
--      X_Rm_Option_Res_Arg     - Resource and value in next arg in arg_v
--      X_Rm_Option_Skip_Arg    - Ignore option and next argument in arg_v
--      X_Rm_Option_Skip_Line   - Ignore option and the rest of arg_v
------------------------------------------------------------------------------

    subtype X_Rm_Option_Kind is R4.X_Rm_Option_Kind;

    subtype Xrom is X_Rm_Option_Kind;

    X_Rm_Option_No_Arg      : constant Xrom := R4.X_Rm_Option_No_Arg;  
    X_Rm_Option_Is_Arg      : constant Xrom := R4.X_Rm_Option_Is_Arg;  
    X_Rm_Option_Sticky_Arg  : constant Xrom := R4.X_Rm_Option_Sticky_Arg;  
    X_Rm_Option_Sep_Arg     : constant Xrom := R4.X_Rm_Option_Sep_Arg;  
    X_Rm_Option_Res_Arg     : constant Xrom := R4.X_Rm_Option_Res_Arg;  
    X_Rm_Option_Skip_Arg    : constant Xrom := R4.X_Rm_Option_Skip_Arg;  
    X_Rm_Option_Skip_Line   : constant Xrom := R4.X_Rm_Option_Skip_Line;  
    X_Rm_Option_Skip_N_Args : constant Xrom := R4.X_Rm_Option_Skip_N_Args;

    None_X_Rm_Option_Kind : X_Rm_Option_Kind renames R4.None_X_Rm_Option_Kind;

    function "=" (A, B : X_Rm_Option_Kind) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Option_Desc - Command line option mapping to resource entries
------------------------------------------------------------------------------

    subtype X_Rm_Option_Desc_Array is R4.X_Rm_Option_Desc_Array;

------------------------------------------------------------------------------
-- X_Rm_Status - Status of various RM operations; used when X_Status is not
--               sufficient.
--
--    Rm_Successful    -- Fully successful.
--    Rm_Had_Errors    -- Had errors, recovery has been attempted.
--    Rm_Failed        -- Had errors, no further recovery was possible.
------------------------------------------------------------------------------

    subtype X_Rm_Status is R4.X_Rm_Status;

    Rm_Successful : constant X_Rm_Status := R4.Rm_Successful;  
    Rm_Had_Errors : constant X_Rm_Status := R4.Rm_Had_Errors;  
    Rm_Failed     : constant X_Rm_Status := R4.Rm_Failed;
--
    function "=" (A, B : X_Rm_Status) return Boolean renames R4."=";  
    function ">" (A, B : X_Rm_Status) return Boolean renames R4.">";  
    function "<" (A, B : X_Rm_Status) return Boolean renames R4."<";

------------------------------------------------------------------------------
-- X Resource Manager Quark/String Types
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Rm_Quark
------------------------------------------------------------------------------

    subtype X_Rm_Quark       is R4.X_Rm_Quark;  
    subtype X_Rm_Quark_Array is R4.X_Rm_Quark_Array;

    None_X_Rm_Quark : X_Rm_Quark renames R4.None_X_Rm_Quark;

    function "=" (A, B : X_Rm_Quark)       return Boolean renames R4."=";  
    function "=" (A, B : X_Rm_Quark_Array) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Class
------------------------------------------------------------------------------

    subtype X_Rm_Class       is R4.X_Rm_Class;  
    subtype X_Rm_Class_Array is R4.X_Rm_Class_Array;  
    subtype X_Rm_Class_List  is R4.X_Rm_Class_List;

    None_X_Rm_Class      : X_Rm_Class      renames R4.None_X_Rm_Class;  
    None_X_Rm_Class_List : X_Rm_Class_List renames R4.None_X_Rm_Class_List;

    function "=" (A, B : X_Rm_Class)       return Boolean renames R4."=";  
    function "=" (A, B : X_Rm_Class_Array) return Boolean renames R4."=";

    procedure Free_X_Rm_Class_List (List : in out X_Rm_Class_List)  
        renames R4.Free_X_Rm_Class_List;

------------------------------------------------------------------------------
-- X_Rm_Name
------------------------------------------------------------------------------

    subtype X_Rm_Name       is R4.X_Rm_Name;  
    subtype X_Rm_Name_Array is R4.X_Rm_Name_Array;  
    subtype X_Rm_Name_List  is R4.X_Rm_Name_List;

    None_X_Rm_Name      : X_Rm_Name      renames R4.None_X_Rm_Name;  
    None_X_Rm_Name_List : X_Rm_Name_List renames R4.None_X_Rm_Name_List;

    function "=" (A, B : X_Rm_Name)       return Boolean renames R4."=";  
    function "=" (A, B : X_Rm_Name_Array) return Boolean renames R4."=";

    procedure Free_X_Rm_Name_List (List : in out X_Rm_Name_List)  
        renames R4.Free_X_Rm_Name_List;

------------------------------------------------------------------------------
-- X_Rm_Representation
------------------------------------------------------------------------------

    subtype X_Rm_Representation       is R4.X_Rm_Representation;  
    subtype X_Rm_Representation_Array is R4.X_Rm_Representation_Array;  
    subtype X_Rm_Representation_List  is R4.X_Rm_Representation_List;

    None_X_Rm_Representation      : X_Rm_Representation  
        renames R4.None_X_Rm_Representation;  
    None_X_Rm_Representation_List : X_Rm_Representation_List  
        renames R4.None_X_Rm_Representation_List;

    function "=" (A, B : X_Rm_Representation) return Boolean renames R4."=";  
    function "=" (A, B : X_Rm_Representation_Array) return Boolean  
        renames R4."=";

    procedure Free_X_Rm_Representation_List  
                 (List : in out X_Rm_Representation_List)  
        renames R4.Free_X_Rm_Representation_List;

------------------------------------------------------------------------------
-- X Resource Manager Databases and Database Support Types
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Rm_Database - A record (possibly) containing a Hash Bucket pointer.
------------------------------------------------------------------------------

    subtype X_Rm_Database is R4.X_Rm_Database;

    None_X_Rm_Database : X_Rm_Database renames R4.None_X_Rm_Database;

    function "=" (A, B : X_Rm_Database) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Value
------------------------------------------------------------------------------

    subtype X_Rm_Value             is R4.X_Rm_Value;  
    subtype X_Rm_Universal_Pointer is R4.X_Rm_Universal_Pointer;

    None_X_Rm_Value             : X_Rm_Value             := R4.None_X_Rm_Value;  
    None_X_Rm_Universal_Pointer : X_Rm_Universal_Pointer :=  
       R4.None_X_Rm_Universal_Pointer;

    function "=" (A, B : X_Rm_Value)             return Boolean renames R4."=";  
    function "=" (A, B : X_Rm_Universal_Pointer) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Value_Kind - Explicit types of X_Rm_Value
------------------------------------------------------------------------------

    subtype X_Rm_Value_Kind is R4.X_Rm_Value_Kind;

    subtype Xrvk is X_Rm_Value_Kind;

    Is_None                   : constant Xrvk := R4.Is_None;  
    Is_X_Rm_File_Type         : constant Xrvk := R4.Is_X_Rm_File_Type;  
    Is_Boolean                : constant Xrvk := R4.Is_Boolean;  
    Is_Float                  : constant Xrvk := R4.Is_Float;  
    Is_U_Char_List            : constant Xrvk := R4.Is_U_Char_List;  
    Is_U_Char                 : constant Xrvk := R4.Is_U_Char;  
    Is_U_Short                : constant Xrvk := R4.Is_U_Short;  
    Is_S_Char                 : constant Xrvk := R4.Is_S_Char;  
    Is_S_Short                : constant Xrvk := R4.Is_S_Short;  
    Is_S_Long                 : constant Xrvk := R4.Is_S_Long;  
    Is_X_String7_Pointer      : constant Xrvk := R4.Is_X_String7_Pointer;  
    Is_X_String_Pointer       : constant Xrvk := R4.Is_X_String_Pointer;  
    Is_X_String16_Pointer     : constant Xrvk := R4.Is_X_String16_Pointer;  
    Is_X_Universal_Pointer    : constant Xrvk := R4.Is_X_Universal_Pointer;  
    Is_X_Atom                 : constant Xrvk := R4.Is_X_Atom;  
    Is_X_Color                : constant Xrvk := R4.Is_X_Color;  
    Is_X_Colormap             : constant Xrvk := R4.Is_X_Colormap;  
    Is_X_Cursor               : constant Xrvk := R4.Is_X_Cursor;  
    Is_X_Display              : constant Xrvk := R4.Is_X_Display;  
    Is_X_Font                 : constant Xrvk := R4.Is_X_Font;  
    Is_X_Font_Struct          : constant Xrvk := R4.Is_X_Font_Struct;  
    Is_X_Initial_Window_State : constant Xrvk := R4.Is_X_Initial_Window_State;  
    Is_X_Pixel                : constant Xrvk := R4.Is_X_Pixel;  
    Is_X_Pixmap               : constant Xrvk := R4.Is_X_Pixmap;  
    Is_X_Screen               : constant Xrvk := R4.Is_X_Screen;  
    Is_X_Visual               : constant Xrvk := R4.Is_X_Visual;  
    Is_X_Window               : constant Xrvk := R4.Is_X_Window;

    function "=" (A, B : X_Rm_Value_Kind) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X Resource Manager Search Lists
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Rm_Binding
--
--      X_Rm_Bind_Tightly
--      X_Rm_Bind_Loosely
------------------------------------------------------------------------------

    subtype X_Rm_Binding is R4.X_Rm_Binding;

    X_Rm_Bind_Tightly : constant X_Rm_Binding := R4.X_Rm_Bind_Tightly;  
    X_Rm_Bind_Loosely : constant X_Rm_Binding := R4.X_Rm_Bind_Loosely;

    subtype X_Rm_Binding_Array is R4.X_Rm_Binding_Array;

    function "=" (A, B : X_Rm_Binding) return Boolean renames R4."=";

------------------------------------------------------------------------------
-- X_Rm_Search_List - a series of related Hash_Tables
------------------------------------------------------------------------------

    subtype X_Rm_Search_List is R4.X_Rm_Search_List;

    function "=" (A, B : X_Rm_Search_List) return Boolean renames R4."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Screen_Saver - S1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Screen_Saver_Blanking
------------------------------------------------------------------------------

    subtype X_Screen_Saver_Blanking is S1.X_Screen_Saver_Blanking;

    Dont_Prefer_Blanking : constant X_Screen_Saver_Blanking :=  
       S1.Dont_Prefer_Blanking;  
    Prefer_Blanking : constant X_Screen_Saver_Blanking := S1.Prefer_Blanking;  
    Default_Blanking : constant X_Screen_Saver_Blanking := S1.Default_Blanking;

    None_X_Screen_Saver_Blanking : X_Screen_Saver_Blanking  
        renames S1.None_X_Screen_Saver_Blanking;

    function "=" (A, B : X_Screen_Saver_Blanking) return Boolean renames S1."=";

------------------------------------------------------------------------------
-- X_Screen_Saver_Exposures
------------------------------------------------------------------------------

    subtype X_Screen_Saver_Exposures is S1.X_Screen_Saver_Exposures;

    Dont_Allow_Exposures : constant X_Screen_Saver_Exposures :=  
       S1.Dont_Allow_Exposures;  
    Allow_Exposures : constant X_Screen_Saver_Exposures := S1.Allow_Exposures;  
    Default_Exposures : constant X_Screen_Saver_Exposures :=  
       S1.Default_Exposures;

    None_X_Screen_Saver_Exposures : X_Screen_Saver_Exposures  
        renames S1.None_X_Screen_Saver_Exposures;

    function "=" (A, B : X_Screen_Saver_Exposures) return Boolean  
        renames S1."=";

------------------------------------------------------------------------------
-- X_Screen_Saver_Mode - for Force_Screen_Saver
------------------------------------------------------------------------------

    subtype X_Screen_Saver_Mode is S1.X_Screen_Saver_Mode;

    Screen_Saver_Reset  : constant X_Screen_Saver_Mode :=  
       S1.Screen_Saver_Reset;      -- Turn it off
    Screen_Saver_Active : constant X_Screen_Saver_Mode :=  
       S1.Screen_Saver_Active;    -- Turn it on

    function "=" (A, B : X_Screen_Saver_Mode) return Boolean renames S1."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_String - S3
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Character8 - 8-bit Characters
------------------------------------------------------------------------------

    subtype X_Character is S3.X_Character;

    function "=" (A, B : X_Character) return Boolean renames S3."=";

------------------------------------------------------------------------------
-- X_String_Pointer
------------------------------------------------------------------------------

    subtype X_String         is S3.X_String;  
    subtype X_String_Pointer is S3.X_String_Pointer;

    procedure Free_X_String_Pointer (String : in out X_String_Pointer)  
        renames S3.Free_X_String_Pointer;

    None_X_String_Pointer : X_String_Pointer renames S3.None_X_String_Pointer;

    function "=" (A, B : X_String)         return Boolean renames S3."=";  
    function "=" (A, B : X_String_Pointer) return Boolean renames S3."=";

------------------------------------------------------------------------------
-- X_String_Pointer_List
-- 8-bit String Lists
------------------------------------------------------------------------------

    subtype X_String_Pointer_Array is S3.X_String_Pointer_Array;  
    subtype X_String_Pointer_List  is S3.X_String_Pointer_List;

    None_X_String_Pointer_List : X_String_Pointer_List  
        renames S3.None_X_String_Pointer_List;

    function "=" (A, B : X_String_Pointer_Array) return Boolean renames S3."=";  
    function "=" (A, B : X_String_Pointer_List)  return Boolean renames S3."=";

    procedure Free_X_String_Pointer_Array (List : in out X_String_Pointer_Array)  
        renames S3.Free_X_String_Pointer_Array;

    procedure Free_X_String_Pointer_List (List : in out X_String_Pointer_List)  
        renames S3.Free_X_String_Pointer_List;

--\f

------------------------------------------------------------------------------
-- Xlbt_String16 - S4
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Character16
------------------------------------------------------------------------------

    subtype X_Character16 is S4.X_Character16;

    function "=" (A, B : X_Character16) return Boolean renames S4."=";

------------------------------------------------------------------------------
-- X_String16
-- 16-bit character string types
------------------------------------------------------------------------------

    subtype X_String16         is S4.X_String16;  
    subtype X_String16_Pointer is S4.X_String16_Pointer;

    function "=" (A, B : X_String16)         return Boolean renames S4."=";  
    function "=" (A, B : X_String16_Pointer) return Boolean renames S4."=";

    procedure Free_X_String16_Pointer (String : in out X_String16_Pointer)  
        renames S4.Free_X_String16_Pointer;

------------------------------------------------------------------------------
-- 7/8-bit String Conversions
------------------------------------------------------------------------------

    subtype X_Translation_Array is S3.X_Translation_Array;

    function "=" (A, B : X_Translation_Array) return Boolean renames S3."=";

    function To_X_String (Str7 : String) return X_String renames S3.To_X_String;

    function To_String (Str8 : X_String) return String renames S3.To_String;

    function To_String (Str8  : X_String;  
                        Trans : X_Translation_Array) return String  
        renames S3.To_String;

    procedure To_X_String (Str8 : out X_String;  
                           Str7 :     String) renames S3.To_X_String;

    procedure To_String (Str7 : out String;  
                         Str8 :     X_String) renames S3.To_String;

    procedure To_String (Str7  : out String;  
                         Str8  :     X_String;  
                         Trans :     X_Translation_Array) renames S3.To_String;

--\f

------------------------------------------------------------------------------
-- Xlbt_String7 - S2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_String7_Pointer
------------------------------------------------------------------------------

    subtype X_String7_Pointer is S2.X_String7_Pointer;

    procedure Free_X_String7_Pointer (String : in out X_String7_Pointer)  
        renames S2.Free_X_String7_Pointer;

    None_X_String7_Pointer : X_String7_Pointer  
        renames S2.None_X_String7_Pointer;

    function "=" (A, B : X_String7_Pointer) return Boolean renames S2."=";

--\f

------------------------------------------------------------------------------
-- X_Text_Item
------------------------------------------------------------------------------

    subtype X_Text_Item_Array is T1.X_Text_Item_Array;  
    subtype X_Text_Item_List  is T1.X_Text_Item_List;

    None_X_Text_Item_List : X_Text_Item_List renames T1.None_X_Text_Item_List;

    procedure Free_X_Text_Item_List (List : in out X_Text_Item_List)  
        renames T1.Free_X_Text_Item_List;

------------------------------------------------------------------------------
-- X_Text_Item16
------------------------------------------------------------------------------

    subtype X_Text_Item16_Array is T1.X_Text_Item16_Array;  
    subtype X_Text_Item16_List  is T1.X_Text_Item16_List;

    None_X_Text_Item16_List : X_Text_Item16_List  
        renames T1.None_X_Text_Item16_List;

    procedure Free_X_Text_Item16_List (List : in out X_Text_Item16_List)  
        renames T1.Free_X_Text_Item16_List;

--\f

------------------------------------------------------------------------------
-- Xlbt_Visual - V1
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Display_Class - used in opening the connection
-- Note that the statically allocated ones are even numbered and the
-- dynamically changeable ones are odd numbered
------------------------------------------------------------------------------

    subtype X_Display_Class is V1.X_Display_Class;

    Static_Gray  : constant X_Display_Class := V1.Static_Gray;  
    Grayscale    : constant X_Display_Class := V1.Grayscale;  
    Static_Color : constant X_Display_Class := V1.Static_Color;  
    Pseudo_Color : constant X_Display_Class := V1.Pseudo_Color;  
    True_Color   : constant X_Display_Class := V1.True_Color;  
    Direct_Color : constant X_Display_Class := V1.Direct_Color;

    None_X_Display_Class : X_Display_Class renames V1.None_X_Display_Class;

    function "=" (A, B : X_Display_Class) return Boolean renames V1."=";

------------------------------------------------------------------------------
-- Visual structure; contains information about color mapping possibilities.
--
--  Copy_From_Parent_Visual - Special X_Visual passed to Create_Window to
--                          indicate "copy it from the parent window"
------------------------------------------------------------------------------

    subtype X_Visual      is V1.X_Visual;  
    subtype X_Visual_List is V1.X_Visual_List;

    None_X_Visual           : X_Visual      renames V1.None_X_Visual;  
    None_X_Visual_List      : X_Visual_List renames V1.None_X_Visual_List;  
    Copy_From_Parent_Visual : X_Visual      renames V1.Copy_From_Parent_Visual;

    function "=" (A, B : X_Visual)      return Boolean renames V1."=";  
    function "=" (A, B : X_Visual_List) return Boolean renames V1."=";

    procedure Free_X_Visual (Visual : in out X_Visual) renames V1.Free_X_Visual;  
    procedure Free_X_Visual_List (List : in out X_Visual_List)  
        renames V1.Free_X_Visual_List;

------------------------------------------------------------------------------
-- X_Visual_Info - Visual Information
--
-- Information used by the visual utility routines to find desired visual
-- type from the many visuals a display may support.
------------------------------------------------------------------------------

    subtype X_Visual_Info      is V1.X_Visual_Info;  
    subtype X_Visual_Info_List is V1.X_Visual_Info_List;

    None_X_Visual_Info      : X_Visual_Info renames V1.None_X_Visual_Info;  
    None_X_Visual_Info_List : X_Visual_Info_List  
        renames V1.None_X_Visual_Info_List;

    procedure Free_X_Visual_Info_List (List : in out X_Visual_Info_List)  
        renames V1.Free_X_Visual_Info_List;

------------------------------------------------------------------------------
-- Visual Information Flags
--
--      Visual_Bits_Per_Rgb_Mask
--      Visual_Colormap_Size_Mask
--      Visual_Blue_Mask_Mask
--      Visual_Green_Mask_Mask
--      Visual_Red_Mask_Mask
--      Visual_Class_Mask
--      Visual_Depth_Mask
--      Visual_Screen_Mask
--      Visual_Id_Mask
------------------------------------------------------------------------------

    subtype X_Visual_Info_Flags_Index is V1.X_Visual_Info_Flags_Index;  
    subtype X_Visual_Info_Flags       is V1.X_Visual_Info_Flags;

    subtype Xvifi is X_Visual_Info_Flags_Index;

    Visual_Bits_Per_Rgb_Mask  : constant Xvifi := V1.Visual_Bits_Per_Rgb_Mask;  
    Visual_Colormap_Size_Mask : constant Xvifi := V1.Visual_Colormap_Size_Mask;  
    Visual_Blue_Mask_Mask     : constant Xvifi := V1.Visual_Blue_Mask_Mask;  
    Visual_Green_Mask_Mask    : constant Xvifi := V1.Visual_Green_Mask_Mask;  
    Visual_Red_Mask_Mask      : constant Xvifi := V1.Visual_Red_Mask_Mask;  
    Visual_Class_Mask         : constant Xvifi := V1.Visual_Class_Mask;  
    Visual_Depth_Mask         : constant Xvifi := V1.Visual_Depth_Mask;  
    Visual_Screen_Mask        : constant Xvifi := V1.Visual_Screen_Mask;  
    Visual_Id_Mask            : constant Xvifi := V1.Visual_Id_Mask;

    ----These flags are currently unused by the X Library.

    Xvifi31 : constant Xvifi := V1.Xvifi31;  
    Xvifi30 : constant Xvifi := V1.Xvifi30;  
    Xvifi29 : constant Xvifi := V1.Xvifi29;  
    Xvifi28 : constant Xvifi := V1.Xvifi28;  
    Xvifi27 : constant Xvifi := V1.Xvifi27;  
    Xvifi26 : constant Xvifi := V1.Xvifi26;  
    Xvifi25 : constant Xvifi := V1.Xvifi25;  
    Xvifi24 : constant Xvifi := V1.Xvifi24;  
    Xvifi23 : constant Xvifi := V1.Xvifi23;  
    Xvifi22 : constant Xvifi := V1.Xvifi22;  
    Xvifi21 : constant Xvifi := V1.Xvifi21;  
    Xvifi20 : constant Xvifi := V1.Xvifi20;  
    Xvifi19 : constant Xvifi := V1.Xvifi19;  
    Xvifi18 : constant Xvifi := V1.Xvifi18;  
    Xvifi17 : constant Xvifi := V1.Xvifi17;  
    Xvifi16 : constant Xvifi := V1.Xvifi16;  
    Xvifi15 : constant Xvifi := V1.Xvifi15;  
    Xvifi14 : constant Xvifi := V1.Xvifi14;  
    Xvifi13 : constant Xvifi := V1.Xvifi13;  
    Xvifi12 : constant Xvifi := V1.Xvifi12;  
    Xvifi11 : constant Xvifi := V1.Xvifi11;  
    Xvifi10 : constant Xvifi := V1.Xvifi10;  
    Xvifi09 : constant Xvifi := V1.Xvifi09;

    Visual_No_Mask : X_Visual_Info_Flags renames V1.Visual_No_Mask;

    Visual_All_Mask : X_Visual_Info_Flags renames V1.Visual_All_Mask;

    function "=" (A, B : Xvifi)               return Boolean renames V1."=";  
    function "=" (A, B : X_Visual_Info_Flags) return Boolean renames V1."=";

--\f

------------------------------------------------------------------------------
-- Xlbt_Window - W1, W2
------------------------------------------------------------------------------

------------------------------------------------------------------------------
-- X_Backing_Store_Hint
--
--      Not_Useful
--      When_Mapped
--      Always
------------------------------------------------------------------------------

    subtype X_Backing_Store_Hint is W2.X_Backing_Store_Hint;

    Not_Useful  : constant X_Backing_Store_Hint := W2.Not_Useful;  
    When_Mapped : constant X_Backing_Store_Hint := W2.When_Mapped;  
    Always      : constant X_Backing_Store_Hint := W2.Always;

    None_X_Backing_Store_Hint : X_Backing_Store_Hint  
        renames W2.None_X_Backing_Store_Hint;

    function "=" (A, B : X_Backing_Store_Hint) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- X_Bit_Gravity
--
--      Forget_Bit_Gravity
--      North_West_Bit_Gravity
--      North_Bit_Gravity
--      North_East_Bit_Gravity
--      West_Bit_Gravity
--      Center_Bit_Gravity
--      East_Bit_Gravity
--      South_West_Bit_Gravity
--      South_Bit_Gravity
--      South_East_Bit_Gravity
--      Static_Bit_Gravity
------------------------------------------------------------------------------

    subtype X_Bit_Gravity is W2.X_Bit_Gravity;

    subtype Xbg is X_Bit_Gravity;

    Forget_Bit_Gravity     : constant Xbg := W2.Forget_Bit_Gravity;  
    North_West_Bit_Gravity : constant Xbg := W2.North_West_Bit_Gravity;  
    North_Bit_Gravity      : constant Xbg := W2.North_Bit_Gravity;  
    North_East_Bit_Gravity : constant Xbg := W2.North_East_Bit_Gravity;  
    West_Bit_Gravity       : constant Xbg := W2.West_Bit_Gravity;  
    Center_Bit_Gravity     : constant Xbg := W2.Center_Bit_Gravity;  
    East_Bit_Gravity       : constant Xbg := W2.East_Bit_Gravity;  
    South_West_Bit_Gravity : constant Xbg := W2.South_West_Bit_Gravity;  
    South_Bit_Gravity      : constant Xbg := W2.South_Bit_Gravity;  
    South_East_Bit_Gravity : constant Xbg := W2.South_East_Bit_Gravity;  
    Static_Bit_Gravity     : constant Xbg := W2.Static_Bit_Gravity;

    None_X_Bit_Gravity : X_Bit_Gravity renames W2.None_X_Bit_Gravity;

    function "=" (A, B : X_Bit_Gravity) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- X_Circulate_Place
--
--      Place_On_Top
--      Place_On_Bottom
--      Raise_Lowest
--      Lower_Highest
------------------------------------------------------------------------------

    subtype X_Circulate_Place is W2.X_Circulate_Place;

    Place_On_Top    : constant X_Circulate_Place := W2.Place_On_Top;  
    Place_On_Bottom : constant X_Circulate_Place := W2.Place_On_Bottom;

----Circulation direction

    Raise_Lowest  : X_Circulate_Place renames W2.Raise_Lowest;  
    Lower_Highest : X_Circulate_Place renames W2.Lower_Highest;

    function "=" (A, B : X_Circulate_Place) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- X_Map_State
--
--      Is_Unmapped
--      Is_Unviewable
--      Is_Viewable
------------------------------------------------------------------------------

    subtype X_Map_State is W2.X_Map_State;

    Is_Unmapped   : constant X_Map_State := W2.Is_Unmapped;  
    Is_Unviewable : constant X_Map_State := W2.Is_Unviewable;  
    Is_Viewable   : constant X_Map_State := W2.Is_Viewable;

    None_X_Map_State : X_Map_State renames W2.None_X_Map_State;

    function "=" (A, B : X_Map_State) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- X_New_Window_Attributes
--
--        Cw_Cursor
--        Cw_Colormap
--        Cw_Dont_Propagate
--        Cw_Event_Mask
--        Cw_Save_Under
--        Cw_Override_Redirect
--        Cw_Backing_Pixel
--        Cw_Backing_Planes
--        Cw_Backing_Store
--        Cw_Win_Gravity
--        Cw_Bit_Gravity
--        Cw_Border_Pixel
--        Cw_Border_Pixmap
--        Cw_Back_Pixel
--        Cw_Back_Pixmap
------------------------------------------------------------------------------

    subtype X_New_Window_Attributes_Index is W2.X_New_Window_Attributes_Index;  
    subtype X_New_Window_Attributes       is W2.X_New_Window_Attributes;

    subtype Xnwai is X_New_Window_Attributes_Index;  
    subtype Xnwa  is X_New_Window_Attributes;

    Cw_Cursor            : constant Xnwai := W2.Cw_Cursor;  
    Cw_Colormap          : constant Xnwai := W2.Cw_Colormap;  
    Cw_Dont_Propagate    : constant Xnwai := W2.Cw_Dont_Propagate;  
    Cw_Event_Mask        : constant Xnwai := W2.Cw_Event_Mask;  
    Cw_Save_Under        : constant Xnwai := W2.Cw_Save_Under;  
    Cw_Override_Redirect : constant Xnwai := W2.Cw_Override_Redirect;  
    Cw_Backing_Pixel     : constant Xnwai := W2.Cw_Backing_Pixel;  
    Cw_Backing_Planes    : constant Xnwai := W2.Cw_Backing_Planes;  
    Cw_Backing_Store     : constant Xnwai := W2.Cw_Backing_Store;  
    Cw_Win_Gravity       : constant Xnwai := W2.Cw_Win_Gravity;  
    Cw_Bit_Gravity       : constant Xnwai := W2.Cw_Bit_Gravity;  
    Cw_Border_Pixel      : constant Xnwai := W2.Cw_Border_Pixel;  
    Cw_Border_Pixmap     : constant Xnwai := W2.Cw_Border_Pixmap;  
    Cw_Background_Pixel  : constant Xnwai := W2.Cw_Background_Pixel;  
    Cw_Background_Pixmap : constant Xnwai := W2.Cw_Background_Pixmap;

----These names are kept for backwards compatibility only.  Use the longer
--  names given above.

    Cw_Back_Pixel  : constant Xnwai := W2.Cw_Background_Pixel;  
    Cw_Back_Pixmap : constant Xnwai := W2.Cw_Background_Pixmap;

----These flags are unused by X Library

    Xnwai31 : constant Xnwai := W2.Xnwai31;  
    Xnwai30 : constant Xnwai := W2.Xnwai30;  
    Xnwai29 : constant Xnwai := W2.Xnwai29;  
    Xnwai28 : constant Xnwai := W2.Xnwai28;  
    Xnwai27 : constant Xnwai := W2.Xnwai27;  
    Xnwai26 : constant Xnwai := W2.Xnwai26;  
    Xnwai25 : constant Xnwai := W2.Xnwai25;  
    Xnwai24 : constant Xnwai := W2.Xnwai24;  
    Xnwai23 : constant Xnwai := W2.Xnwai23;  
    Xnwai22 : constant Xnwai := W2.Xnwai22;  
    Xnwai21 : constant Xnwai := W2.Xnwai21;  
    Xnwai20 : constant Xnwai := W2.Xnwai20;  
    Xnwai19 : constant Xnwai := W2.Xnwai19;  
    Xnwai18 : constant Xnwai := W2.Xnwai18;  
    Xnwai17 : constant Xnwai := W2.Xnwai17;  
    Xnwai16 : constant Xnwai := W2.Xnwai16;  
    Xnwai15 : constant Xnwai := W2.Xnwai15;

    None_X_New_Window_Attributes : X_New_Window_Attributes renames  
       W2.None_X_New_Window_Attributes;

    All_X_New_Window_Attributes : X_New_Window_Attributes  
        renames W2.All_X_New_Window_Attributes;

    function "="   (A, B : Xnwai) return Boolean renames W2."=";  
    function "="   (A, B : Xnwa)  return Boolean renames W2."=";  
    function "and" (A, B : Xnwa)  return Xnwa    renames W2."and";  
    function "or"  (A, B : Xnwa)  return Xnwa    renames W2."or";  
    function "xor" (A, B : Xnwa)  return Xnwa    renames W2."xor";  
    function "not" (A : Xnwa)     return Xnwa    renames W2."not";

------------------------------------------------------------------------------
-- X_Property_Mode
------------------------------------------------------------------------------

    subtype X_Property_Mode is W2.X_Property_Mode;

    Prop_Mode_Replace : constant X_Property_Mode := W2.Prop_Mode_Replace;  
    Prop_Mode_Prepend : constant X_Property_Mode := W2.Prop_Mode_Prepend;  
    Prop_Mode_Append  : constant X_Property_Mode := W2.Prop_Mode_Append;

    function "=" (A, B : X_Property_Mode) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- Property notification
------------------------------------------------------------------------------

    subtype X_Property_State is W2.X_Property_State;

    Property_New_Value : constant X_Property_State := W2.Property_New_Value;  
    Property_Delete    : constant X_Property_State := W2.Property_Delete;

    function "=" (A, B : X_Property_State) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- X_Set_Window_Attributes - used with X_New_Window_Attributes to set/change
-- a window's attributes.
------------------------------------------------------------------------------

    subtype X_Set_Window_Attributes is W1.X_Set_Window_Attributes;

------------------------------------------------------------------------------
-- X_Window_Attributes - returned in response to a query about window attributes
------------------------------------------------------------------------------

    subtype X_Window_Attributes is W1.X_Window_Attributes;

------------------------------------------------------------------------------
-- X_Window_Changes - used to make several changes at once
------------------------------------------------------------------------------

    subtype X_Window_Changes is W1.X_Window_Changes;

------------------------------------------------------------------------------
-- X_Window_Changes_Mask
--
--      Cw_Stack_Mode
--      Cw_Sibling
--      Cw_Border_Width
--      Cw_Height
--      Cw_Width
--      Cw_Y
--      Cw_X
------------------------------------------------------------------------------

    subtype X_Window_Changes_Mask_Index is W2.X_Window_Changes_Mask_Index;  
    subtype X_Window_Changes_Mask       is W2.X_Window_Changes_Mask;

    subtype Xwcmi is X_Window_Changes_Mask_Index;  
    subtype Xwcm  is X_Window_Changes_Mask;

    Cw_Stack_Mode   : constant Xwcmi := W2.Cw_Stack_Mode;  
    Cw_Sibling      : constant Xwcmi := W2.Cw_Sibling;  
    Cw_Border_Width : constant Xwcmi := W2.Cw_Border_Width;  
    Cw_Height       : constant Xwcmi := W2.Cw_Height;  
    Cw_Width        : constant Xwcmi := W2.Cw_Width;  
    Cw_Y            : constant Xwcmi := W2.Cw_Y;  
    Cw_X            : constant Xwcmi := W2.Cw_X;

----These are not currently used by the X Library.

    Xwcmi15 : constant Xwcmi := W2.Xwcmi15;  
    Xwcmi14 : constant Xwcmi := W2.Xwcmi14;  
    Xwcmi13 : constant Xwcmi := W2.Xwcmi13;  
    Xwcmi12 : constant Xwcmi := W2.Xwcmi12;  
    Xwcmi11 : constant Xwcmi := W2.Xwcmi11;  
    Xwcmi10 : constant Xwcmi := W2.Xwcmi10;  
    Xwcmi09 : constant Xwcmi := W2.Xwcmi09;  
    Xwcmi08 : constant Xwcmi := W2.Xwcmi08;  
    Xwcmi07 : constant Xwcmi := W2.Xwcmi07;

    None_X_Window_Changes_Mask : X_Window_Changes_Mask renames  
       W2.None_X_Window_Changes_Mask;

    All_X_Window_Changes_Mask : X_Window_Changes_Mask  
        renames W2.All_X_Window_Changes_Mask;

    function "="   (A, B : Xwcmi) return Boolean renames W2."=";  
    function "="   (A, B : Xwcm)  return Boolean renames W2."=";  
    function "and" (A, B : Xwcm)  return Xwcm    renames W2."and";  
    function "or"  (A, B : Xwcm)  return Xwcm    renames W2."or";  
    function "xor" (A, B : Xwcm)  return Xwcm    renames W2."xor";  
    function "not" (A : Xwcm)     return Xwcm    renames W2."not";

------------------------------------------------------------------------------
-- X_Window_Class
--
--      Copy_From_Parent -- make the same as the parent window
--      Input_Output     -- perform both input and output
--      Input_Only       -- will only be for input
------------------------------------------------------------------------------

    subtype X_Window_Class is W2.X_Window_Class;

    Copy_From_Parent : constant X_Window_Class := W2.Copy_From_Parent;  
    Input_Output     : constant X_Window_Class := W2.Input_Output;  
    Input_Only       : constant X_Window_Class := W2.Input_Only;

    None_X_Window_Class : X_Window_Class renames W2.None_X_Window_Class;

    function "=" (A, B : X_Window_Class) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- X_Window_Gravity
--
--      Unmap_Gravity
--      North_West_Gravity
--      North_Gravity
--      North_East_Gravity
--      West_Gravity
--      Center_Gravity
--      East_Gravity
--      South_West_Gravity
--      South_Gravity
--      South_East_Gravity
--      Static_Gravity
------------------------------------------------------------------------------

    subtype X_Window_Gravity is W2.X_Window_Gravity;

    subtype Xwg is X_Window_Gravity;

    Unmap_Gravity      : constant Xwg := W2.Unmap_Gravity;  
    North_West_Gravity : constant Xwg := W2.North_West_Gravity;  
    North_Gravity      : constant Xwg := W2.North_Gravity;  
    North_East_Gravity : constant Xwg := W2.North_East_Gravity;  
    West_Gravity       : constant Xwg := W2.West_Gravity;  
    Center_Gravity     : constant Xwg := W2.Center_Gravity;  
    East_Gravity       : constant Xwg := W2.East_Gravity;  
    South_West_Gravity : constant Xwg := W2.South_West_Gravity;  
    South_Gravity      : constant Xwg := W2.South_Gravity;  
    South_East_Gravity : constant Xwg := W2.South_East_Gravity;  
    Static_Gravity     : constant Xwg := W2.Static_Gravity;

    None_X_Window_Gravity : X_Window_Gravity renames W2.None_X_Window_Gravity;

    function "=" (A, B : X_Window_Gravity) return Boolean renames W2."=";

------------------------------------------------------------------------------
-- X_Window_Stacking
--
--      Above
--      Below
--      Top_If
--      Bottom_If
--      Opposite
------------------------------------------------------------------------------

    subtype X_Window_Stacking is W2.X_Window_Stacking;

    Above     : constant X_Window_Stacking := W2.Above;  
    Below     : constant X_Window_Stacking := W2.Below;  
    Top_If    : constant X_Window_Stacking := W2.Top_If;  
    Bottom_If : constant X_Window_Stacking := W2.Bottom_If;  
    Opposite  : constant X_Window_Stacking := W2.Opposite;

    None_X_Window_Stacking : X_Window_Stacking  
        renames W2.None_X_Window_Stacking;

    function "=" (A, B : X_Window_Stacking) return Boolean renames W2."=";

--\f

------------------------------------------------------------------------------
-- Xlbp_Proc_Var
------------------------------------------------------------------------------

----X_Alloc_Id - Allocate a new X resource id

    package Proc_Var_X_Alloc_Id renames Xlbp_Proc_Var.Proc_Var_X_Alloc_Id;

----X_Add_Pixel - Add pixel value to every pixel in an image

    package Proc_Var_X_Add_Pixel renames Xlbp_Proc_Var.Proc_Var_X_Add_Pixel;

----X_Close_Display_Extension - Closing display extension hook

    package Proc_Var_X_Close_Display_Extension  
        renames Xlbp_Proc_Var.Proc_Var_X_Close_Display_Extension;

----X_Create_Image - Create an image from data

    package Proc_Var_X_Create_Image  
        renames Xlbp_Proc_Var.Proc_Var_X_Create_Image;

----X_Destroy_Image - Destroy/Deallocate an image

    package Proc_Var_X_Destroy_Image  
        renames Xlbp_Proc_Var.Proc_Var_X_Destroy_Image;

----X_Display_Font_Extension - Font extension hook

    package Proc_Var_X_Display_Font_Extension  
        renames Xlbp_Proc_Var.Proc_Var_X_Display_Font_Extension;

----X_Display_Gc_Extension - GC extension hook

    package Proc_Var_X_Display_Gc_Extension  
        renames Xlbp_Proc_Var.Proc_Var_X_Display_Gc_Extension;

----X_Error_Extension - Error reporting extension hook

    package Proc_Var_X_Error_Extension  
        renames Xlbp_Proc_Var.Proc_Var_X_Error_Extension;

----X_Error_Function - X Protocol error reporting

    package Proc_Var_X_Error_Function  
        renames Xlbp_Proc_Var.Proc_Var_X_Error_Function;

----X_Error_String_Extension - Error explanation extension hook

    package Proc_Var_X_Error_String_Extension  
        renames Xlbp_Proc_Var.Proc_Var_X_Error_String_Extension;

----X_Event_Wire - Called to convert X_Event format event to wire-format event.

    package Proc_Var_X_Event_Wire renames Xlbp_Proc_Var.Proc_Var_X_Event_Wire;

----X_Free_Extension_Data - Free up storage associated with an extension

    package Proc_Var_X_Free_Extension_Data  
        renames Xlbp_Proc_Var.Proc_Var_X_Free_Extension_Data;

----X_Get_Pixel - Get pixel value from X/Y location in image.

    package Proc_Var_X_Get_Pixel renames Xlbp_Proc_Var.Proc_Var_X_Get_Pixel;

----X_Io_Error_Function - I/O error reporting

    package Proc_Var_X_Io_Error_Function  
        renames Xlbp_Proc_Var.Proc_Var_X_Io_Error_Function;

----X_Put_Pixel

    package Proc_Var_X_Put_Pixel renames Xlbp_Proc_Var.Proc_Var_X_Put_Pixel;

----X_Sub_Image - Carve a sub-image out of an image

    package Proc_Var_X_Sub_Image renames Xlbp_Proc_Var.Proc_Var_X_Sub_Image;

----X_Synchandler - cause every operation on a display to synchronize

    package Proc_Var_X_Synchandler renames Xlbp_Proc_Var.Proc_Var_X_Synchandler;

----X_Univ_Free - Called to free up a Universal Pointer

    package Proc_Var_X_Univ_Free renames Xlbp_Proc_Var.Proc_Var_X_Univ_Free;

----X_Univ_To_Uca - Called to convert a Universal Pointer into U_Char_Array

    package Proc_Var_X_Univ_To_String  
        renames Xlbp_Proc_Var.Proc_Var_X_Univ_To_String;

----X_Wire_Event - called to convert wire-format event to X_Event format event.

    package Proc_Var_X_Wire_Event renames Xlbp_Proc_Var.Proc_Var_X_Wire_Event;

--\f

------------------------------------------------------------------------------
-- Xlbp_Atom
------------------------------------------------------------------------------

    function X_Get_Atom_Name (Display : X_Display;  
                              Atom    : X_Atom) return X_String  
        renames Xlbp_Atom.X_Get_Atom_Name;

    function X_Intern_Atom (Display        : X_Display;  
                            Name           : X_String;  
                            Only_If_Exists : Boolean) return X_Atom  
        renames Xlbp_Atom.X_Intern_Atom;

--\f

------------------------------------------------------------------------------
-- Xlbp_Bitmap
------------------------------------------------------------------------------

    function X_Create_Bitmap_From_Data (Display  : X_Display;  
                                        Drawable : X_Drawable;  
                                        Data     : U_Char_Array;  
                                        Width    : U_Short;  
                                        Height   : U_Short) return X_Pixmap  
        renames Xlbp_Bitmap.X_Create_Bitmap_From_Data;

    function X_Create_Pixmap_From_Bitmap_Data  
                (Display    : X_Display;  
                 Drawable   : X_Drawable;  
                 Data       : U_Char_Array;  
                 Width      : U_Short;  
                 Height     : U_Short;  
                 Foreground : X_Pixel;  
                 Background : X_Pixel;  
                 Depth      : U_Char) return X_Pixmap  
        renames Xlbp_Bitmap.X_Create_Pixmap_From_Bitmap_Data;

    function X_Write_Bitmap_File (Display   : X_Display;  
                                  Filename  : String;  
                                  Bitmap    : X_Pixmap;  
                                  Width     : U_Short;  
                                  Height    : U_Short;  
                                  X_Hotspot : S_Short;  
                                  Y_Hotspot : S_Short) return X_Bitmap_Returns  
        renames Xlbp_Bitmap.X_Write_Bitmap_File;

    procedure X_Read_Bitmap_File (Display   :     X_Display;  
                                  Drawable  :     X_Drawable;  
                                  Filename  :     String;  
                                  Width     : out U_Short;  
                                  Height    : out U_Short;  
                                  Bitmap    : out X_Pixmap;  
                                  X_Hotspot : out S_Short;  
                                  Y_Hotspot : out S_Short;  
                                  Status    : out X_Bitmap_Returns)  
        renames Xlbp_Bitmap.X_Read_Bitmap_File;

--\f

------------------------------------------------------------------------------
-- Xlbp_Color
------------------------------------------------------------------------------

    procedure X_Alloc_Color (Display  :        X_Display;  
                             Colormap :        X_Colormap;  
                             Color    : in out X_Color;  
                             Status   : out    X_Status)  
        renames Xlbp_Color.X_Alloc_Color;

    procedure X_Alloc_Color_Cells (Display  :     X_Display;  
                                   Colormap :     X_Colormap;  
                                   Contig   :     Boolean;  
                                   Planes   : out X_Plane_Mask_Array;  
                                   Pixels   : out X_Pixel_Array;  
                                   Status   : out X_Status)  
        renames Xlbp_Color.X_Alloc_Color_Cells;

    procedure X_Alloc_Color_Planes (Display  :     X_Display;  
                                    Colormap :     X_Colormap;  
                                    Contig   :     Boolean;  
                                    Pixels   : out X_Pixel_Array;  
                                    N_Reds   :     U_Short;  
                                    N_Greens :     U_Short;  
                                    N_Blues  :     U_Short;  
                                    R_Mask   : out X_Red_Color_Mask;  
                                    G_Mask   : out X_Green_Color_Mask;  
                                    B_Mask   : out X_Blue_Color_Mask;  
                                    Status   : out X_Status)  
        renames Xlbp_Color.X_Alloc_Color_Planes;

    procedure X_Alloc_Named_Color (Display      :     X_Display;  
                                   Colormap     :     X_Colormap;  
                                   Colorname    :     X_String;  
                                   Visual_Color : out X_Color;  
                                   Exact_Color  : out X_Color;  
                                   Status       : out X_Status)  
        renames Xlbp_Color.X_Alloc_Named_Color;

    procedure X_Free_Colors (Display  : X_Display;  
                             Colormap : X_Colormap;  
                             Pixels   : X_Pixel_Array;  
                             Planes   : X_Plane_Mask)  
        renames Xlbp_Color.X_Free_Colors;

    procedure X_Lookup_Color (Display      :     X_Display;  
                              Colormap     :     X_Colormap;  
                              Colorname    :     X_String;  
                              Visual_Color : out X_Color;  
                              Exact_Color  : out X_Color;  
                              Status       : out X_Status)  
        renames Xlbp_Color.X_Lookup_Color;

    procedure X_Parse_Color (Display   :     X_Display;  
                             Colormap  :     X_Colormap;  
                             Colorname :     X_String;  
                             Color     : out X_Color;  
                             Status    : out X_Status)  
        renames Xlbp_Color.X_Parse_Color;

    procedure X_Query_Color (Display  :        X_Display;  
                             Colormap :        X_Colormap;  
                             Color    : in out X_Color)  
        renames Xlbp_Color.X_Query_Color;

    procedure X_Query_Colors (Display  :        X_Display;  
                              Colormap :        X_Colormap;  
                              Colors   : in out X_Color_Array)  
        renames Xlbp_Color.X_Query_Colors;

    procedure X_Store_Color (Display : X_Display;  
                             Colormap : X_Colormap;  
                             Color : X_Color) renames Xlbp_Color.X_Store_Color;

    procedure X_Store_Colors (Display  : X_Display;  
                              Colormap : X_Colormap;  
                              Colors   : X_Color_Array)  
        renames Xlbp_Color.X_Store_Colors;

    procedure X_Store_Named_Color (Display  : X_Display;  
                                   Colormap : X_Colormap;  
                                   Name     : X_String;  
                                   Pixel    : X_Pixel;  
                                   Flags    : X_Color_Flags)  
        renames Xlbp_Color.X_Store_Named_Color;

    function X_Copy_Colormap_And_Free  
                (Display         : X_Display;  
                 Source_Colormap : X_Colormap) return X_Colormap  
        renames Xlbp_Color.X_Copy_Colormap_And_Free;

    function X_Create_Colormap (Display  : X_Display;  
                                Window   : X_Window;  
                                Visual   : X_Visual;  
                                Allocate : X_Colormap_Alloc) return X_Colormap  
        renames Xlbp_Color.X_Create_Colormap;

    procedure X_Free_Colormap (Display  :        X_Display;  
                               Colormap : in out X_Colormap)  
        renames Xlbp_Color.X_Free_Colormap;

    procedure X_Install_Colormap (Display  : X_Display;  
                                  Colormap : X_Colormap)  
        renames Xlbp_Color.X_Install_Colormap;

    function X_List_Installed_Colormaps  
                (Display : X_Display;  
                 Window  : X_Window) return X_Colormap_List  
        renames Xlbp_Color.X_List_Installed_Colormaps;

    procedure X_Set_Window_Colormap (Display  : X_Display;  
                                     Window   : X_Window;  
                                     Colormap : X_Colormap)  
        renames Xlbp_Color.X_Set_Window_Colormap;

    procedure X_Uninstall_Colormap (Display  : X_Display;  
                                    Colormap : X_Colormap)  
        renames Xlbp_Color.X_Uninstall_Colormap;

--\f

--/ if OLD_CONTEXT_MANAGER then
--// ------------------------------------------------------------------------------
--// -- Xlbp_Context_Manager
--// ------------------------------------------------------------------------------
--//
--//     function X_Delete_Context (Display : X_Display;
--//                                Window  : X_Window;
--//                                Context : X_Context) return X_Associative_Returns
--//         renames Xlbp_Context_Manager.X_Delete_Context;
--//
--//     procedure X_Find_Context (Display :     X_Display;
--//                               Window  :     X_Window;
--//                               Context :     X_Context;
--//                               Data    : out X_Rm_Value;
--//                               Status  : out X_Associative_Returns)
--//         renames Xlbp_Context_Manager.X_Find_Context;
--//
--//     function X_Save_Context (Display : X_Display;
--//                              Window  : X_Window;
--//                              Context : X_Context;
--//                              Data    : X_Rm_Value) return X_Associative_Returns
--//         renames Xlbp_Context_Manager.X_Save_Context;
--//
--//     function X_String_To_Context (Name : X_String) return X_Context
--//         renames Xlbp_Context_Manager.X_String_To_Context;
--//
--//     function X_Context_To_String (Context : X_Context) return X_String
--//         renames Xlbp_Context_Manager.X_Context_To_String;
--//
--//     function X_Unique_Context return X_Context
--//         renames Xlbp_Context_Manager.X_Unique_Context;
--//
--/ end if;

--\f

------------------------------------------------------------------------------
-- Xlbp_Cursor;
------------------------------------------------------------------------------

    function X_Create_Font_Cursor (Display : X_Display;  
                                   Which   : X_Cursor_Font) return X_Cursor  
        renames Xlbp_Cursor.X_Create_Font_Cursor;

    function X_Create_Glyph_Cursor (Display     : X_Display;  
                                    Source_Font : X_Font;  
                                    Mask_Font   : X_Font;  
                                    Source_Char : U_Short;  
                                    Mask_Char   : U_Short;  
                                    Foreground  : X_Color;  
                                    Background  : X_Color) return X_Cursor  
        renames Xlbp_Cursor.X_Create_Glyph_Cursor;

    function X_Create_Pixmap_Cursor (Display    : X_Display;  
                                     Source     : X_Pixmap;  
                                     Mask       : X_Pixmap;  
                                     Foreground : X_Color;  
                                     Background : X_Color;  
                                     X          : U_Short;  
                                     Y          : U_Short) return X_Cursor  
        renames Xlbp_Cursor.X_Create_Pixmap_Cursor;

    procedure X_Define_Cursor (Display : X_Display;  
                               Window  : X_Window;  
                               Cursor  : X_Cursor)  
        renames Xlbp_Cursor.X_Define_Cursor;

    procedure X_Free_Cursor (Display :        X_Display;  
                             Cursor  : in out X_Cursor)  
        renames Xlbp_Cursor.X_Free_Cursor;

    procedure X_Query_Best_Cursor (Display     :     X_Display;  
                                   Drawable    :     X_Drawable;  
                                   Width       :     U_Short;  
                                   Height      :     U_Short;  
                                   Best_Width  : out U_Short;  
                                   Best_Height : out U_Short;  
                                   Status      : out X_Status)  
        renames Xlbp_Cursor.X_Query_Best_Cursor;

    procedure X_Recolor_Cursor (Display    : X_Display;  
                                Cursor     : X_Cursor;  
                                Foreground : X_Color;  
                                Background : X_Color)  
        renames Xlbp_Cursor.X_Recolor_Cursor;

    procedure X_Undefine_Cursor (Display : X_Display;  
                                 Window  : X_Window)  
        renames Xlbp_Cursor.X_Undefine_Cursor;

--\f

------------------------------------------------------------------------------
-- Xlbp_Cut_Buffer
------------------------------------------------------------------------------

    function X_Fetch_Buffer (Display : X_Display;  
                             Buffer  : X_Cut_Buffer_Number) return U_Char_List  
        renames Xlbp_Cut_Buffer.X_Fetch_Buffer;

    function X_Fetch_Bytes (Display : X_Display) return U_Char_List  
        renames Xlbp_Cut_Buffer.X_Fetch_Bytes;

    procedure X_Rotate_Buffers (Display : X_Display;  
                                Rotate  : S_Short)  
        renames Xlbp_Cut_Buffer.X_Rotate_Buffers;

    procedure X_Store_Buffer (Display : X_Display;  
                              Bytes   : U_Char_Array;  
                              Buffer  : X_Cut_Buffer_Number)  
        renames Xlbp_Cut_Buffer.X_Store_Buffer;

    procedure X_Store_Bytes (Display : X_Display;  
                             Bytes   : U_Char_Array)  
        renames Xlbp_Cut_Buffer.X_Store_Bytes;

--\f

------------------------------------------------------------------------------
-- Xlbp_Display
------------------------------------------------------------------------------

    procedure X_Open_Display (Name    :        X_String;  
                              Display : out    X_Display;  
                              Error   : in out X_Error_String)  
        renames Xlbp_Display.X_Open_Display;

    procedure X_Close_Display (Display : in out X_Display)  
        renames Xlbp_Display.X_Close_Display;

    procedure X_No_Op (Display : X_Display) renames Xlbp_Display.X_No_Op;

    function X_All_Planes return X_Plane_Mask renames Xlbp_Display.X_All_Planes;

    function X_Bitmap_Bit_Order (Display : X_Display) return X_Byte_Bit_Order  
        renames Xlbp_Display.X_Bitmap_Bit_Order;

    function X_Bitmap_Pad (Display : X_Display) return U_Char  
        renames Xlbp_Display.X_Bitmap_Pad;

    function X_Bitmap_Unit (Display : X_Display) return U_Char  
        renames Xlbp_Display.X_Bitmap_Unit;

    function X_Connection_Number  
                (Display : X_Display) return X_Network_Connection  
        renames Xlbp_Display.X_Connection_Number;

    function X_Default_Root_Window (Display : X_Display) return X_Window  
        renames Xlbp_Display.X_Default_Root_Window;

    function X_Default_Screen (Display : X_Display) return X_Screen_Number  
        renames Xlbp_Display.X_Default_Screen;

    function X_Default_Screen_Of_Display (Display : X_Display) return X_Screen  
        renames Xlbp_Display.X_Default_Screen_Of_Display;

    function X_Display_String (Display : X_Display) return X_String  
        renames Xlbp_Display.X_Display_String;

    function X_Image_Byte_Order (Display : X_Display) return X_Byte_Bit_Order  
        renames Xlbp_Display.X_Image_Byte_Order;

    function X_Last_Known_Request_Processed (Display : X_Display) return S_Long  
        renames Xlbp_Display.X_Last_Known_Request_Processed;

    function X_List_Pixmap_Formats (Display : X_Display)  
                                   return X_Pixmap_Format_Values_List  
        renames Xlbp_Display.X_List_Pixmap_Formats;

    function X_Max_Request_Size (Display : X_Display) return U_Short  
        renames Xlbp_Display.X_Max_Request_Size;

    function X_Next_Request (Display : X_Display) return S_Long  
        renames Xlbp_Display.X_Next_Request;

    function X_Protocol_Revision (Display : X_Display) return U_Short  
        renames Xlbp_Display.X_Protocol_Revision;

    function X_Protocol_Version (Display : X_Display) return U_Short  
        renames Xlbp_Display.X_Protocol_Version;

    function X_Q_Length (Display : X_Display) return S_Long  
        renames Xlbp_Display.X_Q_Length;

    function X_Resource_Database (Display : X_Display) return X_Rm_Database  
        renames Xlbp_Display.X_Resource_Database;

    function X_Resource_Manager_String  
                (Display : X_Display) return X_String_Pointer  
        renames Xlbp_Display.X_Resource_Manager_String;

    procedure X_Set_Resource_Database  
                 (Display : X_Display; Database : X_Rm_Database)  
        renames Xlbp_Display.X_Set_Resource_Database;

    function X_Screen_Count (Display : X_Display) return X_Screen_Number  
        renames Xlbp_Display.X_Screen_Count;

    function X_Server_Vendor (Display : X_Display) return X_String  
        renames Xlbp_Display.X_Server_Vendor;

    function X_Vendor_Release (Display : X_Display) return S_Long  
        renames Xlbp_Display.X_Vendor_Release;

    function X_Black_Pixel (Display : X_Display;  
                            Screen  : X_Screen_Number) return X_Pixel  
        renames Xlbp_Display.X_Black_Pixel;

    function X_Default_Colormap (Display : X_Display;  
                                 Screen  : X_Screen_Number) return X_Colormap  
        renames Xlbp_Display.X_Default_Colormap;

    function X_Default_Depth (Display : X_Display;  
                              Screen  : X_Screen_Number) return U_Char  
        renames Xlbp_Display.X_Default_Depth;

    function X_Default_Gc (Display : X_Display;  
                           Screen  : X_Screen_Number) return X_Gc  
        renames Xlbp_Display.X_Default_Gc;

    function X_Default_Visual (Display : X_Display;  
                               Screen  : X_Screen_Number) return X_Visual  
        renames Xlbp_Display.X_Default_Visual;

    function X_Display_Cells (Display : X_Display;  
                              Screen  : X_Screen_Number) return U_Short  
        renames Xlbp_Display.X_Display_Cells;

    function X_Display_Height (Display : X_Display;  
                               Screen  : X_Screen_Number) return U_Short  
        renames Xlbp_Display.X_Display_Height;

    function X_Display_Height_Mm (Display : X_Display;  
                                  Screen  : X_Screen_Number) return U_Short  
        renames Xlbp_Display.X_Display_Height_Mm;

    function X_Display_Planes (Display : X_Display;  
                               Screen  : X_Screen_Number) return U_Char  
        renames Xlbp_Display.X_Display_Planes;

    function X_Display_Width (Display : X_Display;  
                              Screen  : X_Screen_Number) return U_Short  
        renames Xlbp_Display.X_Display_Width;

    function X_Display_Width_Mm (Display : X_Display;  
                                 Screen  : X_Screen_Number) return U_Short  
        renames Xlbp_Display.X_Display_Width_Mm;

    function X_List_Depths (Display : X_Display;  
                            Screen  : X_Screen_Number) return U_Char_List  
        renames Xlbp_Display.X_List_Depths;

    function X_Root_Window (Display : X_Display;  
                            Screen  : X_Screen_Number) return X_Window  
        renames Xlbp_Display.X_Root_Window;

    function X_Screen_Of_Display (Display : X_Display;  
                                  Screen  : X_Screen_Number) return X_Screen  
        renames Xlbp_Display.X_Screen_Of_Display;

    function X_White_Pixel (Display : X_Display;  
                            Screen  : X_Screen_Number) return X_Pixel  
        renames Xlbp_Display.X_White_Pixel;

    function X_Black_Pixel_Of_Screen (Screen : X_Screen) return X_Pixel  
        renames Xlbp_Display.X_Black_Pixel_Of_Screen;

    function X_Cells_Of_Screen (Screen : X_Screen) return U_Short  
        renames Xlbp_Display.X_Cells_Of_Screen;

    function X_Default_Colormap_Of_Screen (Screen : X_Screen) return X_Colormap  
        renames Xlbp_Display.X_Default_Colormap_Of_Screen;

    function X_Default_Depth_Of_Screen (Screen : X_Screen) return U_Char  
        renames Xlbp_Display.X_Default_Depth_Of_Screen;

    function X_Default_Gc_Of_Screen (Screen : X_Screen) return X_Gc  
        renames Xlbp_Display.X_Default_Gc_Of_Screen;

    function X_Default_Visual_Of_Screen (Screen : X_Screen) return X_Visual  
        renames Xlbp_Display.X_Default_Visual_Of_Screen;

    function X_Display_Of_Screen (Screen : X_Screen) return X_Display  
        renames Xlbp_Display.X_Display_Of_Screen;

    function X_Does_Backing_Store  
                (Screen : X_Screen) return X_Backing_Store_Hint  
        renames Xlbp_Display.X_Does_Backing_Store;

    function X_Does_Save_Unders (Screen : X_Screen) return Boolean  
        renames Xlbp_Display.X_Does_Save_Unders;

    function X_Event_Mask_Of_Screen (Screen : X_Screen) return X_Event_Mask  
        renames Xlbp_Display.X_Event_Mask_Of_Screen;

    function X_Height_Of_Screen (Screen : X_Screen) return U_Short  
        renames Xlbp_Display.X_Height_Of_Screen;

    function X_Height_Mm_Of_Screen (Screen : X_Screen) return U_Short  
        renames Xlbp_Display.X_Height_Mm_Of_Screen;

    function X_Max_Cmaps_Of_Screen (Screen : X_Screen) return U_Short  
        renames Xlbp_Display.X_Max_Cmaps_Of_Screen;

    function X_Min_Cmaps_Of_Screen (Screen : X_Screen) return U_Short  
        renames Xlbp_Display.X_Min_Cmaps_Of_Screen;

    function X_Planes_Of_Screen (Screen : X_Screen) return U_Char  
        renames Xlbp_Display.X_Planes_Of_Screen;

    function X_Root_Window_Of_Screen (Screen : X_Screen) return X_Window  
        renames Xlbp_Display.X_Root_Window_Of_Screen;

    function X_Screen_Number_Of_Screen  
                (Screen : X_Screen) return X_Screen_Number  
        renames Xlbp_Display.X_Screen_Number_Of_Screen;

    function X_White_Pixel_Of_Screen (Screen : X_Screen) return X_Pixel  
        renames Xlbp_Display.X_White_Pixel_Of_Screen;

    function X_Width_Of_Screen (Screen : X_Screen) return U_Short  
        renames Xlbp_Display.X_Width_Of_Screen;

    function X_Width_Mm_Of_Screen (Screen : X_Screen) return U_Short  
        renames Xlbp_Display.X_Width_Mm_Of_Screen;

    function X_Visual_Id_From_Visual (Visual : X_Visual) return X_Visual_Id  
        renames Xlbp_Display.X_Visual_Id_From_Visual;

    function X_Display_Name (Display : X_String) return X_String  
        renames Xlbp_Display.X_Display_Name;

--\f

------------------------------------------------------------------------------
-- Xlbp_Error
------------------------------------------------------------------------------

    function X_Get_Error_Database_Text (Display : X_Display;  
                                        Name    : X_String;  
                                        Message : X_String;  
                                        Default : X_String) return X_String  
        renames Xlbp_Error.X_Get_Error_Database_Text;

    function X_Get_Error_Text (Display : X_Display;  
                               Kind    : X_Error_Code) return X_String  
        renames Xlbp_Error.X_Get_Error_Text;

    function X_Get_Error_String (Name1   : X_String;  
                                 Name2   : X_String;  
                                 Default : X_String) return X_String  
        renames Xlbp_Error.X_Get_Error_String;

    function X_Set_Error_Handler (Handler : Proc_Var_X_Error_Function.Pv)  
                                 return Proc_Var_X_Error_Function.Pv  
        renames Xlbp_Error.X_Set_Error_Handler;

    function X_Set_Io_Error_Handler (Handler : Proc_Var_X_Io_Error_Function.Pv)  
                                    return Proc_Var_X_Io_Error_Function.Pv  
        renames Xlbp_Error.X_Set_Io_Error_Handler;

--\f

------------------------------------------------------------------------------
-- Xlbp_Event
------------------------------------------------------------------------------

    procedure X_Flush (Display : X_Display) renames Xlbp_Event.X_Flush;

    procedure X_Put_Back_Event (Display : X_Display;  
                                Event   : X_Event)  
        renames Xlbp_Event.X_Put_Back_Event;

    procedure X_Select_Input (Display    : X_Display;  
                              Window     : X_Window;  
                              Event_Mask : X_Event_Mask)  
        renames Xlbp_Event.X_Select_Input;

    procedure X_Send_Event (Display    :     X_Display;  
                            Window     :     X_Window;  
                            Propagate  :     Boolean;  
                            Event_Mask :     X_Event_Mask;  
                            Event      :     X_Event;  
                            Status     : out X_Status)  
        renames Xlbp_Event.X_Send_Event;

    function X_Events_Queued (Display : X_Display;  
                              Mode    : X_Event_Queuing) return S_Long  
        renames Xlbp_Event.X_Events_Queued;

    function X_Pending (Display : X_Display) return S_Long  
        renames Xlbp_Event.X_Pending;

    procedure X_Check_Mask_Event (Display    :        X_Display;  
                                  Event_Mask :        X_Event_Mask;  
                                  Event      : in out X_Event;  
                                  Status     : out    X_Status)  
        renames Xlbp_Event.X_Check_Mask_Event;

    procedure X_Check_Typed_Event (Display :        X_Display;  
                                   Kind    :        X_Event_Code;  
                                   Event   : in out X_Event;  
                                   Status  : out    X_Status)  
        renames Xlbp_Event.X_Check_Typed_Event;

    procedure X_Check_Typed_Window_Event  
                 (Display :        X_Display;  
                  Window  :        X_Window;  
                  Kind    :        X_Event_Code;  
                  Event   : in out X_Event;  
                  Status  : out    X_Status)  
        renames Xlbp_Event.X_Check_Typed_Window_Event;

    procedure X_Check_Window_Event (Display    :        X_Display;  
                                    Window     :        X_Window;  
                                    Event_Mask :        X_Event_Mask;  
                                    Event      : in out X_Event;  
                                    Status     : out    X_Status)  
        renames Xlbp_Event.X_Check_Window_Event;

    procedure X_Mask_Event (Display    :     X_Display;  
                            Event_Mask :     X_Event_Mask;  
                            Event      : out X_Event)  
        renames Xlbp_Event.X_Mask_Event;

    procedure X_Next_Event (Display :     X_Display;  
                            Event   : out X_Event)  
        renames Xlbp_Event.X_Next_Event;

    procedure X_Peek_Event (Display :     X_Display;  
                            Event   : out X_Event)  
        renames Xlbp_Event.X_Peek_Event;

    procedure X_Window_Event (Display    :     X_Display;  
                              Window     :     X_Window;  
                              Event_Mask :     X_Event_Mask;  
                              Event      : out X_Event)  
        renames Xlbp_Event.X_Window_Event;

--\f

------------------------------------------------------------------------------
-- Xlbp_Font
------------------------------------------------------------------------------

    function X_Load_Query_Font (Display : X_Display;  
                                Name    : X_String) return X_Font_Struct  
        renames Xlbp_Font.X_Load_Query_Font;

    procedure X_Free_Font (Display :        X_Display;  
                           Fs      : in out X_Font_Struct)  
        renames Xlbp_Font.X_Free_Font;

    function X_Query_Font (Display : X_Display;  
                           Fid     : X_Font) return X_Font_Struct  
        renames Xlbp_Font.X_Query_Font;

    function X_Load_Font (Display : X_Display;  
                          Name    : X_String) return X_Font  
        renames Xlbp_Font.X_Load_Font;

    procedure X_Unload_Font (Display : X_Display;  
                             Font    : X_Font) renames Xlbp_Font.X_Unload_Font;

    procedure X_Get_Font_Property (Font   :     X_Font_Struct;  
                                   Name   :     X_Atom;  
                                   Value  : out S_Long;  
                                   Status : out X_Status)  
        renames Xlbp_Font.X_Get_Font_Property;

--\f

------------------------------------------------------------------------------
-- Xlbp_Font_Names
------------------------------------------------------------------------------

    function X_Get_Font_Path (Display : X_Display) return X_String_Pointer_List  
        renames Xlbp_Font_Names.X_Get_Font_Path;

    procedure X_Set_Font_Path (Display     : X_Display;  
                               Directories : X_String_Pointer_Array)  
        renames Xlbp_Font_Names.X_Set_Font_Path;

    function X_List_Fonts_With_Info  
                (Display       : X_Display;  
                 Pattern       : X_String;  
                 Maximum_Names : U_Short) return X_Fonts_With_Info  
        renames Xlbp_Font_Names.X_List_Fonts_With_Info;

    procedure X_Free_Font_Info (Info : in out X_Fonts_With_Info)  
        renames Xlbp_Font_Names.X_Free_Font_Info;

    function X_List_Fonts (Display   : X_Display;  
                           Pattern   : X_String;  
                           Max_Names : U_Short) return X_String_Pointer_List  
        renames Xlbp_Font_Names.X_List_Fonts;

--\f

------------------------------------------------------------------------------
-- Xlbp_Gc
------------------------------------------------------------------------------

    procedure X_Change_Gc (Display     : X_Display;  
                           Gc          : X_Gc;  
                           Values_Mask : X_Gc_Components;  
                           Values      : X_Gc_Values)  
        renames Xlbp_Gc.X_Change_Gc;

    procedure X_Copy_Gc (Display        : X_Display;  
                         Source_Gc      : X_Gc;  
                         Values_Mask    : X_Gc_Components;  
                         Destination_Gc : X_Gc) renames Xlbp_Gc.X_Copy_Gc;

    function X_Create_Gc (Display     : X_Display;  
                          Drawable    : X_Drawable;  
                          Values_Mask : X_Gc_Components;  
                          Values      : X_Gc_Values) return X_Gc  
        renames Xlbp_Gc.X_Create_Gc;

    procedure X_Free_Gc (Display :        X_Display;  
                         Gc      : in out X_Gc) renames Xlbp_Gc.X_Free_Gc;

    function X_G_Context_From_Gc (Gc : X_Gc) return X_G_Context  
        renames Xlbp_Gc.X_G_Context_From_Gc;

    procedure X_Get_Gc_Values (Display     :     X_Display;  
                               Gc          :     X_Gc;  
                               Values_Mask :     X_Gc_Components;  
                               Values      : out X_Gc_Values;  
                               Status      : out X_Status)  
        renames Xlbp_Gc.X_Get_Gc_Values;

    procedure X_Query_Best_Size (Display     :     X_Display;  
                                 Class       :     X_Best_Size_Class;  
                                 Drawable    :     X_Drawable;  
                                 Width       :     U_Short;  
                                 Height      :     U_Short;  
                                 Best_Width  : out U_Short;  
                                 Best_Height : out U_Short;  
                                 Status      : out X_Status)  
        renames Xlbp_Gc.X_Query_Best_Size;

    procedure X_Query_Best_Stipple (Display     :     X_Display;  
                                    Drawable    :     X_Drawable;  
                                    Width       :     U_Short;  
                                    Height      :     U_Short;  
                                    Best_Width  : out U_Short;  
                                    Best_Height : out U_Short;  
                                    Status      : out X_Status)  
        renames Xlbp_Gc.X_Query_Best_Stipple;

    procedure X_Query_Best_Tile (Display     :     X_Display;  
                                 Drawable    :     X_Drawable;  
                                 Width       :     U_Short;  
                                 Height      :     U_Short;  
                                 Best_Width  : out U_Short;  
                                 Best_Height : out U_Short;  
                                 Status      : out X_Status)  
        renames Xlbp_Gc.X_Query_Best_Tile;

    procedure X_Set_Arc_Mode (Display  : X_Display;  
                              Gc       : X_Gc;  
                              Arc_Mode : X_Arc_Mode)  
        renames Xlbp_Gc.X_Set_Arc_Mode;

    procedure X_Set_Background (Display    : X_Display;  
                                Gc         : X_Gc;  
                                Background : X_Pixel)  
        renames Xlbp_Gc.X_Set_Background;

    procedure X_Set_Clip_Mask (Display : X_Display;  
                               Gc : X_Gc;  
                               Mask : X_Pixmap) renames Xlbp_Gc.X_Set_Clip_Mask;

    procedure X_Set_Clip_Origin (Display : X_Display;  
                                 Gc : X_Gc;  
                                 X : S_Short;  
                                 Y : S_Short) renames Xlbp_Gc.X_Set_Clip_Origin;

    procedure X_Set_Clip_Rectangles (Display    : X_Display;  
                                     Gc         : X_Gc;  
                                     X          : S_Short;  
                                     Y          : S_Short;  
                                     Rectangles : X_Rectangle_Array;  
                                     Ordering   : X_Clip_Ordering)  
        renames Xlbp_Gc.X_Set_Clip_Rectangles;

    procedure X_Set_Dashes (Display     : X_Display;  
                            Gc          : X_Gc;  
                            Dash_Offset : U_Short;  
                            Dash_List   : U_Char_Array)  
        renames Xlbp_Gc.X_Set_Dashes;

    procedure X_Set_Fill_Rule (Display   : X_Display;  
                               Gc        : X_Gc;  
                               Fill_Rule : X_Fill_Rule)  
        renames Xlbp_Gc.X_Set_Fill_Rule;

    procedure X_Set_Fill_Style (Display    : X_Display;  
                                Gc         : X_Gc;  
                                Fill_Style : X_Fill_Style)  
        renames Xlbp_Gc.X_Set_Fill_Style;

    procedure X_Set_Font (Display : X_Display;  
                          Gc      : X_Gc;  
                          Font    : X_Font) renames Xlbp_Gc.X_Set_Font;

    procedure X_Set_Foreground (Display    : X_Display;  
                                Gc         : X_Gc;  
                                Foreground : X_Pixel)  
        renames Xlbp_Gc.X_Set_Foreground;

    procedure X_Set_Function (Display : X_Display;  
                              Gc      : X_Gc;  
                              Funct   : X_Graphic_Function)  
        renames Xlbp_Gc.X_Set_Function;

    procedure X_Set_Graphics_Exposures  
                 (Display            : X_Display;  
                  Gc                 : X_Gc;  
                  Graphics_Exposures : Boolean)  
        renames Xlbp_Gc.X_Set_Graphics_Exposures;

    procedure X_Set_Line_Attributes (Display    : X_Display;  
                                     Gc         : X_Gc;  
                                     Line_Width : U_Short;  
                                     Line_Style : X_Line_Style;  
                                     Cap_Style  : X_Cap_Style;  
                                     Join_Style : X_Join_Style)  
        renames Xlbp_Gc.X_Set_Line_Attributes;

    procedure X_Set_Plane_Mask (Display    : X_Display;  
                                Gc         : X_Gc;  
                                Plane_Mask : X_Plane_Mask)  
        renames Xlbp_Gc.X_Set_Plane_Mask;

    procedure X_Set_State (Display    : X_Display;  
                           Gc         : X_Gc;  
                           Foreground : X_Pixel;  
                           Background : X_Pixel;  
                           Funct      : X_Graphic_Function;  
                           Plane_Mask : X_Plane_Mask)  
        renames Xlbp_Gc.X_Set_State;

    procedure X_Set_Stipple (Display : X_Display;  
                             Gc      : X_Gc;  
                             Stipple : X_Pixmap) renames Xlbp_Gc.X_Set_Stipple;

    procedure X_Set_Subwindow_Mode (Display        : X_Display;  
                                    Gc             : X_Gc;  
                                    Subwindow_Mode : X_Subwindow_Mode)  
        renames Xlbp_Gc.X_Set_Subwindow_Mode;

    procedure X_Set_Tile (Display : X_Display;  
                          Gc      : X_Gc;  
                          Tile    : X_Pixmap) renames Xlbp_Gc.X_Set_Tile;

    procedure X_Set_Ts_Origin (Display : X_Display;  
                               Gc : X_Gc;  
                               X : S_Short;  
                               Y : S_Short) renames Xlbp_Gc.X_Set_Ts_Origin;

    procedure Private_X_Flush_Gc (Display : X_Display;  
                                  Gc : X_Gc) renames Xlbp_Gc.Private_X_Flush_Gc;

    procedure Private_X_Flush_Gc_Cache (Display : X_Display;  
                                        Gc      : X_Gc)  
        renames Xlbp_Gc.Private_X_Flush_Gc_Cache;

--\f

------------------------------------------------------------------------------
-- Xlbp_Geometry
------------------------------------------------------------------------------

    procedure X_Parse_Geometry  
                 (Geometry :        X_String;  
                  X        : in out S_Short;  
                  Y        : in out S_Short;  
                  Width    : in out U_Short;  
                  Height   : in out U_Short;  
                  Flags    : out    X_Parse_Geometry_Flags)  
        renames Xlbp_Geometry.X_Parse_Geometry;

    procedure X_Geometry (Display :     X_Display;  
                          Screen  :     X_Screen_Number;  
                          The_Pos :     X_String;  
                          Def     :     X_String;  
                          Bwidth  :     U_Short;  
                          Fwidth  :     U_Short;  
                          Fheight :     U_Short;  
                          X_Add   :     S_Short;  
                          Y_Add   :     S_Short;  
                          X       : out S_Short;  
                          Y       : out S_Short;  
                          Width   : out U_Short;  
                          Height  : out U_Short;  
                          Flags   : out X_Parse_Geometry_Flags)  
        renames Xlbp_Geometry.X_Geometry;

    procedure X_Wm_Geometry (Display          :     X_Display;  
                             Screen           :     X_Screen_Number;  
                             User_Geometry    :     X_String;  
                             Default_Geometry :     X_String;  
                             Border_Width     :     U_Short;  
                             Hints            :     X_Size_Hints;  
                             X                : out S_Short;  
                             Y                : out S_Short;  
                             Width            : out U_Short;  
                             Height           : out U_Short;  
                             Gravity          : out X_Window_Gravity;  
                             Flags            : out X_Parse_Geometry_Flags)  
        renames Xlbp_Geometry.X_Wm_Geometry;

--\f

------------------------------------------------------------------------------
-- Xlbp_Grab
------------------------------------------------------------------------------

    procedure X_Allow_Events (Display : X_Display;  
                              Mode : X_Allow_Event_Mode;  
                              Time : X_Time) renames Xlbp_Grab.X_Allow_Events;

    procedure X_Change_Active_Pointer_Grab (Display    : X_Display;  
                                            Event_Mask : X_Event_Mask;  
                                            Cursor     : X_Cursor;  
                                            Time       : X_Time)  
        renames Xlbp_Grab.X_Change_Active_Pointer_Grab;

    procedure X_Grab_Button  
                 (Display       : X_Display;  
                  Button        : X_Button_Name;  
                  Modifiers     : X_Key_Button_Mask;  
                  Grab_Window   : X_Window;  
                  Owner_Events  : Boolean;  
                  Event_Mask    : X_Event_Mask;  
                  Pointer_Mode  : X_Grab_Mode;  
                  Keyboard_Mode : X_Grab_Mode;  
                  Confine_To    : X_Window;  
                  Cursor        : X_Cursor) renames Xlbp_Grab.X_Grab_Button;

    function X_Grab_Keyboard (Display       : X_Display;  
                              Window        : X_Window;  
                              Owner_Events  : Boolean;  
                              Pointer_Mode  : X_Grab_Mode;  
                              Keyboard_Mode : X_Grab_Mode;  
                              Time          : X_Time) return X_Grab_Status  
        renames Xlbp_Grab.X_Grab_Keyboard;

    procedure X_Grab_Key (Display       : X_Display;  
                          Key           : X_Key_Code;  
                          Modifiers     : X_Key_Button_Mask;  
                          Grab_Window   : X_Window;  
                          Owner_Events  : Boolean;  
                          Pointer_Mode  : X_Grab_Mode;  
                          Keyboard_Mode : X_Grab_Mode)  
        renames Xlbp_Grab.X_Grab_Key;

    function X_Grab_Pointer (Display       : X_Display;  
                             Grab_Window   : X_Window;  
                             Owner_Events  : Boolean;  
                             Event_Mask    : X_Event_Mask;  
                             Pointer_Mode  : X_Grab_Mode;  
                             Keyboard_Mode : X_Grab_Mode;  
                             Confine_To    : X_Window;  
                             Cursor        : X_Cursor;  
                             Time          : X_Time) return X_Grab_Status  
        renames Xlbp_Grab.X_Grab_Pointer;

    procedure X_Grab_Server (Display : X_Display)  
        renames Xlbp_Grab.X_Grab_Server;

    procedure X_Ungrab_Button (Display     : X_Display;  
                               Button      : X_Button_Name;  
                               Modifiers   : X_Key_Button_Mask;  
                               Grab_Window : X_Window)  
        renames Xlbp_Grab.X_Ungrab_Button;

    procedure X_Ungrab_Keyboard (Display : X_Display;  
                                 Time    : X_Time)  
        renames Xlbp_Grab.X_Ungrab_Keyboard;

    procedure X_Ungrab_Key (Display     : X_Display;  
                            Key         : X_Key_Code;  
                            Modifiers   : X_Key_Button_Mask;  
                            Grab_Window : X_Window)  
        renames Xlbp_Grab.X_Ungrab_Key;

    procedure X_Ungrab_Pointer (Display : X_Display;  
                                Time    : X_Time)  
        renames Xlbp_Grab.X_Ungrab_Pointer;

    procedure X_Ungrab_Server (Display : X_Display)  
        renames Xlbp_Grab.X_Ungrab_Server;

--\f

------------------------------------------------------------------------------
-- Xlbp_Graphics
------------------------------------------------------------------------------

    procedure X_Clear_Area (Display   : X_Display;  
                            Window    : X_Window;  
                            X         : S_Short;  
                            Y         : S_Short;  
                            Width     : U_Short;  
                            Height    : U_Short;  
                            Exposures : Boolean)  
        renames Xlbp_Graphics.X_Clear_Area;

    procedure X_Clear_Window (Display : X_Display;  
                              Window  : X_Window)  
        renames Xlbp_Graphics.X_Clear_Window;

    procedure X_Copy_Area (Display       : X_Display;  
                           Source        : X_Drawable;  
                           Destination   : X_Drawable;  
                           Gc            : X_Gc;  
                           Source_X      : S_Short;  
                           Source_Y      : S_Short;  
                           Width         : U_Short;  
                           Height        : U_Short;  
                           Destination_X : S_Short;  
                           Destination_Y : S_Short)  
        renames Xlbp_Graphics.X_Copy_Area;

    procedure X_Copy_Plane (Display       : X_Display;  
                            Source        : X_Drawable;  
                            Destination   : X_Drawable;  
                            Gc            : X_Gc;  
                            Source_X      : S_Short;  
                            Source_Y      : S_Short;  
                            Width         : U_Short;  
                            Height        : U_Short;  
                            Destination_X : S_Short;  
                            Destination_Y : S_Short;  
                            Bit_Plane     : X_Plane_Mask)  
        renames Xlbp_Graphics.X_Copy_Plane;

    procedure X_Draw_Arcs (Display  : X_Display;  
                           Drawable : X_Drawable;  
                           Gc       : X_Gc;  
                           Arcs     : X_Arc_Array)  
        renames Xlbp_Graphics.X_Draw_Arcs;

    procedure X_Draw_Arc (Display  : X_Display;  
                          Drawable : X_Drawable;  
                          Gc       : X_Gc;  
                          X        : S_Short;  
                          Y        : S_Short;  
                          Width    : U_Short;  
                          Height   : U_Short;  
                          Angle1   : S_Short;  
                          Angle2   : S_Short) renames Xlbp_Graphics.X_Draw_Arc;

    procedure X_Fill_Arcs (Display  : X_Display;  
                           Drawable : X_Drawable;  
                           Gc       : X_Gc;  
                           Arcs     : X_Arc_Array)  
        renames Xlbp_Graphics.X_Fill_Arcs;

    procedure X_Fill_Arc (Display  : X_Display;  
                          Drawable : X_Drawable;  
                          Gc       : X_Gc;  
                          X        : S_Short;  
                          Y        : S_Short;  
                          Width    : U_Short;  
                          Height   : U_Short;  
                          Angle1   : S_Short;  
                          Angle2   : S_Short) renames Xlbp_Graphics.X_Fill_Arc;

    procedure X_Draw_Points (Display  : X_Display;  
                             Drawable : X_Drawable;  
                             Gc       : X_Gc;  
                             Points   : X_Point_Array;  
                             Mode     : X_Coordinate_Mode)  
        renames Xlbp_Graphics.X_Draw_Points;

    procedure X_Draw_Point (Display : X_Display;  
                            Drawable : X_Drawable;  
                            Gc : X_Gc;  
                            X : S_Short;  
                            Y : S_Short) renames Xlbp_Graphics.X_Draw_Point;

    procedure X_Fill_Polygon (Display  : X_Display;  
                              Drawable : X_Drawable;  
                              Gc       : X_Gc;  
                              Points   : X_Point_Array;  
                              Shape    : X_Polygon_Shape;  
                              Mode     : X_Coordinate_Mode)  
        renames Xlbp_Graphics.X_Fill_Polygon;

    procedure X_Draw_Lines (Display  : X_Display;  
                            Drawable : X_Drawable;  
                            Gc       : X_Gc;  
                            Points   : X_Point_Array;  
                            Mode     : X_Coordinate_Mode)  
        renames Xlbp_Graphics.X_Draw_Lines;

    procedure X_Draw_Line (Display : X_Display;  
                           Drawable : X_Drawable;  
                           Gc : X_Gc;  
                           X1 : S_Short;  
                           Y1 : S_Short;  
                           X2 : S_Short;  
                           Y2 : S_Short) renames Xlbp_Graphics.X_Draw_Line;

    procedure X_Draw_Segments (Display  : X_Display;  
                               Drawable : X_Drawable;  
                               Gc       : X_Gc;  
                               Segments : X_Segment_Array)  
        renames Xlbp_Graphics.X_Draw_Segments;

    procedure X_Draw_Rectangles (Display    : X_Display;  
                                 Drawable   : X_Drawable;  
                                 Gc         : X_Gc;  
                                 Rectangles : X_Rectangle_Array)  
        renames Xlbp_Graphics.X_Draw_Rectangles;

    procedure X_Draw_Rectangle (Display  : X_Display;  
                                Drawable : X_Drawable;  
                                Gc       : X_Gc;  
                                X        : S_Short;  
                                Y        : S_Short;  
                                Width    : U_Short;  
                                Height   : U_Short)  
        renames Xlbp_Graphics.X_Draw_Rectangle;

    procedure X_Fill_Rectangles (Display    : X_Display;  
                                 Drawable   : X_Drawable;  
                                 Gc         : X_Gc;  
                                 Rectangles : X_Rectangle_Array)  
        renames Xlbp_Graphics.X_Fill_Rectangles;

    procedure X_Fill_Rectangle (Display  : X_Display;  
                                Drawable : X_Drawable;  
                                Gc       : X_Gc;  
                                X        : S_Short;  
                                Y        : S_Short;  
                                Width    : U_Short;  
                                Height   : U_Short)  
        renames Xlbp_Graphics.X_Fill_Rectangle;

--\f

------------------------------------------------------------------------------
-- Xlbp_Hint
------------------------------------------------------------------------------

    procedure X_Get_Class_Hint (Display    :     X_Display;  
                                Window     :     X_Window;  
                                Class_Hint : out X_Class_Hint;  
                                Status     : out X_Status)  
        renames Xlbp_Hint.X_Get_Class_Hint;

    procedure X_Set_Class_Hint (Display    :     X_Display;  
                                Window     :     X_Window;  
                                Class_Hint :     X_Class_Hint;  
                                Status     : out X_Status)  
        renames Xlbp_Hint.X_Set_Class_Hint;

    procedure X_Get_Wm_Colormap_Windows (Display :     X_Display;  
                                         Window  :     X_Window;  
                                         Windows : out X_Window_List;  
                                         Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Colormap_Windows;

    procedure X_Set_Wm_Colormap_Windows (Display :     X_Display;  
                                         Window  :     X_Window;  
                                         Windows :     X_Window_Array;  
                                         Status  : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Colormap_Windows;

    procedure X_Get_Rgb_Colormaps (Display   :     X_Display;  
                                   Window    :     X_Window;  
                                   Colormaps : out X_Standard_Colormap_List;  
                                   Property  :     X_Atom;  
                                   Status    : out X_Status)  
        renames Xlbp_Hint.X_Get_Rgb_Colormaps;

    procedure X_Set_Rgb_Colormaps (Display   :     X_Display;  
                                   Window    :     X_Window;  
                                   Colormaps :     X_Standard_Colormap_Array;  
                                   Property  :     X_Atom;  
                                   Status    : out X_Status)  
        renames Xlbp_Hint.X_Set_Rgb_Colormaps;

    procedure X_Get_Command (Display :     X_Display;  
                             Window  :     X_Window;  
                             Arg_V   : out X_String_Pointer_List;  
                             Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Command;

    procedure X_Set_Command (Display :     X_Display;  
                             Window  :     X_Window;  
                             Arg_V   :     X_String_Pointer_Array;  
                             Status  : out X_Status)  
        renames Xlbp_Hint.X_Set_Command;

    procedure X_Get_Icon_Sizes (Display :     X_Display;  
                                Window  :     X_Window;  
                                List    : out X_Icon_Size_List;  
                                Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Icon_Sizes;

    procedure X_Set_Icon_Sizes (Display :     X_Display;  
                                Window  :     X_Window;  
                                List    :     X_Icon_Size_Array;  
                                Status  : out X_Status)  
        renames Xlbp_Hint.X_Set_Icon_Sizes;

    procedure X_Get_Wm_Icon_Name (Display :     X_Display;  
                                  Window  :     X_Window;  
                                  Name    : out X_Text_Property;  
                                  Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Icon_Name;

    procedure X_Set_Wm_Icon_Name (Display   :     X_Display;  
                                  Window    :     X_Window;  
                                  Icon_Name :     X_Text_Property;  
                                  Status    : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Icon_Name;

    procedure X_Get_Wm_Name (Display :     X_Display;  
                             Window  :     X_Window;  
                             Name    : out X_Text_Property;  
                             Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Name;

    procedure X_Set_Wm_Name (Display :     X_Display;  
                             Window  :     X_Window;  
                             Name    :     X_Text_Property;  
                             Status  : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Name;

    procedure X_Get_Wm_Normal_Hints (Display :     X_Display;  
                                     Window  :     X_Window;  
                                     Hints   : out X_Size_Hints;  
                                     Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Normal_Hints;

    procedure X_Set_Wm_Normal_Hints (Display :     X_Display;  
                                     Window  :     X_Window;  
                                     Hints   :     X_Size_Hints;  
                                     Status  : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Normal_Hints;

    procedure X_Get_Wm_Protocols (Display   :     X_Display;  
                                  Window    :     X_Window;  
                                  Protocols : out X_Atom_List;  
                                  Status    : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Protocols;

    procedure X_Set_Wm_Protocols (Display   :     X_Display;  
                                  Window    :     X_Window;  
                                  Protocols :     X_Atom_Array;  
                                  Status    : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Protocols;

    procedure X_Get_Wm_Size_Hints (Display  :     X_Display;  
                                   Window   :     X_Window;  
                                   Property :     X_Atom;  
                                   Hints    : out X_Size_Hints;  
                                   Status   : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Size_Hints;

    procedure X_Set_Wm_Size_Hints (Display  :     X_Display;  
                                   Window   :     X_Window;  
                                   Property :     X_Atom;  
                                   Hints    :     X_Size_Hints;  
                                   Status   : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Size_Hints;

    procedure X_Set_Wm_Properties (Display     :     X_Display;  
                                   Window      :     X_Window;  
                                   Window_Name :     X_Text_Property;  
                                   Icon_Name   :     X_Text_Property;  
                                   Arg_V       :     X_String_Pointer_Array;  
                                   Normal      :     X_Size_Hints;  
                                   Wm          :     X_Wm_Hints;  
                                   Class       :     X_Class_Hint;  
                                   Status      : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Properties;

    procedure X_Set_Wm_Properties (Display     :     X_Display;  
                                   Window      :     X_Window;  
                                   Window_Name :     X_String;  
                                   Icon_Name   :     X_String;  
                                   Arg_V       :     X_String_Pointer_Array;  
                                   Normal      :     X_Size_Hints;  
                                   Wm          :     X_Wm_Hints;  
                                   Class       :     X_Class_Hint;  
                                   Status      : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Properties;

    procedure X_Get_Transient_For_Hint (Display :     X_Display;  
                                        Window  :     X_Window;  
                                        Parent  : out X_Window;  
                                        Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Transient_For_Hint;

    procedure X_Set_Transient_For_Hint (Display :     X_Display;  
                                        Window  :     X_Window;  
                                        Parent  :     X_Window;  
                                        Status  : out X_Status)  
        renames Xlbp_Hint.X_Set_Transient_For_Hint;

    procedure X_Get_Wm_Hints (Display  :     X_Display;  
                              Window   :     X_Window;  
                              Wm_Hints : out X_Wm_Hints;  
                              Status   : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Hints;

    procedure X_Set_Wm_Hints (Display  :     X_Display;  
                              Window   :     X_Window;  
                              Wm_Hints :     X_Wm_Hints;  
                              Status   : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Hints;

    procedure X_Get_Wm_Client_Machine (Display :     X_Display;  
                                       Window  :     X_Window;  
                                       Machine : out X_Text_Property;  
                                       Status  : out X_Status)  
        renames Xlbp_Hint.X_Get_Wm_Client_Machine;

    procedure X_Set_Wm_Client_Machine (Display :     X_Display;  
                                       Window  :     X_Window;  
                                       Machine :     X_Text_Property;  
                                       Status  : out X_Status)  
        renames Xlbp_Hint.X_Set_Wm_Client_Machine;

--\f

------------------------------------------------------------------------------
-- Xlbp_Host
------------------------------------------------------------------------------

    procedure X_Add_Host (Display : X_Display;  
                          Host : X_Host_Address) renames Xlbp_Host.X_Add_Host;

    procedure X_Add_Hosts (Display : X_Display;  
                           Hosts   : X_Host_Address_Array)  
        renames Xlbp_Host.X_Add_Hosts;

    function X_List_Hosts (Display : X_Display) return X_Host_List  
        renames Xlbp_Host.X_List_Hosts;

    procedure X_Remove_Host (Display : X_Display;  
                             Host    : X_Host_Address)  
        renames Xlbp_Host.X_Remove_Host;

    procedure X_Remove_Hosts (Display : X_Display;  
                              Hosts   : X_Host_Address_Array)  
        renames Xlbp_Host.X_Remove_Hosts;

    procedure X_Disable_Access_Control (Display : X_Display)  
        renames Xlbp_Host.X_Disable_Access_Control;

    procedure X_Enable_Access_Control (Display : X_Display)  
        renames Xlbp_Host.X_Enable_Access_Control;

    procedure X_Set_Access_Control (Display : X_Display;  
                                    Mode    : X_Change_Access)  
        renames Xlbp_Host.X_Set_Access_Control;

    procedure X_Kill_Client (Display  : X_Display;  
                             Resource : X_Id) renames Xlbp_Host.X_Kill_Client;

    procedure X_Set_Close_Down_Mode (Display : X_Display;  
                                     Mode    : X_Close_Down_Mode)  
        renames Xlbp_Host.X_Set_Close_Down_Mode;

    procedure X_Add_To_Save_Set (Display : X_Display;  
                                 Window  : X_Window)  
        renames Xlbp_Host.X_Add_To_Save_Set;

    procedure X_Change_Save_Set (Display : X_Display;  
                                 Window  : X_Window;  
                                 Mode    : X_Change_Save_Set_Mode)  
        renames Xlbp_Host.X_Change_Save_Set;

    procedure X_Remove_From_Save_Set (Display : X_Display;  
                                      Window  : X_Window)  
        renames Xlbp_Host.X_Remove_From_Save_Set;

--\f

------------------------------------------------------------------------------
-- Xlbp_Image
------------------------------------------------------------------------------

    function X_Create_Image (Display              : X_Display;  
                             Visual               : X_Visual;  
                             Depth                : U_Char;  
                             Format               : X_Image_Format;  
                             Offset               : U_Short;  
                             Data                 : U_Char_Array;  
                             Width                : U_Short;  
                             Height               : U_Short;  
                             Bitmap_Pad           : U_Char;  
                             Image_Bytes_Per_Line : U_Short) return X_Image  
        renames Xlbp_Image.X_Create_Image;

    function X_Create_Image (Display              : X_Display;  
                             Visual               : X_Visual;  
                             Depth                : U_Char;  
                             Format               : X_Image_Format;  
                             Offset               : U_Short;  
                             Data                 : U_Char_List;  
                             Data_Is_Shared       : Boolean;  
                             Width                : U_Short;  
                             Height               : U_Short;  
                             Bitmap_Pad           : U_Char;  
                             Image_Bytes_Per_Line : U_Short) return X_Image  
        renames Xlbp_Image.X_Create_Image;

    procedure X_Destroy_Image (Image : in out X_Image)  
        renames Xlbp_Image.X_Destroy_Image;

    procedure X_Add_Pixel (Image : X_Image;  
                           Value : X_Pixel) renames Xlbp_Image.X_Add_Pixel;

    function X_Get_Pixel (Image : X_Image;  
                          X     : S_Short;  
                          Y     : S_Short) return X_Pixel  
        renames Xlbp_Image.X_Get_Pixel;

    procedure X_Put_Pixel (Image : X_Image;  
                           X     : S_Short;  
                           Y     : S_Short;  
                           Pixel : X_Pixel) renames Xlbp_Image.X_Put_Pixel;

    function X_Sub_Image (Image  : X_Image;  
                          X      : S_Short;  
                          Y      : S_Short;  
                          Width  : U_Short;  
                          Height : U_Short) return X_Image  
        renames Xlbp_Image.X_Sub_Image;

    function X_Get_Image (Display    : X_Display;  
                          Drawable   : X_Drawable;  
                          X          : S_Short;  
                          Y          : S_Short;  
                          Width      : U_Short;  
                          Height     : U_Short;  
                          Plane_Mask : X_Plane_Mask;  
                          Format     : X_Image_Format) return X_Image  
        renames Xlbp_Image.X_Get_Image;

    procedure X_Get_Sub_Image (Display    : X_Display;  
                               Drawable   : X_Drawable;  
                               X          : S_Short;  
                               Y          : S_Short;  
                               Width      : U_Short;  
                               Height     : U_Short;  
                               Plane_Mask : X_Plane_Mask;  
                               Format     : X_Image_Format;  
                               Image      : X_Image;  
                               Image_X    : S_Short;  
                               Image_Y    : S_Short)  
        renames Xlbp_Image.X_Get_Sub_Image;

    procedure X_Put_Image (Display  : X_Display;  
                           Drawable : X_Drawable;  
                           Gc       : X_Gc;  
                           Image    : X_Image;  
                           Image_X  : U_Short;  
                           Image_Y  : U_Short;  
                           X        : S_Short;  
                           Y        : S_Short;  
                           Width    : U_Short;  
                           Height   : U_Short) renames Xlbp_Image.X_Put_Image;

--\f

------------------------------------------------------------------------------
-- Xlbp_Input_Focus
------------------------------------------------------------------------------

    procedure X_Get_Input_Focus (Display   :     X_Display;  
                                 Focus     : out X_Window;  
                                 Revert_To : out X_Revert_Focus_Mode)  
        renames Xlbp_Input_Focus.X_Get_Input_Focus;

    procedure X_Set_Input_Focus (Display   : X_Display;  
                                 Focus     : X_Window;  
                                 Revert_To : X_Revert_Focus_Mode;  
                                 Time      : X_Time)  
        renames Xlbp_Input_Focus.X_Set_Input_Focus;

    procedure X_Warp_Pointer (Display       : X_Display;  
                              Source        : X_Window;  
                              Destination   : X_Window;  
                              Source_X      : S_Short;  
                              Source_Y      : S_Short;  
                              Source_Width  : U_Short;  
                              Source_Height : U_Short;  
                              Destination_X : S_Short;  
                              Destination_Y : S_Short)  
        renames Xlbp_Input_Focus.X_Warp_Pointer;

--\f

------------------------------------------------------------------------------
-- Xlbp_Key
------------------------------------------------------------------------------

    function X_Key_Code_To_Key_Sym (Display  : X_Display;  
                                    Key_Code : X_Key_Code;  
                                    Column   : U_Char) return X_Key_Sym  
        renames Xlbp_Key.X_Key_Code_To_Key_Sym;

    function X_Key_Sym_To_Key_Code (Display    : X_Display;  
                                    Key_Symbol : X_Key_Sym) return X_Key_Code  
        renames Xlbp_Key.X_Key_Sym_To_Key_Code;

    function X_Key_Sym_To_String (Key_Symbol : X_Key_Sym) return X_String  
        renames Xlbp_Key.X_Key_Sym_To_String;

    function X_Lookup_Key_Sym (Event  : X_Event;  
                               Column : U_Char) return X_Key_Sym  
        renames Xlbp_Key.X_Lookup_Key_Sym;

    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)  
        renames Xlbp_Key.X_Lookup_String;

    procedure X_Rebind_Key_Sym (Display       : X_Display;  
                                Key_Symbol    : X_Key_Sym;  
                                Modifier_List : X_Key_Sym_Array;  
                                Binding       : X_String)  
        renames Xlbp_Key.X_Rebind_Key_Sym;

    function X_String_To_Key_Sym (Name : X_String) return X_Key_Sym  
        renames Xlbp_Key.X_String_To_Key_Sym;

    procedure X_Refresh_Keyboard_Mapping (Event : X_Event)  
        renames Xlbp_Key.X_Refresh_Keyboard_Mapping;

    function X_Is_Keypad_Key (Key_Symbol : X_Key_Sym) return Boolean  
        renames Xlbp_Key.X_Is_Keypad_Key;

    function X_Is_Cursor_Key (Key_Symbol : X_Key_Sym) return Boolean  
        renames Xlbp_Key.X_Is_Cursor_Key;

    function X_Is_Pf_Key (Key_Symbol : X_Key_Sym) return Boolean  
        renames Xlbp_Key.X_Is_Pf_Key;

    function X_Is_Function_Key (Key_Symbol : X_Key_Sym) return Boolean  
        renames Xlbp_Key.X_Is_Function_Key;

    function X_Is_Misc_Function_Key (Key_Symbol : X_Key_Sym) return Boolean  
        renames Xlbp_Key.X_Is_Misc_Function_Key;

    function X_Is_Modifier_Key (Key_Symbol : X_Key_Sym) return Boolean  
        renames Xlbp_Key.X_Is_Modifier_Key;

--\f

------------------------------------------------------------------------------
-- Xlbp_Keyboard_Control
------------------------------------------------------------------------------

    procedure X_Auto_Repeat_On (Display : X_Display)  
        renames Xlbp_Keyboard_Control.X_Auto_Repeat_On;

    procedure X_Auto_Repeat_Off (Display : X_Display)  
        renames Xlbp_Keyboard_Control.X_Auto_Repeat_Off;

    procedure X_Bell (Display : X_Display;  
                      Percent : S_Percent) renames Xlbp_Keyboard_Control.X_Bell;

    procedure X_Change_Keyboard_Control (Display     : X_Display;  
                                         Values_Mask : X_Keyboard_Control_Flags;  
                                         Values      : X_Keyboard_Control)  
        renames Xlbp_Keyboard_Control.X_Change_Keyboard_Control;

    procedure X_Get_Keyboard_Control (Display :     X_Display;  
                                      State   : out X_Keyboard_State)  
        renames Xlbp_Keyboard_Control.X_Get_Keyboard_Control;

    procedure X_Query_Keymap (Display :     X_Display;  
                              Keys    : out X_Keyboard_As_Bits)  
        renames Xlbp_Keyboard_Control.X_Query_Keymap;

--\f

------------------------------------------------------------------------------
-- Xlbp_Keyboard_Encoding
------------------------------------------------------------------------------

    procedure X_Change_Keyboard_Mapping (Display : X_Display;  
                                         Mapping : X_Key_Sym_Array_2d)  
        renames Xlbp_Keyboard_Encoding.X_Change_Keyboard_Mapping;

    procedure X_Delete_Modifier_Map_Entry (Map      : in out X_Modifier_Keymap;  
                                           Key_Code :        X_Key_Code;  
                                           Modifier :        X_Key_Modifier)  
        renames Xlbp_Keyboard_Encoding.X_Delete_Modifier_Map_Entry;

    procedure X_Display_Key_Codes (Display      :     X_Display;  
                                   Min_Key_Code : out X_Key_Code;  
                                   Max_Key_Code : out X_Key_Code)  
        renames Xlbp_Keyboard_Encoding.X_Display_Key_Codes;

    procedure X_Free_Modifier_Map (Map : in out X_Modifier_Keymap)  
        renames Xlbp_Keyboard_Encoding.X_Free_Modifier_Map;

    function X_Get_Keyboard_Mapping  
                (Display        : X_Display;  
                 First_Key_Code : X_Key_Code;  
                 Last_Key_Code  : X_Key_Code) return X_Key_Sym_List_2d  
        renames Xlbp_Keyboard_Encoding.X_Get_Keyboard_Mapping;

    function X_Get_Modifier_Mapping  
                (Display : X_Display) return X_Modifier_Keymap  
        renames Xlbp_Keyboard_Encoding.X_Get_Modifier_Mapping;

    procedure X_Insert_Modifier_Map_Entry (Map      : in out X_Modifier_Keymap;  
                                           Key_Code :        X_Key_Code;  
                                           Modifier :        X_Key_Modifier)  
        renames Xlbp_Keyboard_Encoding.X_Insert_Modifier_Map_Entry;

    function X_New_Modifier_Map  
                (Keys_Per_Modifier : U_Char) return X_Modifier_Keymap  
        renames Xlbp_Keyboard_Encoding.X_New_Modifier_Map;

    function X_Set_Modifier_Mapping  
                (Display      : X_Display;  
                 Modifier_Map : X_Modifier_Keymap) return X_Mapping_Status  
        renames Xlbp_Keyboard_Encoding.X_Set_Modifier_Mapping;

--\f

------------------------------------------------------------------------------
-- Xlbp_Pixmap
------------------------------------------------------------------------------

    function X_Create_Pixmap (Display  : X_Display;  
                              Drawable : X_Drawable;  
                              Width    : U_Short_Positive;  
                              Height   : U_Short_Positive;  
                              Depth    : U_Char) return X_Pixmap  
        renames Xlbp_Pixmap.X_Create_Pixmap;

    procedure X_Free_Pixmap (Display : X_Display;  
                             Pixmap  : X_Pixmap)  
        renames Xlbp_Pixmap.X_Free_Pixmap;

--\f

------------------------------------------------------------------------------
-- Xlbp_Pointer_Control
------------------------------------------------------------------------------

    procedure X_Change_Pointer_Control (Display                : X_Display;  
                                        Do_Accelerate          : Boolean;  
                                        Do_Threshold           : Boolean;  
                                        Accelerate_Numerator   : S_Short;  
                                        Accelerate_Denominator : S_Short;  
                                        Threshold              : S_Short)  
        renames Xlbp_Pointer_Control.X_Change_Pointer_Control;

    procedure X_Get_Pointer_Control (Display                :     X_Display;  
                                     Accelerate_Numerator   : out U_Short;  
                                     Accelerate_Denominator : out U_Short;  
                                     Threshold              : out U_Short)  
        renames Xlbp_Pointer_Control.X_Get_Pointer_Control;

    procedure X_Get_Pointer_Mapping (Display :     X_Display;  
                                     Map     : out X_Key_Code_List;  
                                     Status  : out X_Mapping_Status)  
        renames Xlbp_Pointer_Control.X_Get_Pointer_Mapping;

    procedure X_Set_Pointer_Mapping (Display :     X_Display;  
                                     Map     :     X_Key_Code_Array;  
                                     Status  : out X_Mapping_Status)  
        renames Xlbp_Pointer_Control.X_Set_Pointer_Mapping;

--\f

------------------------------------------------------------------------------
-- Xlbp_Pointer_Motion
------------------------------------------------------------------------------

    function X_Display_Motion_Buffer_Size (Display : X_Display) return S_Long  
        renames Xlbp_Pointer_Motion.X_Display_Motion_Buffer_Size;

    function X_Get_Motion_Events (Display : X_Display;  
                                  Window  : X_Window;  
                                  Start   : X_Time;  
                                  Stop    : X_Time)  
                                 return X_Time_Coord_List  
        renames Xlbp_Pointer_Motion.X_Get_Motion_Events;

--\f

------------------------------------------------------------------------------
-- Xlbp_Region
------------------------------------------------------------------------------

    function X_Polygon_Region (Points : X_Point_Array;    -- the points
                               Rule   : X_Fill_Rule   -- winding rule
                               ) return X_Region  
        renames Xlbp_Region.X_Polygon_Region;

    function X_Create_Region return X_Region  
        renames Xlbp_Region.X_Create_Region;

    procedure X_Clip_Box (Region    :     X_Region;  
                          Rectangle : out X_Rectangle)  
        renames Xlbp_Region.X_Clip_Box;

    procedure X_Destroy_Region (Region : in out X_Region)  
        renames Xlbp_Region.X_Destroy_Region;

    procedure X_Intersect_Region (Region1    : X_Region;  
                                  Region2    : X_Region;  
                                  New_Region : X_Region)  
        renames Xlbp_Region.X_Intersect_Region;

    function X_Empty_Region (Region : X_Region) return Boolean  
        renames Xlbp_Region.X_Empty_Region;

    function X_Equal_Region (Region1 : X_Region;  
                             Region2 : X_Region) return Boolean  
        renames Xlbp_Region.X_Equal_Region;

    procedure X_Offset_Region (Region : X_Region;  
                               Dx     : S_Short;  
                               Dy     : S_Short)  
        renames Xlbp_Region.X_Offset_Region;

    function X_Point_In_Region (Region : X_Region;  
                                X      : S_Short;  
                                Y      : S_Short) return Boolean  
        renames Xlbp_Region.X_Point_In_Region;

    function X_Rect_In_Region (Region : X_Region;  
                               X      : S_Short;  
                               Y      : S_Short;  
                               Width  : U_Short;  
                               Height : U_Short) return X_Rect_In_Region_Returns  
        renames Xlbp_Region.X_Rect_In_Region;

    procedure X_Set_Region (Display : X_Display;  
                            Gc : X_Gc;  
                            Region : X_Region) renames Xlbp_Region.X_Set_Region;

    procedure X_Shrink_Region (Region : X_Region;  
                               Dx     : S_Short;  
                               Dy     : S_Short)  
        renames Xlbp_Region.X_Shrink_Region;

    procedure X_Subtract_Region (Region1    : X_Region;  
                                 Region2    : X_Region;  
                                 New_Region : X_Region)  
        renames Xlbp_Region.X_Subtract_Region;

    procedure X_Union_Rect_With_Region (Rectangle  : X_Rectangle;  
                                        Region     : X_Region;  
                                        New_Region : X_Region)  
        renames Xlbp_Region.X_Union_Rect_With_Region;

    procedure X_Union_Region (Region1    : X_Region;  
                              Region2    : X_Region;  
                              New_Region : X_Region)  
        renames Xlbp_Region.X_Union_Region;

    procedure X_Xor_Region (Region1    : X_Region;  
                            Region2    : X_Region;  
                            New_Region : X_Region)  
        renames Xlbp_Region.X_Xor_Region;

--\f

------------------------------------------------------------------------------
-- Xlbp_Rm
------------------------------------------------------------------------------

    function X_New_Rm_Database return X_Rm_Database  
        renames Xlbp_Rm.X_New_Rm_Database;

    procedure X_Rm_Get_Resource (Database       :     X_Rm_Database;  
                                 Name           :     X_String;  
                                 Class          :     X_String;  
                                 Representation : out X_Rm_Representation;  
                                 Value          : out X_Rm_Value)  
        renames Xlbp_Rm.X_Rm_Get_Resource;

    procedure X_Rm_Get_Resource (Database       :     X_Rm_Database;  
                                 Names          :     X_Rm_Name_Array;  
                                 Classes        :     X_Rm_Class_Array;  
                                 Representation : out X_Rm_Representation;  
                                 Value          : out X_Rm_Value)  
        renames Xlbp_Rm.X_Rm_Get_Resource;

    procedure X_Rm_Put_Resource (Database       : in out X_Rm_Database;  
                                 Bindings       :        X_Rm_Binding_Array;  
                                 Names          :        X_Rm_Name_Array;  
                                 Representation :        X_Rm_Representation;  
                                 Value          :        X_Rm_Value;  
                                 Db_Owner       :        Boolean := True)  
        renames Xlbp_Rm.X_Rm_Put_Resource;

    procedure X_Rm_Put_Resource (Database       : in out X_Rm_Database;  
                                 Bindings       :        X_Rm_Binding_Array;  
                                 Classes        :        X_Rm_Class_Array;  
                                 Representation :        X_Rm_Representation;  
                                 Value          :        X_Rm_Value;  
                                 Db_Owner       :        Boolean := True)  
        renames Xlbp_Rm.X_Rm_Put_Resource;

    procedure X_Rm_Put_Resource (Database       : in out X_Rm_Database;  
                                 Bindings       :        X_Rm_Binding_Array;  
                                 Quarks         :        X_Rm_Quark_Array;  
                                 Representation :        X_Rm_Representation;  
                                 Value          :        X_Rm_Value;  
                                 Db_Owner       :        Boolean := True)  
        renames Xlbp_Rm.X_Rm_Put_Resource;

    procedure X_Rm_Put_String_Resource  
                 (Database : in out X_Rm_Database;  
                  Bindings : X_Rm_Binding_Array;  
                  Names    : X_Rm_Name_Array;  
                  Value    : X_String) renames Xlbp_Rm.X_Rm_Put_String_Resource;

    procedure X_Rm_Put_Resource (Database       : in out X_Rm_Database;  
                                 Specifier      :        X_String;  
                                 Representation :        X_String;  
                                 Value          :        X_Rm_Value;  
                                 Db_Owner       :        Boolean := True)  
        renames Xlbp_Rm.X_Rm_Put_Resource;

    procedure X_Rm_Put_String_Resource (Database  : in out X_Rm_Database;  
                                        Specifier :        X_String;  
                                        Value     :        X_String)  
        renames Xlbp_Rm.X_Rm_Put_String_Resource;

    function X_Rm_Get_Search_List (Database : X_Rm_Database;  
                                   Names    : X_Rm_Name_Array;  
                                   Classes  : X_Rm_Class_Array)  
                                  return X_Rm_Search_List  
        renames Xlbp_Rm.X_Rm_Get_Search_List;

    procedure X_Rm_Get_Search_Resource  
                 (List           :     X_Rm_Search_List;  
                  Name           :     X_Rm_Name;  
                  Class          :     X_Rm_Class;  
                  Representation : out X_Rm_Representation;  
                  Value          : out X_Rm_Value)  
        renames Xlbp_Rm.X_Rm_Get_Search_Resource;

    procedure X_Rm_Get_File_Database (Filename :     String;  
                                      Database : out X_Rm_Database;  
                                      Status   : out X_Rm_Status)  
        renames Xlbp_Rm.X_Rm_Get_File_Database;

    procedure X_Rm_Get_String_Database (Data     :     X_String;  
                                        Database : out X_Rm_Database;  
                                        Status   : out X_Rm_Status)  
        renames Xlbp_Rm.X_Rm_Get_String_Database;

    procedure X_Rm_Add_Resource (Database : in out X_Rm_Database;  
                                 Line     :        X_String;  
                                 Status   : out    X_Rm_Status)  
        renames Xlbp_Rm.X_Rm_Add_Resource;

    procedure X_Rm_Put_Line_Resource (Database : in out X_Rm_Database;  
                                      Line     :        X_String;  
                                      Status   : out    X_Rm_Status)  
        renames Xlbp_Rm.X_Rm_Put_Line_Resource;

    procedure X_Rm_Put_File_Database (Filename :     String;  
                                      Database :     X_Rm_Database;  
                                      Status   : out X_Rm_Status)  
        renames Xlbp_Rm.X_Rm_Put_File_Database;

    procedure X_Rm_Merge_Databases (Source      : in out X_Rm_Database;  
                                    Destination :        X_Rm_Database;  
                                    Status      : out    X_Rm_Status)  
        renames Xlbp_Rm.X_Rm_Merge_Databases;

    procedure Free_X_Rm_Database (Database : in out X_Rm_Database)  
        renames Xlbp_Rm.Free_X_Rm_Database;

    procedure X_Rm_Destroy_Database (Database : in out X_Rm_Database)  
        renames Xlbp_Rm.X_Rm_Destroy_Database;

    procedure X_Get_Default (Display        :     X_Display;  
                             Program        :     X_String;  
                             Option         :     X_String;  
                             Representation : out X_Rm_Representation;  
                             Value          : out X_Rm_Value)  
        renames Xlbp_Rm.X_Get_Default;

    procedure X_Rm_Parse_Command  
                 (Database : in out X_Rm_Database;  
                  Options : X_Rm_Option_Desc_Array;  
                  Prefix : X_String;  
                  Arg_C : in out S_Natural;  
                  Arg_V : in out X_String_Pointer_Array;  
                  Status : out X_Rm_Status) renames Xlbp_Rm.X_Rm_Parse_Command;

--\f

------------------------------------------------------------------------------
-- Xlbp_Rm_Name
------------------------------------------------------------------------------

    function X_Rm_Class_To_String (Class : X_Rm_Class) return X_String  
        renames Xlbp_Rm_Name.X_Rm_Class_To_String;

    function X_Rm_String_To_Class (Str      : X_String;  
                                   Validate : Boolean := True) return X_Rm_Class  
        renames Xlbp_Rm_Name.X_Rm_String_To_Class;

    procedure X_Rm_String_To_Class_List (Str  :     X_String;  
                                         List : out X_Rm_Class_Array)  
        renames Xlbp_Rm_Name.X_Rm_String_To_Class_List;

    procedure X_Rm_String_To_Binding_Class_List  
                 (Str      :     X_String;  
                  Bindings : out X_Rm_Binding_Array;  
                  List     : out X_Rm_Class_Array)  
        renames Xlbp_Rm_Name.X_Rm_String_To_Binding_Class_List;

    function X_Rm_Unique_Class return X_Rm_Class  
        renames Xlbp_Rm_Name.X_Rm_Unique_Class;

    function X_Rm_Name_To_String (Name : X_Rm_Name) return X_String  
        renames Xlbp_Rm_Name.X_Rm_Name_To_String;

    function X_Rm_String_To_Name (Str      : X_String;  
                                  Validate : Boolean := True) return X_Rm_Name  
        renames Xlbp_Rm_Name.X_Rm_String_To_Name;

    procedure X_Rm_String_To_Name_List (Str  :     X_String;  
                                        List : out X_Rm_Name_Array)  
        renames Xlbp_Rm_Name.X_Rm_String_To_Name_List;

    procedure X_Rm_String_To_Binding_Name_List  
                 (Str      :     X_String;  
                  Bindings : out X_Rm_Binding_Array;  
                  List     : out X_Rm_Name_Array)  
        renames Xlbp_Rm_Name.X_Rm_String_To_Binding_Name_List;

    function X_Rm_Unique_Name return X_Rm_Name  
        renames Xlbp_Rm_Name.X_Rm_Unique_Name;

    function X_Rm_Representation_To_String  
                (Representation : X_Rm_Representation)  
                return X_String  
        renames Xlbp_Rm_Name.X_Rm_Representation_To_String;

    function X_Rm_String_To_Representation (Str      : X_String;  
                                            Validate : Boolean := True)  
                                           return X_Rm_Representation  
        renames Xlbp_Rm_Name.X_Rm_String_To_Representation;

    procedure X_Rm_String_To_Representation_List  
                 (Str  :     X_String;  
                  List : out X_Rm_Representation_Array)  
        renames Xlbp_Rm_Name.X_Rm_String_To_Representation_List;

    procedure X_Rm_String_To_Binding_Representation_List  
                 (Str      :     X_String;  
                  Bindings : out X_Rm_Binding_Array;  
                  List     : out X_Rm_Representation_Array)  
        renames Xlbp_Rm_Name.X_Rm_String_To_Binding_Representation_List;

    function X_Rm_Unique_Representation return X_Rm_Representation  
        renames Xlbp_Rm_Name.X_Rm_Unique_Representation;

--\f

------------------------------------------------------------------------------
-- Xlbp_Rm_Quark
------------------------------------------------------------------------------

    function X_Rm_Quark_To_String (Quark : X_Rm_Quark) return X_String  
        renames Xlbp_Rm_Quark.X_Rm_Quark_To_String;

    function X_Rm_String_To_Quark  
                (Name     : X_String;  
                 Validate : Boolean := False) return X_Rm_Quark  
        renames Xlbp_Rm_Quark.X_Rm_String_To_Quark;

    function X_Rm_Unique_Quark return X_Rm_Quark  
        renames Xlbp_Rm_Quark.X_Rm_Unique_Quark;

--\f

------------------------------------------------------------------------------
-- Xlbp_Screen_Saver
------------------------------------------------------------------------------

    procedure X_Activate_Screen_Saver (Display : X_Display)  
        renames Xlbp_Screen_Saver.X_Activate_Screen_Saver;

    procedure X_Force_Screen_Saver (Display : X_Display;  
                                    Mode    : X_Screen_Saver_Mode)  
        renames Xlbp_Screen_Saver.X_Force_Screen_Saver;

    procedure X_Get_Screen_Saver  
                 (Display         :     X_Display;  
                  Timeout         : out U_Short;  
                  Interval        : out U_Short;  
                  Prefer_Blanking : out X_Screen_Saver_Blanking;  
                  Allow_Exposures : out X_Screen_Saver_Exposures)  
        renames Xlbp_Screen_Saver.X_Get_Screen_Saver;

    procedure X_Reset_Screen_Saver (Display : X_Display)  
        renames Xlbp_Screen_Saver.X_Reset_Screen_Saver;

    Disable_Screen_Saver    : U_Short  
        renames Xlbp_Screen_Saver.Disable_Screen_Saver;  
    Disable_Screen_Interval : U_Short  
        renames Xlbp_Screen_Saver.Disable_Screen_Interval;

    procedure X_Set_Screen_Saver (Display         : X_Display;  
                                  Timeout         : U_Short;  
                                  Interval        : U_Short;  
                                  Prefer_Blanking : X_Screen_Saver_Blanking;  
                                  Allow_Exposures : X_Screen_Saver_Exposures)  
        renames Xlbp_Screen_Saver.X_Set_Screen_Saver;

--\f

------------------------------------------------------------------------------
-- Xlbp_Selection
------------------------------------------------------------------------------

    procedure X_Convert_Selection (Display   : X_Display;  
                                   Selection : X_Atom;  
                                   Target    : X_Atom;  
                                   Property  : X_Atom;  
                                   Requestor : X_Window;  
                                   Time      : X_Time)  
        renames Xlbp_Selection.X_Convert_Selection;

    function X_Get_Selection_Owner (Display   : X_Display;  
                                    Selection : X_Atom) return X_Window  
        renames Xlbp_Selection.X_Get_Selection_Owner;

    procedure X_Set_Selection_Owner (Display   : X_Display;  
                                     Selection : X_Atom;  
                                     Owner     : X_Window;  
                                     Time      : X_Time)  
        renames Xlbp_Selection.X_Set_Selection_Owner;

--\f

------------------------------------------------------------------------------
-- Xlbp_Sync
------------------------------------------------------------------------------

    procedure X_Sync (Display : X_Display;  
                      Discard : Boolean) renames Xlbp_Sync.X_Sync;

    function X_Synchronize (Display : X_Display;  
                            Onoff   : Boolean) return Proc_Var_X_Synchandler.Pv  
        renames Xlbp_Sync.X_Synchronize;

    function X_Set_After_Function (Display : X_Display;  
                                   Funct   : Proc_Var_X_Synchandler.Pv)  
                                  return Proc_Var_X_Synchandler.Pv  
        renames Xlbp_Sync.X_Set_After_Function;

--\f

------------------------------------------------------------------------------
-- Xlbp_Text16
------------------------------------------------------------------------------

    procedure X_Draw_String16 (Display  : X_Display;  
                               Drawable : X_Drawable;  
                               Gc       : X_Gc;  
                               X        : S_Short;  
                               Y        : S_Short;  
                               Text     : X_String16)  
        renames Xlbp_Text16.X_Draw_String16;

    procedure X_Draw_Image_String16 (Display  : X_Display;  
                                     Drawable : X_Drawable;  
                                     Gc       : X_Gc;  
                                     X        : S_Short;  
                                     Y        : S_Short;  
                                     Text     : X_String16)  
        renames Xlbp_Text16.X_Draw_Image_String16;

    procedure X_Draw_Text16 (Display  : X_Display;  
                             Drawable : X_Drawable;  
                             Gc       : X_Gc;  
                             X        : S_Short;  
                             Y        : S_Short;  
                             Items    : X_Text_Item16_Array)  
        renames Xlbp_Text16.X_Draw_Text16;

    procedure X_Query_Text_Extents16 (Display      :     X_Display;  
                                      Font         :     X_Font;  
                                      Text         :     X_String16;  
                                      Direction    : out X_Font_Direction;  
                                      Font_Ascent  : out S_Short;  
                                      Font_Descent : out S_Short;  
                                      Overall      : out X_Char_Struct)  
        renames Xlbp_Text16.X_Query_Text_Extents16;

    procedure X_Text_Extents16 (Font         :     X_Font_Struct;  
                                Text         :     X_String16;  
                                Direction    : out X_Font_Direction;  
                                Font_Ascent  : out S_Short;  
                                Font_Descent : out S_Short;  
                                Overall      : out X_Char_Struct)  
        renames Xlbp_Text16.X_Text_Extents16;

    function X_Text_Width16 (Font : X_Font_Struct;  
                             Text : X_String16) return S_Long  
        renames Xlbp_Text16.X_Text_Width16;

--\f

------------------------------------------------------------------------------
-- Xlbp_Text
------------------------------------------------------------------------------

    procedure X_Draw_String  
                 (Display  : X_Display;  
                  Drawable : X_Drawable;  
                  Gc       : X_Gc;  
                  X        : S_Short;  
                  Y        : S_Short;  
                  Text     : X_String) renames Xlbp_Text.X_Draw_String;

    procedure X_Draw_Image_String (Display  : X_Display;  
                                   Drawable : X_Drawable;  
                                   Gc       : X_Gc;  
                                   X        : S_Short;  
                                   Y        : S_Short;  
                                   Text     : X_String)  
        renames Xlbp_Text.X_Draw_Image_String;

    procedure X_Draw_Text (Display  : X_Display;  
                           Drawable : X_Drawable;  
                           Gc       : X_Gc;  
                           X        : S_Short;  
                           Y        : S_Short;  
                           Items    : X_Text_Item_Array)  
        renames Xlbp_Text.X_Draw_Text;

    procedure X_Query_Text_Extents (Display      :     X_Display;  
                                    Font         :     X_Font;  
                                    Text         :     X_String;  
                                    Direction    : out X_Font_Direction;  
                                    Font_Ascent  : out S_Short;  
                                    Font_Descent : out S_Short;  
                                    Overall      : out X_Char_Struct)  
        renames Xlbp_Text.X_Query_Text_Extents;

    procedure X_Text_Extents (Font         :     X_Font_Struct;  
                              Text         :     X_String;  
                              Direction    : out X_Font_Direction;  
                              Font_Ascent  : out S_Short;  
                              Font_Descent : out S_Short;  
                              Overall      : out X_Char_Struct)  
        renames Xlbp_Text.X_Text_Extents;

    function X_Text_Width (Font : X_Font_Struct;  
                           Text : X_String) return S_Long  
        renames Xlbp_Text.X_Text_Width;

--\f

------------------------------------------------------------------------------
-- Xlbp_Visual
------------------------------------------------------------------------------

    function X_Get_Visual_Info (Display     : X_Display;  
                                Values_Mask : X_Visual_Info_Flags;  
                                Values      : X_Visual_Info)  
                               return X_Visual_Info_List  
        renames Xlbp_Visual.X_Get_Visual_Info;

    procedure X_Match_Visual_Info  
                 (Display :     X_Display;  
                  Screen  :     X_Screen_Number;  
                  Depth   :     U_Char;  
                  Class   :     X_Display_Class;  
                  Values  : out X_Visual_Info;  
                  Status  : out X_Status)  
        renames Xlbp_Visual.X_Match_Visual_Info;

--\f

------------------------------------------------------------------------------
-- Xlbp_Window
------------------------------------------------------------------------------

    procedure X_Change_Window_Attributes (Display     : X_Display;  
                                          Window      : X_Window;  
                                          Values_Mask : X_New_Window_Attributes;  
                                          Values      : X_Set_Window_Attributes)  
        renames Xlbp_Window.X_Change_Window_Attributes;

    procedure X_Circulate_Subwindows (Display   : X_Display;  
                                      Window    : X_Window;  
                                      Direction : X_Circulate_Place)  
        renames Xlbp_Window.X_Circulate_Subwindows;

    procedure X_Circulate_Subwindows_Down (Display : X_Display;  
                                           Window  : X_Window)  
        renames Xlbp_Window.X_Circulate_Subwindows_Down;

    procedure X_Circulate_Subwindows_Up (Display : X_Display;  
                                         Window  : X_Window)  
        renames Xlbp_Window.X_Circulate_Subwindows_Up;

    procedure X_Configure_Window (Display     : X_Display;  
                                  Window      : X_Window;  
                                  Values_Mask : X_Window_Changes_Mask;  
                                  Values      : X_Window_Changes)  
        renames Xlbp_Window.X_Configure_Window;

    function X_Create_Simple_Window  
                (Display      : X_Display;  
                 Parent       : X_Window;  
                 X            : S_Short;  
                 Y            : S_Short;  
                 Width        : U_Short_Positive;  
                 Height       : U_Short_Positive;  
                 Border_Width : U_Short;  
                 Border       : X_Pixel;  
                 Background   : X_Pixel) return X_Window  
        renames Xlbp_Window.X_Create_Simple_Window;

    function X_Create_Window (Display : X_Display;  
                              Parent : X_Window;  
                              X : S_Short;  
                              Y : S_Short;  
                              Width : U_Short_Positive;  
                              Height : U_Short_Positive;  
                              Border_Width : U_Short;  
                              Depth : U_Char;  
                              Class : X_Window_Class;  
                              Visual : X_Visual;  
                              Values_Mask : X_New_Window_Attributes;  
                              Values : X_Set_Window_Attributes) return X_Window  
        renames Xlbp_Window.X_Create_Window;

    procedure X_Destroy_Subwindows (Display : X_Display;  
                                    Window  : X_Window)  
        renames Xlbp_Window.X_Destroy_Subwindows;

    procedure X_Destroy_Window (Display : X_Display;  
                                Window  : X_Window)  
        renames Xlbp_Window.X_Destroy_Window;

    procedure X_Iconify_Window (Display :     X_Display;  
                                Window  :     X_Window;  
                                Screen  :     X_Screen_Number;  
                                Status  : out X_Status)  
        renames Xlbp_Window.X_Iconify_Window;

    procedure X_Lower_Window (Display : X_Display;  
                              Window  : X_Window)  
        renames Xlbp_Window.X_Lower_Window;

    procedure X_Map_Raised (Display : X_Display;  
                            Window : X_Window) renames Xlbp_Window.X_Map_Raised;

    procedure X_Map_Subwindows (Display : X_Display;  
                                Window  : X_Window)  
        renames Xlbp_Window.X_Map_Subwindows;

    procedure X_Map_Window (Display : X_Display;  
                            Window : X_Window) renames Xlbp_Window.X_Map_Window;

    procedure X_Move_Resize_Window (Display : X_Display;  
                                    Window  : X_Window;  
                                    X       : S_Short;  
                                    Y       : S_Short;  
                                    Width   : U_Short_Positive;  
                                    Height  : U_Short_Positive)  
        renames Xlbp_Window.X_Move_Resize_Window;

    procedure X_Move_Window (Display : X_Display;  
                             Window : X_Window;  
                             X : S_Short;  
                             Y : S_Short) renames Xlbp_Window.X_Move_Window;

    procedure X_Raise_Window (Display : X_Display;  
                              Window  : X_Window)  
        renames Xlbp_Window.X_Raise_Window;

    procedure X_Reconfigure_Wm_Window (Display     :     X_Display;  
                                       Window      :     X_Window;  
                                       Screen      :     X_Screen_Number;  
                                       Values_Mask :     X_Window_Changes_Mask;  
                                       Values      :     X_Window_Changes;  
                                       Status      : out X_Status)  
        renames Xlbp_Window.X_Reconfigure_Wm_Window;

    procedure X_Reparent_Window (Display : X_Display;  
                                 Window  : X_Window;  
                                 Parent  : X_Window;  
                                 X       : S_Short;  
                                 Y       : S_Short)  
        renames Xlbp_Window.X_Reparent_Window;

    procedure X_Resize_Window (Display : X_Display;  
                               Window  : X_Window;  
                               Width   : U_Short_Positive;  
                               Height  : U_Short_Positive)  
        renames Xlbp_Window.X_Resize_Window;

    procedure X_Restack_Windows (Display : X_Display;  
                                 Windows : X_Window_Array)  
        renames Xlbp_Window.X_Restack_Windows;

    procedure X_Set_Window_Background (Display : X_Display;  
                                       Window  : X_Window;  
                                       Pixel   : X_Pixel)  
        renames Xlbp_Window.X_Set_Window_Background;

    procedure X_Set_Window_Background_Pixmap (Display : X_Display;  
                                              Window  : X_Window;  
                                              Pixmap  : X_Pixmap)  
        renames Xlbp_Window.X_Set_Window_Background_Pixmap;

    procedure X_Set_Window_Border (Display : X_Display;  
                                   Window  : X_Window;  
                                   Pixel   : X_Pixel)  
        renames Xlbp_Window.X_Set_Window_Border;

    procedure X_Set_Window_Border_Pixmap (Display : X_Display;  
                                          Window  : X_Window;  
                                          Pixmap  : X_Pixmap)  
        renames Xlbp_Window.X_Set_Window_Border_Pixmap;

    procedure X_Set_Window_Border_Width (Display : X_Display;  
                                         Window  : X_Window;  
                                         Width   : U_Short)  
        renames Xlbp_Window.X_Set_Window_Border_Width;

    procedure X_Unmap_Subwindows (Display : X_Display;  
                                  Window  : X_Window)  
        renames Xlbp_Window.X_Unmap_Subwindows;

    procedure X_Unmap_Window (Display : X_Display;  
                              Window  : X_Window)  
        renames Xlbp_Window.X_Unmap_Window;

    procedure X_Withdraw_Window (Display :     X_Display;  
                                 Window  :     X_Window;  
                                 Screen  :     X_Screen_Number;  
                                 Status  : out X_Status)  
        renames Xlbp_Window.X_Withdraw_Window;

--\f

------------------------------------------------------------------------------
-- Xlbp_Window_Information
------------------------------------------------------------------------------

    procedure X_Get_Geometry (Display      :     X_Display;  
                              Drawable     :     X_Drawable;  
                              Root         : out X_Window;  
                              X            : out S_Short;  
                              Y            : out S_Short;  
                              Width        : out U_Short;  
                              Height       : out U_Short;  
                              Border_Width : out U_Short;  
                              Depth        : out U_Char;  
                              Status       : out X_Status)  
        renames Xlbp_Window_Information.X_Get_Geometry;

    procedure X_Get_Window_Attributes (Display :        X_Display;  
                                       Window  :        X_Window;  
                                       Att     : in out X_Window_Attributes;  
                                       Status  : out    X_Status)  
        renames Xlbp_Window_Information.X_Get_Window_Attributes;

    procedure X_Query_Pointer (Display     :     X_Display;  
                               Window      :     X_Window;  
                               Root        : out X_Window;  
                               Child       : out X_Window;  
                               Root_X      : out U_Short;  
                               Root_Y      : out U_Short;  
                               Win_X       : out S_Short;  
                               Win_Y       : out S_Short;  
                               Mask        : out X_Key_Button_Mask;  
                               Same_Screen : out Boolean)  
        renames Xlbp_Window_Information.X_Query_Pointer;

    procedure X_Query_Tree (Display  :     X_Display;  
                            Window   :     X_Window;  
                            Root     : out X_Window;  
                            Parent   : out X_Window;  
                            Children : out X_Window_List;  
                            Status   : out X_Status)  
        renames Xlbp_Window_Information.X_Query_Tree;

    procedure X_Translate_Coordinates (Display       :     X_Display;  
                                       Source        :     X_Window;  
                                       Destination   :     X_Window;  
                                       Source_X      :     S_Short;  
                                       Source_Y      :     S_Short;  
                                       Destination_X : out S_Short;  
                                       Destination_Y : out S_Short;  
                                       Child         : out X_Window;  
                                       Same_Screen   : out Boolean)  
        renames Xlbp_Window_Information.X_Translate_Coordinates;

--\f

------------------------------------------------------------------------------
-- Xlbp_Window_Property
------------------------------------------------------------------------------

    procedure X_Change_Property (Display        : X_Display;  
                                 Window         : X_Window;  
                                 Property       : X_Atom;  
                                 Representation : X_Atom;  
                                 Format         : U_Char;  
                                 Mode           : X_Property_Mode;  
                                 Data           : U_Char_Array)  
        renames Xlbp_Window_Property.X_Change_Property;

    procedure X_Delete_Property (Display  : X_Display;  
                                 Window   : X_Window;  
                                 Property : X_Atom)  
        renames Xlbp_Window_Property.X_Delete_Property;

    procedure X_Get_Window_Property (Display        :     X_Display;  
                                     Window         :     X_Window;  
                                     Property       :     X_Atom;  
                                     Offset         :     S_Natural;  
                                     Maximum_Length :     S_Natural;  
                                     Delete         :     Boolean;  
                                     Representation :     X_Atom;  
                                     Actual_Type    : out X_Atom;  
                                     Actual_Format  : out U_Char;  
                                     N_Items        : out S_Natural;  
                                     Bytes_After    : out S_Natural;  
                                     Data           : out U_Char_List;  
                                     Status         : out X_Status)  
        renames Xlbp_Window_Property.X_Get_Window_Property;

    function X_List_Properties (Display : X_Display;  
                                Window  : X_Window) return X_Atom_List  
        renames Xlbp_Window_Property.X_List_Properties;

    procedure X_Rotate_Window_Properties  
                 (Display     : X_Display;  
                  Window      : X_Window;  
                  Properties  : X_Atom_Array;  
                  N_Positions : S_Short)  
        renames Xlbp_Window_Property.X_Rotate_Window_Properties;

    procedure X_Get_Text_Property (Display  :     X_Display;  
                                   Window   :     X_Window;  
                                   Data     : out X_Text_Property;  
                                   Property :     X_Atom;  
                                   Status   : out X_Status)  
        renames Xlbp_Window_Property.X_Get_Text_Property;

    procedure X_Get_Text_Property (Display  :     X_Display;  
                                   Window   :     X_Window;  
                                   Data     : out X_String_Pointer;  
                                   Property :     X_Atom;  
                                   Status   : out X_Status)  
        renames Xlbp_Window_Property.X_Get_Text_Property;

    procedure X_Set_Text_Property (Display  : X_Display;  
                                   Window   : X_Window;  
                                   Data     : X_Text_Property;  
                                   Property : X_Atom)  
        renames Xlbp_Window_Property.X_Set_Text_Property;

    procedure X_Set_Text_Property (Display  : X_Display;  
                                   Window   : X_Window;  
                                   Data     : X_String;  
                                   Property : X_Atom)  
        renames Xlbp_Window_Property.X_Set_Text_Property;

    procedure Free_X_Text_Property (Prop : in out X_Text_Property)  
        renames Xlbp_Window_Property.Free_X_Text_Property;

    procedure X_String_List_To_Text_Property (List :     X_String_Pointer_Array;  
                                              Data : out X_Text_Property)  
        renames Xlbp_Window_Property.X_String_List_To_Text_Property;

    procedure X_Text_Property_To_String_List (Data : X_Text_Property;  
                                              List : out X_String_Pointer_List;  
                                              Status : out X_Status)  
        renames Xlbp_Window_Property.X_Text_Property_To_String_List;

    procedure X_String_To_Text_Property (Str  :     X_String;  
                                         Data : out X_Text_Property)  
        renames Xlbp_Window_Property.X_String_To_Text_Property;

    procedure X_Text_Property_To_String (Data   :     X_Text_Property;  
                                         Str    : out X_String_Pointer;  
                                         Status : out X_Status)  
        renames Xlbp_Window_Property.X_Text_Property_To_String;

--\f

end Xlib;