|
|
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 - metrics - downloadIndex: T V
Length: 13628 (0x353c)
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_Hint;
use Xlbt_Hint;
with Xlbt_String;
use Xlbt_String;
with Xlbt_Window;
use Xlbt_Window;
package Xlbp_Window_Property is
------------------------------------------------------------------------------
-- X Library Window Properties
--
-- Xlbp_Window_Property - Working with window properties
------------------------------------------------------------------------------
-- Copyright 1989 - 1991 by Rational, Santa Clara, California.
-- Copyright 1988 by Wyse Technology, Inc., San Jose, Ca.,
-- 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, Rational, or Wyse
-- not be used in advertising or publicity pertaining to distribution of
-- the software without specific, written prior permission.
--
-- MIT, Rational, and Wyse disclaim all warranties with regard to this
-- software, including all implied warranties of merchantability and fitness,
-- in no event shall MIT, Rational, or Wyse 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 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);
------------------------------------------------------------------------------
-- Display - Specifies the display to use.
-- Window - Specifies the window to use.
-- Property - Specifies the atom identifier of the property to be changed.
-- Representation- Specifies the atom identifier of the property's type.
-- Format - Specifies 8, 16, or 32 bit data format.
-- Mode - Specifies the mode of the operation; Prop_Mode_Replace,
-- Prop_Mode_Prepend, Prop_Mode_Append.
-- Data - Specifies the data bytes which make up the property value.
--
-- Change/Set the value for a property. This is the general purpose version.
-- Versions of this routine which handle 7-bit character strings, records,
-- and arrays follow.
------------------------------------------------------------------------------
procedure X_Delete_Property (Display : X_Display;
Window : X_Window;
Property : X_Atom);
------------------------------------------------------------------------------
-- Display - Specifies the display to use.
-- Window - Specifies the window to use.
-- Property - Specifies the atom identifier for the property.
--
-- Deletes the property from the window. Causes the X server to generate a
-- Property_Notify event if the property existed in the window.
------------------------------------------------------------------------------
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);
------------------------------------------------------------------------------
-- Display - Specifies the display to use.
-- Window - Specifies the window to use.
-- Property - Specifies the property atom.
-- Offset - Specifies the offset in the property (in 32-bit quantities)
-- to use when retrieving data.
-- Maximum_Length- Specifies the maximum amount of data to retrieve (in 32-bit
-- quantities)
-- Delete - Specifies True to cause the property to be deleted from the
-- window.
-- Representation- Specifies the property type atom. You can also pass
-- Any_Property_Type.
-- Actual_Type - Receives the atom identifier that defines the actual type
-- of the property.
-- Actual_Format - Receives the actual format of the property (8, 16, or 32).
-- N_Items - Receives the number of 8/16/32 bit items that are to be
-- read with X_Get_Window_Property.
-- Bytes_After - Receives the number of bytes remaining in the property.
-- This is the number of bytes remaining to be read in the
-- property if a partial read was performed.
-- Data - Receives a pointer to the received data
-- Status - Receives Successful or Failed.
--
-- Called to obtain the data associated with some window's (window-manager)
-- property. The Data'length received is equal to:
-- Length = (Actual_Format / 8) * N_Items
------------------------------------------------------------------------------
function X_List_Properties (Display : X_Display;
Window : X_Window) return X_Atom_List;
------------------------------------------------------------------------------
-- Display - Specifies the display to use.
-- Window - Specifies the window to use.
--
-- Returns a pointer to a list of atom properties which are defined for the
-- specified window. Returns None_X_Atom_List if there are no defined
-- properties.
--
-- Free the list after use with the Free_X_Atom_List routine.
------------------------------------------------------------------------------
procedure X_Rotate_Window_Properties
(Display : X_Display;
Window : X_Window;
Properties : X_Atom_Array;
N_Positions : S_Short);
------------------------------------------------------------------------------
-- Display - Specifies the display to use.
-- Window - Specifies the window to use.
-- Properties - Specifies the array of properties that are to be rotated.
-- N_Positions - Specifies the rotation amount.
--
-- Rotates the properties in the properties array and causes the X server to
-- generate a Property_Notify event. If the property names in the Properties
-- array are viewed as being numbered starting from zero and if there are
-- N property names then the value associated with property
-- name I becomes the property name (I+N_Positions) mod N, for all
-- I in the properties.
------------------------------------------------------------------------------
--\f
------------------------------------------------------------------------------
-- Text Properties - Users of X_Text_Property
------------------------------------------------------------------------------
procedure X_Get_Text_Property (Display : X_Display;
Window : X_Window;
Data : out X_Text_Property;
Property : X_Atom;
Status : out X_Status);
procedure X_Get_Text_Property (Display : X_Display;
Window : X_Window;
Data : out X_String_Pointer;
Property : X_Atom;
Status : out X_Status);
------------------------------------------------------------------------------
-- Display - Specifies the display to use.
-- Window - Specifies the window to use.
-- Data - Receives a record of the received data
-- Property - Specifies the property atom.
-- Status - Receives Successful or Failed.
--
-- Called to obtain the "textual" data associated with some window's
-- (window-manager) property. The Data'length received is equal to:
-- Length = (Data.Format / 8) * Data.N_Items
--
-- Free the storage in the Data after use with the Free_X_Text_Property routine.
------------------------------------------------------------------------------
procedure X_Set_Text_Property (Display : X_Display;
Window : X_Window;
Data : X_Text_Property;
Property : X_Atom);
procedure X_Set_Text_Property (Display : X_Display;
Window : X_Window;
Data : X_String;
Property : X_Atom);
------------------------------------------------------------------------------
-- Display - Specifies the display to use.
-- Window - Specifies the window to use.
-- Data - Specifies a record of the new data
-- Property - Specifies the property atom.
--
-- Called to set the "textual" data associated with some window's
-- (window-manager) property. The Data'length sent is expected to be equal to:
-- Length = (Data.Format / 8) * Data.N_Items
--
-- Free the storage in the Data after use with the Free_X_Text_Property routine.
------------------------------------------------------------------------------
procedure Free_X_Text_Property (Prop : in out X_Text_Property);
------------------------------------------------------------------------------
-- Prop - Specifies the X_Text_Property whose contents are to be freed
--
-- Called to free up any heap storage contained within an X_Text_Property.
-- Since an X_Text_Property is a record type and not an access type the
-- X_Text_Property itself is not freed; only its contents.
------------------------------------------------------------------------------
procedure X_String_List_To_Text_Property (List : X_String_Pointer_Array;
Data : out X_Text_Property);
------------------------------------------------------------------------------
-- List - Specifies the list of strings to convert
-- Data - Receives the converted list
--
-- Converts the list of strings into a X_Text_Property. Each string is
-- included verbatim with an added trailing Ascii.Nul added to the end.
-- The final string does not have a trailing null.
--
-- Free the storage in the Data after use with the Free_X_Text_Property routine.
------------------------------------------------------------------------------
procedure X_Text_Property_To_String_List
(Data : X_Text_Property;
List : out X_String_Pointer_List;
Status : out X_Status);
------------------------------------------------------------------------------
-- Data - Specifies the converted list
-- List - Receives None_X_String_Pointer_List or the result list
-- Status - Receives Successful or Failed.
--
-- Converts the X_Text_Property into a list of strings. Returns
-- None_X_String_Pointer_List if the conversion was Successful but the list
-- was empty or if the conversion Failed.
--
-- Free the storage in the list after use with the Free_X_String_Pointer_List
-- routine.
------------------------------------------------------------------------------
procedure X_String_To_Text_Property (Str : X_String;
Data : out X_Text_Property);
------------------------------------------------------------------------------
-- Str - Specifies the string to convert
-- Data - Receives the converted list
--
-- Converts the string into a X_Text_Property.
--
-- Free the storage in the Prop after use with the Free_X_Text_Property routine.
------------------------------------------------------------------------------
procedure X_Text_Property_To_String (Data : X_Text_Property;
Str : out X_String_Pointer;
Status : out X_Status);
------------------------------------------------------------------------------
-- Data - Specifies the converted list
-- Str - Receives the result
-- Status - Receives Successful or Failed.
--
-- Converts the X_Text_Property into a single string.
--
-- Free the storage in the String after use with the Free_X_String_Pointer
-- routine.
------------------------------------------------------------------------------
--\f
end Xlbp_Window_Property;