<!-- $XConsortium: preface.sgm /main/8 1996/09/08 19:47:18 rws $ -->
<!-- (c) Copyright 1995 Digital Equipment Corporation. -->
<!-- (c) Copyright 1995 Hewlett-Packard Company. -->
<!-- (c) Copyright 1995 International Business Machines Corp. -->
<!-- (c) Copyright 1995 Sun Microsystems, Inc. -->
<!-- (c) Copyright 1995 Novell, Inc. -->
<!-- (c) Copyright 1995 FUJITSU LIMITED. -->
<!-- (c) Copyright 1995 Hitachi. -->

<preface id="RDMAP.pref.div.1">
<title id="RDMAP.pref.mkr.1">Preface</title>
<para>The <emphasis>Common Desktop Environment: Programmer's Overview</emphasis>
provides a high-level view of the Common Desktop Environment development
environment and the developer documentation set. Read this book first before
starting application design and development.</para>
<note>
<para>In this manual, the terms <emphasis>(the) Common Desktop Environment</emphasis> and <emphasis>the</emphasis> <emphasis><indexterm><primary>desktop</primary><secondary>Common Desktop Environment</secondary></indexterm>desktop</emphasis> are used interchangeably.</para>
</note>
<para>Outside of the Preface, this manual omits the <emphasis>Common Desktop
Environment</emphasis> prefix when referring to a Common Desktop Environment
development or run-time environment manual. For example, the <emphasis>Common
Desktop Environment: Programmer's Overview</emphasis> is referred to as the <emphasis>Programmer's Overview</emphasis>.</para>
<sect1 id="RDMAP.pref.div.2">
<title>Who Should Use This Book</title>
<para>Read the <emphasis>Programmer's Overview</emphasis> if you are:</para>
<itemizedlist remap="Bullet1"><listitem><para>An application developer who
wants to develop a new Common Desktop Environment application, or integrate
an existing<indexterm><primary>Motif</primary></indexterm> Motif<superscript>
&reg;</superscript> or<indexterm><primary>OPEN LOOK</primary></indexterm> OPEN
LOOK<superscript>&reg;</superscript> application into the desktop</para>
</listitem><listitem><para>A manager, architect, or project lead interested
in designing a project involving applications that will run on the Common
Desktop Environment desktop</para>
</listitem></itemizedlist>
<para>For the remainder of this manual, Motif is referred to as Motif&reg;.
</para>
</sect1>
<sect1 id="RDMAP.pref.div.3">
<title>How This Book Is Organized</title>
<para>The Programmer's Overview is divided into two parts. Part I contains
an architectural overview of the Common Desktop Environment, including high-
level information on both the run-time and development environments. Part
II contains information useful to know before developing an application,
and describes the development environment components.</para>
<para>This section provides brief descriptions of the chapters and appendixes
contained in this manual.</para>
<para><!--Original XRef content: 'Chapter&numsp;1, &xd2;Architectural Overview'--><xref
role="ChapNumAndTitleLead-in" linkend="RDMAP.archo.mkr.1"><emphasis role="Lead-in">,</emphasis> presents an overview of the Common Desktop Environment
architecture.</para>
<para><!--Original XRef content: 'Chapter&numsp;2, &xd2;Development Environment
Considerations'--><xref role="ChapNumAndTitleLead-in" linkend="RDMAP.consi.mkr.1"><emphasis
role="Lead-in">,</emphasis> discusses information you should know
about the environment before you start to develop an application.</para>
<para><!--Original XRef content: 'Chapter&numsp;3, &xd2;Developing an Application'--><xref
role="ChapNumAndTitleLead-in" linkend="RDMAP.devap.mkr.1"><emphasis role="Lead-in">,</emphasis> presents information specific to developing a Common
Desktop Environment application, such as naming conventions and guidelines
to follow.</para>
<para><!--Original XRef content: 'Chapter&numsp;4, &xd2;Portability and Maintenance'--><xref
role="ChapNumAndTitleLead-in" linkend="RDMAP.port.mkr.1"><emphasis role="Lead-in">,</emphasis> discusses issues pertaining to writing portable and
maintainable applications.</para>
<para><!--Original XRef content: 'Chapter&numsp;5, &xd2;Basic Application
Integration'--><xref role="ChapNumAndTitleLead-in" linkend="RDMAP.BIntg.mkr.1"><emphasis
role="Lead-in">,</emphasis> summarizes how to make your application
launch-integrated (that is, started by double-clicking an icon on the desktop).
</para>
<para><!--Original XRef content: 'Chapter&numsp;6, &xd2;Recommended Integration'--><xref
role="ChapNumAndTitleLead-in" linkend="RDMAP.recin.mkr.1"><emphasis role="Lead-in">,</emphasis> provides overviews of all components and guidelines
that you should use so your application has the same look and feel as, and
interoperates well with, other Common Desktop Environment desktop applications.
</para>
<para><!--Original XRef content: 'Chapter&numsp;7, &xd2;Optional Integration'--><xref
role="ChapNumAndTitleLead-in" linkend="RDMAP.optin.mkr.1"><emphasis role="Lead-in">,</emphasis> provides overviews of the components to incorporate
into your application as needed for added functionality.</para>
<para><!--Original XRef content: 'Appendix&numsp;A, &xd2;Component and Guideline
Reference'--><xref role="AppendixNumAndTitleLead-in" linkend="RDMAP.compr.mkr.1"><emphasis
role="Lead-in">,</emphasis> lists in alphabetical order all development
environment components and guidelines, with associated library, header files,
and documentation.</para>
</sect1>
<sect1 id="RDMAP.pref.div.4">
<title id="RDMAP.pref.mkr.2">Related Books</title>
<para>For information on<indexterm><primary>Motif</primary><secondary>related
documentation</secondary></indexterm> Motif, see:</para>
<itemizedlist remap="Bullet1"><listitem><para><emphasis>Motif Programmer's
Guide</emphasis>, Release 1.2, by Open Software Foundation, 11 Cambridge
Center, Cambridge, MA 02142, published by PTR Prentice Hall, Englewood Cliffs,
NJ 07632</para>
</listitem><listitem><para><emphasis>Motif Programmer's Reference</emphasis>,
Release 1.2, by Open Software Foundation, 11 Cambridge Center, Cambridge,
MA 02142, published by PTR Prentice Hall, Englewood Cliffs, NJ 07632</para>
</listitem><listitem><para><emphasis>Motif Reference Guide</emphasis>,
by Douglas A. Young, published by PTR Prentice Hall, Englewood Cliffs, NJ
07632</para>
</listitem><listitem><para><emphasis>Motif 1.2 Style Guide</emphasis>,
by Open Software Foundation, 11 Cambridge Center, Cambridge, MA 02142, published
by PTR Prentice Hall, Englewood Cliffs, NJ 07632</para>
</listitem></itemizedlist>
<note>
<para>The <emphasis>Common Desktop Environment: Style Guide and Certification
Checklist</emphasis> is an extension of the <emphasis>Motif 1.2 Style
Guide</emphasis> to the Common Desktop Environment.</para>
</note>
<itemizedlist remap="Bullet1"><listitem><para><emphasis>OSF Application Environment
Specification (AES) User Environment Volume</emphasis>, Revision C, by Open
Software Foundation, 11 Cambridge Center, Cambridge, MA 02142, published
by PTR Prentice Hall, Englewood Cliffs, NJ 07632</para>
</listitem></itemizedlist>
<para>Motif 1.2 IEEE Std 1295 standard, which you can order from: IEEE Service
Center, 445 Hoes Lane, P.O. Box 1331, Piscataway, NJ 08855</para>
<para>For information on POSIX<indexterm><primary>POSIX</primary></indexterm>,
see the IEEE Std 1003.1-1990 standard, which you can order from: IEEE Service
Center, 445 Hoes Lane, P.O. Box 1331, Piscataway, NJ 08855</para>
<para>For information on<indexterm><primary>Xlib documentation</primary>
</indexterm> Xlib, see:</para>
<itemizedlist remap="Bullet1"><listitem><para><emphasis>Xlib Programming Manual</emphasis> <emphasis>for Version 11 (Volume 1) by Adrian Nye, published
by O'Reilly &amp; Associates, Sebastopol, CA, 95472</emphasis></para>
</listitem><listitem><para><emphasis>Xlib Reference Manual</emphasis> <emphasis>for Version 11 (Volume 2), published by O'Reilly &amp; Associates, Sebastopol,
CA, 95472</emphasis></para>
</listitem></itemizedlist>
<para>For information on<indexterm><primary>Xt documentation</primary></indexterm> Xt,
see:</para>
<itemizedlist remap="Bullet1"><listitem><para><emphasis>X Toolkit Intrinsics
Programming Manual</emphasis>, (Volume 4) by Adrian Nye and Tim O'Reilly,
published by O'Reilly and Associates, Sebastopol, CA 95472.</para>
</listitem><listitem><para><emphasis>X Toolkit Intrinsics Reference Manual,</emphasis> (Volume 5) edited by Tim O'Reilly, published by O'Reilly and
Associates, Sebastopol, CA 95472.</para>
</listitem></itemizedlist>
<para>For more information on<indexterm><primary>ToolTalk documentation</primary></indexterm> ToolTalk&reg;, see:</para>
<itemizedlist remap="Bullet1"><listitem><para><emphasis>The ToolTalk Service:
An Inter-Operability Solution</emphasis>, published by SunSoft Press and
PTR Prentice Hall, Englewood Cliffs, NJ 07632, ISBN 0-13-088717-X</para>
</listitem><listitem><para><emphasis>ToolTalk and Open Protocols: Inter-Application
Communication</emphasis>, by Astrid Julienne and Brian Holtz, published by
SunSoft Press and PTR Prentice Hall, Englewood Cliffs, NJ 07632, ISBN 013-031055-7
</para>
</listitem></itemizedlist>
<para>In addition to the <emphasis>Programmer's Overview</emphasis>, the<indexterm>
<primary>documentation set</primary><secondary>development environment</secondary>
</indexterm> development environment documentation set consists of:</para>
<itemizedlist remap="Bullet1">
<listitem><para><emphasis>Common Desktop Environment:
Style Guide and Certification Checklist</emphasis></para>
</listitem>
<listitem><para><emphasis>Common Desktop Environment: Application
Builder User's Guide</emphasis></para>
</listitem>
<listitem><para><emphasis>Common Desktop Environment: Programmer's
Guide</emphasis></para>
</listitem>
<listitem><para><emphasis>Common Desktop Environment: Help System
Author's and Programmer's Guide</emphasis></para>
</listitem>
<listitem><para><emphasis>Common Desktop Environment: ToolTalk
Messaging Overview</emphasis></para>
</listitem>
<listitem><para><emphasis>Common Desktop Environment: Internationalization
Programmer's Guide</emphasis></para>
</listitem>
<listitem><para><emphasis>Common Desktop Environment: Desktop KornShell
User's Guide</emphasis></para>
</listitem>
<listitem><para><citetitle>Common Desktop Environment: Information
System Author's and Programmer's Guide</citetitle></para></listitem>
<listitem><para><emphasis>Common Desktop Environment</emphasis>:
Glossary</para>
</listitem><listitem><para>Online man pages</para>
</listitem></itemizedlist>
<para>For more information on these development environment books, see the
following section, <!--Original XRef content: '&xd2;Development Environment
Documentation'--><xref role="SectionTitle" linkend="RDMAP.pref.mkr.3">.
</para>
<para>The run-time environment documentation set consists of:<indexterm>
<primary>documentation set</primary><secondary>run-time</secondary></indexterm><indexterm>
<primary>run-time</primary><secondary>documentation set</secondary></indexterm></para>
<itemizedlist remap="Bullet1"><listitem><para><emphasis>Common Desktop Environment:
User's Guide</emphasis></para>
</listitem><listitem><para><emphasis>Common Desktop Environment: Advanced
User's and System Administrator's Guide</emphasis></para>
</listitem><listitem><para>Online help volumes</para>
</listitem></itemizedlist>
<note>
<para>The <emphasis>Advanced User's and System Administrator's Guide</emphasis>
contains information to help you integrate an application into the desktop.
</para>
</note>
</sect1>
<sect1 id="RDMAP.pref.div.5">
<title id="RDMAP.pref.mkr.3">Development Environment Documentation</title>
<para>This section provides an overview of each manual&mdash;except for the
<emphasis>Programmer's Overview</emphasis>&mdash;in the developer documentation
set.</para>
<sect2 id="RDMAP.pref.div.6">
<title>Common Desktop Environment: Style Guide and Certification Checklist</title>
<para>The <emphasis>Common Desktop Environment: Style Guide and Certification
Checklist</emphasis> provides application design style guidelines and the
list of requirements for Common Desktop Environment application-level certification.
These requirements consist of the Motif requirements with Common Desktop
Environment-specific additions.</para>
<para>The checklist describes keys using a model keyboard mechanism. It assumes
that your application is being designed for a left-to-right language environment
in an English-language locale. Wherever keyboard input is specified, the
keys are indicated by the engravings on the Motif model keyboard. Mouse buttons
are described using a virtual button mechanism to better describe behavior
independent from the number of buttons on the mouse.</para>
<para>This book provides information to assist the application designer in
developing consistent applications and behaviors within the applications.
</para>
</sect2>
<sect2 id="RDMAP.pref.div.7">
<title>Common Desktop Environment: Application Builder User's Guide</title>
<para>The Common Desktop Environment Application Builder (also called App
Builder) is an interactive tool for developing Common Desktop Environment
applications. It provides features that facilitate both the construction
of an application graphical user interface (GUI) and the incorporation of
the desktop's many useful desktop services (such as Help, ToolTalk, Drag
and Drop). The <emphasis>Common Desktop Environment: Application Builder
User's Guide</emphasis> explains how to create an interface by dragging and
dropping &ldquo;objects&rdquo; from a palette. It also explains how to
make connections between objects in the interface, how to use the application
framework editor to easily integrate desktop services, how to generate C
code, and how to add application code to the App Builder output to produce
a finished application.</para>
</sect2>
<sect2 id="RDMAP.pref.div.8">
<title>Common Desktop Environment: Programmer's Guide</title>
<para>The <emphasis>Common Desktop Environment: Programmer's Guide</emphasis>
has two parts. Each part provides a detailed description of elements of the
Common Desktop Environment, a conceptual diagram, and a task-oriented description
of how to use each element, complete with code examples.</para>
<para>Part I, &ldquo;Recommended Integration,&rdquo; provides an overview
of basic integration, and describes how to integrate new applications with
the Session Manager, fonts, and drag and drop. It also discusses displaying
error messages.</para>
<para>Part II, &ldquo;Optional Integration,&rdquo; describes how to integrate
new applications with the Workspace Manager, Common Desktop Environment Motif
widgets, actions, data types, and Calendar.</para>
<para>The <emphasis>Programmer's Guide</emphasis> provides an introduction
to the application program interfaces (APIs) for the components referred
to in the descriptions of Parts I and II above, with cross-references to
the relevant man pages. Details are covered in the man pages.</para>
</sect2>
<sect2 id="RDMAP.pref.div.9">
<title>Common Desktop Environment: Help System Author's and Programmer's
Guide</title>
<para>The <emphasis>Common Desktop Environment: Help System Author's and Programmer's
Guide</emphasis> describes how to develop online help for application software.
It covers how to create help topics and how to integrate online help into
a Motif application.</para>
<para>The audience for this book includes:</para>
<itemizedlist remap="Bullet1"><listitem><para>Authors who design, create,
and view online help information</para>
</listitem><listitem><para>Developers who want to create software applications
that provide a fully integrated help facility</para>
</listitem></itemizedlist>
<para>This book has four parts. Part I describes the collaborative role that
authors and developers undertake to design application help. Part II provides
information for authors organizing and writing online help. Part III describes
the Help System application programmer's toolkit. Part IV contains information
for both authors and programmers about preparing online help for different
language environments.</para>
</sect2>
<sect2 id="RDMAP.pref.div.10">
<title>Common Desktop Environment: ToolTalk Messaging Overview</title>
<para>The <emphasis>Common Desktop Environment: ToolTalk Messaging Overview</emphasis> describes the ToolTalk components, commands, and error messages
offered as convenience routines to enable your application to conform to
Media Exchange and Desktop Services message set conventions. This manual
is for developers who create or maintain applications that use the ToolTalk
service to interoperate with other applications.</para>
<para>The <emphasis>ToolTalk Messaging Overview</emphasis> does <symbol role="Variable">not</symbol> describe general ToolTalk functionality. For detailed information
about the ToolTalk service, refer to <emphasis>The ToolTalk Service: An Inter-Operability
Solution</emphasis>. For tips and techniques to help make using ToolTalk
easier, read <emphasis>ToolTalk and Open Protocols: Inter-Application Communication</emphasis>. Both of these books are listed in <!--Original XRef content:
'&xd2;Related Books&xd3; on page&numsp;xv'--><xref role="SecTitleAndPageNum"
linkend="RDMAP.pref.mkr.2">.</para>
</sect2>
<sect2 id="RDMAP.pref.div.11">
<title>Common Desktop Environment: Internationalization Programmer's Guide</title>
<para>The <emphasis>Common Desktop Environment: Internationalization Programmer's
Guide</emphasis> provides information for internationalizing an application
so that it can be easily localized to support various languages and cultural
conventions in a consistent user interface.</para>
<para>Specifically, this guide:</para>
<itemizedlist remap="Bullet1"><listitem><para>Provides guidelines and hints
for developers on how to write applications for worldwide distribution</para>
</listitem><listitem><para>Provides an overall view of internationalization
topics that span different layers within the desktop</para>
</listitem><listitem><para>Provides pointers to reference and more detailed
documentation. In some cases, standard documentation is referenced.</para>
</listitem></itemizedlist>
<para>This guide is not intended to duplicate the existing reference or conceptual
documentation, but rather to provide guidelines and conventions on specific
internationalization topics. It focuses on internationalization topics and
not on any specific component or layer in an open software environment.</para>
</sect2>
<sect2 id="RDMAP.pref.div.12">
<title>Common Desktop Environment: Desktop KornShell User's Guide</title>
<para>The <emphasis>Common Desktop Environment: Desktop KornShell User's Guide</emphasis> describes how to create Motif applications with Desktop KornShell
(<command>dtksh</command>) scripts. It contains several example scripts of
increasing complexity, in addition to the basic information a developer needs
to get started.</para>
<para>This guide is intended for developers who find a shell-style scripting
environment suitable for a particular task. It assumes a knowledge of KornShell
programming, Motif, the Xt Intrinsics, and, to a lesser extent, Xlib.</para>
</sect2>
<sect2 id="RDMAP.pref.div.12a">
<title>Common Desktop Environment: Information System Author's
and Programmer's Guide</title>
<para>The <citetitle>Common Desktop Environment: Information System
Author's and Programmer's Guide</citetitle> describes how to
develop and integrate on-line documentation. This manual is addressed
to two audiences: the documentation author, who
develops the documentation content; and the programmer,
who integrates the documentation with the CDE documentation
browser, <command>dtinfo</command>.
</para>
</sect2>
<sect2 id="RDMAP.pref.div.13">
<title>Common Desktop Environment: Glossary</title>
<para>The <emphasis>Common Desktop Environment: Glossary</emphasis> provides
a comprehensive list of terms used in the Common Desktop Environment. The
Glossary is the source and reference base for all users of the desktop. Because
the audience for this glossary consists of many different types of users&mdash;from
end users to developers to translators&mdash;the format for a glossary definition
may include information about the audience, where the term originated, and
the Common Desktop Environment component that uses the term in its graphical
user interface.</para>
</sect2>
</sect1>
<sect1 id="RDMAP.pref.div.14">
<title>What DocBook SGML Markup Means</title>
<para>This book is written in the Structured Generalized Markup
Language (SGML) using the DocBook Document Type Definition (DTD).
The following table describes the DocBook markup used for
various semantic elements.
</para>
<table id="RDMAP.pref.tbl.1" frame="Topbot">
<title>DocBook SGML Markup</title>
<tgroup cols="3" colsep="0" rowsep="0">
<colspec colwidth="1.65in">
<colspec colwidth="2.63in">
<colspec colwidth="2.92in">
<thead>
<row>
<entry align="left" valign="bottom"><para><literal>Markup Appearance</literal></para></entry>
<entry align="left" valign="bottom"><para><literal>Semantic Element(s)</literal></para></entry>
<entry align="left" valign="bottom"><para><literal>Example</literal></para></entry></row>
</thead>
<tbody>
<row>
<entry align="left" valign="top"><para><command>AaBbCc123</command></para></entry>
<entry align="left" valign="top"><para>The names of commands.</para></entry>
<entry align="left" valign="top"><para>Use the <command>ls</command> command to list files.</para></entry>
</row>
<row>
<entry align="left" valign="top"><para><literal>AaBbCc123</literal></para></entry>
<entry align="left" valign="top"><para>The names of command options.</para></entry>
<entry align="left" valign="top"><para>Use <command>ls</command> <literal>&minus;a</literal>
to list all files.</para></entry>
</row>
<row>
<entry align="left" valign="top"><para><symbol role="Variable">AaBbCc123</symbol></para></entry>
<entry align="left" valign="top"><para>Command-line placeholder:
replace with a real name or value.</para></entry>
<entry align="left" valign="top"><para>To delete a file, type <command>rm</command> <symbol role="Variable">filename</symbol>.</para></entry>
</row>
<row>
<entry align="left" valign="top"><para><filename>AaBbCc123</filename></para></entry>
<entry align="left" valign="top"><para>The names of files and
directories.</para></entry>
<entry align="left" valign="top"><para>Edit your <filename>.login</filename>
file.</para></entry>
</row>
<row>
<entry align="left" valign="top"><para><emphasis>AaBbCc123</emphasis></para></entry>
<entry align="left" valign="top"><para>Book titles, new words or terms, or
words to be emphasized.</para></entry>
<entry align="left" valign="top"><para>Read Chapter 6 in <emphasis>User's
Guide</emphasis>.
These are called <emphasis>class</emphasis> options.
You <emphasis>must</emphasis> be root to do this.</para></entry>
</row></tbody></tgroup></table>
</sect1>
</preface>
<!--fickle 1.14 mif-to-docbook 1.7 01/02/96 04:30:53-->
<?Pub *0000023399>
