The Photon Programmer's Guide is intended for developers of Photon applications. It describes how to create applications and the widgets that make up their user interfaces, with and without using the Photon Application Builder (PhAB).
|If you're familiar with earlier versions of Photon, you should read:|
This table may help you find what you need in this book:
|For information about:||See:|
|Photon, widgets, and PhAB||Introduction|
|Getting started with PhAB||Tutorials|
|PhAB's user interface||PhAB's Environment|
|Creating, opening, and saving applications in PhAB||Working with Applications|
|PhAB modules, such as windows, dialogs, and menus||Working with Modules|
|Adding, deleting, and modifying widgets in PhAB||Creating Widgets in PhAB|
|Initializing a widget's resources and callbacks||Editing Resources and Callbacks in PhAB|
|Setting the sizes of a widget and its children||Geometry Management|
|Getting PhAB to generate code||Generating, Compiling, and Running Code|
|Editing code generated by PhAB||Working with Code|
|Getting and setting widget resources||Manipulating Resources in Application Code|
|Adding or modifying widgets "on the fly" at runtime||Managing Widgets in Application Code|
|Building special areas into a widget||Control Surfaces|
|Using internal links to refer to PhAB modules||Accessing PhAB Modules from Code|
|Developing a multilingual application||International Language Support|
|Adding help information to your application||Context-Sensitive Help|
|Communicating with a Photon application||Interprocess Communication|
|Threads, work procedures, and background processing||Parallel Operations|
|Using PtRaw and Photon's low-level drawing routines||Raw Drawing and Animation|
|Printing in a Photon application||Printing|
|Transferring data from one widget or application to another||Drag and Drop|
|Interaction between applications, users, and the Photon server||Events|
|Working with windows and modal dialogs||Window Management|
|Developing applications "by hand" without PhAB||Programming Photon without PhAB|
|Photon's implementation||Photon Architecture|
|PhAB's widget icons||Widgets at a Glance|
|Handling international characters||Unicode Multilingual Support|
|Building an embedded system||Photon in Embedded Systems|
|Differences between the Windows and native QNX Neutrino versions of PhAB||Using PhAB under Microsoft Windows|
This section doesn't try to describe all the changes to PhAB's user interface; most you'll discover by trying it yourself or by scanning this manual. Instead, this section lists only the major changes.
The changes are listed below by chapter:
Instead of the message module, use one of:
For more information, see the Photon Library Reference.
This creates several incompatibilities with earlier versions of the Photon microGUI:
The entire API has been made simpler. Applications that call the old routines should still work, but you should reread this chapter.
Throughout this manual, we use certain typographical conventions to distinguish technical terms. In general, the conventions we use conform to those found in IEEE POSIX publications. The following table summarizes our conventions:
|Code examples||if( stream == NULL )|
|File and pathnames||/dev/null|
|Keyboard input||something you type|
|Programming data types||unsigned short|
|Programming literals||0xFF, "message string"|
We use an arrow (-->) in directions for accessing menu items, like this:
You'll find the Other... menu item under.
We use notes, cautions, and warnings to highlight important messages:
|Notes point out something important or useful.|
|Cautions tell you about commands or procedures that may have unwanted or undesirable side effects.|
|Warnings tell you about commands or procedures that could be dangerous to your files, your hardware, or even yourself.|
In our documentation, we use a forward slash (/) as a delimiter in all pathnames, including those pointing to Windows files.
We also generally follow POSIX/UNIX filesystem conventions.
At the top and bottom of our HTML docs, you'll see some or all of these buttons:
|Use this button:||To move:|
|To the previous part of the document.|
|"Up" in the document:
|To the keyword index.|
|To the next part of the document.|
To obtain technical support for any QNX product, visit the Support + Services area on our website (www.qnx.com). You'll find a wide range of support options, including community forums.
Copyright © 1995 - 2007, QNX Software Systems. All rights reserved.