<?xml version="1.0" encoding="Windows-1255" ?><Class name="TransObject" inherit="core.gml:GmlObject" alias="obj" hierarchy="GMLDOM" id="core.gml:TransObject" sort="21" urn="core.gml:core.TransObject.gs" toc="\Core"><Summary>Transactional implementation of GmlObject.
   Instances of TransObject or any of its derived classes are persistent objects that are managed using transactions.</Summary><Inherit>&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;</Inherit><Remarks>To create instances of TransObject or any of its sub-classes, use respective GMLDOM methods.
      Do not use constructors for initializing instances of TransObject.</Remarks><Copyright>(c) SAP AG 2003-2006. All rights reserved.</Copyright>
<Topics>
<Property name="notes" type="String" default="''" group="I. Properties" access="RW" sortGroup="true" scope="public" id="core.gml:TransObject!notes" sort="34" seq="0000"><Summary>Gets or sets the object notes.</Summary></Property>
<Property name="parent_prop" virtual="Yes" access="RO" type="String" default="''" modifier="virtual" sortGroup="true" scope="public" id="core.gml:TransObject!parent_prop" sort="34" group="I. Properties" seq="0001"><Summary>Gets or sets the property name at the parent object.</Summary></Property>
<Property name="roleName" type="String" default="''" access="RW" sortGroup="true" scope="public" id="core.gml:TransObject!roleName" sort="34" group="I. Properties" seq="0002"><Summary>Gets or sets the role of object in the current unit.</Summary></Property>
<Property name="tags" type="String" default="''" access="RW" sortGroup="true" scope="public" id="core.gml:TransObject!tags" sort="34" group="I. Properties" seq="0003"><Summary>Gets or sets the stereotype tags.</Summary></Property>
<Method name="assignChild" sortGroup="true" scope="public" id="core.gml:TransObject!assignChild" sort="35" group="II. Methods" seq="0004"><Summary>A helper method for assigning a value to a strong property.
Only use this method from inside &lt;code&gt;insertElement&lt;/code&gt; and other core functions !.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;assignChild&lt;/b&gt;() &amp;rarr; void"></Parameters><Return></Return></Method>
<Method name="contains" group="II. Methods" sortGroup="true" scope="public" id="core.gml:TransObject!contains" sort="35" seq="0005"><Summary>Tests whether this object contains a given child object.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;contains&lt;/b&gt;(&lt;i&gt;child&lt;/i&gt;) &amp;rarr; Boolean"><Param name="child" type="gml:GmlObject!" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The child object to test.</Param></Parameters><Return type="Boolean">The test result.</Return></Method>
<Method name="createElement" sortGroup="true" scope="public" id="core.gml:TransObject!createElement" sort="35" group="II. Methods" seq="0006"><Summary>Creates a new element and inserts it under this object.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;createElement&lt;/b&gt;(&lt;i&gt;className&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;, &lt;i&gt;values&lt;/i&gt;, &lt;i&gt;before&lt;/i&gt;) &amp;rarr; &lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;"><Param name="className" type="String">The element class name.</Param><Param name="prop_name" default="" type="String">The property name into which this child will be assigned.</Param><Param name="values" default="" type="Variant[id]">A collection of property values for initializing the new element.</Param><Param name="before" type="Integer">Integer that specifies the placement of the new element.
      If this parameter is specified, the child element will be inserted immediately before the specified index.
      This parameter is only relevent to properties of type vector.</Param></Parameters><Return type="gml:Element!" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The newly created element, or &lt;code&gt;null&lt;/code&gt; in case of any error.</Return><Remarks>This method is sealed and cannot be overridden on sub-classes. If needed, you can override the &lt;q ref=&quot;core.gml:GmlObject!onCreate&quot;&gt;onCreate&lt;/q&gt; callback method to extend the creation operation.</Remarks></Method>
<Method name="getCollection" sortGroup="true" scope="public" id="core.gml:TransObject!getCollection" sort="35" group="II. Methods" seq="0007"><Summary>Gets a collection of child elements by a specified type.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;getCollection&lt;/b&gt;(&lt;i&gt;className&lt;/i&gt;, &lt;i&gt;deep&lt;/i&gt;) &amp;rarr; &lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;[id]"><Param name="className" type="String">The class of elements to get.</Param><Param name="deep" type="Boolean" default="false">Indicates whether to perform a deep search.</Param></Parameters><Return type="gml:Element![id]" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;[id]">The requested child elements collection.</Return><Remarks>By default this method will search only the immediate child elements. To search
      all descendant elements, regardless of their nesting depth, set the &lt;code&gt;deep&lt;/code&gt; parameter to &lt;code&gt;true.&lt;/code&gt;</Remarks></Method>
<Method name="getElement" sortGroup="true" scope="public" id="core.gml:TransObject!getElement" sort="35" group="II. Methods" seq="0008"><Summary>Gets a child element by Id.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;getElement&lt;/b&gt;(&lt;i&gt;id&lt;/i&gt;, &lt;i&gt;deep&lt;/i&gt;) &amp;rarr; &lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;"><Param name="id" type="String">The Id of the child element to get.</Param><Param name="deep" type="Boolean" default="false">Indicates whether to perform a deep search.</Param></Parameters><Return type="gml:Element!" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The requested child element.</Return><Remarks>By default this method will search only the immediate child elements. To search
      all descendant elements, regardless of their nesting depth, set the &lt;code&gt;deep&lt;/code&gt; parameter to &lt;code&gt;true.&lt;/code&gt;</Remarks></Method>
<Method name="insertElement" sortGroup="true" scope="public" id="core.gml:TransObject!insertElement" sort="35" group="II. Methods" seq="0009"><Summary>Inserts a given element under this object.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;insertElement&lt;/b&gt;(&lt;i&gt;child&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;, &lt;i&gt;before&lt;/i&gt;) &amp;rarr; Boolean"><Param name="child" type="gml:Element" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The child element to insert.</Param><Param name="prop_name" type="String">The property name to insert the child element to. (Must be a property marked as 'strong').</Param><Param name="before" type="Integer">Integer that specifies the placement of the new element.
   If this parameter is specified, the child element will be inserted immediately before the specified index.
   This parameter is only relevent to properties of type vector.</Param></Parameters><Return type="Boolean">Indicates whether the element was successfully inserted.</Return><Remarks>&lt;ol&gt;&lt;li&gt;This method is sealed and cannot be overridden on sub-classes. If needed, you can override the &lt;q ref=&quot;core.gml:TransObject!onInsert&quot;&gt;onInsert&lt;/q&gt; and onInsertMe callback method to extend the insertion operation. &lt;/li&gt;&lt;li&gt;If the child element already belongs to another parent object, then it will be removed from the old parent as part of this operation. &lt;/li&gt;&lt;li&gt;This method always results in a single transaction, even if the inserted child is a composite element. The composite element and its sub-elements implicitly belong to the same transaction, and do not contribute separate transaction steps. Similarly, notification events are raised only on the composite element, and not on any of its sub-elements. &lt;/li&gt;&lt;li&gt;TIP: When creating a composite element, it is more efficient to create the element and its sub-elements off the model, before inserting the composite element to the model (see Model's &lt;q ref=&quot;core.gml:Model!createElement&quot;&gt;createElement&lt;/q&gt; method). &lt;/li&gt;&lt;/ol&gt;</Remarks></Method>
<Method name="onClone" sortGroup="true" scope="public" id="core.gml:TransObject!onClone" sort="35" group="II. Methods" seq="0010"><Summary>Handler method for cloning operation: default implementation copies all
   properties and clones all children.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;onClone&lt;/b&gt;(&lt;i&gt;elementsMap&lt;/i&gt;, &lt;i&gt;parent&lt;/i&gt;) &amp;rarr; GmlObject"><Param name="elementsMap" type="GmlObject[id]">This parameter is an [OUT] parameter and passed byref: Map of the newly created objects used to fix object references.
   This map should be populated with newly created objects for any depth of children created indirectly by this clone operation.
   The ID used for this map should be of the old object from which the new one was cloned.</Param><Param name="parent" type="GmlObject">Parent object of the newly cloned object.</Param></Parameters><Return type="GmlObject">The newly cloned object.</Return><Remarks>This method should not be called directly as it does not handle all aspects of the clone operation as fixing
   references, initialization of the cloned objects and after clone ooperations needed to complete this action.
   Instead, to clone an object you should either call Model's &lt;q ref=&quot;core.gml:Model!cloneElements&quot;&gt;cloneElements&lt;/q&gt; method or ObjectSet-&amp;gt;ObjectSet!clone method.

   When overriding this method, one should consider that only at the time of GmlObject!onAfterClone method, the object's properties
   are set properly after fixing references and initializing the object.</Remarks></Method>
<Method name="onInsert" sortGroup="true" scope="public" id="core.gml:TransObject!onInsert" sort="35" group="II. Methods" seq="0011"><Summary>A callback method that is invoked when a child object is inserted into this object.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;onInsert&lt;/b&gt;(&lt;i&gt;child&lt;/i&gt;, &lt;i&gt;trans&lt;/i&gt;) &amp;rarr; void"><Param name="child" type="gml:GmlObject" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The child object that was inserted.</Param><Param name="trans" type="env:KitTransactions!TRANSACTION_OBJ" typeRef="&lt;q ref=&quot;core.env:KitTransactions!TRANSACTION_OBJ&quot;&gt;TRANSACTION_OBJ&lt;/q&gt;">The transaction context.</Param></Parameters><Return></Return><Remarks>Use the &lt;code&gt;trans&lt;/code&gt; argument to determine the context under which this method was invoked.
      This method can be invoked as a result of doing or redoing an insertion transaction or as
      a result of undoing a removal transaction.
      The method is invoked before any notification events are raised.
      Override this method to create or update dependant model objects, as needed.</Remarks></Method>
<Method name="onInsertMe" sortGroup="true" scope="public" id="core.gml:TransObject!onInsertMe" sort="35" group="II. Methods" seq="0012"><Summary>A callback method that is invoked when a this object is inserted into a paernt object.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;onInsertMe&lt;/b&gt;(&lt;i&gt;parent&lt;/i&gt;, &lt;i&gt;trans&lt;/i&gt;) &amp;rarr; void"><Param name="parent" type="gml:GmlObject" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The parent object that this object was inserted to.</Param><Param name="trans" type="env:KitTransactions!TRANSACTION_OBJ" typeRef="&lt;q ref=&quot;core.env:KitTransactions!TRANSACTION_OBJ&quot;&gt;TRANSACTION_OBJ&lt;/q&gt;">The transaction context.</Param></Parameters><Return></Return><Remarks>&lt;ol&gt;&lt;li&gt;This callback is always called after the &lt;q ref=&quot;core.gml:TransObject!onInsert&quot;&gt;onInsert&lt;/q&gt; callback was called for the parent &lt;/li&gt;&lt;li&gt;Use the &lt;code&gt;trans&lt;/code&gt; argument to determine the context under which this method was invoked. &lt;/li&gt;&lt;li&gt;This method can be invoked as a result of doing or redoing an insertion transaction or as a result of undoing a removal transaction. &lt;/li&gt;&lt;li&gt;The method is invoked before any notification events are raised. &lt;/li&gt;&lt;li&gt;Override this method to create or update dependant model objects, as needed. &lt;/li&gt;&lt;/ol&gt;</Remarks></Method>
<Method name="onPropagate" sortGroup="true" scope="public" id="core.gml:TransObject!onPropagate" sort="35" group="II. Methods" seq="0013"><Summary>A callback method that is invoked when an object is notified regarding the change of the model.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;onPropagate&lt;/b&gt;(&lt;i&gt;evt&lt;/i&gt;) &amp;rarr; void"><Param name="evt" type="Event">The event object which describes the model's change.</Param></Parameters><Return></Return><Remarks>The specific object instance is notified when it potentially can be affected by the model's change.
      Here is the list of the propagated events:
      &lt;table class=&quot;VERT&quot;&gt;&lt;tr&gt;&lt;td class=&quot;H V&quot;&gt;&lt;q ref=&quot;core.gml:TransObject!onInsertElement&quot;&gt;onInsertElement&lt;/q&gt; &lt;/td&gt;&lt;td class=H&gt;&lt;q ref=&quot;core.gml:Port&quot;&gt;Port&lt;/q&gt;, &lt;q ref=&quot;core.gml:Connectable&quot;&gt;Connectable&lt;/q&gt;, &lt;q ref=&quot;core.gml:Link&quot;&gt;Link&lt;/q&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=V&gt;&lt;q ref=&quot;core.gml:TransObject!onRemoveElement&quot;&gt;onRemoveElement&lt;/q&gt; &lt;/td&gt;&lt;td&gt;&lt;q ref=&quot;core.gml:Port&quot;&gt;Port&lt;/q&gt;, &lt;q ref=&quot;core.gml:Connectable&quot;&gt;Connectable&lt;/q&gt;, &lt;q ref=&quot;core.gml:Link&quot;&gt;Link&lt;/q&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</Remarks></Method>
<Method name="onRemove" sortGroup="true" scope="public" id="core.gml:TransObject!onRemove" sort="35" group="II. Methods" seq="0014"><Summary>A callback method that is invoked when a child object is removed from this object.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;onRemove&lt;/b&gt;(&lt;i&gt;child&lt;/i&gt;, &lt;i&gt;trans&lt;/i&gt;) &amp;rarr; void"><Param name="child" type="gml:GmlObject" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The child object that was removed.</Param><Param name="trans" type="env:KitTransactions!TRANSACTION_OBJ" typeRef="&lt;q ref=&quot;core.env:KitTransactions!TRANSACTION_OBJ&quot;&gt;TRANSACTION_OBJ&lt;/q&gt;">The transaction context.</Param></Parameters><Return></Return><Remarks>&lt;ol&gt;&lt;li&gt;Use the &lt;code&gt;trans&lt;/code&gt; argument to determine the context under which this method was invoked. &lt;/li&gt;&lt;li&gt;This method can be invoked as a result of doing or redoing a removal transaction or as &lt;/li&gt;&lt;li&gt;a result of undoing an insertion transaction. &lt;/li&gt;&lt;li&gt;The method is invoked before any notification events are raised. &lt;/li&gt;&lt;li&gt;Override this method to create or update dependant model objects, as needed. &lt;/li&gt;&lt;/ol&gt;</Remarks></Method>
<Method name="onRemoveMe" sortGroup="true" scope="public" id="core.gml:TransObject!onRemoveMe" sort="35" group="II. Methods" seq="0015"><Summary>A callback method that is invoked when a this object is removed from its parent object.</Summary><Parameters signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;onRemoveMe&lt;/b&gt;(&lt;i&gt;parent&lt;/i&gt;, &lt;i&gt;trans&lt;/i&gt;) &amp;rarr; void"><Param name="parent" type="gml:GmlObject" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The parent object that this object was removed from.</Param><Param name="trans" type="env:KitTransactions!TRANSACTION_OBJ" typeRef="&lt;q ref=&quot;core.env:KitTransactions!TRANSACTION_OBJ&quot;&gt;TRANSACTION_OBJ&lt;/q&gt;">The transaction context.</Param></Parameters><Return></Return><Remarks>&lt;ol&gt;&lt;li&gt;This callback is always called after the &lt;q ref=&quot;core.gml:TransObject!onRemove&quot;&gt;onRemove&lt;/q&gt; callback was called for the parent. &lt;/li&gt;&lt;li&gt;Use the &lt;code&gt;trans&lt;/code&gt; argument to determine the context under which this method was invoked. &lt;/li&gt;&lt;li&gt;This method can be invoked as a result of doing or redoing a removal transaction or as a result of undoing an insertion transaction. &lt;/li&gt;&lt;li&gt;The method is invoked before any notification events are raised. &lt;/li&gt;&lt;li&gt;Override this method to create or update dependant model objects, as needed. &lt;/li&gt;&lt;/ol&gt;</Remarks></Method>
<Method name="removeElement" sortGroup="true" scope="public" id="core.gml:TransObject!removeElement" sort="35" group="II. Methods" seq="0016"><Summary>Removes a child element from this object.</Summary><Parameters label="Form 1" descr="" signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;removeElement&lt;/b&gt;(&lt;i&gt;child&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;) &amp;rarr; Boolean"><Param name="child" type="gml:Element" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The child element to remove.</Param><Param name="prop_name" type="String">The property name to remove the child element from. (Must be a property marked as 'strong').</Param></Parameters><Parameters label="Form 2" descr="" signature="method:: &lt;i&gt;obj&lt;/i&gt;.&lt;b&gt;removeElement&lt;/b&gt;(&lt;i&gt;id&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;) &amp;rarr; Boolean"><Param name="id" type="String">The Id of the child element to remove.</Param><Param name="prop_name" type="String">The property name to remove the child element from. (Must be a property marked as 'strong').</Param></Parameters><Return type="Boolean">Indicates whether the child element was successfully removed.</Return><Remarks>&lt;ol&gt;&lt;li&gt;The given child element must be contained in the &lt;code&gt;prop_name&lt;/code&gt; property of this object &lt;/li&gt;&lt;li&gt;This method is sealed and cannot be overridden on sub-classes. If needed, you can override the &lt;q ref=&quot;core.gml:TransObject!onRemove&quot;&gt;onRemove&lt;/q&gt; callback method to extend the removal operation. &lt;/li&gt;&lt;li&gt;This method always results in a single transaction, even if the removed child is a composite element. The composite element and its sub-elements implicitly belong to the same transaction, and do not contribute separate transaction steps. Similarly, notification events are raised only on the removed element, and not on any of its sub-elements. &lt;/li&gt;&lt;/ol&gt;</Remarks></Method>
<Event name="canCloneElement" sortGroup="true" scope="public" id="core.gml:TransObject!canCloneElement" sort="36" group="III. Events" seq="0017"><Summary>Queries whether a given element can be cloned. This event may be raised more than once on the same element in a clone
   transaction.</Summary><Parameters signature="event:: &lt;b&gt;canCloneElement&lt;/b&gt; &amp;rarr; {&lt;i&gt;object&lt;/i&gt;, &lt;i&gt;objectset&lt;/i&gt;, &lt;i&gt;cancelme&lt;/i&gt;, &lt;i&gt;cancelall&lt;/i&gt;}"><Param name="object" type="gml:GmlObject!" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The object to be cloned.</Param><Param name="objectset" type="gml:Element![id]" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;[id]">The collection of objects that are cloned in this transaction.</Param><Param name="cancelme" type="Boolean">Set this flag to &lt;code&gt;true&lt;/code&gt; to cancel the cloning of this element only, allowing the rest of the clone operation to continue.</Param><Param name="cancelall" type="Boolean">Set this flag to &lt;code&gt;true&lt;/code&gt; to cancel the entire cloning operation.</Param></Parameters></Event>
<Event name="canCopyForeignUnit" sortGroup="true" scope="public" id="core.gml:TransObject!canCopyForeignUnit" sort="36" group="III. Events" seq="0018"><Summary>Queries whether a given foreign unit can be copied to a given target.</Summary><Parameters signature="event:: &lt;b&gt;canCopyForeignUnit&lt;/b&gt; &amp;rarr; {&lt;i&gt;src&lt;/i&gt;, &lt;i&gt;target&lt;/i&gt;, &lt;i&gt;cancel&lt;/i&gt;}"><Param name="src" type="string">GML classname of the source foreign unit.</Param><Param name="target" type="string">GML classname of the target.</Param><Param name="cancel" type="Boolean">Set this flag to &lt;code&gt;true&lt;/code&gt; to cancel the copy of the src.</Param></Parameters></Event>
<Event name="canInsertElement" group="III. Events" sortGroup="true" scope="public" id="core.gml:TransObject!canInsertElement" sort="36" seq="0019"><Summary>Queries whether a child element can be inserted into a given object.</Summary><Parameters signature="event:: &lt;b&gt;canInsertElement&lt;/b&gt; &amp;rarr; {&lt;i&gt;object&lt;/i&gt;, &lt;i&gt;child&lt;/i&gt;, &lt;i&gt;unit&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;, &lt;i&gt;cancel&lt;/i&gt;}"><Param name="object" type="gml:GmlObject!" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The parent object.</Param><Param name="child" type="gml:Element!" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The child element to be inserted.</Param><Param name="unit" type="gml:Unit!" typeRef="&lt;q ref=&quot;core.gml:Unit&quot;&gt;Unit&lt;/q&gt;">The containing unit.</Param><Param name="prop_name" type="String">The name of the property into which this element should be inserted.</Param><Param name="cancel" type="Boolean">Set this flag to &lt;code&gt;true&lt;/code&gt; to cancel the child element insertion.</Param></Parameters></Event>
<Event name="canRemoveElement" sortGroup="true" scope="public" id="core.gml:TransObject!canRemoveElement" sort="36" group="III. Events" seq="0020"><Summary>Queries whether a child element can be removed from its parent object.</Summary><Parameters signature="event:: &lt;b&gt;canRemoveElement&lt;/b&gt; &amp;rarr; {&lt;i&gt;object&lt;/i&gt;, &lt;i&gt;child&lt;/i&gt;, &lt;i&gt;unit&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;, &lt;i&gt;cancel&lt;/i&gt;}"><Param name="object" type="gml:GmlObject!" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The parent object.</Param><Param name="child" type="gml:Element!" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The child element to be removed.</Param><Param name="unit" type="gml:Unit!" typeRef="&lt;q ref=&quot;core.gml:Unit&quot;&gt;Unit&lt;/q&gt;">The containing unit.</Param><Param name="prop_name" type="String">The name of the property from which this element should be removed.</Param><Param name="cancel" type="Boolean">Set this flag to &lt;code&gt;true&lt;/code&gt; to cancel the child element removal.</Param></Parameters></Event>
<Event name="onExternalEditorClose" sortGroup="true" scope="public" id="core.gml:TransObject!onExternalEditorClose" sort="36" group="III. Events" seq="0021"><Summary>Fires when an external editor is closed.</Summary><Parameters signature="event:: &lt;b&gt;onExternalEditorClose&lt;/b&gt; &amp;rarr; {&lt;i&gt;object&lt;/i&gt;, &lt;i&gt;editorId&lt;/i&gt;, &lt;i&gt;returnedValue&lt;/i&gt;}"><Param name="object" type="gml:Element" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The component which was edited using the editor.</Param><Param name="editorId" type="string">The id of the editor which was closed.</Param><Param name="returnedValue" type="object">The value of the returnValue property set by the editor's window.</Param></Parameters></Event>
<Event name="onInsertElement" sortGroup="true" scope="public" id="core.gml:TransObject!onInsertElement" sort="36" group="III. Events" seq="0022"><Summary>Notifies that a child element has been inserted.</Summary><Parameters signature="event:: &lt;b&gt;onInsertElement&lt;/b&gt; &amp;rarr; {&lt;i&gt;object&lt;/i&gt;, &lt;i&gt;child&lt;/i&gt;, &lt;i&gt;unit&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;}"><Param name="object" type="gml:GmlObject!" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The parent object.</Param><Param name="child" type="gml:Element!" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The child element that was inserted.</Param><Param name="unit" type="gml:Unit!" typeRef="&lt;q ref=&quot;core.gml:Unit&quot;&gt;Unit&lt;/q&gt;">The containing unit.</Param><Param name="prop_name" type="String">The name of the property to which this element was inserted.</Param></Parameters></Event>
<Event name="onRemoveElement" sortGroup="true" scope="public" id="core.gml:TransObject!onRemoveElement" sort="36" group="III. Events" seq="0023"><Summary>Notifies that a child element has been removed.</Summary><Parameters signature="event:: &lt;b&gt;onRemoveElement&lt;/b&gt; &amp;rarr; {&lt;i&gt;object&lt;/i&gt;, &lt;i&gt;child&lt;/i&gt;, &lt;i&gt;unit&lt;/i&gt;, &lt;i&gt;prop_name&lt;/i&gt;}"><Param name="object" type="gml:GmlObject!" typeRef="&lt;q ref=&quot;core.gml:GmlObject&quot;&gt;GmlObject&lt;/q&gt;">The parent object.</Param><Param name="child" type="gml:Element!" typeRef="&lt;q ref=&quot;core.gml:Element&quot;&gt;Element&lt;/q&gt;">The child element that was removed.</Param><Param name="unit" type="gml:Unit!" typeRef="&lt;q ref=&quot;core.gml:Unit&quot;&gt;Unit&lt;/q&gt;">The containing unit.</Param><Param name="prop_name" type="String">The name of the property from which this element was removed.</Param></Parameters></Event>
</Topics>
</Class>