Scripting graphical applications by demonstration

Brad A. Myers · 1998

Writing scripts (often called "macros") can be helpful for automating repetitive tasks.Scripting facilities for text editors like Emacs and Microsoft Word have been widely used and available.However, for graphical applications, scripting has been tried many times but has never been successful.This is mainly due to the data description problem of determining how to generalize the particular objects selected at demonstration time.Previous systems have mostly tried to solve this using inferencing, but this has a number of problems, including guessing wrong and providing appropriate feedback and control to users.Therefore, the Topaz framework does not use inferencing and instead allows the user to specify how the appropriate objects should be found, This is achieved by recording changes to which objects are selected and searches for objects, so that scripts can be written with respect to the selected object, in the same way as Emacs keyboard macros.Furthermore, all values can be explicitly generalized in a number of ways, and scripts can be invoked as a result of other commands.By leveraging off of Amulet's command object architecture, programmers get these capabilities for free in their applications.The result is that much more sophisticated scripting capabilities available in applications with no extra work for programmers.

Read the paper · More papers on PaperTik