Object-Oriented Programming with C++ and OSF/Motif

Douglas A. Young

Publisher: Prentice Hall, 1992, 434 pages

ISBN: 0-13-630252-1

Keywords: Programming, Graphics

Last modified: July 18, 2021, 10:27 p.m.

From the preface…

"This book grew out of the simple question, "How do I use the Motif user interface toolkit when programming in C++?" The most direct answer to this question, one that provides only the mechanics of the solution, is fairly simple. But fully addressing all the surrounding issues is a more complex task. In particular, a complete answer must discuss how to coordinate the programming model supported by X and Motif with the C++ object-oriented programming model. This is the central topic of this book."

It also covers user interface design methods and includes code examples that form a useful toolkit. Throughout the book Young emphasizes the thought processes behind each technique and presents common architectures for object-oriented user interfaces.

Key features:

  • shows how C++ and Motif can be used together effectively
  • shows how to design and implement reusable user interface components based on Motif
  • provides practical examples showing how object-oriented programming affects the structure of real applications
  • Part I: Introduction to C++ and Motif
    1. An X/Motif Tutorial using C++
      1. The X/Motif Architecture
      2. Mixing C and C++
      3. Programming with Motif and the Xt Intrinsics
      4. The Motif Widget Set
      5. Customization and Resources
      6. Summary
    2. C++ Classes and Widgets
      1. User Interface Components
      2. The UIComponent Class
      3. User Interface Component Class
      4. Writing C++ Classes vs. Writing Widgets
      5. Summary
    3. Designing with Objects
      1. Object-oriented Design and Development
      2. CRC: Classes/Responsibilities/Collaborators
      3. A Design Notation
      4. Designing for Reusability
      5. Summary
    4. TicTacToe: Design
      1. Defining the Problem
      2. Finding the Objects
      3. Developing Initial Class Cards
      4. Finalizing the Design
      5. Designing the TicTacToe User Interface
      6. Summary
    5. TicTacToe: Implementation
      1. The TicTacToe Class
      2. The GameBoard Class
      3. The Message Class
      4. The Command Class
      5. The Engine Subsystem
      6. Putting It All Together
      7. Summary
  • Part II: Application Frameworks
    1. The MotifApp Application Framework
      1. An Overview
      2. The Application Class
      3. The MainWindow Class
      4. The MotifApp main() Function
      5. The MotifApp Library
      6. Using the Application Framework
      7. Summary
    2. Dialogs
      1. Using Dialogs
      2. The DialogManager Class
      3. The InfoDialogManager Class
      4. The QuestionDialogManager Class
      5. Summary
    3. Command Classes
      1. The Cmd Class
      2. The CmdInterface Class
      3. The NoUndoCmd Class
      4. The UndoCmd Class
      5. The AskFirstCmd Class
      6. The WarnNoUndoCmd Class
      7. Summary
    4. A Simple Menu System
      1. The ButtonInterface Class
      2. The MenuBar Class
      3. The MenuWindow Class
      4. A MenuBar Example
      5. Summary
    5. Lengthy Tasks
      1. Strategies for Busy Applications
      2. The WorkingDialogManager Class
      3. The InterruptibleCmd Class
      4. An Example Program
      5. Summary
    6. A Color Chooser
      1. Models and Views
      2. A ColorChooser Dialog
      3. Summary
    7. A MotifApp Application
      1. An Overview of Bounce
      2. The Stage Class
      3. Driving the Animation
      4. The Control Panel
      5. Actors
      6. The AddBallCmd Class
      7. The BounceWindow Class
      8. Building and Running Bounce
      9. Summary

Reviews

Object-Oriented Programming with C++ and OSF/Motif

Reviewed by Roland Buresund

Mediocre **** (4 out of 10)

Last modified: May 21, 2007, 3:16 a.m.

Written by a knowledgeable author and covers the subject very well. Unfortunately, you need to know OO/C++/Motif before taking this book on.

Comments

There are currently no comments

New Comment

required

required (not published)

optional

required

captcha

required