Show simple item record

dc.contributor.authorMaloney, John Harold, 1958-en_US
dc.date.accessioned2009-10-06T16:48:36Z
dc.date.available2009-10-06T16:48:36Z
dc.date.issued1991en_US
dc.identifier.otherb26218616en_US
dc.identifier.other25274181en_US
dc.identifier.otheren_US
dc.identifier.urihttp://hdl.handle.net/1773/6872
dc.descriptionThesis (Ph. D.)--University of Washington, 1991en_US
dc.description.abstractInteractive, direct-manipulation, graphical user interfaces are easy to use but difficult to construct. This dissertation shows that automatic constraint satisfaction is useful in many facets of user interface construction and demonstrates that it is feasible.A constraint represents a desired relationship between variables. While some constraints are required to be satisfied, others may be merely preferred to varying degrees. Such preferential constraints allow the programmer to control the behavior of the constraint solver declaratively. In user interface construction, constraints can represent relationships at three levels: between application data structures and user interface components, between the components of a user interface, and between the parts of a compound component. A system that automatically maintains these relationships frees the programmer from many tedious and error prone tasks.This dissertation focuses on a constraint satisfaction technique known as local propagation. It shows how to frame local propagation as a graph problem, and proves that, in general, this problem is NP-complete. It then identifies a restricted form of the problem that can be solved efficiently by the DeltaBlue algorithm, an incremental local propagation solver that handles preferential constraints.The major contributions of this dissertation are to prove that the DeltaBlue algorithm is correct, to demonstrate that it is fast enough to provide low latency, high bandwidth interactive feedback in systems with as many as 20,000 constraints, and to show that it is powerful enough to solve many of the constraint problems that arise in user interface construction. It also addresses a number of related issues, such as how to integrate constraints with imperative programs cleanly, how to model user inputs as constraints, how to compile constraints, and how to maintain constraints on collections incrementally. Finally, it describes ThingLab II, a programming environment for constructing constraint-based user interfaces, and its use to build a number of user interfaces.en_US
dc.format.extentxii, 177 p.en_US
dc.language.isoen_USen_US
dc.rightsCopyright is held by the individual authors.en_US
dc.rights.urien_US
dc.subject.otherTheses--Computer science and engineeringen_US
dc.titleUsing constraints for user interface constructionen_US
dc.typeThesisen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record