Richard G. McDaniel

Learn More
—The Amulet user interface development environment makes it easier for programmers to create highly-interactive, graphical user interface software for Unix, Windows and the Macintosh. Amulet uses new models for objects, constraints, animation, input, output, commands, and undo. The object system is a prototype-instance model in which there is no distinction(More)
Marquise is a new interactive tool that allows virtually all of the user interfaces of graphical editors to be created by demonstration without programming. A “graphical editor” allows the user to create and manipulate graphical objects with a mouse. This is a very large class of programs and includes drawing programs like MacDraw, graph layout(More)
Adding animation to interfaces is a very difficult task with today's toolkits, even though there are many situations in which it would be useful and effective. The Amulet toolkit contains a new form of animation constraint that allows animations to be added to interfaces extremely easily without changing the logic of the application or the graphical objects(More)
One-way, dataflow constraints are commonly used in graphical interface toolkits, programming environments, and circuit applications. Previous papers on dataflow constraints have focused on the design and implementation of individual algorithms. In contrast, this article focuses on the lessons we have learned from a decade of implementing competing(More)
The Amulet research project is developing a new user interface development environment [2] which incorporates a number of design and implementation innovations including new models for objects, constraints, animation, output, input, commands, and undo. Amulet has an open architecture, so that user interface researchers can replace and extend components.(More)
The range of PBD systems can be significantly expanded by improving the user's expressiveness when communicating with the system. The techniques in my research include a new form of demonstrational interaction called nudges. Complementing nudges is a special form of selection which is used to give the system hints by identifying significant objects. A new(More)