Hi Mark, Look, for example, the contents of an element of the Undo Array. The Undo Array contains a xml description of all controls placed in a single card:
The Unique Key for each control is the AltID of the control, that is set at the moment of its creation. So, always there is only one control with such AltID. You could ask: Why not use the ID of the control that always would be unique? Because, when you delete a control, its ID is gone too and if we need to recreate the control in the card, it would be necessary to create new controls that will have a new ID. The new option that allows to create a control with a previous ID is only available in more recent versions of Livecode, and I want that the stack works fine in all previous versions of this platform. If it is run in early versions, then antialiased graphics and gradients would not be available, but the core and basic functionality will work fine. The content of this unique array element would be like this: (XML from Geoff Canyon stack: mcRipper) ---------------------------------------------------------- <graphic> <properties> <traversalOn>false</traversalOn> <ink>srcCopy</ink> <threeD>true</threeD> <startAngle>0</startAngle> <blendLevel>0</blendLevel> <rect>58,102,146,240</rect> <angle>0</angle> <filled>true</filled> <patterns></patterns> <showName>false</showName> <colors></colors> <arcAngle>360</arcAngle> <dontResize>false</dontResize> <startArrow>false</startArrow> <editMode>none</editMode> <points></points> <id>1019</id> <markerDrawn>false</markerDrawn> <arrowSize>3</arrowSize> <altId>0</altId> <antiAliased>true</antiAliased> <markerFilled>false</markerFilled> <fillGradient></fillGradient> <markerLineSize>1</markerLineSize> <textStyle></textStyle> <fillRule>none</fillRule> <lockLoc>false</lockLoc> <roundRadius>15</roundRadius> <label></label> <endArrow>false</endArrow> <markerPoints></markerPoints> <dashes></dashes> <behavior></behavior> <name></name> <toolTip></toolTip> <lineSize>0</lineSize> <polySides>4</polySides> <capStyle>round</capStyle> <layer>2</layer> <visible>true</visible> <cantSelect>false</cantSelect> <borderWidth>2</borderWidth> <margins>4</margins> <roundEnds>true</roundEnds> <opaque>true</opaque> <showBorder>false</showBorder> <miterLimit>10</miterLimit> <textSize></textSize> <disabled>false</disabled> <joinStyle>round</joinStyle> <textFont></textFont> <strokeGradient></strokeGradient> <showFocusBorder>true</showFocusBorder> </properties> <customPropertySet name="cREVGeneral"> <revUniqueID>1343811387021</revUniqueID> </customPropertySet> <customPropertySet name=""> <cpoints></cpoints> <bpoints></bpoints> </customPropertySet> </graphic> ------------------------------------------------------ In this context, Undo would restore a control to its previous properties or delete it (until Redo, put it back). Al -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/ANN-penTool-0-3-2h-with-scalable-gradients-tp4653241p4653433.html Sent from the Revolution - User mailing list archive at Nabble.com. _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode