2/11/2010 2:28:44 AM
Title:
How to open saveas dialog box
on menu click event how to open saveas dialogbox.
Help Please
2/11/2010 10:33:50 AM
you can open save dialog box in AIR using the below code on click event of menu
<mx:Script>
<![CDATA[
private var MyFile:FileReference= new FileReference;
function save(): void {
MyFile.save("save this text");
}
]]>
</mx:Script>
<mx:Button x="120" y="147" label="Button" click="save()"/>
rani
Points: 310
Posts:10
2/11/2010 10:38:58 PM
I m writing the following code it is executing but giving error also
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication creationComplete="showModal();" xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="400" height="373">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.ItemClickEvent;
import mx.controls.HRule;
import flash.events.MouseEvent;
import mx.events.MenuEvent;
import mx.controls.menuClasses.MenuBarItem;
import mx.controls.menuClasses.MenuBarItem;
import mx.collections.XMLListCollection;
public var file:FileReference=new FileReference();
public var menuDataXML:XML = <items>
<item label="File" name="File" >
<item label="Read File..." name="readfile"/>
<item label="Include File..." name="includefile" />
<item label="Save" name="save" />
<item label="Save As..." name="saveas"/>
</item>
<item label="Edit" name="Edit" >
<item label="Undo" name="Undo"/>
<item label="Cut" name="Cut"/>
<item label="Copy" type="radio" name="Copy"/>
<item label="Paste" name="Paste"/>
<item label="Clear" name="Clear"/>
<item label="Select All" name="Select All"/>
</item>
</items>;
[Bindable] private var menuData:XMLListCollection;
private function showModal():void
{menuData = new XMLListCollection(menuDataXML.*);
menuBar.dataProvider=menuData;
}
private function menuChange(event:MenuEvent):void
{
var itemname:String=event.item.@name;
if(itemname=="readfile")
{
doloadclick(event);
}
else if(itemname=="includefile")
{
doloadclick(event);
}
else if(itemname=="save")
{
dosaveclick(event);
}
else(itemname=="saveas")
{
dosaveclick(event);
}
}
public function doloadclick(event:Event):void
{
file.addEventListener(Event.SELECT,dofileselect);
file.addEventListener(Event.COMPLETE,dofilecomplete);
file.browse([new FileFilter("textfile","*.txt")]);
}
public function dofileselect(event:Event):void
{
file.load();
}
public function dosaveclick(event:Event):void
{
var data:ByteArray=new ByteArray();
data.writeMultiByte(texteditor.text,"utf-8");
file.save(data,"myfile.txt");
}
public function dofilecomplete(event:Event):void
{
texteditor.text=file.data.readMultiByte(file.data.bytesAvailable,"utf-8");
file.removeEventListener(Event.COMPLETE,dofileselect);
file.removeEventListener(Event.SELECT,dofileselect);
}
]]>
</mx:Script>
<mx:MenuBar id="menuBar"
labelField="@label"
itemClick="menuChange(event);"
fontSize="13" width="100%" height="25" x="0" y="0"/>
<mx:TextArea x="0" y="23" id="texteditor" width="380" height="310"/>
</mx:TitleWindow>
</mx:WindowedApplication>
How to correct it .help please
rani
Points: 310
Posts:10
2/11/2010 10:39:06 PM
I m writing the following code it is executing but giving error also
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication creationComplete="showModal();" xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="400" height="373">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.ItemClickEvent;
import mx.controls.HRule;
import flash.events.MouseEvent;
import mx.events.MenuEvent;
import mx.controls.menuClasses.MenuBarItem;
import mx.controls.menuClasses.MenuBarItem;
import mx.collections.XMLListCollection;
public var file:FileReference=new FileReference();
public var menuDataXML:XML = <items>
<item label="File" name="File" >
<item label="Read File..." name="readfile"/>
<item label="Include File..." name="includefile" />
<item label="Save" name="save" />
<item label="Save As..." name="saveas"/>
</item>
<item label="Edit" name="Edit" >
<item label="Undo" name="Undo"/>
<item label="Cut" name="Cut"/>
<item label="Copy" type="radio" name="Copy"/>
<item label="Paste" name="Paste"/>
<item label="Clear" name="Clear"/>
<item label="Select All" name="Select All"/>
</item>
</items>;
[Bindable] private var menuData:XMLListCollection;
private function showModal():void
{menuData = new XMLListCollection(menuDataXML.*);
menuBar.dataProvider=menuData;
}
private function menuChange(event:MenuEvent):void
{
var itemname:String=event.item.@name;
if(itemname=="readfile")
{
doloadclick(event);
}
else if(itemname=="includefile")
{
doloadclick(event);
}
else if(itemname=="save")
{
dosaveclick(event);
}
else(itemname=="saveas")
{
dosaveclick(event);
}
}
public function doloadclick(event:Event):void
{
file.addEventListener(Event.SELECT,dofileselect);
file.addEventListener(Event.COMPLETE,dofilecomplete);
file.browse([new FileFilter("textfile","*.txt")]);
}
public function dofileselect(event:Event):void
{
file.load();
}
public function dosaveclick(event:Event):void
{
var data:ByteArray=new ByteArray();
data.writeMultiByte(texteditor.text,"utf-8");
file.save(data,"myfile.txt");
}
public function dofilecomplete(event:Event):void
{
texteditor.text=file.data.readMultiByte(file.data.bytesAvailable,"utf-8");
file.removeEventListener(Event.COMPLETE,dofileselect);
file.removeEventListener(Event.SELECT,dofileselect);
}
]]>
</mx:Script>
<mx:MenuBar id="menuBar"
labelField="@label"
itemClick="menuChange(event);"
fontSize="13" width="100%" height="25" x="0" y="0"/>
<mx:TextArea x="0" y="23" id="texteditor" width="380" height="310"/>
</mx:TitleWindow>
</mx:WindowedApplication>
How to correct it .help please
2/11/2010 11:17:49 PM
I tried this and it worked but can any explain what was the error in the previous one
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication creationComplete="showModal();" xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="400" height="373">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.ItemClickEvent;
import mx.controls.HRule;
import flash.events.MouseEvent;
import mx.events.MenuEvent;
import mx.controls.menuClasses.MenuBarItem;
import mx.controls.menuClasses.MenuBarItem;
import mx.collections.XMLListCollection;
public var file:FileReference=new FileReference();
public var menuDataXML:XML = <items>
<item label="File" name="File" >
<item label="Read File..." name="readfile"/>
<item label="Include File..." name="includefile" />
<item label="Save" name="save" />
<item label="Save As..." name="saveas"/>
</item>
<item label="Edit" name="Edit" >
<item label="Undo" name="Undo"/>
<item label="Cut" name="Cut"/>
<item label="Copy" type="radio" name="Copy"/>
<item label="Paste" name="Paste"/>
<item label="Clear" name="Clear"/>
<item label="Select All" name="Select All"/>
</item>
</items>;
[Bindable] private var menuData:XMLListCollection;
private function showModal():void
{ menuData = new XMLListCollection(menuDataXML.*);
menuBar.dataProvider=menuData;
}
private function menuChange(event:MenuEvent):void
{
var itemname:String=event.item.@name;
if(itemname=="readfile")
{ file.addEventListener(Event.SELECT,dofileselect);
file.addEventListener(Event.COMPLETE,dofilecomplete);
file.browse([new FileFilter("textfile","*.txt")]);
}
else if(itemname=="includefile")
{ file.addEventListener(Event.SELECT,dofileselect);
file.addEventListener(Event.COMPLETE,dofilecomplete);
file.browse([new FileFilter("textfile","*.txt")]);
}
else if(itemname=="save")
{ var data:ByteArray=new ByteArray();
data.writeMultiByte(texteditor.text,"utf-8");
file.save(data,"myfile.txt");
}
else
{ var data1:ByteArray=new ByteArray();
data1.writeMultiByte(texteditor.text,"utf-8");
file.save(data,"myfile.txt");
}
}
public function dofileselect(event:Event):void
{
file.load();
}
public function dofilecomplete(event:Event):void
{
texteditor.text=file.data.readMultiByte(file.data.bytesAvailable,"utf-8");
file.removeEventListener(Event.COMPLETE,dofileselect);
file.removeEventListener(Event.SELECT,dofileselect);
}
]]>
</mx:Script>
<mx:MenuBar id="menuBar"
labelField="@label"
itemClick="menuChange(event);"
fontSize="13" width="100%" height="25" x="0" y="0"/>
<mx:TextArea x="0" y="23" id="texteditor" width="380" height="310"/>
</mx:TitleWindow>
</mx:WindowedApplication>