Topic: user interface tool kits

topics > computer science > user interface > Group: graphical user interface

user interface
object-oriented programming

implementation of user interfaces
procedure valued variables
user maintenance
user profile
windows for a UserInterface


A user interface tool kit simplifies the job of building a user interface. Typically, it contains components and ways to connect the components together. Object-oriented programming is often used. Examples include Self, Tk/Tcl, SUIT, Smalltalk, Qt, and Garnet. Windowing operating systems provide a lot of support for user interfaces. (cbb 4/98)
Subtopic: combine editing with viewing up

Quote: Self allows modification at any time; most interface builders separate editing from running the interface [»smitRB10_1995]
Quote: KMS's UserInterface consists of an editor for manipulating frames and navigating
Quote: fast, minimalist UI for textual applications; editing, scrolling, dedicated mouse buttons, no icons, no pop-up menu; even shell procedures can use the graphical UI; based on Unix file operations and Oberon [»pikeR6_1991a]
Quote: Excel's grid aligns artwork and text; tabbed pages organize designs and image libraries; hypertext allows linking between pages [»bergN1_2006]

Subtopic: UI database up

Quote: a SUIT database maintains information about all screen objects including their location and color; updated at each invocation [»pausR10_1992]
Quote: SUIT's composite objects contain any other objects; specify how subobjects get displayed [»pausR10_1992]

Subtopic: model and viewers up

Quote: each SUIT object is an abstract data type with optional, multiple display styles [»pausR10_1992]
Quote: a display style in SUIT may use other objects (called employees); rarely used

Subtopic: derivative UI up

Quote: while difficult to create the first display type for a class, additional display types are easy and generating a display is quick [»maieD1_1986]

Subtopic: UI controls up

Quote: the graphics standards use basic input types such as locator, stroke, valuator, choice, pick, and string; modal and no control [»myerBA7_1990]
Quote: Garnet captures the common behaviors of a graphical user interface; menu selection, change position, new position, orient, text, path following [»myerBA7_1990]
Quote: user interface management systems were not successful; need low-level control; have standard interface elements [»myerB3_2000]

Subtopic: property lists up

Quote: Self outliners present all the state and behavior available to an object through itself and its parents
Quote: customize a Garnet Interactor by filling slots; e.g., necessary start events or a termination function [»myerBA7_1990]
Quote: example of using Garnet's Interactors to implement icon highlighting while dragging [»myerBA7_1990]

Subtopic: introspection up

Quote: reflection is best for design time use by component-based application builder tools [»blocJ_2001]

Subtopic: avoid hierarchy up

Quote: geometrically hierarchical widgets in SUIT doubled its complexity while providing a slight benefit [»pausR10_1992]

Subtopic: constraint-based UI up

Quote: constraint solvers are useful for graphical layout with springs and struts
Quote: with Gilt, specify filter expressions for user interface widgets by demonstration or icon selection; filters implemented by constraints [»myerBA11_1991]
Quote: for graphical interfaces, one-way constraints will only be used for layout; students prefer a procedural approach [»zandBT11_2005]

Subtopic: mini language up

Quote: use strings and a mini language to control the graphics interface; e.g., Tk/Tcl or Limbo [»dorwSM1_1997]
Quote: user customization language for screen formatting; popular; very simple, flexible syntax [»boreNS_1991]

Subtopic: problems with mini language up

Quote: it is easy to express sequencing in formal UI systems; does not work for direct-manipulation user interfaces [»myerB3_2000]

Subtopic: call-backs up

Quote: with Gilt, specify most widget call-backs by demonstration; part of Garnet
Quote: many user interface call-backs filter values from widgets, interconnect widgets, perform error checking, or control the display [»myerBA11_1991]
Quote: Mesa's user interface Tajo allows programs to register adjust, wakeup, and sleep procedures with a window [»sweeRE7_1985]

Subtopic: problems with call-backs up

Quote: toolkits for user interfaces require call-backs for every widget, many trivial; hard to maintain [»myerBA11_1991]
Quote: call-backs in a user interface tie the application code to a toolkit; small interface changes often require many rewritten call-backs [»myerBA11_1991]
Quote: user interface call-backs often use text labels for arguments; must edit the code if the natural language changes [»myerBA11_1991]

Subtopic: problems with generated UI up

Quote: automatic and model-based techniques for user interfaces had unpredictable heuristics and generated poor interfaces [»myerB3_2000]
Quote: user interface management systems were not successful; need low-level control; have standard interface elements

Related Topics up

Group: user interface   (75 topics, 1639 quotes)
Group: object-oriented programming   (26 topics, 822 quotes)

Topic: constraints (35 items)
Topic: implementation of user interfaces (18 items)
Topic: procedure valued variables (34 items)
Topic: tools (20 items)
Topic: user maintenance (13 items)
Topic: user profile (16 items)
Topic: windows for a UserInterface
(21 items)

Updated barberCB 3/05
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.