From: workshop@cgl.citri.edu.au (Workshop Management)
Newsgroups: aus.general
Subject: MOTIF Workshop at CITRI
Keywords: Practical Workshop, implementing GUIs with OSF/Motif
Date: 19 Aug 92 22:39:39 GMT
Distribution: aus
Organization: RMIT Advanced Computer Graphics Centre, CITRI, Melbourne



			  Four Day Workshop

			   Introduction to
				MOTIF

			September 21-24, 1992

			 General Information

This four day workshop will be held at the RMIT Advanced Computer
Graphics Centre.

The cost of $1150.00 includes all course notes, morning and afternoon
tea, sandwich lunches and computing facilities (one workstation per
student).

			  Who should attend?

This course is designed for programmers who need to learn to implement
graphical user interfaces using the X Windowing system and OSF/Motif.
It is assumed that the attendees are proficient programmers and
experience with C and Unix programming is recommended.

Some knowledge about the design of graphical user interfaces is
useful; the companion course Design, Implementation and Evaluation of
Graphical User Interfaces is an ideal introduction to this topic.

			      Instructor

The workshop will be conducted by Michael Papper.  Mike holds a
Masters degree from the University of Toronto where he specialised in
Human Computer Interfaces.  Since its inception in 1989 until earlier
this year, Mike worked as a Research Associate with the RMIT Advanced
Computer Graphics Centre and now returns as a guest to run this
workshop.

			  Expected outcomes

Attendees can expect to gain a full understanding of the Motif toolkit
for use in creating graphical user interfaces.

Victorian Training Guarantee Legislation If this course constitutes a
part of your stated training plan for the 1992-93 year, then the
workshop is eligible under the Act.  The instructor is an experienced
teacher of the subject and the workshop's expected outcome and target
audience are stated on this brochure.

For further information, please contact 
Terese McAleese
Tel: (03) 282 2462
Fax: (03) 282 2444
email:  tmac@godzilla.cgl.rmit.oz.au

The RMIT Advanced Computer Graphics Centre is funded with the
assistance of the Victorian Education Foundation; It is part of the
Collaborative Information Technology Research Institute.

---------------------------------------------------------------------------

			    Course Outline

o	Introduction:

We start by giving an introduction to window systems and defining some
of the terminology. We then look at the client-server model of
interaction.  Next, we discuss how graphical user interfaces may be
constructed by programming with a toolkit such as Motif and with
user-interface builders such as UIL.

o	X Window System	Introduction:

We will examine the X window system in particular.  We cover how the
client -server model is implemented in X and how the server maintains
a set of resources that are shared among applications.

o	Motif Introduction:

We describe the Motif toolkit as a collection of user interface
objects (widgets) that may be arranged in a hierarchy. We also discuss
how Motif is considered both a toolkit and an interface style.  Then,
we describe how Motif relates to Xlib and the Xt intrinsics and how to
compile a Motif program.

____________________________________

o	The Motif Programming Model:

We describe the function, resource, and variable type syntax.  We then
outline the basic structure of the main() function in a Motif program:

1. creating widgets 
2. setting resources 
3. setting callback functions
4. managing and realizing widgets
5. querying widgets for information
6. handling Motif compound strings
7. setting widget resources
8. using events and callback functions



o	Laboratories 

The laboratories provide a chance to learn the basic programming style
used with Motif, important programming techniques, and the important
resources associated with each Motif widget. Students start with a
template program in all labs and they will incrementally build several
application programs.

	Laboratory Session:  

Compile and run a Motif program, then change resource values to alter
the appearance of the program.

____________________________________

o	Main Window:

We will describe the widgets in the main window: the menu bar, the
command area, the message area, and the work area. We will take a
brief look at pull-down menus and what widgets to use in the work
area.

	Laboratory Session: 

Create a main window with a menubar and pull-down menus, and use call
back functions.

____________________________________

o	Dialogs 

In Motif, dialogs are used so the user can reply to a question or to a
situation.  We discuss how dialogs are constructed and describe the
various message and selection dialogs. The message dialog displays a
message until the user press an ok button to confirm that they have
read it. A selection dialog is used when there are multiple answers to
choose between. A modal dialog is used to ask a yes or no question and
a file selection dialog is used to select a file name. We will also
discuss the important resources for the different dialogs.

	Laboratory Session: 

Create a simple message dialog, a modal dialog, and a file selection
dialog.


o	Manager Widgets

We will discuss how widgets are managed in Motif and describe the
bulletin board, form, row-column, frame, paned window and drawing area
manager widgets.

	Laboratory Session:  

Write a generalised function that takes a list of buttons and creates
the action area of a dialog. Modify the function by adding a paned
window.

	Laboratory Session: 

Create a template for a calendar widget.

____________________________________

o	Lists

We introduce the list widget and its use in a scrolled window.

	Laboratory Session:  

Add a selection list to the calendar.

____________________________________

o	Text

We discuss how to use text widgets in applications.

	Laboratory Session:  

Add a post-it note to the calendar. 

	Laboratory Session:  

Ensure there is valid input from the user.







o	Drawing and graphics 

Several special features are needed to implement a graphics program.
We discuss the X colour model, setting colour resources, and
colourmaps.  We then describe the Xlib drawing functions, graphics
contexts, and pixmaps.

	Laboratory Session: 

Add colour to a simple paint program.

____________________________________

o	Event Processing	

We discuss how to process events yourself with Xt's event handling
functions.  We also look at how to use work procedures so that
processing may be done while the user is idle and how to use timers to
call a function after a given delay.

	Laboratory Session:  

Directly control the Xt event loop to trap mouse button and the key
press events.

____________________________________

o	Customisation

We finish by describing several techniques for customising your
application.  You may use the window manager's shell resources to set
the size and position of you application and its behaviour when resized
or iconified.  We also describe how to use a font resource so that the
user may select which font to use.

	Laboratory Session: 

Add a fontlist resource to the calendar program.

--------------------------------------------------------------------------


Yes!  Please enroll me in the four day workshop 
"Introduction to Motif" 21-24 Sept. 1992

Name:		

Organisation/Occupation:		

Address:		

		

Phone:	Fax:	

electronic mail address (if relevant):		


PAYMENT DETAILS


o Payment is only acceptable in Australian Dollars
o Make Cheques and money orders payable to 
   Royal Melbourne Institute of Technology

 Enclosed            
 Cheque
 Bank Draft
 Money Order for 

or please debit  that amount from my

 Visa
 Master Card
 American Express
 Bankcard



Signature                                                                   

Expiry Date                                                                


Please return to:  RMIT Advanced Computer Graphics Centre, 723 Swanston Street, Carlton 3053


Please add me to your mailing list to receive information on future courses

-- 
Newsgroups: aus.general