Basically i want to create XMLDesigner kind of thing in Flex, using which user can add/edit components and properties of view/dashboard. i am storing view structure in a xml file. i parsed that file at runtime and display view. How to convert an object (having properties and sub-objects) to xml node (having attributes and elements) and add that xml to the existing xml file. so that next time when i parsed xml file i'll get that new component in my view/dashboard.
for e.g, object structure of component in xml file :
<view id="productView" label="Products">
<panel id="chartPanel" type="CHART" ChartType="Pie2D" title="Productwise Sales" x="215" y="80" width="425" height="240" showValues="0" >
</panel>
</view>
Thanks in Advance.
To create a new XML Schema file In Visual Studio, open the File menu and select New > File. Or, use the Ctrl+N keyboard shortcut. In the New File dialog box, select XML Schema and then select Open. A new file is created.
Use an XML (de)serialization library.
There are many out there but one thing that I have used and found very stable is FlexxB. It has got a plethora of functions and I swear by it!
Flexxb is annotation based and very easy to use once you get the hang of it.
Here is a sample copied from the main web site.
[XmlClass(alias="MOck2Replacement", idField="id")]
public class Mock3
{
[XmlAttribute]
public var id : Number = 3;
[XmlAttribute]
public var attribute : Boolean;
[XmlElement(alias="objectVersion")]
public var version : Number;
public function Mock3()
{
super();
}
}
You decorate each of your variables with an annotation and tell what kind of XML type would it be.
And you create the object
var target : Mock3 = new Mock3();
target.attribute = true;
target.id = 5;
target.version = 33;
And you do
FlexXBEngine.instance.serialize(target)
And the result would be
<MOck2Replacement attribute="true" id="5">
<objectVersion>
33
</objectVersion>
</MOck2Replacement>
And the other AWESOME thing about is that you don't have to have the source of an object to decorate it.
There is an API that handle that. Using this AP, I successfully de(serialized) SolidColor
and LinearGradient
where I did not have the source to decorate it.
Checkout the General Description and Samples. And it's a one SWC install :)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With