A symbol is made up from graphic elements, parameters, conditions
and vector or bitmap images. Each graphic element has attributes
which define its look and feel. A symbol is defined by the IlvPaletteSymbol class. This class defines a
symbol. It contains all information necessary for CSS to create
instances of the symbol in a GUI application.
![UML diagram
of class relationships among symbol palette classes in JViews Diagrammer.](../../JViews_Diagrammer/usrextdiag/_media/diaext_symbolclasses_default.png)
Symbol palette classes available in
Rogue Wave JViews Diagrammer
An
IlvPaletteSymbol
instance contains:
- The CSS that describes the symbol. This includes graphic element definitions and symbol conditions.
- The class name. This acts as the entry point in the CSS.
- The symbol parameters.
A palette ( IlvPalette) is a collection of palette symbols (
IlvPaletteSymbol
). A palette symbol represents the definition of the symbol.
Instances of the symbol based on the same definition may occur in
the diagrammer application. An instance of a symbol has a symbol
descriptor ( IlvSymbolDescriptor) which helps find the
palette symbol that corresponds to this instance.
Inside a palette, the symbols are organized in a hierarchy of categories ( IlvPaletteCategory). Each palette has at
least a root category.
The category path and the symbol name identify a symbol within a
palette. For example,
Symbols.Controls.Dial
corresponds to the Dial symbol inside the subcategory Controls of
the root category Symbols.
Part of the palette symbol definition indicates which parameters
are defined for the symbol. Symbols can have a different behavior
or appearance depending on the actual parameter values of the
symbol instance. The palette symbol contains the definition of the
formal parameter ( IlvPaletteSymbolParameter), while the actual
value of a parameter can be queried using
IlvSymbolDescriptor
for each instance of the symbol.
Finally, the palette manager ( IlvPaletteManager) manages a collection of
palettes. The palette manager is only needed when you want to load
or save palettes dynamically in the user file system. If you need
to load only one fixed palette, it is more convenient to put the
palette on the class path and load the palette as resources of the
application. This is explained in the next section.
Note
An IlvPaletteManager must be attached
to a Rogue Wave® JViews Diagrammer Designer application to follow
the currently loaded palettes.