Themes – advanced hierarchical properties – MiG InfoCom MiG Calendar Tutorial User Manual

Page 21

Advertising
background image

MiG InfoCom AB

What the categories mean are totally up to the user of this component.
They can indicate owner of the

Activity

, a difficulty level of the it

or just what type of activity it is (E.g. Home, Work and Imported).

Since one activity can belong (reference) more than one

Category

and Categories are hierarchical the possibilities are endless. In the
simplest case they can be used to differentiate calendars by their
owners. In a more complex context they can be used to create a
complete role tree with hierarchical dependencies.

GridRow

s in the

Grid

can filter on, among other things, one or

more categories. This opens up for having multiple calendars show in
line side-by-side. It also means the MiG Calendar supports activities
that belongs to more than one calendar and as such shares all
information.

If there are sub grid rows in the date area there can also be a header
that shows the names of the grid rows. Since categories is actually
only one use for sub grid rows, the can filter on anything, the header is
actually called SubRowGridHeader. This header works much the
same way as the date headers, which means the can have more than
one row in the header and cells in different rows can be merged.

Themes – advanced hierarchical properties

A

Theme

is comparable to a configuration file, only it is very flexible

and supports one-to-one, many-to-one and one-to-many mappings.
The keys are hierarchically arranged and can be constrained to one or
many different types. For

Comparable

types they can even be

constrained in it's range with a min/max.

The simplest way to learn about Themes is probably to start the
Theme Editor and play around with it. The Theme Editor is a GUI for
changing any type of

Theme

, and the

Theme

used in the MiG

Calendar component is

CalendarTheme

. Note that the Theme

Editor is generic and can be used to visually edit themes that have
nothing to do with calendaring.

Themes are based on a key/value map where the key is a String that
looks like a file name including path. E.g.

”Decorators/CellLabel/installInLayer”

is a key. The

first slash is always omitted, though it is always mounted on the the

Theme

root.

Some of the more noteworthy features of the Theme framework are:

MiG Calendar Tutorial

Page 21 / 24

Advertising