Programming with MotifT

Programming with MotifT

by Keith D. Gregory


Choose Expedited Shipping at checkout for guaranteed delivery by Thursday, January 30
7 New & Used Starting at $1.99


About this Book This book is a detailed introduction to programming with the OSF /MotifI'M graphical user interface. It is an introduction in that it does not require the reader to have experience programming in the X Window environment. It is detailed in that it teaches you how to use the interface components provided by Motif in a complex application. Although it contains a great deal of reference material, it is not meant as an authoritative reference - that is the job of the OSF/Motif Programmer's Reference, which uses over 900 pages in the process. Instead, this book provides its reference material in a practical, "how to" manner and allows the reader to use the Programmer's Reference effectively. The target reader is an experienced C programmer and user of the X Window System under the UNIX operating system. 'the reader should be familiar with the tools provided by UNIX for the compilation and testing of programs; while this book does examine the process by which a Motif program is compiled, it does not explain that process. It also assumes that the reader is familiar with "x" terms such as 'pointer' and 'display'.

Product Details

ISBN-13: 9780387978772
Publisher: Springer New York
Publication date: 10/08/1992
Edition description: 1992
Pages: 664
Product dimensions: 6.69(w) x 9.61(h) x 0.06(d)

Table of Contents

1 An Introduction To Motif.- ‘Mechanism, not Policy’.- Enter Motif.- The Layers of X.- 2 The Widget.- What Is a Widget?.- An Introduction to Object-Oriented Programming.- Widgets as Objects.- The Motif Class Tree.- Widget Instance Tree.- 3 Widget Resources.- What Are Resources?.- Resource Tables.- A Short Note on Resource Naming Conventions.- Resource Files.- The Naming of Widgets.- Format of a Resource Specification.- Sample Resource File.- Setting Resources by Class.- Resolution of Wild carded Widget Names.- The Resource not Set.- Commenting the Resource File.- How Many Resource Files Could One Program Use?.- Setting Resources from the Command Line.- Setting Resources Programmatically.- “Hard Wiring” Resource Values.- Getting Resources Programmatically.- 4 Writing A Motif Program.- The Widget Data Type.- Stages in the Life of a Motif Program.- A Program Template.- Header Files.- Compilation of a Motif Program.- A Short Note About Program Size.- What About Standard I/O?.- 5 XmLabel.- Overview.- XmLabel Inheritance.- XmLabel Resources.- Using XmLabel: “Hello, World!”.- Setting a Label’s Font.- The XmString Data Type.- Setting labelString Programmatically.- Using XmLabel with Pictures.- 6 Managers.- Overview.- Inheritance.- Constraints: An Overview.- Management Revisited.- Measurement: The unitType Resource.- XmBulletinBoard.- XmBulletinBoard Examples.- XmRowColunm.- XmRowColunm Examples.- XmPanedWindow.- XmPanedWindow Example: Three Labels and a Paned Window.- XmForm.- XmForm Examples.- 7 Buttons.- Overview.- Inheritance.- XmPushButton.- XmPushButton Example: Press Here.- XmArrowButton.- XmArrowButton Example.- XmToggleButton.- XmToggleButton Examples.- 8 Events and Callbacks.- Overview.- Handling X Events.- Event Handler Example: Mouse Tracker.- Callbacks.- Button Callbacks.- XmPushButton Callback Example: Press Here.- Actions.- Translations.- Action/Translation Example: Multibutton Pushbutton.- XmPushButton Default Translations.- 9 Keyboard Input.- Overview.- Input Focus.- Keyboard Events.- Traversal.- Traversal Example: Three Tab Groups.- XmText.- XmText Resources.- XmText Callbacks.- XmText Default Translations.- XmText Convenience Functions.- XmText Example: Memo Pad.- XmText Example: Entry Fields.- Scrolled Text.- Creating a Scrolled Text “Widget”.- Scrolled Text Resources.- Scrolled Text Example: File Browser.- 10 Scrollbars.- Overview.- Scrollbar Components and Terminology.- XmScrolledWindow.- XmScrolledWindow Resources.- Creating and.Initializing a Scrolled Window.- XmScrolledWmdow Example. Scrolling Row-Column.- XmScrollBar.- XmScrollBar Resources.- XrnScrollBar Callbacks.- Getting and Setting a Scrollbar’s Values Programmatically.- XmScrollBar Example.- XmScale.- XmScale Resources.- XmScale CallbaGks.- Getting and Setting a Scale’s Value Programmatically.- XmScale Example.- 11 The Motif “Look”.- Overview.- Components of a Motif Client.- XmMain Window.- XmMain Window Resources.- XmMainWindow Convenience Functions.- XmSeparator.- XmSeparator Resources.- XmSeparator Example.- XmFrame.- XmFrame Resources.- XmFrame Example: Labels in Frames.- The New Standard Program Template.- The Text Editor: A Sample Application.- 12 Menus.- Overview.- XmCascadeButton.- XmCascadeButton Resources.- XmCascadeButton Callbacks.- XmRowColumn Menu Resources.- XmRowColumn Callbacks.- The Menu Bar.- The Standard Motif Menu Bar.- Menu Bar Example: Adding a Menu Bar to the Editor.- XmMenuShell and a Menu Pane’s Instance Tree.- Pull-Down Menus.- Pull-Down Example: Adding Pull-Down Menus to the Editor.- Mnemonics.- Menu AcceleratorsCascading Pull-Downs.- Cascading Pull-Down Example.- Pop-Up Menus.- Pop-Up Menu Example: Color Selection Menu.- Option Menus.- XmRowColumn Resources Specific to Option Menus.- Option Menu Example: Font Family and Size.- Menu Summary.- 13 Dialogs.- Overview.- Dialog Modality.- Dialog Design and Components.- XmDialogShell.- XmDialogShell Resources.- Dialog Management and Unmanagement.- XmBulletinBoard Dialog Resources.- Building and Using a Dialog.- Bulletin Board Dialog Example: Find.- Message Boxes.- XmMessageBox.- XmMessageBox Resources.- XmMessageBox Convenience Functions.- XmMessageBox Example: “Can’t Find” Alert.- Grabbing and Assigning Input Focus.- 14 Lists.- Overview.- XmList.- XmList Resources.- XmList Callbacks.- XmList Convenience Functions.- XmList Example: E-Mail Address Selection.- Scrolled List.- Scrolled List Resources.- Scrolled List Example: Scrolling E-Mail Addresses.- XmSelectionBox.- XmSelectionBox Resources.- XmSelectionBox Callbacks.- Creating and Using a Selection Box.- Accessing a Selection Box’s Children.- XmSelectionBox Example: E-Mail Addresses.- XmFileSelectionBox.- XmlFileSelectionBox Resources.- Creating and Using XmFileSelectionBox.- XmlFileSelectionBox Example: Open/Save As.- XmCommand.- XmCommand Resources.- XmCommand Convenience Functions.- XmCommand Example.- 15 Using Xlib With Motif.- Overview.- The X Server.- Color in a Digital World.- The Standard Xlib Parameters.- The Graphics Context.- XmDrawingArea.- XmDrawingArea Resources.- XmDrawingArea Callbacks.- XmDrawingArea Example: Doodle.- 16 Resources Revisited.- Overview.- Program Instance Names.- Command-Line Options.- Resource Converters.- Writing a Converter.- Quarks.- Using Converters Outside the Resource Manager.- The Conversion Cache.- Application Resources.- 17 Interclient Communication.- Overview.- File I/O.- Timeouts.- Background Processing: WorkProcs.- Sending Events Between Clients.- Atoms.- Window Properties.- Window Manager Protocols.- Selection.- The Clipboard.- Example: Adding Cut. Copy. and Paste to the Text Editor.- XmText Direct Clipboard Interface.- Appendix A:
ISO Latin 1 Character Set.- Appendix B:
Widget Class Summary.- Overview.- ApplicationShell.- Composite.- Constraint.- Core.- OverrideShell.- Shell.- TopLevelShell.- TransientShell.- VendorShell.- WMShell.- XmArrowButton.- XmBulletinBoard.- XmCascadeButton543.- XmCommand543.- XmDialogShell.- XmDrawingArea.- XmDrawnButton.- XmfileSelectionBox.- XmForm.- XmFrame.- XmLabel.- XmList.- XmMainWindow.- XmManager.- XmMenuShell.- XmMessageBox.- XmPanedWindow551.- XmPrimitive.- XmPushButton.- XmRowColumn.- XmScale.- XmScrollBar.- XmScrolledWindow.- XmSelectionBox.- XmSeparator.- XmText.- XmToggleButton.- Appendix C:
X Event Reference.- Overview.- Event Types.- Event Masks.- XEvent.- XAnyEvent.- ButtonPress. ButtonRelease.- CirculateNotify.- CirculateRequest.- ClientMessage.- ColormapNotify.- ConfigureNotify.- ConfigureRequest.- CreateNotify.- DestroyNotify.- EnterNotify, LeaveNotify.- Expose.- Focusln, FocusOut.- GraphicsExpose, NoExpose.- GravityNotify.- KeymapNotify.- KeyPress, KeyRelease.- MapNotify, UnmapNotify.- MappingNotify.- MapRequest.- MotionNotify.- PropertyNotify.- ReparentNotify.- ResizeRequest.- SelectionClear.- SelectionNotify.- SelectionRequest.- VisibilityNotify.- Appendix D:
Changes In X And Motif.- Overview.- From Motif 1.0 to 1.1.- From X11 Release 3 to Release 4.- From X11 Release 4 to Release 5.- Appendix E: Where To Go For More Information.- Overview.- Documentation.- Mailing Lists/NetNews.- The FAQs.- Getting X and Motif Software.- Getting This Book’s Sample Programs.

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews