@begin(header) author: Eric Mandel show_author: ShowNone author_organization: Smithsonian Astrophysical Observatory node_expert: eric@cfa.harvard.edu expiration_date: 12/31/93 last_modifier: eric@cfa.harvard.edu last_mod_date: 11/13/92 mod_num: 2 @end(header) @b In order to manage the large number of windows that the ASSIST can create, a @b scheme has been implemented. Under this scheme, users can specify the contents and placement of one or more stacks of windows, and can also specify the maximum number of windows that can be placed in each stack. The ASSIST will then place each window it creates into one of these stacks. When a stack has reached its maximum window depth, the first window entered into the stack is removed to make room for a new window. In this way, the number of windows displayed at any one time is under user control. Individual windows can be @b so that they are not removed to make room for new windows in a stack. This can be done in one of two ways: 1. Any individual grapher tree, parameter editor, etc. can be locked by setting its @b resources, as shown below: ! lock windows so they do not disappear to make @break ! room for new ones @break ASSIST*ASSISTGrapher*locked: True @break !ASSIST*IRAFGrapher*locked: True @break !ASSIST*XIMAGES_qplist*locked: True @break !ASSIST*XRAYGrapher*locked: True @break By default, the ASSIST locks the top-level grapher window, but no others. Note that tasks window names are specified by supplying the package name in caps and the task name in lower case, while package window names are specified by supplying the package name followed by the word "Grapher". 2. Windows can also be locked and unlocked using the @b command in the parameter command strip. This command will toggle the lock state of that window, changing the command label to either "Locked" or "Unlocked" accordingly. Initially, a window will be unlocked unless explicitly locked using the @b resource above. Locking windows will have the effect of temporarily increasing the depth of the stack, if more windows are locked than the stack would normally allow for. That is, the depth of a stack will be the maximum of the specified depth and the number of locked windows in that stack. If a window has been removed from a stack to make room for a new one, it can be redisplayed using the @b command in the parameter command strip. Since this command will recreate the last discarded window in a stack, repeated invocations on a full stack will have the effect of toggling between two windows. To learn more about resources that control the size of a stack: @button To learn more about resources that control stack placement and content: @button