A style sheet is a .css
file.
It is referenced by a URL. The style sheet can load other style sheets
using the import
statement. A style sheet
controls the mapping of data to a graphic representation through style
rules conforming to the CSS level 2 syntax. It defines the way the
objects of your data model will be translated to graphic objects.
The SDM engine accepts
cascading
style sheets (
CSS). Cascading style sheets can be used to define
several levels of customization. For example, different style sheets
could be defined for a whole company, a group, and an individual user.
You can either write a
style sheet by hand or create it using the Rogue Wave JViews Diagrammer Designer. For example, if your
final application loads a custom data model, you can still use the
Designer to define the style of your diagram. All you need to do is
to create a sample XML file containing objects with the same properties
as your real data. Then, use the Designer to define the graphic style
of your nodes and links. When you save your project, the Designer
will create three files: a project file (
.idpr
),
an XML file containing your sample data (
.xml
),
and a CSS file containing all the styling information (
.css
).
In your final application, you will only use the CSS file as explained
next, and load your real data instead of the sample data used in the
Designer.
Style sheets are usually suitable only for a particular
data model. For example, if your data model describes a workflow process,
it will contain such objects as activities, transitions between activities,
and participants that carry on the activities. A style sheet for such
a data model will have rules that match these particular object types
and their properties to define the graphic look of the objects. So,
a workflow style sheet will probably not work for another data model,
because the objects will not have the same types and properties.
To assign a style sheet to the diagram component in
Java™
,
call the method
setStyleSheet. This method takes an array of
String
with
each element representing one style sheet. The array simulates the
cascading of style sheets, where the last style sheets have a higher
priority than the previous ones. The following code example shows
an example with only one style sheet.
Setting the style sheet of a diagram component
String[] styleSheet = new String[] { "file:example.css" };
engine.setStyleSheets(styleSheet);
Alternatively, you can set the data source and the style
sheet at the same time by loading a project file (see
The project).
Style sheets can be cascaded, that is, concatenated with
later style sheets having a higher priority than earlier ones. To
cascade style sheets, use the
addStyleSheet method, see the following code example.
Adding a cascaded style sheet to a diagram component
Diagrammer.addStyleSheet(new URL("file:cascaded.css"));
As well as the diagram component itself, you can customize
its associated Swing user interface components through the style sheet.
See
User interface components for
more details.