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 Enterprise RTView deployments
.
Multiple display panels are
useful when you want to view multiple displays from a top level entry point
or if you need to include a navigation panel. You can interact with displays
between panels by specifying a window name for each panel that corresponds
to Window Name in Drill Down Properties dialog.
Enterprise RTView supports
five types of panels. The border panel allows you to specify a central
display and place up to four other displays to the north, south, east or
west. The navigation tree panel can be used inside a border panel to display
a tree that is used to navigate displays in one of the border panel regions.
The card panel allows you to stack displays so that they are all active,
but only one is showing. This is useful when you have a trend graph that
needs to maintain data when it is not being displayed. The tabbed panel
allows you to arrange your panels in tabs. The grid panel allows you to
arrange your panels in a grid.
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. In
the Display Viewer Application and Display Viewer Applet, you may specify
another panel configuration file on the command line or in an applet parameter:
command
line: -panelconfig:filename
applet
parameter: name= panelconfig value=filename
In the Display Server, you
may specify another panel configuration in the URL:
http://host:8080/rtvdisplay/panels.jsp?file=filename.
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.
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 command line argument with no file name.
The panel configuration file
is in XML, and must start with the following:
<?xml
version="1.0" ?>
<panels
xmlns="www.sl.com" version="1.0">
The panel configuration file
must end with the following:
</panels>
The following tags are supported:
Tag |
Description |
Attributes
|
Name
|
Description
|
BorderPanel |
Add
a JPanel with a BorderLayout to the main window. |
minWidth |
Set the minimum
width for a BorderPanel, in pixels. The default value is 300. The minimum
height is determined by the minWidth and the overall aspect ratio of the
panels contained in the BorderPanel. The minWidth attribute can be used
to prevent the Display Viewer from being resized so small that the displays
in the BorderPanel are unreadable. |
title |
Set the title
of the main window. |
CardPanel |
Add
a JPanel with a CardLayout to the main window. This is not currently supported
in the Display Server. |
region |
Set the location of this
CardPanel if it is in a BorderPanel. Valid values are west, east, center,
north and south. |
title |
Set the title of the main
window. |
TabbedPanel |
Add
a JTabbedPane to the main window. |
placement |
Set the position of the
tab. Valid arguments are left, right, top and bottom. NOTE: This argument
is ignored by the Display Server. Tabs are always in the top position. |
title |
Set the title of the main
window. |
GridPanel |
Add
a JPanel with a GridLayout to the main window. This is not currently supported
in the Display Server. |
columns |
Sets the number of columns
in the grid. If the number of columns is not specified, it will be calculated
based on the number of RTViewPanels and the specified number of rows. |
rows |
Sets the number of rows
in the grid. If the number of rows is not specified, it will be calculated
based on the number of RTViewPanels and the specified number of columns. |
title |
Set the title of the main
window. |
RTViewNavTreePanel |
Add
a JPanel containing a JTree into a BorderPanel. This requires use of the
CardPanel. |
navtreedata |
Name of the navigation
tree definition file. This XML file must describe the elements
of the tree. |
lineStyle |
Set the line style used
in the navigation tree. Valid values are Angled and Horizontal. |
region |
Set the location of this
RTViewNavTreePanel if it is in a BorderPanel. Valid values are west, east,
center, north and south. |
height |
Set the initial height of
the RTViewNavTreePanel. |
width |
Set the initial width of
the RTViewNavTreePanel. |
RTViewPanel |
Add
a panel containing the specified display into a BorderPanel, CardPanel,
TabbedPanel or GridPanel. |
display |
Name of 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. This behavior is not supported in the Display
Server. |
region |
Set the location of this
RTViewPanel if it is in a BorderPanel. Valid values are west, east, center,
north and south. |
scrollbars |
Control the visibility of
scroll bars in the panel. The permitted values are as-needed, never,
and always. The default value is as-needed. In some cases,
setting the scrollbars attribute to never on title or footer panels
can improve the resize behavior of the Display Viewer. |
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. |
title |
Set the title of the tab
containing this RTViewPanel. This is only used if the RTViewPanel is in
a TabbedPanel. |
Using Border Panels
The border panel allows
you to specify a central display and place up to four other displays to
the north, south, east or west. If your login
doesn't allow you to view a particular display, the panel for the display
won't be added to the window.
Here is an example of a border
panels configuration file:
<?xml
version="1.0" ?>
<panels
xmlns="www.sl.com" version="1.0">
<BorderPanel
title="Test of Border Panels">
<RTViewPanel region="north" name="north_panel" display="long_panel"
subs="$title:'North Panel'"/>
<RTViewPanel region="center" name="center_panel" display="small_panel"
subs="$title:'Center Panel'"/>
<RTViewPanel region="west" name="west_panel" display="small_panel" subs="$title:'West
Panel'"/>
<RTViewPanel region="east" name="east_panel" display="small_panel" subs="$title:'East
Panel'"/>
<RTViewPanel region="south" name="south_panel" display="long_panel"
subs="$title:'South Panel'"/>
</BorderPanel>
</panels>
Building Displays for Border Panels
When creating displays for
use in border panels, the height and width of each display must be set
in relation to the other displays. Displays in the west, east and center
must all be equal in height. The width of the display in the north and/or
south, must equal the combined width of the displays in the west, east
and center. Depending on how many panels you decide to display within a
window, you will need to increase the width of the display in the north
and/or south by one pixel for each border that divides the west, center
and east panels. NOTE: To set the height and width of a display in the
Display Builder, select File>Background Properties and set the Model
Width and Model Height. If you are using a Background Image for your display,
create the image so that the height and width of the image are one pixel
larger than the size you want the display to be.
The following shows dimensions
of display (.rtv) files set to fit accurately in multiple display panels:
Display Name |
Display Location |
Model Width |
Model Height |
small_panel.rtv |
center |
320 |
240 |
small_panel.rtv |
east |
320 |
240 |
small_panel.rtv |
west |
320 |
240 |
long_panel.rtv |
north |
962 |
120 |
long_panel.rtv |
south |
962 |
120 |
Using Tabbed Panels
The tabbed panel allows
you to arrange your panels in tabs. If your login
doesn't allow you to view a particular panel, the panel will not display
the corresponding tab.
Here is an example of a tabbed
panels configuration file:
<?xml
version="1.0" ?>
<panels
xmlns="www.sl.com" version="1.0">
<TabbedPanel
title="Test of Tabbed Panels" placement="top">
<RTViewPanel title="Main Panel" display="main_panel"/>
<RTViewPanel title="Panel 101" display="med_panel" subs="$title:101"/>
<RTViewPanel title="Panel 102" display="med_panel" subs="$title:102"/>
<RTViewPanel title="Panel 103" display="med_panel" subs="$title:103"/>
<RTViewPanel title="Panel 201" display="med_panel" subs="$title:201"/>
<RTViewPanel title="Panel 202" display="med_panel" subs="$title:202"/>
<RTViewPanel title="Panel 203" display="med_panel" subs="$title:203"/>
</TabbedPanel>
</panels>
Building Displays for Tabbed Panels
When creating displays for
use in tabbed panels, the height and width of each display must be the
same. To set the height and width of a display in the Display Builder,
select File>Background Properties and set the Model Width and Model
Height. If you are using a Background Image for your display, create the
image so that the height and width of the image are one pixel larger than
the size you want the display to be.
Using Grid Panels
The grid panel allows you
to arrange your panels in a grid. If your login
doesn't allow you to view a particular panel, the panel will not be included
in the grid.
Here is an example of a grid
panels configuration file:
<?xml
version="1.0" ?>
<panels
xmlns="www.sl.com" version="1.0">
<GridPanel
title="Test of Grid Panels" rows="0" columns="3">
<RTViewPanel name="detail1" display="small_panel" subs="$title:'101'"/>
<RTViewPanel name="detail2" display="small_panel" subs="$title:'102'"/>
<RTViewPanel name="detail3" display="small_panel" subs="$title:'103'"/>
<RTViewPanel name="detail4" display="small_panel" subs="$title:'201'"/>
<RTViewPanel name="detail5" display="small_panel" subs="$title:'202'"/>
<RTViewPanel name="detail6" display="small_panel" subs="$title:'203'"/>
</GridPanel>
</panels>
Building Displays for Grid Panels
When creating displays for
use in grid panels, the height and width of each display must be the same.
To set the height and width of a display in the Display Builder, select
File>Background
Properties and set the Model Width and Model Height. If you are using
a Background Image for your display, create the image so that the height
and width of the image are one pixel larger than the size you want the
display to be.
Using Card Panels
The card panel allows you
to stack displays so that they are all active in memory, but only one is
showing. This is useful when you have a display that needs to maintain
a state. For example, you may want your display which contains a trend
graph to maintain data when it is not being displayed. If your login
doesn't allow you to view a particular display, the card panel will not
be created.
Here is an example of a card
panels configuration file:
<?xml
version="1.0" ?>
<panels
xmlns="www.sl.com" version="1.0">
<CardPanel
title="Test of Card Panels">
<RTViewPanel title="Main Panel" display="main_panel"/>
<RTViewPanel title="Panel 101" display="med_panel" subs="$title:101"/>
<RTViewPanel title="Panel 102" display="med_panel" subs="$title:102"/>
<RTViewPanel title="Panel 103" display="med_panel" subs="$title:103"/>
<RTViewPanel title="Panel 201" display="med_panel" subs="$title:201"/>
<RTViewPanel title="Panel 202" display="med_panel" subs="$title:202"/>
<RTViewPanel title="Panel 203" display="med_panel" subs="$title:203"/>
</CardPanel>
</panels>
Building Displays
for Card Panels
When creating displays for
use in card panels, the height and width of each display must be the same.
To set the height and width of a display in the Display Builder, select
File>Background
Properties and set the Model Width and Model Height. If you are using
a Background Image for your display, create the image so that the height
and width of the image are one pixel larger than the size you want the
display to be.
Using Navigation Tree Panels
The navigation tree panel
allows you to display a navigation tree. The navigation tree panel must
be defined inside of a border panel and must be used in conjunction with
a single card panel. The card panel must be defined in the border panel
before the navigation tree panel. The card panel will initially show the
first RTViewPanel in its definition and then it will be used as the target
for any navigation performed in the navigation tree. Drill downs performed
in the card panel will update the selected node in the tree to indicate
the currently selected display. The elements in the navigation tree are
defined in the navigation tree definition
file specified in the navtreedata attribute. If your login
doesn't allow you to view a particular tree node, the node will not display.
Here is an example of a navigation
tree panels configuration file:
<?xml
version="1.0" ?>
<panels
xmlns="www.sl.com" version="1.0">
<BorderPanel
title="Test of Navigation Tree Panel">
<CardPanel region="center">
<RtViewPanel title=" Overview " name="main" display="main_panel"/>
</CardPanel>
<RtViewNavTreePanel region="west" width="200" height="432"
lineStyle="Angled" navtreedata="navtree.xml">
</RtViewNavTreePanel>
</BorderPanel>
</panels>
Building Displays for Navigation Tree
Panels
No displays are shown in
the navigation tree panel, they are shown in the associated card panel.
See Building Displays for Card Panels for information
on building your displays.
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.
NOTE: You must increase the
HEIGHT and WIDTH applet parameters by one pixel for each border that separates
the panels if your displays are in a border panel or grid panel.
If your displays are in a tabbed panel, you must increase the HEIGHT or
WIDTH parameter to allow room for the tabs.
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.
NOTE: The CardPanel, GridPanel and RtViewNavTreePanel are currently not
supported in the Display Server.
|