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"]);