This page is unmaintained. It may contain out-of-date data, broken links...
Infos:
X.org, The Motif Zone🚫, motifdeveloper.com, Kenton Lee🚫, XFree86
FAQs: X, Intel, Xt, Motif🚫, widgets
Docs: man pages, Christophe Tronche, Motif
Links: Kenton Lee🚫
Image formats: xbm, xpm
X servers
Toolkits
Windows managers
Desktops
personal notes
Articles and videos
-
Xlib/Xt/Motif
-
Specifications
- Xlib - C Language X Interface - MIT X Consortium Standard - X Version 11, Release 6🚫 by and ► A book describing the Xlib and the Nonrectangular Window Shape Extension.
- How do I write a resource converter? by ► This is another unique spec I know, this one for the resource converters.
- X Window System Programmer's Guide ► A description of Xmu, Xau, ICCCM, ICE…
- X11 Input Extension Library Specification by and (1989) ► This paper describes the X input extension API.
- MIT-SHM — The MIT Shared Memory Extension by (1991) ► This article is the only XShm extension specification I know.
- X Toolkit Intrinsics - C Language Interface - X Window System - X Version 11, Release 7.7 by , , and (1994) ► A book describing Xt.
- Inter-Client Communication Conventions Manual - Version 2.0 by (1994) ► The ICCCM specification… for those interested by this stuff.
- Xlib Functions and Corresponding X Protocol Requests🚫 by (May 20th, 1996) ► The list of X requests performed by each X routine.
- The X Keyboard Extension:Library Specification - Library Version 1.0 / Document Revision 1.1 by , , , , , and (September 24th, 1996) ► The XKEYBOARD extension specification.
-
Coding
- Extending Widget Attributes🚫 by ► How to use Xlib manager context and widgets subresources.
- Recursive Traversal of Widget Children🚫 by and ► Setting input mask on a widget tree to handle program’s busy states… The code is incorrect (missing lines) and this is a bad idea (it would be much less more intelligent to set the widgets/gadgets to an insensitive state).
- Some Solutions to the "Instant-Refresh" Problem🚫 by ► A solution to the problem of forcing the redraw of widgets.
- Extension Event Dispatching in Xt/Motif🚫 by ► How to manage events from X extensions in X11R6.
-
How do you use the XmComboBox Widget? ► A good overview of
XmComboBox
. -
How do you use the SpinBox and SimpleSpinBox widgets? ► A good overview of
XmSpinBox
andXmSimpleSpinBox
. - Simulating Multiple Pointer Events🚫 by (1994) ► How to use X11 timeouts to implement mouse click autorepeatition.
- X Window System Application Performance Tuning🚫 by (1994) ► The title says it all.
- Some Useful X Routines🚫 by (1995) ► Some useful basic tool routines (it’s a pity they are bugged!): retrieving the shell of a widget, (un)restricting the size of a shell, safe pixmap creation…
- X Application Software Engineering: "Indirect" Motif Widget Resources🚫 by (March 1995) ► Some widget behaviours are defined by other widgets resources: superclasses, composite parents and convenience widgets.
- X Application Programming Model🚫 by (June 1995) ► Kenton describes how to design an X program.
- Using Your Client Data Luggage🚫 by (June 1995) ► A trivial article on the use of the client data in callbacks.
- Windows Control for Motif🚫 by (July 1995) ► How to implement List Button and List Editor in Motif.
- X Toolkit and Xlib Application Resources🚫 by (August 1995) ► Using XtGetApplicationResources or XrmGetResource to get the values of our own defined resources.
- Anatomy of a Dialog, Part I🚫 by (August 1995) ► Huhner describes the API of his dialog implementation.
- ↪Anatomy of a Dialog, Part II🚫 by (September 1995) ► Huhner describes the internals of his dialog implementation.
- Programming an In-Line Dialog🚫 by (October 1995) ► Creating an inlined dialog.
- Customizing Motif Dialogs🚫 by (November 1995) ► How to remove/add widgets to a predefined dialog: Huhner uses some private Motif stuff (such as child names), his code may break with a future Motif release…
- Adding External Input Sources to the X Toolkit Event Loop🚫 by (December 1995) ► This is a short introduction to X11 file descriptor inputs, time-outs, signals and work-procedures.
- Handling the Alt-F4 Signal🚫 by (January 1996) ► The usual management when a shell is closed via the window manager.
- Interacting with the Window Manager🚫 by (February 1996) ► How to add an entry to the window manager shell menu.
-
Using the X Resource Manager to Query Widgets🚫 by (March 1996) ► Another bad idea of Huhner: using
XtNameToWidget
instead of keeping a variable (for example in a structure - or a class if C++ -) to later access a widget. - Making Menu Maintenance a Breeze🚫 by (April 1996) ► A framework do easily manipulates menus: creation and set sensitivity.
- Windows 95 Look-and-Feel in Motif🚫 by (June 1996) ► How to implement an icon toolbar, tooltips (called here popup helps) and right button popup menus.
-
Debugging
- 40 Most Common X Window System Programming Errors (And How To Avoid Repeating Them)⇈🚫 by (1993) ► Yet another good article from Kenton, the tips are rather basic, but they must be known.
- Debugging X Window System Protocol Errors⇈🚫 by (1994) ► This is a must-read if you are developing with X11/Motif, Kenton describes here the basic methodology to debug X applications.
-
X Application Software Engineering: Debugging X Toolkit Resources with editres🚫 by (November 1994) ► Kenton describes when and how to use
editres
. -
X Application Software Engineering: Debugging X Input Events🚫 by (January 1995) ► The use and limitations of
xev
are described.xscope
andxmon
are quicly presented. - X Application Software Engineering: Preventing Widget Resource Syntax Errors🚫 by (May 1995) ► This article lists some basic advice to avoid bugs when setting widget resources.
- X Window System Memory Leaks and Other Memory Bugs🚫 by (February 1996) ► This paper deals with the memory issues, but all Kenton’s good tips (they are obvious, but much too often forgotten) are applicable for any C/C++ development.
- Avoiding Motif Memory Leaks↑🚫 by (March 1996) ► This is the second part about the X11/Motif memory issues. Kenton lists here all the Motif widgets and convenience routines and indicates the memory management for each parameter.
-
Miscellaneous
- The Benefits of Custom Widget Development - A Case Study Using the Numerical Widget🚫 by and (1995) ► The title says it all.
- Securing X Windows by (August 1995) ► This very short introduction of X11 security is not enough to fully understand the issues, but this a good way to discover them.
- Human Factors in Dialog Design🚫 by (May 1996) ► Some basic but good ideas on GUI design: dialog modality, button title, widget grouping…
- Announcing Open Motif 2.2!🚫 by (January 29th, 2002) ► A short list of the new Motif features.
-
Specifications
-
XFree86/X.org
- A New Rendering Model for X by (March 29th, 2000) ► Keith describes the current limitations of X11 2D rendering and why they exist. Then he suggests the contents of a new rendering extensions.
- Release Notes for XFree86[tm] 4.0 (April 7th, 2000) ► The title says it all.
- A Firm Foundation for the Linux Desktop🗑️ by (October 28th, 2004) ► The current state of X.
- State of the X Window by and (February 7th, 2008) ► The current status of X.org. The two guys pretend that X11 is not dead anymore, but they are not so convincing…
-
WxWindows
- wxWindows: mature but little-known🚫 by and (December 20th, 2000) ► This is a quick presentation of the wxWindows toolkit.
-
Gtk+
- GtkFB: GTK+ for the Linux Framebuffer by (March 16th, 2001) ► Running without X11, GtkFB enables display directly on the frame buffer.
-
Gnome
- GNOME Technologies - A Brief Description Of The Technology Behind GNOME🚫 by (1999) ► This article introduces the technologies used by Gnome: GTK+, X11, ORBit, Gnome Imaging Architecture.
- CORBA Applications In GNOME🚫 by (1999) ► This article describes CORBA, ORBit, how and when to implement a CORBA interface.
- GNOME 1.0 Library Roadmap🚫 by (1999) ► This paper lists the libraries which are part of Gnome.
- .comment: Heigh-Ho, Heigh-Ho, It's Off to War We Go🚫 by (August 23rd, 2000) ► Some Gnome bashing after the Gnome Foundation announcement.
- Evolution's latest mutations by (February 28th, 2001) ► A snapshot of the current development status of the mail reader.
-
KDE
- Coding with KParts — Understanding the KParts component architecture🗑️ by (February 2002) ► A presentation of the KDE component architecture.