OboxFill
OboxFill(windowID, oboxID), OboxFill(, oboxID), OboxFill
Parameter: Bezeichner eines Windows und eines ObjectTree
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | eine Collection |
Stack(Out) | Top | - |
Für jedes Element der Collection auf dem Stack wird die korrespondierende Zeile in der ObjectBox unterhalb des aktuell selektierten Elementes eingefügt. Unterstützt die ObjectBox keine strukturierten Daten (NODE SetFormat existiert nicht bzw. nicht für den Typ des einzufügenden Objektes) am selektierten Objekt, so erfolgt keinerlei Veränderung der ObjectBox.
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | Indexpfad |
Top-1 | eine Collection | |
Stack(Out) | Top | - |
Wie oben, nur der Indexpfad bestimmt die Sortierung zwischen den Elementen, die unter dem selektierten Objekt (Parent) hängen.
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | ein Objekt |
Stack(Out) | Top | - |
Das Objekt vom Stack wird unter das selektierte Objekt gehängt, sofern für das Selektierte eine passende NODE SetFormat- Anweisung existiert.
Stack | Position | Beschreibung |
---|---|---|
Stack(In) | Top | ] |
Top-1 | Objekt On | |
Top-2 | Objekt On-1 | |
. . . | . . . | |
Top-n | O1 | |
Top-n-1 | [ | |
Stack(Out) | - |
Jedes Objekt vom Stack, für das das aktuell selektierte Objekt in der ObjectBox eine passende NODE SetFormat- Anweisung besitzt, wird unter dieses selektierte Objekt gehängt.
Anmerkungen:
OboxFill gehört zur Befehlsfamilie der Obox...-Befehle.
Wurde kein Objekt selektiert (z.B. durch DeselectAll), so erfolgt, wie bei FillObox ein Einfügen auf der obersten Ebene (unterhalb Root).
OboxFill ändert nur das Windowobjekt. Die Änderung von Objekten, insbesondere die Prüfung von Zulässigkeiten von BackRefNames und ähnlichem, erfolgt erst bei der Speicherung z.B. mit AdjustStructure. OboxFill selber führt das Einfügen ohne jedwelche Prüfung durch.
Wurden die untergeordneten Objekte des selektierten Objekts noch nicht eingelesen (siehe SetLevels), so erfolgt dies automatisch, so dass untergeordnete Objekte immer komplett oder gar nicht eingelesen sind (keine "halbgelesenen" direkten Unterstrukturen).
Wurde mit dem Befehl SetLimit eine obere Schranke für die Anzahl der einfüllbaren Objekte festgelegt, so kann diese, bei Überschreiten, ein Einfüllen unterdrücken. Im ObjectTree wird dies durch virtuelles "Überlauf-"Element visualisiert.
Wird OboxFill innerhalb des System-Events DROP (Reaktion auf eine erfolgte Drag und Drop -Aktion) für das Drag-Objekt aufgerufen, so wird das Drag-Objekt bei Einfügemodus Sibling automatisch zusätzlich an gegebener Stelle einsortiert.