About Bluestone  |  Contact Us
 
 
text begins here text ends

Unix-based Tools

Java-based Tools

 

IT Staff Augmentation

  • Development
  • Database
  • System Admin.
Training
 
 
 
 
 

UIM/X Object Oriented Development

Course Overview
This 3-day course begins with a review of the essential Xlib, Xt toolkit, and Motif concepts upon which UIM/X 3.0 (and other versions) is built. Then, the tool itself is broken down into its functional layers and presented in a series of lectures and laboratory sessions. Students progress from prototyping a simple interface, to properly supporting multiple shells, to defining reusable interface components. Seventy percent of the course is hands-on time: step-by-step tutorials led by the instructor, informal exercises, and full laboratory sessions where they apply principles learned to real-world examples.

Training Date(s) / Location
Call your Bluestone Consulting representative or 856-813-1100 for scheduling information.

Key Benefits

  • Layout widgets, set resources, and test callbacks interactively.
  • Use UIM/X for maximal GUI design and implementation efficiency.
  • Enforce corporate style guides.
  • Link together multiple interfaces.
  • Define parameterized, reusable components.

Audience
This course is designed for programmers, engineers, and managers needing to understand the functional layers of UIM/X and how to use those layers to build anything from rapid prototypes to full OSF/Motif and corporate style guide compliant interfaces.

Prerequisites

  • Motif Programming (recommended)
  • Advanced C Programming
  • UNIX Fundamentals
  • vi or emacs
Course Content:

X and Motif Review

  • Background History of X
  • Software Layers
  • The Client / Server Model
  • Client and Server Communication
  • Windows in an Interface
  • Windows on the Server
  • Window Clipping and Stacking Rules
  • Window Geometry
  • Pixels, Planes, and Colormaps
  • Motif Widget Class Hierarchy
  • Creating and Managing Widgets
  • Accessing Resources Programmatically
  • Callback Functions

UIM/X Project Operation

  • UIM/X Development Steps
  • GUI Source and Generated Files
  • UIM/X Directory Structure
  • Running UIM/X
  • UIM/X Novice Mode
  • UIM/X Main Project Window
  • Creating A Topmost Widget
  • Suggested Window Layout
  • Interface Icons
  • Saving A Project
  • Project Components
  • Project Files
  • Project (.prj) File Format
  • Interface (.i) File Format
  • Loading A Project
  • Showing and Hiding All Interfaces
  • Selection Techniques
  • Selected Interfaces Popup
  • Options Menu
  • Code Generation Options
  • Generating Project Code
  • Generated C Files
  • Exiting Or Resetting UIM/X

Widget-Level Operations

  • Selected Widgets Popup
  • Creating Manager Widgets
  • Raising a Browser
  • Suggested Window Layout
  • The Browser
  • Browser File Menu
  • Browser Create Menu
  • Browser Edit Menu
  • Browser View Options
  • Browser Selected Widgets Popup
  • Creating Primitive Widgets
  • Duplicating Widgets
  • Widget Move/Resize Rectangles
  • Moving or Resizing Hidden Widgets
  • Re-Creating Widgets
  • Aligning Widgets
  • Reparenting Widgets
  • Changing Sibling Stacking Order

Property Editor

  • Invoking a Property Editor
  • The Property Editor
  • Loading Widgets
  • Options for Loading
  • Removing Widgets from Property Editor
  • Color Viewer
  • Color Viewer Edit Menu and Color Map
  • Color Editor
  • Pixmap Viewer
  • View Menu
  • Property Sources
  • Resource Categories
  • Font Viewer
  • Changing Widget Name And Scope
  • Renaming An Interface
  • Behavior Category
  • Callback Editor
  • Finding Parse Errors
  • Design Time vs. Run Time
  • Distinguishing C vs. C++ Code
  • Sample Generated Callback Code
  • Miscellaneous

Constraint Editor

  • Motivation
  • Invoking the Constraint Editor
  • Constraint Editor
  • Constraint Tools
  • Applying Bolt Constraints
  • Effect of Bolt Constraints
  • Applying Dimension Constraints
  • Effect of Dimension Constraint
  • Applying Pushpin Constraints
  • Effect of Pushpin Constraints
  • Removing Constraints

Ux Library and Code Generation

  • Ux Convenience Library
  • C++ Convenience Library Bindings
  • Dynamic Resource Manipulation
  • Visibility Support Routines
  • Widget/Swidget Conversions
  • UIM/X Globals
  • Disabling The Ux Library
  • uxcgen
  • Support Files

Declarations Editor

  • Purpose of the Declarations Editor
  • The Declarations Editor
  • The Declarations Editor with C++
  • Analysis Of .h Files
  • Analysis Of .c Files
  • Code Mapping of Declarations Editor
  • Initial and Final Code
  • Code Guidelines

Interpreter

  • Invoking the Interpreter
  • Executing C or C++ Code
  • Viewing Interpreter Results
  • Testing Initial and Final Code
  • Translation Units
  • Loading A File Into The Interpreter
  • Clearing Interpreter Messages
  • The cflags Resource
  • Miscellaneous

Program Layout Editor

  • Program Layout Editor
  • Specifying The Application Class
  • Specifying The Startup Interface
  • Customizing the Main Program
  • Analysis Of Main Program
  • Customizing the Makefile
  • Analysis Of Makefile
  • Specifying The Event Loop Type

Menus and Main Windows

  • A Main Window and Menubar
  • Main Window Editor
  • Accessing the Main Window Property Editor
  • Motif Menu Types
  • Menu Components
  • Menu Anatomy
  • Invoking the Menu Editor
  • The Menu Editor
  • Entering Pane Information
  • Creating An Item
  • Editing An Item
  • Changing an Item Name
  • Creating A Pane
  • Edit Menu Operations
  • Cascading Submenus
  • Attaching the Cascading Submenu
  • Creating A Help Menu (Version 2.9+)

Context Support

  • Multiple Instances of an Interface
  • Motivation for Context Support
  • Code Generated Without Context Support
  • The Context Structure
  • Context Creation
  • Context Access
  • Instance Specific Variables
  • Implications of Context Support
  • Context Support in C++ Mode

Linking Interfaces Together

  • Styles Of Popping Up Interfaces
  • Parenting Of Interfaces
  • Creating and Popping Up Interfaces
  • Adding Interface Function Arguments
  • Creating Interfaces at Initialization
  • Interface Function Types
  • Modality Of Popup Dialogs

Actions and Translations

  • Invoking The Translation Table List
  • Creating Translation Tables
  • Translation Table Editor Window Layout
  • Defining Translation Tables
  • Attaching A Translation Table To A Widget
  • Creating Action Tables
  • Action Table Edit Menu
  • Action Coding Conventions

Palettes (Optional Topic)

  • The Ux Palette
  • Showing and Hiding Palettes
  • Changing The Palette View
  • Creating a Palette
  • Putting Items into a Palette
  • Saving Your Palette
  • Creating From Your Palette: Palette Modes
  • Creating Multiple Copies from the Palette
  • Changing Item Attributes
  • Palette Selected Objects Popup
  • Changing the Category Name
  • Creating New Categories
  • Pros and Cons Of Palettes

Components (Optional Topic)

  • Layout Object Types
  • Components and Instances: Terminology
  • Creating a Component
  • Creating an Instance
  • Instance Properties
  • How Components and Instances Work
  • Parameterizing a Component
  • Multiple Instances and Context Support
  • Using Components with Palettes
  • Subclassing a Component
  • Other Ways To Create A Component
  • Other Ways to Instantiate A Component
  • Distributing Components
  • Pros and Cons of Components and Instances

Methods (Optional Topic)

  • Conceptual Overview of Methods
  • Predefined Methods
  • Accessing The Methods Editor
  • Creating a Method
  • Calling A Method
  • Methods Editor Menus
  • Component Properties: Motivation
  • Adding a Property: Get/Set Methods
  • Setting Properties on Instances
  • Adding a Callback Property
  • Defining a Callback on an Instance
  • Adding a Child Site Method

Connection Editor (Optional Topic)

  • Motivation for Connection Editor
  • Conceptual Model of Connection Editor
  • Invoking the Connection Editor.
  • Connection Editor
  • Defining Connections
  • Other Ways to Invoke the Connection Editor
  • Other Ways to Load the Source and Target

Augmenting UIM/X (Optional Topic)

  • Conceptual Overview of Augmenting UIM/X
  • Compiling Interfaces for Augmenting UIM/X
  • Steps in Augmenting UIM/X
  • Course Objectives
  • Related Bluestone Consulting Courses

Appendix: Subprocess Control

  • Overview
  • Initializing and Running the Subprocess
  • Subprocess Input and Output
  • Terminating The Subprocess

 

   
contact | home | privacy policy |
copyright © 2003 Bluestone Consulting, Inc.