DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 7040 (0x1b80) Types: TextFile Names: »V«
└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00 └─ ⟦0c20f784e⟧ »DATA« └─⟦1abbe589f⟧ └─⟦059497ac5⟧ └─⟦this⟧
with Xlbt_Arithmetic; use Xlbt_Arithmetic; with Xlbt_Basic; use Xlbt_Basic; with Xlbt_Event; use Xlbt_Event; with Xlbt_String; use Xlbt_String; with Xlbt_Visual; use Xlbt_Visual; package Xlbip_Internal is ------------------------------------------------------------------------------ -- X Library Machine Independent Internal Routines -- -- Xlbip_Internal - Internal-to-X-Library routines - not for general users ------------------------------------------------------------------------------ -- Copyright 1989 - 1991 by Rational, Santa Clara, California. -- Copyright 1985 - 1989 by the Massachusetts Institute of Technology -- -- All Rights Reserved. -- -- Permission to use, copy, modify, and distribute this software and its -- documentation for any purpose and without fee is hereby granted, -- provided that the above copyright notice(s) appear in all copies and that -- both that copyright notice(s) and this permission notice appear in -- supporting documentation, and that the names of MIT or Rational not be -- used in advertising or publicity pertaining to distribution of the software -- without specific, written prior permission. -- -- MIT and Rational disclaim all warranties with regard to this software, -- including all implied warranties of merchantability and fitness, in no -- event shall MIT or Rational be liable for any special, indirect or -- consequential damages or any damages whatsoever resulting from loss of use, -- data or profits, whether in an action of contract, negligence or other -- tortious action, arising out of or in connection with the use or performance -- of this software. ------------------------------------------------------------------------------ --\f procedure Lock_Display (Display : X_Display); procedure Unlock_Display (Display : X_Display); ------------------------------------------------------------------------------ -- Display - Specifies the display to lock or unlock -- -- Display Mutual Exclusion - Lock/Unlock exclusive use of a Display and all of -- its internal data structures; separate from locking of the Xlib data. -- -- If, for this machine/OS/Ada-compiler combination, multi-task-locking is not -- supported for Xlib then we raise X_Library_Confusion if two -- Lock_Display calls are made in succession, two Unlock_Display calls are made -- in succession, or if Unlock is called when the lock was not Lock'ed. ------------------------------------------------------------------------------ procedure Report_Io_Error (Display : X_Display; Facility : X_String); ------------------------------------------------------------------------------ -- Called when we have had an I/O error. We convert Display.Fd_Error to a -- string and stuff it into Display.Error and then we call the -- X_Lib.IO_Error routine. ------------------------------------------------------------------------------ procedure Sync_Handle (Display : X_Display); ------------------------------------------------------------------------------ -- Call the Synchandler routine associated with a display. ------------------------------------------------------------------------------ --\f function Internal_X_Alloc_Id (Display : X_Display) return X_Id; ------------------------------------------------------------------------------ -- X_Alloc_Id default procedure variable value. Only call this routine when -- the Display has been previously locked. ------------------------------------------------------------------------------ procedure Internal_X_Enq (Display : X_Display; Event : X_Event); ------------------------------------------------------------------------------ -- Display - Specifies the display where the event is to be queued -- Event - Specifies the event to queue -- -- Take a newly received event and place it into the queue of the display that -- generated it. ------------------------------------------------------------------------------ procedure Internal_X_Flush_Last_Request (Display : X_Display); ------------------------------------------------------------------------------ -- Called to flush out the Display.Last_Request. Some requests, e.g. Poly_Point, -- are cumulative; successive Poly_Point requests will merge together in the -- display buffer before being sent to the server for action. This routine is -- called to force any of the mergeable requests to be transmitted. ------------------------------------------------------------------------------ procedure Internal_X_Free_Display_Structure (Display : in out X_Display); ------------------------------------------------------------------------------ -- X_Free_Display_Structure frees all the storage associated with a -- Display. It is used by X_Open_Display if it runs out of memory, -- and also by X_Close_Display. It needs to check whether all pointers -- are non-None before dereferencing them, since it may be called -- by X_Open_Display before the Display structure is fully formed. -- X_Open_Display must be sure to initialize all the pointers to None -- before the first possible call on this. ------------------------------------------------------------------------------ function Internal_X_Screen_Of_Window (Display : X_Display; Window : X_Window) return X_Screen; ------------------------------------------------------------------------------ -- Called to attempt to figure out what screen a window is drawn upon. ------------------------------------------------------------------------------ function Internal_X_Set_Last_Request_Read (Display : X_Display; Kind : X_Event_Code; Sequence : U_Short) return S_Long; ------------------------------------------------------------------------------ -- The hard part about this is that we only get 16 bits from a reply. Well, -- then, we have three values that will march along, with the following -- invariant: -- Display.Last_Request_Read <= Reply.Sequence_Number <= Display.Request -- The right choice for Reply.Sequence_Number is the largest that -- still meets these constraints. ------------------------------------------------------------------------------ procedure Internal_X_Vid_To_Visual (Display : X_Display; Id : X_Visual_Id; Visual : in out X_Visual; Status : out X_Status); ------------------------------------------------------------------------------ -- Given a visual ID, find the X_Visual structure. We walk over the various -- visual info for a given display until we find the Visual whose Id matches -- the one sent in. This is used to translate ID's into X_Visuals when an -- ID is returned by an incoming event. ------------------------------------------------------------------------------ end Xlbip_Internal;