Was können wir verbessern?

Dokumentation

Tree

Benötigt: IP-Symcon >= 5.0

Erstellt einen Baum mit der Überschrift caption.
Die angezeigten Spalten werden in columns definert.
Initiale Einträge des Baumes können via values vorgegeben werden.

Beispiel

Dieses Element wird von der Legacy-Konsole nicht unterstützt. Wird ein Modul mit diesem Element in der Legacy-Konsole geöffnet, so kommt es zu einer Fehlermeldung.

Allgemeine Parameter

Parameter Beschreibung
type Tree
name Name des Baumes
caption (optional) sichtbare Beschriftung des Baumes
rowCount (optional) (default: 0) sichtbare Anzahl von Zeilen; bei mehr Zeilen in der Liste wird ein Scrollbalken eingeblendet - ist der Wert 0, so füllt der Baum den restlichen noch verfügbaren Platz im Instanzeditor. Nur ein Konfigurationselement kann den gesamten restlichen Platz erhalten.
add (optional) (default: false) Wenn true, dann wird unter der Tabelle ein "Hinzufügen"-Button eingeblendet, welcher dem Baum ein neues Element unter dem angewählten Knoten hinzufügt
delete (optional) (default: false) Wenn true, dann wird hinter jedem Eintrag in des Baumes ein Button eingeblendet, welcher das entsprechende Element löscht
columns Spalten des Baumes
sort (optional) Sortierung des Baumes. Wird dies nicht gesetzt bleibt der Baum unsortiert
values (optional) initiale Einträge des Baumes

Parameter für columns

Parameter Beschreibung
label sichtbare Beschriftung einer Spalte (veraltet)
caption sichtbare Beschriftung einer Spalte
name eindeutiger Name einer Spalte um diese zu referenzieren; der Name darf nicht "id", "parent", "expanded" oder "rowColor" sein, da diese Werte für andere Funktionen belegt sind, siehe Parameter für values
width Breite der Spalte in Pixeln, als CSS-String (z.B. "100px"); genau eine Spalte muss den Wert "auto" haben, wodurch die Breite dieser Spalte den restlich verfügbaren Platz nutzt. Darüber hinaus werden an dieser Spalte die Erweiterungs-Symbole des Baumes dargestellt.
add (optional) initialer Wert in dieser Spalte bei einem neu hinzugefügtem Eintrag, notwendig wenn add bei dem Baum auf true gesetzt ist
edit (optional) Beschreibung eines editierbaren Elements
save (optional) (default: true, falls das Element editierbar ist, sonst false) Bei true sollen die Werte dieser Spalte als Modul-Eigenschaften gesichert werden, siehe Speichern und Laden von Bäumen
visible (optional) (default: true) Bei false wird die Spalte nicht angezeigt

Parameter für edit

Parameter Beschreibung
type Typ der Darstellung, entsprechend der möglichen Eingaben:
CheckBox, IntervalBox, NumberSpinner, PasswordTextBox, Select, SelectCategory, SelectColor, SelectEvent, SelectFile, SelectInstance, SelectLink, SelectMedia, SelectObject, SelectScript, SelectVariable, ValidationTextBox, List, Tree
Weitere Parameter Die weiteren Parameter ergeben sich je nach gewähltem Typ; die Parameter "name" und "caption" des Typs werden ignoriert

Parameter für sort

Parameter Beschreibung
column Name der Spalte, nach welcher der Baum sortiert wird
direction Die Richtung der Sortierung; "ascending" für eine aufsteigende Sortierung und "descending" für eine absteigende Sortierung

Parameter für values

Parameter Beschreibung
id Ein Identifikator, mit welchem der Eintrag in der Baumdarstellung als Elternknoten adressiert werden kann, id muss größer als 0 sein
parent (optional) (default: 0) In diesem Feld kann die id eines Wertes gesetzt werden, welcher in der Baumdarstellung der Elternknoten von diesem Wert wird. Hiefür muss der Eltern-Wert im Array "values" vor dem Kind stehen. Ist "parent" 0, so wird das Element auf oberster Ebene eingefügt.
rowColor (optional) (default: transparent) Hintergrundfarbe der Zeile als Hex-Code (Defaultfarben s.u.), leerer String für Transparenz
expanded (optional) (default: false) Falls dieser Wert true ist, wird der Eintrag beim Laden des Konfigurationsformulares direkt ausgeklappt
Weitere Parameter (optional) (default: "") Für jeden initialen Eintrag des Baumes werden hier die Werte zu allen Spalten definiert. Hierfür wird für jede Spalte ein Parameter mit dem Namen der Spalte eingetragen. Die Belegung des Parameters entspricht dem Wert dieser Spalte bei dem entsprechenden Eintrag.

Speichern und Laden von Bäumen

Das Speichern und Laden von Bäumen erfolgt analog zu Listen

Verwendung des Bauminhaltes in Skripten

Die Verwendung der Werte des Baumes in Skripten erfolgt analog zu Listen

Beispiel

{
    "type": "Tree",
    "name": "Devices",
    "caption": "Devices",
    "rowCount": 5,
    "add": true,
    "delete": true,
    "sort": {
        "column": "Name",
        "direction": "ascending"
    },
    "columns": [{
        "caption": "InstanceID",
        "name": "InstanceID", 
        "width": "75px",
        "add": 0,
        "edit": {
            "type": "SelectInstance"
        }
    }, {
        "caption": "Name",
        "name": "Name",
        "width": "auto",
        "add": ""
    }, {
        "caption": "State",
        "name": "State",
        "width": "40px",
        "add": "New!"
    }, {
        "caption": "Temperature",
        "name": "Temperature",
        "width": "75px",
        "add": 20.0,
        "edit": {
            "type": "NumberSpinner",
            "digits": 2
        }
    }],
    "values": [{
            "id": 1,
            "InstanceID": 0,
            "Name": "Kategorie",
            "State": "",
            "Temperature": 0
        },{
            "id": 2,
            "parent": 1,
            "InstanceID": 12435,
            "Name": "ABCD",
            "State": "OK!",
            "Temperature": 23.31,
            "rowColor": "#ff0000"
    }]
}