X Window System Toolkit

*HyperReader

  CONTENTS


  Chapter 1. Intrinsics and Widgets
    1.1 Intrinsics
    1.2 Languages
    1.3 Procedures and Macros
    1.4 Widgets
      1.4.1 Core Widgets
        1.4.1.1 CoreClas s Part S tructure
        1.4.1.2 CorePart S tructure
        1.4.1.3 Core Res ources
        1.4.1.4 CorePart Default Values
      1.4.2 Composite Widgets
        1.4.2.1 Compos iteClas s Part S tructure
        1.4.2.2 Compos itePart S tructure
        1.4.2.3 Compos ite Res ources
        1.4.2.4 Compos itePart Default Values
      1.4.3 Constraint Widgets
        1.4.3.1 Cons traintClas s Part S tructure
        1.4.3.2 Cons traintPart S tructure
        1.4.3.3 Cons traint Res ources
    1.5 Implementation-Specific Types
    1.6 Widget Classing
      1.6.1 Widget Naming Conventions
      1.6.2 Widget Subclassing in Public .h Files
      1.6.3 Widget Subclassing in Private .h Files
      1.6.4 Widget Subclassing in .c Files
      1.6.5 Widget Class and Superclass Lookup
      1.6.6 Widget Subclass Verification
      1.6.7 Superclass Chaining
      1.6.8 Class Initialization: class_initialize and class_part_initialize
      1.6.9 Initializing a Widget Class
      1.6.10 Inheritance of Superclass Operations
      1.6.11 Invocation of Superclass Operations
      1.6.12 Class Extension Records

  Chapter 2. Widget Instantiation
    2.1 Initializing the X Toolkit
    2.2 Loading the Resource Database
    2.3 Parsing the Command Line
    2.4 Creating Widgets
      2.4.1 Creating and Merging Argument Lists
      2.4.2 Creating a Widget Instance
      2.4.3 Creating an Application Shell Instance
      2.4.4 Convenience Procedure to Initialize an Application
      2.4.5 Widget Instance Initialization: the initialize Procedure
      2.4.6 Constraint Instance Initialization: the ConstraintClassPart initialize
      2.4.7 Nonwidget Data Initialization: the initialize_hook Procedure
    2.5 Realizing Widgets
      2.5.1 Widget Instance Window Creation: the realize Procedure
      2.5.2 Window Creation Convenience Routine
    2.6 Obtaining Window Information from a Widget
      2.6.1 Unrealizing Widgets
    2.7 Destroying Widgets
      2.7.1 Adding and Removing Destroy Callbacks
      2.7.2 Dynamic Data Deallocation: the destroy Procedure
      2.7.3 Dynamic Constraint Data Deallocation: the ConstraintClassPart destroy
    2.8 Exiting from an Application

  Chapter 3. Composite Widgets and Their Children
    3.1 Addition of Children to a Composite Widget: the insert_child Procedure
    3.2 Insertion Order of Children: the insert_position Procedure
    3.3 Deletion of Children: the delete_child Procedure
    3.4 Adding and Removing Children from the Managed Set
      3.4.1 Managing Children
      3.4.2 Unmanaging Children
      3.4.3 Determining If a Widget Is Managed
    3.5 Controlling When Widgets Get Mapped
    3.6 Constrained Composite Widgets

  Chapter 4. Shell Widgets
    4.1 Shell Widget Definitions
      4.1.1 ShellClassPart Definitions
      4.1.2 ShellPart Definition
      4.1.3 Shell Resources
      4.1.4 ShellPart Default Values

  Chapter 5. Pop-Up Widgets
    5.1 Pop-Up Widget Types
    5.2 Creating a Pop-Up Shell
    5.3 Creating Pop-Up Children
    5.4 Mapping a Pop-Up Widget
    5.5 Unmapping a Pop-Up Widget

  Chapter 6. Geometry Management
    6.1 Initiating Geometry Changes
    6.2 General Geometry Manager Requests
    6.3 Resize Requests
    6.4 Potential Geometry Changes
    6.5 Child Geometry Management: the geometry_manager Procedure
    6.6 Widget Placement and Sizing
    6.7 Preferred Geometry
    6.8 Size Change Management: the resize Procedure

  Chapter 7. Event Management
    7.1 Adding and Deleting Additional Event Sources
      7.1.1 Adding and Removing Input Sources
      7.1.2 Adding and Removing Timeouts
    7.2 Constraining Events to a Cascade of Widgets
      7.2.1 Requesting Key and Button Grabs
    7.3 Focusing Events on a Child
    7.4 Querying Event Sources
    7.5 Dispatching Events
    7.6 The Application Input Loop
    7.7 Setting and Checking the Sensitivity State of a Widget
    7.8 Adding Background Work Procedures
    7.9 X Event Filters
      7.9.1 Pointer Motion Compression
      7.9.2 Enter/Leave Compression
      7.9.3 Exposure Compression
    7.10 Widget Exposure and Visibility
      7.10.1 Redisplay of a Widget: the expose Procedure
      7.10.2 Widget Visibility
    7.11 X Event Handlers
      7.11.1 Event Handlers That Select Events
      7.11.2 Event Handlers That Do Not Select Events
      7.11.3 Current Event Mask

  Chapter 8. Callbacks
    8.1 Using Callback Procedures and Callback List Definitions
    8.2 Identifying Callback Lists
    8.3 Adding Callback Procedures
    8.4 Removing Callback Procedures
    8.5 Executing Callback Procedures
    8.6 Checking the Status of a Callback List

  Chapter 9. Resource Management
    9.1 Resource Lists
    9.2 Byte Offset Calculations
    9.3 Superclass-to-Subclass Chaining of Resource Lists
    9.4 Subresources
    9.5 Obtaining Application Resources
    9.6 Resource Conversions
      9.6.1 Predefined Resource Converters
      9.6.2 New Resource Converters
      9.6.3 Issuing Conversion Warnings
      9.6.4 Registering a New Resource Converter
      9.6.5 Resource Converter Invocation
    9.7 Reading and Writing Widget State
      9.7.1 Obtaining Widget State
        9.7.1.1 Widget S ubpart Res ource Data: the get_ values _ hook Procedure
        9.7.1.2 Widget S ubpart S tate
      9.7.2 Setting Widget State
        9.7.2.1 Widget S tate: the s et_ values Procedure
        9.7.2.2 Widget S tate: the s et_ values _ almos t Procedure
        9.7.2.3 Widget S tate: the Cons traintClas s Part s et_ values Procedure
        9.7.2.4 Widget S ubpart S tate
        9.7.2.5 Widget S ubpart Res ource Data: the s et_ values _ hook Procedure

  Chapter 10. Translation Management
    10.1 Action Tables
      10.1.1 Action Table Registration
      10.1.2 Action Names to Procedure Translations
      10.1.3 Action Hook Registration
    10.2 Translation Tables
      10.2.1 Event Sequences
      10.2.2 Action Sequences
      10.2.3 Multi-Click Time
    10.3 Translation Table Management
    10.4 Using Accelerators
    10.5 KeyCode-to-KeySym Conversions
    10.6 Obtaining a KeySym in an Action Procedure
    10.7 KeySym-to-KeyCode Conversions
    10.8 Registering Button and Key Grabs for Actions
    10.9 Invoking Actions Directly

  Chapter 11. Utility Functions
    11.1 Determining the Number of Elements in an Array
    11.2 Translating Strings to Widget Instances
    11.3 Managing Memory Usage
    11.4 Sharing Graphics Contexts
    11.5 Managing Selections
      11.5.1 Setting and Getting the Selection Timeout Value
      11.5.2 Using Atomic Transfers
        11.5.2.1 Atomic T rans fer Procedures
        11.5.2.2 Getting the S election Value
        11.5.2.3 S etting the S election Owner
      11.5.3 Using Incremental Transfers
        11.5.3.1 I ncremental T rans fer Procedures
        11.5.3.2 Getting the S election Value I ncrementally
        11.5.3.3 S etting the S election Owner for I ncremental T rans fers
      11.5.4 Retrieving the Most Recent Timestamp
    11.6 Merging Exposure Events into a Region
    11.7 Translating Widget Coordinates
    11.8 Translating a Window to a Widget
    11.9 Handling Errors
    11.10 Setting WM_COLORMAP_WINDOWS
    11.11 Finding File Names

  Chapter 12. Nonwidget Objects
    12.1 Data Structures
    12.2 Object Objects
      12.2.1 ObjectClassPart Structure
      12.2.2 ObjectPart Structure
      12.2.3 Object Resources
      12.2.4 ObjectPart Default Values
      12.2.5 Object Arguments to Intrinsics Routines
      12.2.6 Use of Objects
    12.3 Rectangle Objects
      12.3.1 RectObjClassPart Structure
      12.3.2 RectObjPart Structure
      12.3.3 RectObj Resources
      12.3.4 RectObjPart Default Values
      12.3.5 RectObj Arguments to Intrinsics Routines
      12.3.6 Use of Rectangle Objects
    12.4 Undeclared Class
    12.5 Widget Arguments to Intrinsics Routines

  Chapter 13. Evolution of Intrinsics
    13.1 Determining Specification Revision Level
    13.2 Release 3 to Release 4 Compatibility
      13.2.1 Additional Arguments
      13.2.2 set_values_almost Procedures
      13.2.3 Query Geometry
      13.2.4 unrealizeCallback Callback List
      13.2.5 Subclasses of WMShell
      13.2.6 Resource Type Converters
      13.2.7 KeySym Case Conversion Procedure
      13.2.8 Nonwidget Objects

  Appendix A. Resource File Format

  Appendix B. Translation Table Syntax
    B.1 Notation
    B.2 Syntax
    B.3 Modifier Names
    B.4 Event Types
    B.5 Canonical Representation
    B.6 Examples

  Appendix C. Compatibility Functions

  Appendix D. Intrinsics Error Messages
    D.1 Error Messages
    D.2 Warning Messages

  Appendix E. StringDefs.h Header File