SeisComP3

Table Of Contents

Previous topic

Hypo71

Next topic

MLh

This Page

GUI

The GUI configuration plugin extends the configuration of graphical user interfaces to various options to adjust the look and feel.

Description

All SeisComP3 graphical user interfaces are based on a common libraries. This chapter describes what configuration and styling options are available for all GUI applications. The GUI specific configuration options are additional to the standard application options. Setup the e.g. messaging connection and database is equal to the CLI (command line interface) applications.

Styling

To adjust the look-and-feel to the host desktop system and the personal taste several styling options are available. Since all GUI applications are using the Qt4 library the tool "qtconfig-qt4" can used to adjust the widget theme and the colors. If KDE is used as desktop system the same style is used since KDE bases on Qt as well.

The style options supported by SC3 (and not covered by the general Qt setup) have to be given in the applications (or global) configuration file. The parameters are prefixed with scheme..

Configuration syntax

Beside the usual integer, float, boolean and string parameters GUI applications support also color, color gradient, pen, brush and font parameters. The syntax is explained below:

Colors

color = RRGGBBAA | "rgb(red,green,blue)" | "rgba(red,green,blue,alpha)"

Colors are specified either in a hexadecimal notation or in a rgb(a) notation. When using the rgb(a) notation it should be quoted. Otherwise the configuration parser would tokenize the value into 3 or 4 strings due to the comma.

Color gradients

gradient = 1:FF0000, 2:00FF00, 3:0000FF

This defines a gradient from red through green to blue for the nodes 1, 2 and 3. Values out of range are clipped to the lower or upper bound.

Fonts

# The font family
font.family = "Arial"

# Point size
font.size = 12

# Bold?
# Default: false
font.bold = false

# Italic?
# Default: false
font.italic = false

# Underline?
# Default: false
font.underline = false

# Overline?
# Default: false
font.overline = false

An example to configure the SC3 base font:

scheme.fonts.base.family = "Arial"
scheme.fonts.base.size = 10

Pens

Pens are used in the vector layer configuration. Pens have three attributes: color, style and width. Color follows the described color definition, width is a double and the styles are:

../_images/pen-no.png
../_images/pen-solid.png
../_images/pen-dot.png
nopen solidline dotline
../_images/pen-dash.png
../_images/pen-dashdot.png
../_images/pen-dashdotdot.png
dashline dashdotline dashdotdotline
Images from Qt 4.1 documentation: http://doc.qt.digia.com/4.1/qt.html#PenStyle-enum

Example:

# Blue dotted pen
pen.color = 0000ff
pen.style = dotline

Brushes

Brushes are also used in the vector layer configuration. Brushes are used to fill a polygon. They have two attributes: color and pattern. Color followes the described color definition and patterns are:

../_images/brush-patterns.png

Example:

# Red solid brush
brush.color = ff0000
brush.pattern = solid

Map vector layers

SeisComP3 supports drawing of arbitrary polygons/polylines. Currently the FEP (share/fep or ~/.seiscomp3/fep) and BNA (share/bna or ~/.seiscomp3/bna) data sets are loaded and may be visualized. While the FEP layer is configured through the layer 'fep', the layer (resp. category) of the BNA data is derived from the directory structure of the BNA folder.

In fact the depth of the BNA directory tree is arbitrary and subfolders form subcategories.

E.g. the directory tree bna/coastline/europe/germany will generate the categories coastline, coastline.europe and coastline.europe.germany which all may be configured individually. Every undefined property is inherited from the parent category. Due to its recursive structure the configuration options have not been added to the description xml file.

The general configuration parameter format is prefix.category.param. If global layer properties are configured then just prefix.param.

The prefix for layer configuration is map.layers.

Available configuration options per category are:

visible

Type: boolean

Show/hide the layer Default is true.

drawName

Type: boolean

Draws the segment name in the center of the bounding box. For segments read from BNA files the name is extracted from the first part of the header. Default is false.

rank

Type: int

Set or override the rank of the segment. The rank defines the zoom level at which drawing of the segment starts. For segments read from BNA files the name is extracted from the second part of the header if it has the form "rank VALUE", e.g. rank 12. Default is 1.

roughness

Type: int

Sets the roughness of a polyline or polygon while zooming. The roughness is somehow defined in pixels and removes successive vertices if the distance in pixel is less than roughness. The higher the value the less vertices a rendered polyline or polygon will finally have and the faster the rendering. If set to 0 then the feature is disabled. Default is 3.

debug

Type: boolean

If enabled, the bounding box of the segment is drawn. Default is false.

pen.width

Type: double

Pen width. Default is 1.0.

pen.color

Type: color

Pen color. Default is 000000ff.

pen.style

Type: string

Line style. Supported values are: dashdotdotline, dashdotline, dashline, dotline, nopen and solidline. Default is solidline.

brush.color

Type: color

Fill color. Default is 000000ff.

brush.pattern

Type: color

Fill pattern. Supported values are: nobrush, solid, dense1, dense2, dense3, dense4, dense5, dense6, dense7, horizontal, vertical, cross, bdiag, fdiag and diagcross. Default is nobrush.

font.size

Type: int

font.family

Type: string

font.bold

Type: boolean

font.italic

Type: boolean

font.underline

Type: boolean

font.overline

Type: boolean

Example:

# Set global layer boundary color to black
map.layers.pen.color = 000000

# Set coastline boundary color to orange and pen width to 2
map.layers.coastline.pen.color = ff8000
map.layers.coastline.pen.width = 2

# Set boundary of Germany to red. Pen width is still 2 (inherited from
# coastline)
map.layers.coastline.europe.germany = ff0000

# Set river color to blue
map.layers.river.pen.color = 0000ff

Configuration

map.location

Type: string

Specified the location and the structure of the map tiles to be used. This path is composed of zero or more directives and must include at least one conversion specification which starts with is introduced by the character % followed by a conversion specifier. Valid specifiers are s (replaced by tile ID), l (tile level), c (tile column) and r (tile row). An example for using the OpenStreetMap file structure is /path/to/maps/%l/%c/%r.png. Default is @DATADIR@/maps/world%s.png.

map.format

Type: string

Projection of the map tiles. Supported formats are: rectangular and mercator. Default is rectangular.

map.cacheSize

Type: int

Cache size of the map tiles. If 0 is specified a default cache size of 32mb is used. The higher the cache size the better the performance in higher resolutions. A higher cache size causes less image loader calls but requires more client memory. Default is 0.

map.type

Type: string

Used to distinguish tile store implementations provided by plug-ins.

Note

scheme.* This group defines various color and font options for SeisComp3 graphical user interfaces. There are various conventions to define colors, fonts and gradients. A color is defined in HTML convention. If rgb or rgba is used it must be quoted because the comma is handled as list separator by the configuration. Gradients are configured as lists of tuples where each tuple is colon separated in the form value:color. Color is again a color definition and value is either int or double.

scheme.showMenu

Type: boolean

Show menu bar. Default is true.

scheme.showStatusBar

Type: boolean

Show status bar. Default is true.

scheme.tabPosition

Type: string

Set position if tab bar. An unset value lets the application decide where to place the tab bar. This option might not be supported by all applications. Valid positions are: off, north, south, east, west

scheme.colors.background

Type: color

A general application background color. Can be uses to give each application a different background color. An unset value lets Qt decide.

scheme.colors.records.foreground

Type: color

The general color of records/traces. Default is 808080.

scheme.colors.records.alternateForeground

Type: color

A general trace color of the alternate trace (eg scheli). Default is 808080.

scheme.colors.records.gaps

Type: color

The color of data gaps in trace views. Default is FFFF0040.

scheme.colors.records.overlaps

Type: color

The color of data overlaps in trace views. Default is FF00FF40.

scheme.colors.records.alignment

Type: color

The color of the alignment marker in trace views. Default is FF0000.

scheme.colors.picks.manual

Type: color

The color of manual picks. Default is 00FF00.

scheme.colors.picks.automatic

Type: color

The color of automatic picks. Default is FF0000.

scheme.colors.picks.undefined

Type: color

The color of picks with undefined state. Default is A0A0A4.

scheme.colors.picks.disabled

Type: color

The color of disabled picks. Default is A0A0A4.

scheme.colors.arrivals.manual

Type: color

The color of manual arrivals (arrivals that bind manual picks, e.g. residual plot of scolv, manual picker, ...) Default is 00A000.

scheme.colors.arrivals.automatic

Type: color

The color of automatic arrivals, Default is A00000.

scheme.colors.arrivals.theoretical

Type: color

The color of theoretical arrivals. Default is 0000A0.

scheme.colors.arrivals.undefined

Type: color

The color of arrivals binding picks with undefined state. Default is A00000.

scheme.colors.arrivals.disabled

Type: color

The color of disabled arrivals. Default is A0A0A4.

scheme.colors.arrivals.residuals

Type: gradient

The gradient of arrivals residuals. A gradient is defined as a list of tuples separated by colon where the first item is the value and the second is the color. Colors can be given in rgb notation or hex. when rgb is used double quotes are needed to protect the comma inside the rgb definition, e.g. -8:"rgb(0,0,100)", -4:"rgb(0,0,255)", -3:"rgb(100,100,255)", ...

scheme.colors.magnitudes.set

Type: color

The color of active magnitudes. Default is 00A000.

scheme.colors.magnitudes.unset

Type: color

The color of inactive magnitudes. Default is 000000.

scheme.colors.magnitudes.disabled

Type: color

The color of disabled magnitudes. Default is A0A0A4.

scheme.colors.magnitudes.residuals

Type: gradient

The gradient of magnitude residuals.

scheme.colors.stations.associated

Type: color

The color of associated stations (e.g. in scmv). Default is 82AD58.

scheme.colors.stations.triggering

Type: color

The color of triggered stations.

scheme.colors.stations.triggered0

Type: color

No description available

scheme.colors.stations.triggered1

Type: color

No description available

scheme.colors.stations.triggered2

Type: color

No description available

scheme.colors.stations.disabled

Type: color

The color of disabled stations.

scheme.colors.stations.idle

Type: color

The color of idle stations.

Note

scheme.colors.qc.* The color of QC.delay thresholds in scmv.

scheme.colors.qc.delay0

Type: color

No description available

scheme.colors.qc.delay1

Type: color

No description available

scheme.colors.qc.delay2

Type: color

No description available

scheme.colors.qc.delay3

Type: color

No description available

scheme.colors.qc.delay4

Type: color

No description available

scheme.colors.qc.delay5

Type: color

No description available

scheme.colors.qc.delay6

Type: color

No description available

scheme.colors.qc.delay7

Type: color

No description available

scheme.colors.qc.qcWarning

Type: color

No description available

scheme.colors.qc.qcError

Type: color

No description available

scheme.colors.qc.qcOk

Type: color

No description available

scheme.colors.qc.qcNoSet

Type: color

No description available

Note

scheme.colors.gm.* The color of ground motion amplitudes in scmv.

scheme.colors.gm.gm0

Type: color

No description available

scheme.colors.gm.gm1

Type: color

No description available

scheme.colors.gm.gm2

Type: color

No description available

scheme.colors.gm.gm3

Type: color

No description available

scheme.colors.gm.gm4

Type: color

No description available

scheme.colors.gm.gm5

Type: color

No description available

scheme.colors.gm.gm6

Type: color

No description available

scheme.colors.gm.gm7

Type: color

No description available

scheme.colors.gm.gm8

Type: color

No description available

scheme.colors.gm.gm9

Type: color

No description available

scheme.colors.gm.gmNotSet

Type: color

No description available

scheme.colors.recordView.selectedTraceZoom

Type: color

The color of the selected zoom area (e.g. manual picker). Default is C0C0FFC0.

scheme.colors.map.lines

Type: color

The color of lines in the map (e.g. lines connecting the origin and a station).

scheme.colors.map.outlines

Type: color

The color of station outlines in the map.

scheme.colors.map.grid

Type: color

The color grid line color of the map.

scheme.colors.map.stationAnnotations

Type: color

The color of station annotations.

scheme.colors.map.cityLabels

Type: color

The color of city labels.

scheme.colors.map.cityOutlines

Type: color

The color of city outlines.

scheme.colors.map.cityCapital

Type: color

The color of a capital.

scheme.colors.map.cityNormal

Type: color

The color of a "normal" city.

scheme.colors.legend.background

Type: color

The map legend background color.

scheme.colors.legend.border

Type: color

The map legend border color.

scheme.colors.legend.text

Type: color

The map legend text color.

scheme.colors.legend.headerText

Type: color

The map legend header color.

scheme.colors.originSymbol.depth.gradient

Type: gradient

The depth gradient. Default is 0:FF0000,50:ffA500,100:FFFF00,250:00FF00,600:0000FF.

scheme.colors.originSymbol.depth.discrete

Type: boolean

Setting this parameter to true will not interpolate between the depth steps and the color for a depth <= input is used. Default is true.

Note

scheme.colors.originStatus.* The origin status colors (e.g. in event list).

scheme.colors.originStatus.automatic

Type: color

No description available

scheme.colors.originStatus.manual

Type: color

No description available

scheme.marker.lineWidth

Type: color

The line width of the marker (e.g. picks of manual picker).

scheme.fonts.base

Type: font

The general base font of an application. This overrides the default Qt4 application font.

scheme.fonts.small

Type: font

No description available

scheme.fonts.normal

Type: font

No description available

scheme.fonts.large

Type: font

No description available

scheme.fonts.highlight

Type: font

No description available

scheme.fonts.heading1

Type: font

No description available

scheme.fonts.heading2

Type: font

No description available

scheme.fonts.heading3

Type: font

No description available

scheme.fonts.cityLabels

Type: font

No description available

scheme.map.stationSize

Type: int

The station symbol size (e.g. in scmv). Default is 8.

scheme.map.originSymbolMinSize

Type: int

The origin symbol minimum size. The formula to compute the size of the origin symbol is: 4.9*(M-1.2). Default is 9.

scheme.map.vectorLayerAntiAlias

Type: boolean

Should the vector layer in the map use antialiasing? This improves the visual quality but decreases performance. Default is false.

scheme.map.bilinearFilter

Type: boolean

Should the map use a bilinear filter? The bilinear filter improves the visual quality but decreases performance slightly. It is only used for static map images. Not while dragging. Default is true.

scheme.map.showGrid

Type: boolean

Should the map display the grid? Default is true.

scheme.map.showCities

Type: boolean

Should the map display the cities? Default is true.

scheme.map.cityPopulationWeight

Type: int

Controls at which zoom level a city will be visible. The following formula is used: screen_width (km) * weight >= population Default is 150.

scheme.map.showLayers

Type: boolean

Should the map display the custom layers? Default is true.

scheme.map.projection

Type: string

SeisComP ships with the rectangular projection build in. Other projections may be provided through plug-ins. Default is Rectangular.

scheme.precision.depth

Type: int

The precision of depth values. Default is 0.

scheme.precision.distance

Type: int

The precision of distance values. Default is 1.

scheme.precision.location

Type: int

The precision of lat/lon values. Default is 2.

scheme.precision.pickTime

Type: int

The precision of pick times. Default is 1.

scheme.precision.traceValues

Type: int

Precision of displayed offset/amp in all trace widgets. Default is 1.

scheme.precision.rms

Type: int

Precision of RMS values. Default is 1.

scheme.precision.uncertainties

Type: int

Precision of uncertainty values, e.g. latitude errors. Default is 0.

scheme.unit.distanceInKM

Type: boolean

Display distances in km? Default is false.

picker.filters

Type: list:string

Configures the default filters selectable in manual picker. The entry with a leading "@" is selected as default filter. Default is "BP 0.1 - 1 Hz  3rd order;BW(3,0.1,1)","BP 0.1 - 2 Hz  3rd order;BW(3,0.1,2)","BP 0.4 - 1 Hz  3rd order;BW(3,0.4,1)","@BP 0.7 - 2 Hz  3rd order;BW(3,0.7,2)""BP 1 - 3 Hz  3rd order;BW(3,1.0,3)","BP 2 - 4 Hz  3rd order;BW(3,2.0,4)","BP 3 - 6 Hz  3rd order;BW(3,3.0,6)","BP 4 - 8 Hz  3rd order;BW(3,4.0,8)","BP 1 - 5 Hz  3rd order;BW(3,1.0,5)","BP 0.7 - 2 Hz + STA/LTA(1,50);RMHP(10)->ITAPER(30)->BW(3,0.7,2)->STALTA(1,50)".

eventlist.visibleColumns

Type: list:string

Configure the columns of the event list that are visible initially. The first column containing the origin time is always visible and cannot be hidden. Possible values are: Type, M, TP, Phases, Lat, Lon, Depth, Stat, FM, Agency, Region, ID. Default is M, TP, Phases, Lat, Lon, Depth, Stat, Agency, Region, ID.

eventlist.regions

Type: list:string

Configured a list of regions that can be used as filter of the result set.

Note

eventlist.region.$name.* Defines a rectangular region that can be used as a result set filter on client side. $name is a placeholder for the name to be used and needs to be added to eventlist.regions to become active.

eventlist.regions = a,b
eventlist.region.a.value1 = ...
eventlist.region.b.value1 = ...
# c is not active because it has not been added
# to the list of eventlist.regions
eventlist.region.c.value1 = ...
eventlist.region.$name.name

Type: string

Defines the name of the region that shows up in the listbox.

eventlist.region.$name.rect

Type: list:double

Defines a rectangular region with a list of 4 values: latmin, lonmin, latmax, lonmax.

eventlist.filter.agencies.label

Type: string

Defines the text of the option "Show only own events". Default is Show only own events.

eventlist.filter.agencies.whitelist

Type: list:string

Sets a list of preferred agencies. Events from preferred agencies are defined as "own" events.

eventlist.filter.agencies.type

Type: string

Sets the type of the filter. If type is "events" the agency of the preferred origin of the event is checked. If type is "origins" the agency of all origins of an event is checked and if at least one origins agency is part of the whitelist it will pass the filter. Or in other words, the event is hidden if no origin is from a preferred agency. Default is events.

eventlist.filter.agencies.enabled

Type: boolean

Sets the default state of the "Show only own events" option. Default is false.

eventlist.filter.types.label

Type: string

Defines the text of the option "Hide other/fake events". Default is Hide other/fake events.

eventlist.filter.types.blacklist

Type: list:string

List of event type to be hidden if the "Hide other/fake events" option is ticked.

eventlist.filter.types.enabled

Type: boolean

Sets the default state of the "Hide other/fake events" option. Default is false.

eventlist.filter.regions.enabled

Type: boolean

Sets the default state of the "Hide events outside" option. Default is false.