Group: user interface
Group: object-oriented programming
Topic: constraints
Topic: implementation of user interfaces
Topic: procedure valued variables
Topic: tools
Topic: user maintenance
Topic: user profile
Topic: windows for a UserInterface
| |
Summary
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
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
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
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
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
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
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
Quote: reflection is best for design time use by component-based application builder tools [»blocJ_2001]
| Subtopic: avoid hierarchy
Quote: geometrically hierarchical widgets in SUIT doubled its complexity while providing a slight benefit [»pausR10_1992]
| Subtopic: constraint-based UI
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
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
Quote: it is easy to express sequencing in formal UI systems; does not work for direct-manipulation user interfaces [»myerB3_2000]
| Subtopic: call-backs
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
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
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 [»myerB3_2000]
|
Related Topics
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)
|