Function ShowWindow opens a window in the user interface. It can be a window of any type including Diagram, Object, Result, Definition, Outline, and more.
Opens a window for object «obj» in the Analytica user interface.
- «obj» may be the identifier of an object or a handle to the object.
- «windowType» is a text value, which may be any of these (it is is not case sensitive):
"Diagram": Show itsDiagram window. «Obj» should identify a module.
"Object": Show itsObject window for «obj».
"Result": Show itsResult window for «obj». «Obj» should be a variable. It causes the variable to be evaluated, which could cause an evaluation error to display. It may open in either a table or graph view, depending on how it was most recently viewed, or on your preference settings.
"Graph": Show the graph view of a result for «obj». «Obj» should be a variable. Causes the variable to be evaluated, which could cause an evaluation error to display. If the result is not graphable (e.g., if it is a scalar), a result table might be shown instead.
"Table"): Show the table view of a result. «Obj» should be a variable. Causes the variable to be evaluated, which could cause an evaluation error to display.
"Definition": Shows the definition of «obj». When «Obj» is an edit table, it opens the edit table window.
"Outline": Opens the Outline window, with the hierarchy opened to the module containing «obj» and «obj» selected.
"Typescript": Opens the Typescript Window. It ignores the «obj» parameter, so use:
It always returns Null.
This function is usually used from the OnClick expression of a button. Note that alternative options often exist for accomplishing the same thing. For example, you can insert a Module alias to provide a shortcut to a particular module, or a user output node to bring up a result.
If you select an «obj» and «windowType» combination that doesn't make sense -- e.g. try to open the 'Diagram' of a variable object -- it gives no warning. It does flag an error if «obj» is not the identifier of, or handle to, an existing object, or if «windowType» is not one of the types listed above.
If the requested window is already open, but behind other windows, ShowWindow brings it to the top. If it is iconified (aka. minimized), it un-minimizes it.
Open the diagram for Module
Open the result graph for Variable
Compute which diagram to open based on whether
b is true or false, and open it.
When ModuleToShow has a handle of the window you want to show
Variable ModuleToShow := Handle( Mo1 )
then to show the diagram for
LocalAlias m := ModuleToShow Do ShowWindow(m, 'Diagram')
ShowWindow(ModuleToShow, 'Diagram'), which would be asking to show the diagram for ModuleToShow.
When evaluated in the Analytica Decision Engine (ADE), it calls IAdeUIWindowCallbacks::ShowWindow(...), from which the parent application implements the logic to jump to the requested UI window. To receive this callback, the parent application must have previously registered the callback with ADE using CAEngine::SetCallbackObject( ).
The functions ShowWindow and CloseWindow were added in Analytica 5.0 to replace the same functionality that was previously available using the Open and Close typescript commands. The new ShowWindow and CloseWindow functions are more convenient to use from OnClick expressions (or from UDFs called from button scripts), and reduce the need for you to learn about a separate set of Typescript commands.