RTView® 
User Guide


Multiple Display Panels

With Multiple Display Panels you can deploy several displays, arranged in separate panels within a single window. This option is not available in the Display Builder, but is supported in all RTView deployments.

See demos/multipanels for examples of using Multiple Display Panels.

Configuring Multiple Display Panels
By default, the Display Viewer Application, Display Viewer Applet and Display Server read the PANELS.ini file to populate panels with the specified displays. If the panel configuration file is not found in the current directory, the Display Viewer and Display Server applications will search under lib in your installation directory.

Display Viewer Application and Display Viewer Applet
You may specify a different panel configuration file on the command line or in an applet parameter:

    command line: -panelconfig:filename
    applet parameter: name= panelconfig value=filename

NOTE:  To run the Display Viewer Application without a panel configuration file, when PANELS.ini is present in the current directory or the lib directory, use the above command line argument with a value for <filename> that does not correspond to a file in either directory, for example: run_viewer -panelconfig:X

Display Server
You may specify a different panel configuration in the URL:

http://host:8080/rtvdisplay/panels.jsp?file=filename.

To define initial substitution values in the Display Server, you may include a subs parameter in URLs that specify panels.jsp:

http://SomeHost/rtvdisplay/panels.jsp?subs=$table:production_table

The panels.jsp file must use the rtvLayout tag (described below). Substitutions will be applied to the initial display(s) opened in the panel layout. To apply to displays that are subsequently opened, substitutions should be mapped to global variables or you can specify the clearsubs option either on the command line or in the  DISPLAYSERVER.ini file.

 


PANELS.ini
NOTE: PANELS.ini formats and associated tags supported in previous releases are still supported. However, the new tags listed below cannot exist in the same PANELS.ini file with any older tags.
Tag Description
rtvLayout The rtvLayout tag can appear only once in PANELS.ini and expects each child tag to specify a region (i.e. north, south, east, west, or center) in order to determine the location of each child panel.

Typically, an rtvLayout will contain one of the following combinations:

  • A main rtvDisplayPanel with region="center", plus either an rtvAccordionPanel or rtvTreePanel with region="west" or "east", and possibly other secondary rtvDisplayPanels in other regions.
  • A main rtvTabbedDisplayPanel with region="center", and possibly other secondary rtvDisplayPanels in other regions.

NOTE: The tags listed below can only be used within the rtvLayout tag. PANELS.ini formats and associated tags supported in previous releases are still supported. However, tags listed below cannot exist in the same PANELS.ini file with any older tags.

Alternately, it is possible to use style sheets to specify colors, fonts, and other properties of the navigation panels and controls.

Attributes
Name Description
dividers If true, then a draggable divider is drawn between each child panel. Default is false.
title Set the title of the main window.
Tag Description
rtvDisplayPanel Create a panel containing the specified display.
Attributes
Name Description
display The name of the display (.rtv) file to load into the panel.
name Corresponds to Window Name entered in the Drill Down Properties dialog. When using tabbed panels, if the name is not specified, a name is constructed internally using the display name and substitutions to make it easy to drill down between tabs. In this case, when you drill down from a tab using the Current Window option and the specified display with the specified substitutions is already loaded in another tab, the Display Viewer will switch to that tab. To configure Synchronize Drill-down and Navigation Controls, this name must be nav.
region Position of panel in rtvLayout: west, east, center, north or south.
subs Specify initial substitutions for this panel. Substitutions are optional and must use the following syntax:

$subname:subvalue $subname2:subvalue2

If a substitution value contains a single quote, it must be escaped using a / :

$filter:Plant=/'Dallas/'

If a substitution value contains a space, it must be enclosed in single quotes. Do not escape these single quotes:

$subname:subvalue $subname2:'sub value 2'

A substitution string cannot contain the following:
:
|
.
tab
space
,
;
=
<
>
'
"
& / \ { } [ ] ( )

NOTE: Substitutions set in Application Options will apply to all displays.

rtvAccordionPanel Create a panel containing an accordion control for display navigation.

The accordion control assumes there is a rtvDisplayPanel in the center region and sends its navigation commands to that panel.

You can configure this control to show/hide displays based on role definitions. For details, see Role Definitions.

NOTE: rtvAccordionPanel contents cannot be more then two levels deep (not including the root node). If deeper nesting is required, use rtvTreePanel instead.

Attributes
Name Description
navdata Name of the navigation tree definition file. This XML file should describe content of the accordion control.
width Width (in pixels) of the panel. Default is 125.
region Position of panel in rtvLayout: west, east, center, north and south. Default is center.
rtvTreePanel Create a static tree navigation panel. The tree control assumes there is a DisplayPanel in the center region and sends its navigation commands to that panel.

There are two methods for creating a tree-driven multi-panel application: the static tree navigation panel and the tree control. Use the static tree navigation panel method if you know the specific sources that are to populate the tree and they remain constant for the life of the application. For example, if you know all the displays that compose your application and the static representation of a tree will only be used for navigating those displays, the static tree navigation panel is suitable (and is easier to configure).

Use the tree control method if the number of nodes or leaves, labels or icons of the tree change during the lifetime of the application. Data can be provided that will change the nodes and leaves of the tree and also change the labels, and icon representations on the tree with dynamic data. For details, see Tree Control.

You can configure this control to show/hide displays based on role definitions. For details, see Role Definitions.

Attributes
Name Description
navdata Name of the navigation tree definition file. This XML file should describe content of the tree.
width Width (in pixels) of the panel. Default is 125.
region Position of panel in rtvLayout: west, east, center, north and south. Default is center.
rtvTabbedDisplayPanel Create a panel with tabs for navigation. You can configure this control to show/hide displays based on role definitions. For details, see Role Definitions.
Attributes
Name Description
tabs Name of the tab definition file. This XML file should describe content of the tabs.
display Name of display (.rtv) file to load into the panel.
subs Specify initial substitutions for this panel. Substitutions are optional and must use the following syntax:

$subname:subvalue $subname2:subvalue2

If a substitution value contains a single quote, it must be escaped using a / :

$filter:Plant=/'Dallas/'

If a substitution value contains a space, it must be enclosed in single quotes. Do not escape these single quotes:

$subname:subvalue $subname2:'sub value 2'

A substitution string cannot contain the following:
:
|
.
tab
space
,
;
=
<
>
'
"
& / \ { } [ ] ( )

NOTE: Substitutions set in Application Options will apply to all displays.

region Position of panel in rtvLayout: west, east, center, north and south. Default is center.
placement Position of tabs: top or bottom. Default is top.

Example 1
This example of PANELS.ini uses the new tags to create a title panel at the top, an accordion panel on the left, and a main display panel in the center, with draggable dividers between all the panels:

<?xml version="1.0" ?>

<panels xmlns="www.sl.com" version="1.0">

<rtvLayout title="Accordion Example" dividers="true">

    <rtvDisplayPanel region="north" name="title_panel" display="title.rtv"/>

    <rtvAccordionPanel region="west" width="200" navdata="navtree.xml"/>

    <rtvDisplayPanel region="center" name="main_panel" display="chart_main.rtv"/>

</rtvLayout>

</panels>

Example 2
This example of PANELS.ini uses the new tags to create a tabbed display panel at the top, and a title panel at the bottom:

<?xml version="1.0" ?>

<panels xmlns="www.sl.com" version="1.0">

<rtvLayout title="Tab Example">

    <rtvTabbedDisplayPanel region="center" tabs="navtabs.xml" display="stock_chart"/>

    <rtvDisplayPanel region="south" name="title_panel" display="title.rtv"/>

</rtvLayout>

</panels>

Synchronizing Drill-down and Navigation Controls

A panel configuration file (PANELS.ini) can be created where one rtvDisplayPanel contains a navigation control (the tree control, obj1_c1tree or the accordion control, obj_c1accordion) that drills down in a second rtvDisplayPanel. The navigation control remains synchronized with the second rtvDisplayPanel when a user clicks on an object in the second rtvDisplayPanel--rather than a node in the navigation control--to drill-down to another display.

To configure this behavior for the panels configuration file:

1. The specified name for the rtvDisplayPanel containing the display with the tree or accordion control is nav.
2. The specified region for the other rtvDisplayPanel, which is the target of the tree/accordion control's drilldown, is center.

If the above rules are followed, for example, and the user drills down to a display named X in the center panel by clicking on an object in the center panel display, the node in the navigation control that corresponds to X (if any) is automatically selected.

To view an example of this panel configuration, see PANELS_treecon.ini or PANELS_accordcon.ini, located in the RTV_HOME/demos/features directory. To start the example, type the following commands in an RTView command prompt:

        cd %RTV_HOME%\demos\features
        run_viewer -panelconfig:PANELS_accordcon.ini

In the accordion control, click the Navigate Displays button. In the main display right-click the object labeled Current Window, then select Drill Down from the popup menu. The object_variety2 display opens in the main window, which corresponds to the button labeled Table Objects in the accordion, and which should now be visible and highlighted.

Limitation

Note that only the display name is compared when determining which node should be selected, substitutions are not compared. If several nodes in the tree use the same display as their value, but with different substitutions (via drilldownColumnSubs), this feature always selects the first node in the control whose display name matches, regardless of the substitutions.

 

Style Sheets

Within the rtvLayout tag, style sheets can be used to specify colors, fonts and other properties of the navigation panels and controls. For detailed information about using style sheets, go to Building Displays>Style Sheets.

The following style class names and associated properties are supported in a panels configuration file, such as in the following example:

rtnav {bgColor: 7; fgColor: 12; }
rtnav-state-default {bgColor: 256; font: 1; }
rtnav-state-selected {bgColor: #4c5d65; font: 7;}
rtnav-state-hover {bgColor: #004157; }
rtnav-accordion {buttonWidth: 200;}

NOTE: If a property is specified for more than one class name, the value set for the class name with highest precedence applied. Class names (with the exception of rtnav-accordion) are listed below in order of precedence, from lowest to highest:

 
Style Class Name Description Properties
rtnav Properties specified for this class are applied to all the navigation panels and controls (i.e. tabs, trees, and accordion). bgColor Background and foreground (text) colors. Specify color index number from the RTView color palette or RGB value (in #rrggbb format where rr, gg, bb are the red, green, and blue intensities in hexadecimal values between 00 and ff).
fgColor
font Font style for navigation controls. Specify index number, as follows:
1 sans-serif
2 monospaced bold
3 monospaced
4 serif
5 monospaced italic
6 serif bold
7 sans-serif bold
8 sans-serif italic
9 serif bold italic
10 serif italic
11 sans-serif bold italic
12 monospaced bold italic
fontSize Font size (in pixels) for navigation controls. NOTE: Unless the font property is specified, fontSize is ignored
bgGradientFlag Select gradient fill or solid fill for tabs or accordion control. Default value is true. Set to false for solid fill.
rtnav-state-default: Properties for this class are applied to all navigation controls that are in the default (i.e. unselected) state. bgColor Background and foreground (text) colors. Specify color index number from the RTView color palette or RGB value (in #rrggbb format where rr, gg, bb are the red, green, and blue intensities in hexadecimal values between 00 and ff).
fgColor
font Font style for navigation controls. Specify index number, as follows:
1 sans-serif
2 monospaced bold
3 monospaced
4 serif
5 monospaced italic
6 serif bold
7 sans-serif bold
8 sans-serif italic
9 serif bold italic
10 serif italic
11 sans-serif bold italic
12 monospaced bold italic
fontSize Font size (in pixels) for navigation controls. NOTE: Unless the font property is specified, fontSize is ignored
bgGradientFlag Select gradient fill or solid fill for tabs or accordion control. Default value is true. Set to false for solid fill.
rtnav-state-hover Properties for this class are applied to the navigation control that the mouse cursor is currently positioned over (affects tab and accordion controls only, and only in the Thin Client) bgColor Background and foreground (text) colors. Specify color index number from the RTView color palette or RGB value (in #rrggbb format where rr, gg, bb are the red, green, and blue intensities in hexadecimal values between 00 and ff).
fgColor
font Font style for navigation controls. Specify index number, as follows:
1 sans-serif
2 monospaced bold
3 monospaced
4 serif
5 monospaced italic
6 serif bold
7 sans-serif bold
8 sans-serif italic
9 serif bold italic
10 serif italic
11 sans-serif bold italic
12 monospaced bold italic
fontSize Font size (in pixels) for navigation controls. NOTE: Unless the font property is specified, fontSize is ignored
bgGradientFlag Select gradient fill or solid fill for tabs or accordion control. Default value is true. Set to false for solid fill.
rtnav-state-selected Properties for this class are applied to all navigation controls that are in the selected state (e.g. the selected tab in a tabbed panel). bgColor Background and foreground (text) colors. Specify color index number from the RTView color palette or RGB value (in #rrggbb format where rr, gg, bb are the red, green, and blue intensities in hexadecimal values between 00 and ff).
fgColor
font Font style for navigation controls. Specify index number, as follows:
1 sans-serif
2 monospaced bold
3 monospaced
4 serif
5 monospaced italic
6 serif bold
7 sans-serif bold
8 sans-serif italic
9 serif bold italic
10 serif italic
11 sans-serif bold italic
12 monospaced bold italic
fontSize Font size (in pixels) for navigation controls. NOTE: Unless the font property is specified, fontSize is ignored
bgGradientFlag Select gradient fill or solid fill for tabs or accordion control. Default value is true. Set to false for solid fill.
rtnav-accordion Properties for this class are applied to the accordion navigation controls. buttonWidth Width (in pixels) of all buttons in the accordion. Default is 160.
spacing Vertical space (in pixels) between buttons. Default is 5.
indent Left indent (in pixels) of leaf buttons in the accordion. Default is 10.

 

 

 

 

 

 

 

 

 


 

Viewing Multiple Display Panels

Display Viewer Applet
At startup, the Display Viewer Applet reads the panel configuration from the directory where it is hosted to populate panels with the specified displays. The display specified in your rtv_filename applet parameter will not be loaded.

Display Viewer Application
At startup, the Display Viewer Application reads the panel configuration from the directory where it is started to populate panels with the specified displays. If the panel configuration file is not found in the current directory, the Display Viewer will search under lib in your installation directory. When viewing multiple display panels in the Display Viewer, you cannot open displays using the command line or the File>Open dialog.

Display Server
At startup, the Display Server reads the panel configuration from the directory where it is started to populate panels with the specified displays. If the panel configuration file is not found in the current directory, the Display Server will search under lib in your installation directory. See the Display Server section for more details on viewing multiple display panels.  


 
SL, SL-GMS, GMS, RTView, SL Corporation, and the SL logo are trademarks or registered trademarks of Sherrill-Lubinski Corporation in the United States and other countries. Copyright © 1998-2012 Sherrill-Lubinski Corporation. All Rights Reserved.

 

JMS, JMX and Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. They are mentioned in this document for identification purposes only. 

 

Third Party Notice Requirements