Composite Object
The composite object (class name:
obj_composite) allows you to show a display (.rtv) file within an object. This
is useful for creating groups of objects that you want to use multiple times,
either directly in your displays, or in the object grid.
|
 |
Composite Properties
There are 2
standard properties in the composite category, rtvName and substitutions.
Enter or select the name of a display (.rtv) file in the rtvName property
to show that display in your
object. The rtvName property should be set before any other properties.
The rtvName display is referred to as the composite display. Once you have set
the rtvName, the composite display will show up in your object, and all of the public
variables from the composite display are added as properties. These
properties can be set to static data or attached to data to drive the values in
the composite display. While any display can be used as a composite display,
there are some limitations on objects and variables names. See the Creating
Composite Displays section for more information.
The substitutions property allows you to set
substitutions on the composite display.
Property
Name |
Description |
rtvName |
Specify the name of the display (.rtv)
file to show in your object. This display is referred to as the composite
display. See Creating Composite
Displays below for information on creating displays to use in
composite objects. |
substitutions |
Specify the substitutions for the
composite display. NOTE: The composite display also inherits substitutions
from the display that contains the composite object.
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
|
,
|
;
|
=
|
<
|
>
|
'
|
"
|
& |
/ |
\ |
{ |
} |
[ |
] |
( |
) |
|
Background Properties
Specify how the background
is displayed in your composite object.
Object Properties
Specify how you composite object is displayed.
Property
Name |
Description |
anchor |
Specify where to
anchor an object in the display. NOTE: If an object has the dock property
set, the anchor property will be ignored.
The anchor property is only applied when the
dimensions of the display are modified, either by editing
Background Properties or resizing the window in
Layout mode
Select None, or one or more the following
options:
None
|
Object
not anchored. This is the default. |
Top |
Anchor
top of object at top of display. |
Left |
Anchor
left side of object at left of display. |
Bottom |
Anchor
bottom of object at bottom of display. |
Right |
Anchor
right side of object at right of display. |
When a display is resized, the number of pixels
between an anchored object and the specified location remain constant. If an
object is anchored on opposite sides (i.e. Top and Bottom or
Left and Right), the object will be stretched to fill the available
space. NOTE: If the Resize Mode is set to Scale and an
object is anchored on opposite sides, then the object with be moved rather than
stretched to fill the available space. |
dock |
Specify the docking
location of an object in the display. NOTE: An object should not be docked if
the Resize Mode is set to Scale.
Select from the following options:
None
|
Object
is not docked. This is the default. |
Top |
Dock
object at top of display. |
Left |
Dock
object at left of display. |
Bottom |
Dock
object at bottom of display. |
Right |
Dock
object at right of display. |
Fill |
Dock
object in available space remaining in the display after all docked objects
are positioned. |
If the dimensions of the display are modified,
either by editing Background Properties or
resizing the window in Layout mode, the
properties (objX, objY, objWidth and objHeight) of
docked objects will automatically adapt to match the new size of the display.
When multiple objects are docked to the same side
of the display, the first object is docked against the side of the display, the
next object is docked against the edge of the first object, and so on.
When objects are docked to multiple sides of the
display, the order in which objects were added to the display controls docking
position. For example, let's say the first object added to the display is docked
at the Top and the second object is docked at the Left.
Consequently, the first object will fill the entire width of the display and the
second object will fill the left side of the display from the bottom of the
first object to the bottom of the display.
Objects in a display have the dock property set
to Fill, are laid out across a grid in the available space remaining
after all docked objects are positioned. By default, the grid has one row and as
many columns as there are objects in the display. You can modify the grid in the
Background Properties dialog.
Once an object is docked, there are some
limitations on how that object can be modified.
- Docked objects cannot be dragged or
repositioned using objX and objY properties.
- Docked objects cannot be resized using the
objWidth or objHeight properties. To resize you must drag on the
resize handle.
- Docked objects can only be resized toward the
center of the display (e.g. If an object is docked at the Top, only its
height can be increased by dragging down toward the center of the display).
- Docked objects set to Fill cannot be
resized at all.
- Docked objects cannot be moved using Align.
Non-docked objects can be aligned against a docked object, but a docked object
will not move to align against another object.
- Docked objects are ignored by Distribute.
|
objHeight |
This property is read only. It shows the height
in pixels of the composite object which is set by the height of the composite
display. |
objName |
Name given to facilitate object management via
the Object List dialog. Select Tools>Object List. |
objWidth |
This property is read only. It shows the width
in pixels of the composite object which is set by the width of the composite
display. |
objX |
Set the x position of the object. |
objY |
Set the y position of the object. |
transparencyPercent |
Sets the transparency of the object.
This property only applies to the background of the composite object. |
visFlag |
Set the visibility of the object. |
Interaction Properties
To specify a drill
down display, double click on the drillDownTarget Property
Name. Any display (.rtv) file can be targeted as a drill down.
Once a drill down target has been set, double-click on the composite object to
activate the drill down. Drill down displays can be activated in the same
window that contains the object or open in a separate window. This allows
you to build a customizable hierarchy of displays.
The
drillDownTarget and command for objects in a composite display
will take precedence over the drill down target or command for the composite
object. This is only supported for the Display Viewer and Display Viewer Applet
and only if the composite object is not used in an object grid. In those cases,
the drill down target or command on the composite object will be used.
Creating
Composite Displays
Any display can be used as the display in a composite object, but there are some
limitations to objects and variable names. To create a composite display, create
a display in the Display Builder as usual. All public
variables that are not
mapped to substitutions will show up as properties on the composite object. If
you do not want a variable to be exposed as a property, mark it as private. For
example, you can create a display with two meters attached to two public
variables, value1 and value2. When you use this display in a composite object,
value1 and value2 will show up in the Composite category of the property sheet
for the composite object. Whatever value you enter for these will drive the
meters in your composite display. When the composite object is used in an object
grid, these properties will also show up in the iconProperties
dialog allowing you to either assigned them to values or to data columns.
The following limitations apply:
- To
variable names in composite displays:
- None of the standard composite
object property names can be used. This includes rtvName, substitutions
and any property outside of the Composite category.
- Only public variables that are not
mapped to data will show up as properties on the composite object.
- Names of all public variables used for
tabular data must have Data Type set
to Tabular.
- Composite displays can use any object
from the Object Palette, except the composite object.
- Nested composite objects
are not supported.
- The drillDownTarget and command
for objects in a composite display will take precedence over the drill down
target or command for the composite object.
|