Table of Contents
X Introduction
What is X?
Why X?
History of X
Why not X?
Concepts in X Programming
Interface Styles
Clients and Servers
Choosing the DISPLAY
Xlib Fundamentals
Using Windows
Basic steps to create a window application
Connecting to the Server
Checking the Environment
Creating the Window
Displaying the Window
Cleaning up
Drawing With X
Graphics Contexts
Creating a Graphics Context
Drawing Lines
Drawing Shapes
Filled Shapes
Multiple Objects
Text
What are Fonts
Loading Fonts
Displaying Text
Colour
Colour or not?
Visuals
Using Colour
Events
Concepts
Which Events?
Waiting for Events
Polling for Events
Mouse Events
Keyboard Events
Other Events
Using and Specifying X Resources
X starting up
Imake
Why Imake
A simple example
Generating the Makefile for the first time
The Imake template
Simple Imakefiles
A single program, one source file
A single program, multiple source files
Multiple programs
A library archive of object files
Subdirectories
Miscellaneous
History
Gotchas
Imake Variables
Intrinsic Library -Xt1
Intrinsic Widget Library -Xaw
Terminology
Underlying Model
Input Focus
Using Widgets
Initializing the Toolkit
Creating a Widget
Common Resources
Resource Conversions
Cursor Conversion
Pixel Conversion
Bitmap Conversion
Realizing a Widget
Processing Events
Standard Widget Manipulation Functions
Mapping Widgets
Destroying Widgets
Retrieving Widget Resource Values
Modifying Widget Resource Values
Using the Client Callback Interface
Changing Resource Values
Specifying Resources
Creating Argument Lists
Example Programs
Motif Widget Library -Xm
Widgets, Gadgets, and Convenience Functions
Example Programs