From: jg@decwrl.dec.com (Jim Gettys) Newsgroups: comp.newprod Subject: X WINDOW SYSTEM, C Library and Protocol Reference book Keywords: X Window book Xlib Protocol Message-ID: <14225@mcdchg.chi.il.us> Date: 9 Nov 88 23:22:23 GMT Sender: usenet@mcdchg.chi.il.us Followup-To: poster Organization: DEC Systems Research Center, Palo Alto Lines: 181 Approved: usenet@mcdchg.UUCP X WINDOW SYSTEM C Library and Protocol Reference By Robert Scheifler/James Gettys/Ron Newman Written by the people who designed and created the system, this text is the essential reference tool for X and C programmers and experienced computer users interested in expanding their use of graphics and multiple window systems. WHAT IS THE X WINDOW SYSTEM? The X Window System, or "X" for short, is a network transparent window system. X allows you to run multiple applications simultaneously in windows, generating text and graphics in monochrome or color on a bitmap display. X is designed to permit applications to be device independent; that is, applications need not be rewritten, recompiled, or relinked to work with new display hardware. X provides facilities for generating multi-font text and two dimensional graphics (such as points, lines, arcs, and polygons) in a hierarchy of rectangular windows. Every window can be thought of as a "virtual screen", and can in turn contain windows within it to arbitrary depth. Windows can overlap each other, like stacks of papers on a desk, and can be moved, resized, and restacked dynamically. Windows are designed to be inexpensive resources; applications using several hundred subwindows are common. For example, windows are often used to implement individual user interface components such as scroll bars, menus, buttons, and so forth. DESCRIPTION AND GENERAL CONTENTS OF BOOK: This book contains the complete C Library and Protocol reference material, together with an informative introduction, analytical diagrams, and a very comprehensive technical index covering both parts of the book... the essential reference manual for those programming with X and C. The book consists of two parts: PART I is the reference manual for the C Language X Interface Library, also known as Xlib. It presents an overview of the system, explains how to create and manipulate windows, and gives an in-depth look at the graphics capabilities. The text also explains events, event-handling functions, and a variety of utility functions. PART II is a precise specifications of the X protocol semantics, with an appendix defining the precise encoding. It is independent from any one programming language and can be used as a starting point for creating interface libraries for other programming languages. Both the protocol and Xlib are considered standards by the MIT X Consortium and are fast being adopted by leaders in the industry. PART I, the Xlib manual, consists of ten chapters. Chapter 1 provides a basic overview and establishes conventions used throughout the manual. Chapter 2 deals with opening and closing connections, and obtaining basic information about the connected display. Chapters 3 and 4 explain how to create and manipulate windows. Graphic capabilities are presented in Chapters 5 and 6. Window manager functions and data are described in Chapters 7 and 9. Events and event-handling functions are explained in Chapter 8. A variety of utility functions for keyboard input, command line parsing, region arithmetic, and resource management are presented in Chapter 10. An appendix describes Version 10 compatibility functions. PART II, the protocol specification, not only serves as a starting point for creating interface libraries, but also provides clarification on points that may prove confusing in the the Xlib manual. Xlib does not always provide a one-to-one mapping of procedures to protocol requests; an appendix summaries the correspondence. BRIEF TABLE OF CONTENTS: Part I: Xlib - C Language X Interface Chapter 1: Introduction to Xlib Chapter 2: Display Functions Chapter 3: Window Functions Chapter 4: Window Information Functions Chapter 5: Graphics Resource Functions Chapter 6: Graphics Functions Chapter 7: Window Manager Functions Chapter 8: Events and Event-Handling Functions Chapter 9: Predefined Property Functions Chapter 10: Application Utility Functions Part II: X Window System Protocol Section 1: Protocol Formats Section 2: Syntatic Conventions Section 3: Common Types Section 4: Errors Section 5: Keyboards Section 6: Pointers Section 7: Predefined Atoms Section 8: Connection Setup Section 9: Requests Section 10: Connection Close Section 11: Events Section 12: Flow Control and Concurrency Appendix A: Xlib Functions and Protocol Requests Appendix B: X Font Cursors Appendix C: Extensions Appendix D: Version 10 Compatibility Functions Appendix E: KEYSYM Encoding Appendix F: Protocol Encoding Glossary Index WHO NEEDS THIS BOOK? The book is intended for C programmers using X, for students looking for graphics, windowing systems and user interface information, and those PC users who want to learn about X programming. AUTHORS: ROBERT W, SCHEIFLER is the Director of the MIT X Consortium. He was the chief architect of the X Window System protocol and participated in the design and implementation of the CLU and Argus programming languages and systems. He has a BS in Mathematics and an MS in Computer Science from MIT. JAMES GETTYS is a consultant engineer for Digital Equipment Corporation and was previously stationed at MIT with Project Athena, as one of the Digital engineers on site. He was the chief architect of the X library, and participated in the X Window System protocol design. He has a BS in Earth and Planetary Science from MIT. RON NEWMAN is a software engineer at Lotus Development Corporation. He graduated from MIT and worked at Project Athena for three years, and participated in X Window system design. SPECIFICS AND ORDERING INFORMATION: Publication date: November 21, 1988, with a 1989 copyright Pages: 732 Price: $55.00 ISBN: 1-55558-012-2 Digital Order Number: EY-6737E-DP HOW TO ORDER: Mail a check or Money Order, made out to Digital Equipment Corporation, for $55.00. If you pay by VISA or MasterCard, include your card number and expiration date. For VISA and MC orders, you may call: 1-800-343-8321 Mail to: Sales Manager, Digital Press 12 Crosby Drive BUO/E94 Bedford, MA 01730 Be sure to include your state sales tax. Postage is paid. X Window System is a trademark of the Massachusetts Institute of Technology.