Mehrfachselektion zur Laufzeit
Mehrfach-Selektion von Primitives zur Laufzeit
-
-
Neues Panel-Attribut "Selektion zur Laufzeit" zum Einschalten (default: aus). Die Möglichkeit die Selektion von primitiven Shapes in einem Vision-Modul zu aktivieren.
-
-
Neues primitive Shape-Attribut "Selektierbar" (nur im GEDI). Definiert, ob eine Shape überhaupt zur Laufzeit auswählbar ist.
-
Neues primitive Shape-Attribut "selected" (CTRL read/write) Status einer Selektion. Nur änderbar, wenn die Shape selektiert werden kann.
-
Neues primitive Shape-Event: "SelectionChanged". Dies wird immer ausgelöst, wenn der "selected" Status einer Shape sich ändert, entweder interaktiv durch den Benutzer, der die Shape selektiert oder durch den CTRL-Programmierer, der das Attribut im Code setzt.
-
Neues Shape Attribut (CTRL nur lesbar): "shapeType". Liefert einen String spezifisch für den Shapetyp. Hier die komplette Liste:
"PRIMITIVE_TEXT", "LINE", "RECTANGLE", "ELLIPSE", "ARC", "POLYGON", "PUSH_BUTTON", "TEXT_FIELD", "CLOCK", "SELECTION_LIST", "RADIO_BOX", "CHECK_BOX", "SPIN_BUTTON", "COMBO_BOX", "TREND", "TABLE", "CASCADE_BUTTON", "BAR_TREND", "TAB", "ACTIVE_X", "FRAME", "PIPE", "DP_TREE", "TEXT_EDIT", "SLIDER", "THUMB_WHEEL", "PROGRESS_BAR", "TREE", "DPTYPE", "LCD", "ZOOM_NAVIGATOR", "EMBEDDED_MODULE" "CALENDAR" |
EWOs zeigen ihren eigenen speziellen Typnamen. Dieser shapeTyp wird auch im GEDI in der Status-Bar angezeigt wenn diese Shape selektiert wird.
-
Neue CTRL-Funktion:
dyn_string getShapes(string moduleName = myModuleName(),
string panelName = myPanelName(),
string attribute = "selected",
anytype value = true)
Diese Funktion liefert eine Liste von Shape-Namen (oder RefName.ShapeName, wenn eine Shape innerhalb einer Panelreferenz ist) selektiert durch die angegebenen Selektionsargumente.
moduleName: Das Modul in dem das Panel geöffnet wird; default myModuleName().
panelName: Welches Panel; default: myPanelName().
attribute: Ein einfacher Attributname einer Shape z.B. "foreCol", "selected", "visible", ...
Alle Attribute, die einen einfachen Datentyp zurückgeben, können verwendet werden (z.B. nicht möglich mit "position");
default: "selected".
value: Der Wert, der angibt, dass das Attribut eine Shape in der resultierenden Liste enthalten muss.
Default: true
BEISPIEL
Liefert eine Liste von allen Shapes mit der Hintergrundfarbe {255,255,255} und setzt die selektiert:
main()
{
dyn_string shapes;
shapes = getShapes(myModuleName(), myPanelName(),
"backCol", "{255,255,255}");
for (int i = 1; i <= dynlen(shapes); i++)
{
setValue(shapes[i], "selected", true);
}
}
BEISPIEL
Liefert eine Liste von allen "TEXT_FIELD" Shapes:
dyn_string shapes = getShapes(myModuleName(), myPanelName(),
"shapeType", "TEXT_FIELD");
-
Um auf $-Parameter einer spezifischen PanelRef zugreifen zu können, bekommt eine Panel-Referenz ein neues lesbares Attribut"dollars". Das Ergebnis ist ein Mapping wobei der Schlüssel der $-Parametername ist und der Wert der $Parameter-Wert z.B.
mapping params;
getValue("Ref1", "dollars", params)"
DebugN(params["$DP"]);