Title:   GNUe Forms UI Driver Specification
Status:  Current 
Created: 2004-07-10
Revised: 2004-07-10


A user interface for GNUe forms has to define the following classes:


GFUserInterface
===============

Inherited from gnue.forms.uidrivers._commonGuiToolkit.GFUserInterface.

Has to define following methods:

* initialize (self)

* _exit (self)

* _updateCreateEvent (self, event): can add properties to the object "event"
  that are then passed to the "createWidget" method of every widget

* mainLoop (self): handle all user events

* formAlert (self, event): show a warning message

* beginWait (self, event): indicate nonresponsive state (e.g. display
  hourglass)

* endWait (self, event): indicate responsive state (e.g. remove hourglass)


UILoginHandler
==============

TBD


In a subpackage "widgets", every UI driver has to define a module containing a
single class for every widget:


UIForm
======

* show (self): paint form

* showModal (self): paint form in a modal way

* createWidget (self, event, spacer): initialize form

* gotoPage (self, event): activate page

* _setStatusBar (self, tip, statusValue, insertValue, currentRecord,
                 maxRecord, currentPage, maxPage): set values for status bar


UIBox, UIButton, UIEntry, UILabel, UIPage, UIScrollBar
======================================================

* createWidget (self, event, spacer): initialize widget

* indexedFocus (self, index): set focus to this widget

* setValue (self, value, index = 0, enabled = True): set content (value)

* setCursorPosition (self, position, index = 0)

* setSelectedArea (self, selection1, selection2, index = 0)
