Xview Code Generator Programmer's Guide

Total Page:16

File Type:pdf, Size:1020Kb

Xview Code Generator Programmer's Guide OpenWindows Developer’s Guide: XView Code Generator Programmer’s Guide 2550 Garcia Avenue Mountain View, CA 94043 U.S.A. A Sun Microsystems, Inc. Business 1994 Sun Microsystems, Inc. 2550 Garcia Avenue, Mountain View, California 94043-1100 U.S.A. All rights reserved. This product and related documentation are protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or related documentation may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Portions of this product may be derived from the UNIX® and Berkeley 4.3 BSD systems, licensed from UNIX System Laboratories, Inc., a wholly owned subsidiary of Novell, Inc., and the University of California, respectively. Third-party font software in this product is protected by copyright and licensed from Sun’s font suppliers. RESTRICTED RIGHTS LEGEND: Use, duplication, or disclosure by the United States Government is subject to the restrictions set forth in DFARS 252.227-7013 (c)(1)(ii) and FAR 52.227-19. The product described in this manual may be protected by one or more U.S. patents, foreign patents, or pending applications. TRADEMARKS Sun, the Sun logo, Sun Microsystems, Sun Microsystems Computer Corporation, SunSoft, the SunSoft logo, Solaris, SunOS, OpenWindows, DeskSet, ONC, ONC+, and NFS are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and certain other countries. UNIX is a registered trademark of Novell, Inc., in the United States and other countries; X/Open Company, Ltd., is the exclusive licensor of such trademark. OPEN LOOK® is a registered trademark of Novell, Inc. PostScript and Display PostScript are trademarks of Adobe Systems, Inc. All other product names mentioned herein are the trademarks of their respective owners. All SPARC trademarks, including the SCD Compliant Logo, are trademarks or registered trademarks of SPARC International, Inc. SPARCstation, SPARCserver, SPARCengine, SPARCstorage, SPARCware, SPARCcenter, SPARCclassic, SPARCcluster, SPARCdesign, SPARC811, SPARCprinter, UltraSPARC, microSPARC, SPARCworks, and SPARCompiler are licensed exclusively to Sun Microsystems, Inc. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and Sun™ Graphical User Interfaces were developed by Sun Microsystems, Inc. for its users and licensees. Sun acknowledges the pioneering efforts of Xerox in researching and developing the concept of visual or graphical user interfaces for the computer industry. Sun holds a non-exclusive license from Xerox to the Xerox Graphical User Interface, which license also covers Sun’s licensees who implement OPEN LOOK GUIs and otherwise comply with Sun’s written license agreements. X Window System is a product of the Massachusetts Institute of Technology. THIS PUBLICATION IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. THIS PUBLICATION COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THE PUBLICATION. SUN MICROSYSTEMS, INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN THIS PUBLICATION AT ANY TIME. Please Recycle Contents Preface. xiii 1. Introduction . 1 Devguide and GXV . 1 Names and Terminology. 2 What You Need to Run GXV and Devguide . 2 Installing GXV and Devguide . 2 How You Interact with Devguide and GXV. 2 2. Getting Started with GXV. 5 Creating an Application with GXV . 5 Designing an Interface in Devguide . 6 Handling Events with Connections. 7 Using the Code Generator Tool . 8 Using the File... Button . 10 Using the Properties Window . 10 GXV Options . 12 iii Internationalization Options . 13 Applying Changes. 14 Generating XView Code from Devguide GIL Files . 14 GXV-Generated Files. 14 Compiling and Testing Interface Code . 15 Integrating Application Code with GXV Interface Code . 16 Referencing Interface Objects in GXV. 16 Regenerating Code for a Modified Interface . 17 A Simple Example . 17 3. GXV Tutorial . 23 Building the Interface . 24 Creating a Directory for GIL and Project Files. 25 Creating the Base Window Interface . 26 Creating a Menu . 33 Creating the Pop-up Window Interface . 34 Creating and Saving a Project . 37 Setting Up Connections . 38 Experimenting with Test Mode . 41 Generating Interface Source Code . 42 Creating Custom Code Using GXV Files . 43 Customizing the tutorial.c File. 43 Customizing the tutorial.h File. 44 Customizing the tutorial_popup_stubs.c File. 45 Customizing the tutorial_main_stubs.c File . 45 iv Devguide: XView Programmer’s Guide—August 1994 Compiling Code. 48 4. GXV Functionality in Detail. 49 Using Connections to Handle Events . 49 When Menu Items . 49 Action Menu Items . 50 Hints on Using Connections. 51 Using the gxv Command . 52 Using Flags with GXV. 52 Generated Files. 54 _ui.c File . 55 _ui.h File . 56 _stubs.c File . 56 .info File . 56 Makefile File . 57 .c File . 58 .h File . 58 _stubs.c.BAK File . 59 _stubs.c.delta File . 59 .po File . 59 .db File . 59 Compiling Your Application . 59 Using GXV++ . 61 Using Included Libraries . 61 File Chooser (gfm) . 62 Contents v Color Chooser (gcc) . 65 Colormap Handler (gcm) . 67 Drag and Drop Interface (gdd) . 68 Group Package. 77 Additional Programmer’s Tips . 88 Using Stubs Merge. 88 Enabling and Disabling Menu Items. 89 Tying a Pop-Up Window to a Button . 90 A. Files Provided with GXV. 91 bin Subdirectory . 91 demo Subdirectory. 91 include Subdirectory . 92 lib Subdirectory . 92 lib/templates Subdirectory . 93 man Subdirectory . 93 src Subdirectory . 93 doc Subdirectory . 93 B. Internationalization . 95 Levels of Internationalization. 96 Level 1—Text and Codesets . 96 Level 2—Formats and Collation . 96 Level 3—Messages and Text Presentation . 96 Level 4—Asian Language Support . 97 Basic Internationalization Tools. 97 vi Devguide: XView Programmer’s Guide—August 1994 Text Databases (Text Domains) . 97 gettext() and dgettext() Routines . 98 Portable Object and Message Object Files . 98 xgettext and msgfmt Utilities . 99 Internationalization Using Devguide . 99 Text Translation . 100 Size and Position of Elements . 100 Options to GXV . ..
Recommended publications
  • A Political History of X Or How I Stopped Worrying and Learned to Love the GPL
    A Political History of X or How I Stopped Worrying and Learned to Love the GPL Keith Packard SiFive [email protected] Unix in !"# ● $SD Everywhere – $'t not actually BS% ● )*+* want, to make Sy,tem V real – S'rely they still matter ● .o Free So/tware Anywhere The 0rigins of 1 ● $rian Reid and Pa'l Asente at Stan/ord – - kernel → VGTS → W window system – Ported to VS100 at Stan/ord ● $o4 Scheifler started hacking W→ X – Working on Argus with Barbara Liskov at LCS – 7ade it more Unix friendly (async9, renamed X -AXstation 00 (aka v, 339 Unix Workstation Market ● Unix wa, closed source ● Most vendors ,hipped a proprietary 0S 4ased on $SD #.x ● S'n: HP: Digita(: )po((o: *ektronix: I$7 ● ;congratu(ation,: yo'<re not running &'nice=. – Stil(: so many gratuito', di/ference, -AXstation II S'n >?@3 Early Unix Window Systems ● S'n-iew dominated (act'al commercial app,A De,ktop widget,A9 ● %igital had -WS/UIS (V7S on(y9 ● )pollo had %omain ● *ektronix demon,trating Sma((*alk 1 B1@ ● .onB/ree so/tware ● U,ed internally at MIT ● Shared with friend, in/ormally 1 3 ● )(mo,t u,able ● %elivered by Digital on V)1,tation, ● %i,trib'tion was not all free ,o/tware – Sun port relied on Sun-iew kernel API – %igital provided binary rendering code – IB7 PC?2T support act'ally complete (C9 Why 1 C ● 1 0 had wart, – rendering model was pretty terrible ● ,adly, X1 wa,n't m'ch better... – External window management witho't borders ● Get everyone involved – Well, at lea,t every workstation vendor willing to write big checks X as Corporate *ool ● Dim Gettys and Smokey
    [Show full text]
  • A Font Family Sampler
    A Font Family Sampler Nelson H. F. Beebe Department of Mathematics University of Utah Salt Lake City, UT 84112-0090, USA 11 February 2021 Version 1.6 To assist in producing greater font face variation in university disser- tations and theses, this document illustrates font family selection with a LATEX document preamble command \usepackage{FAMILY} where FAMILY is given in the subsection titles below. The body font in this document is from the TEX Gyre Bonum family, selected by a \usepackage{tgbonum} command in the document preamble, but the samples illustrate scores other font families. Like Computer Modern, Latin Modern, and the commercial Lucida and MathTime families, the TEX Gyre families oer extensive collections of mathematical characters that are designed to resemble their companion text characters, making them good choices for scientic and mathemati- cal typesetting. The TEX Gyre families also contain many additional spe- cially designed single glyphs for accented letters needed by several Euro- pean languages, such as Ð, ð, Ą, ą, Ę, ę, Ł, ł, Ö, ö, Ő, ő, Ü, ü, Ű, ű, Ş, ş, T,˚ t,˚ Ţ, ţ, U,˚ and u.˚ Comparison of text fonts Some of the families illustrated in this section include distinct mathemat- ics faces, but for brevity, we show only prose. When a font family is not chosen, the LATEX and Plain TEX default is the traditional Computer Mod- ern family used to typeset the Art of Computer Programming books, and shown in the rst subsection. 1 A Font Family Sampler 2 NB: The LuxiMono font has rather large characters: it is used here in 15% reduced size via these preamble commands: \usepackage[T1]{fontenc} % only encoding available for LuxiMono \usepackage[scaled=0.85]{luximono} \usepackage{} % cmr Lorem ipsum dolor sit amet, aenean nulla tellus metus odio non maecenas, pariatur vitae congue laoreet semper, nulla adipiscing cursus neque dolor dui, faucibus aliquam quis.
    [Show full text]
  • An Introduction to the X Window System Introduction to X's Anatomy
    An Introduction to the X Window System Robert Lupton This is a limited and partisan introduction to ‘The X Window System’, which is widely but improperly known as X-windows, specifically to version 11 (‘X11’). The intention of the X-project has been to provide ‘tools not rules’, which allows their basic system to appear in a very large number of confusing guises. This document assumes that you are using the configuration that I set up at Peyton Hall † There are helpful manual entries under X and Xserver, as well as for individual utilities such as xterm. You may need to add /usr/princeton/X11/man to your MANPATH to read the X manpages. This is the first draft of this document, so I’d be very grateful for any comments or criticisms. Introduction to X’s Anatomy X consists of three parts: The server The part that knows about the hardware and how to draw lines and write characters. The Clients Such things as terminal emulators, dvi previewers, and clocks and The Window Manager A programme which handles negotiations between the different clients as they fight for screen space, colours, and sunlight. Another fundamental X-concept is that of resources, which is how X describes any- thing that a client might want to specify; common examples would be fonts, colours (both foreground and background), and position on the screen. Keys X can, and usually does, use a number of special keys. You are familiar with the way that <shift>a and <ctrl>a are different from a; in X this sensitivity extends to things like mouse buttons that you might not normally think of as case-sensitive.
    [Show full text]
  • Oracle® Secure Global Desktop Platform Support and Release Notes for Release 4.7
    Oracle® Secure Global Desktop Platform Support and Release Notes for Release 4.7 E26357-02 November 2012 Oracle® Secure Global Desktop: Platform Support and Release Notes for Release 4.7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners. Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S.
    [Show full text]
  • Xview Developer's Notes
    XView Developer’s Notes 2550 Garcia Avenue Mountain View, CA 94043 U.S.A. A Sun Microsystems, Inc. Business 1994 Sun Microsystems, Inc. 2550 Garcia Avenue, Mountain View, California 94043-1100 U.S.A. All rights reserved. This product and related documentation are protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or related documentation may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Portions of this product may be derived from the UNIX® and Berkeley 4.3 BSD systems, licensed from UNIX System Laboratories, Inc., a wholly owned subsidiary of Novell, Inc., and the University of California, respectively. Third-party font software in this product is protected by copyright and licensed from Sun’s font suppliers. RESTRICTED RIGHTS LEGEND: Use, duplication, or disclosure by the United States Government is subject to the restrictions set forth in DFARS 252.227-7013 (c)(1)(ii) and FAR 52.227-19. The product described in this manual may be protected by one or more U.S. patents, foreign patents, or pending applications. TRADEMARKS Sun, the Sun logo, Sun Microsystems, Sun Microsystems Computer Corporation, SunSoft, the SunSoft logo, Solaris, SunOS, OpenWindows, DeskSet, ONC, ONC+, and NFS are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and certain other countries. UNIX is a registered trademark of Novell, Inc., in the United States and other countries; X/Open Company, Ltd., is the exclusive licensor of such trademark. OPEN LOOK® is a registered trademark of Novell, Inc.
    [Show full text]
  • X Window System Network Performance
    X Window System Network Performance Keith Packard Cambridge Research Laboratory, HP Labs, HP [email protected] James Gettys Cambridge Research Laboratory, HP Labs, HP [email protected] Abstract havior (or on a local machine, context switches between the application and the X server). Performance was an important issue in the develop- One of the authors used the network visualization tool ment of X from the initial protocol design and contin- when analyzing the design of HTTP/1.1 [NGBS 97]. ues to be important in modern application and extension The methodology and tools used in that analysis in- development. That X is network transparent allows us volved passive packet level monitoring of traffic which to analyze the behavior of X from a perspective seldom allowed precise real-world measurements and compar- possible in most systems. We passively monitor network isons. The work described in this paper combines this packet flow to measure X application and server perfor- passive packet capture methodology with additional X mance. The network simulation environment, the data protocol specific analysis and visualization. Our experi- capture tool and data analysis tools will be presented. ence with this combination of the general technique with Data from this analysis are used to show the performance X specific additions was very positive and we believe impact of the Render extension, the limitations of the provides a powerful tool that could be used in the analy- LBX extension and help identify specific application and sis of other widely used protocols. toolkit performance problems. We believe this analysis With measurement tools in hand, we set about char- technique can be usefully applied to other network pro- acterizing the performance of a significant selection of tocols.
    [Show full text]
  • FLTK 1.1.8 Programming Manual Revision 8
    FLTK 1.1.8 Programming Manual Revision 8 Written by Michael Sweet, Craig P. Earls, Matthias Melcher, and Bill Spitzak Copyright 1998-2006 by Bill Spitzak and Others. FLTK 1.1.8 Programming Manual Table of Contents Preface..................................................................................................................................................................1 Organization.............................................................................................................................................1 Conventions.............................................................................................................................................2 Abbreviations...........................................................................................................................................2 Copyrights and Trademarks.....................................................................................................................2 1 - Introduction to FLTK...................................................................................................................................3 History of FLTK......................................................................................................................................3 Features....................................................................................................................................................4 Licensing..................................................................................................................................................5
    [Show full text]
  • Striptool Users Guide.Pdf
    StripTool Users Guide 2008/10/24 8:01 AM StripTool Users Guide Kenneth Evans, Jr. November 2002 Advanced Photon Source Argonne National Laboratory 9700 South Cass Avenue Argonne, IL 60439 Table of Contents Introduction Overview History Starting StripTool Configuration Files Environment Variables Controls Window Menubar Graph Window Graph Legend Toolbar Popup Menu History Customization Acknowledgements Copyright Introduction Overview StripTool is a Motif application that allows you to view the time evolution of one or more process variables on a strip chart. It is designed to work with EPICS or CDEV and is maintained as an EPICS Extension. There are two main windows: The Controls Dialog and the Graph. The Controls Dialog allows you to specify and modify the process variable name and the graph parameters corresponding to each curve that is plotted. It also allows you to specify timing parameters and graph properties. The curves are plotted in real time on the Graph. There are buttons on the Graph that allow you to do things like zoom and pan, and there is a popup menu that allows http://www.aps.anl.gov/epics/EpicsDocumentation/ExtensionsManuals/StripTool/StripTool.html Page 1 of 10 StripTool Users Guide 2008/10/24 8:01 AM you to do things like print the graph and save the data in ASCII or SDDS format. StripTool was designed for UNIX but also runs on Microsoft Windows 95, 98, ME, 2000, and XP, collectively labeled here as WIN32. An X server and the X and Motif libraries are needed. For information on obtaining StripTool, consult the EPICS Documentation.
    [Show full text]
  • IN ACTION Understanding Data with Graphs SECOND EDITION
    Covers gnuplot version 5 IN ACTION Understanding data with graphs SECOND EDITION Philipp K. Janert MANNING Gnuplot in Action by Philipp K. Janert Chapter 2 Copyright 2016 Manning Publications brief contents PART 1GETTING STARTED............................................................ 1 1 ■ Prelude: understanding data with gnuplot 3 2 ■ Tutorial: essential gnuplot 16 3 ■ The heart of the matter: the plot command 31 PART 2CREATING GRAPHS ......................................................... 53 4 ■ Managing data sets and files 55 5 ■ Practical matters: strings, loops, and history 78 6 ■ A catalog of styles 100 7 ■ Decorations: labels, arrows, and explanations 125 8 ■ All about axes 146 PART 3MASTERING TECHNICALITIES......................................... 179 9 ■ Color, style, and appearance 181 10 ■ Terminals and output formats 209 11 ■ Automation, scripting, and animation 236 12 ■ Beyond the defaults: workflow and styles 262 PART 4UNDERSTANDING DATA ................................................. 287 13 ■ Basic techniques of graphical analysis 289 14 ■ Topics in graphical analysis 314 15 ■ Coda: understanding data with graphs 344 vii Color, style, and appearance This chapter covers Global appearance options Color Lines and points Size and aspect ratio Whereas the previous few chapters dealt with very local aspects of a graph (such as an individual curve, a single text label, or the details of tic mark formatting), the present chapter addresses global issues. We begin with a long and important sec- tion on color. Color is an exciting topic, and it opens a range of options for data visualization; I’ll explain gnuplot’s support for color handling in detail. Next, we discuss a few details that matter if you want to modify the default appearance of point types, dash patterns, and the automatic selection of visual styles.
    [Show full text]
  • Gou, Zaiyong, Ph.D
    Order Number 9411950 Scientific visualization and exploratory data analysis of a large spatial flow dataset Gou, Zaiyong, Ph.D. The Ohio State University, 1993 U M I 300 N. Zeeb Rd. Ann Arbor, MI 48106 SCIENTIFIC VISUALIZATION AND EXPLORATORY DATA ANALYSIS OF A LARGE SPATIAL FLOW DATASET DISSERTATION Presented in Partial Fulfillment of the Requirement for the Degree of Doctor of Philosophy in the Graduate School of The Ohio Stale University By Zaiyong Gou, B.S., M.A. $ * + $ * The Ohio State University 1993 Dissertation Committee: Approved by Duane F. Marble Morton E. O’Kelly 7 Duane F. Marble Randy W. Jackson Department of Geography DEDICATION To My Parents ACKNOWLEDGEMENT Of my thirteen years of being a geographer, the last four years under the supervision of Prof. Duane F. Marble at The Ohio State University has been the most exciting and most memorable. His wisdom and profound academic insight showed me what geography as an extraordinarily difficult discipline should be and could be. He is always the person who stands very high and sees very far, exploring the most challenging frontiers of geography relentlessly. As my academic adviser, his unfailing encouragement, guidance, patience and professional courtesy have always been my inspiration to work more creatively and more enthusiastically. He leads us to a high intellectual plateau and offers us the unlimited freedom to face the challenges and to pursue academic excellence. I am always grateful for the paths and opportunities you have pointed out to me. My gratitude also goes to Prof. Edward J. Taaffe, Prof. Morton E. O’Kelly and Prof.
    [Show full text]
  • Package 'Snp.Plotter'
    Package ‘snp.plotter’ February 15, 2013 Version 0.4 Date 2011-05-11 Title snp.plotter Author Augustin Luna <[email protected]>, Kristin K. Nicodemus <[email protected]>, <[email protected]> Maintainer Augustin Luna <[email protected]> Depends R (>= 2.0.0), genetics, grid Description Creates plots of p-values using single SNP and/or haplotype data. Main features of the package include options to display a linkage disequilibrium (LD) plot and the ability to plot multiple datasets simultaneously. Plots can be created using global and/or individual haplotype p-values along with single SNP p-values. Images are created as either PDF/EPS files. License GPL (>= 2) URL http://cbdb.nimh.nih.gov/~kristin/snp.plotter.html Repository CRAN Date/Publication 2012-10-29 08:59:47 NeedsCompilation no R topics documented: snp.plotter . .2 Index 7 1 2 snp.plotter snp.plotter SNP/haplotype association p-value and linkage disequilibrium plotter Description Creates plots of p-values using single SNP and/or haplotype data. Main features of the package include options to display a linkage disequilibrium (LD) plot and the ability to plot multiple set of results simultaneously. Plots can be created using global and/or individual haplotype p-values along with single SNP p-values. Images are created as either PDF/EPS files. Usage snp.plotter(EVEN.SPACED = FALSE, PVAL.THRESHOLD = 1, USE.GBL.PVAL = TRUE, SYMBOLS = NA, SAMPLE.LABELS = NULL, LAB.Y = "log", DISP.HAP = FALSE, DISP.SNP = TRUE, DISP.COLOR.BAR = TRUE, DISP.PHYS.DIST = TRUE, DISP.LEGEND
    [Show full text]
  • Proceedings of the FREENIX Track: 2002 USENIX Annual Technical Conference
    USENIX Association Proceedings of the FREENIX Track: 2002 USENIX Annual Technical Conference Monterey, California, USA June 10-15, 2002 THE ADVANCED COMPUTING SYSTEMS ASSOCIATION © 2002 by The USENIX Association All Rights Reserved For more information about the USENIX Association: Phone: 1 510 528 8649 FAX: 1 510 548 5738 Email: [email protected] WWW: http://www.usenix.org Rights to individual papers remain with the author or the author's employer. Permission is granted for noncommercial reproduction of the work for educational or research purposes. This copyright notice must be included in the reproduced paper. USENIX acknowledges all trademarks herein. XCL : An Xlib Compatibility Layer For XCB Jamey Sharp Bart Massey Computer Science Department Portland State University Portland, Oregon USA 97207–0751 fjamey,[email protected] Abstract 1 The X Window System The X Window System [SG86] is the de facto standard technology for UNIX applications wishing to provide a graphical user interface. The power and success of the X model is due in no small measure to its separation of The X Window System has provided the standard graph- hardware control from application logic with a stable, ical user interface for UNIX systems for more than 15 published client-server network protocol. In this model, years. One result is a large installed base of X applica- the hardware controller is considered the server, and in- tions written in C and C++. In almost all cases, these dividual applications and other components of a com- programs rely on the Xlib library to manage their inter- plete desktop environment are clients.
    [Show full text]