http://fdt.powerflasher.com/w/index.php?title=Special:Contributions&feed=atom&limit=50&target=AklementFDT Documentation - User contributions [en]2024-03-19T04:47:15ZFrom FDT DocumentationMediaWiki 1.16.0http://fdt.powerflasher.com/docs/ApparatApparat2012-06-02T12:15:40Z<p>Aklement: /* Source Files */</p>
<hr />
<div>'''[[File:Apparat_1.png|center]]<br />
<br />
With FDT 4.4, we've began to support [http://fdt.powerflasher.com/docs/File:Apparat_1.png Apparat]. Apparat is a powerful framework to optimize ABC, SWC and SWF files. It's open source and looks to push the boundaries of ways for Flash developers to enhance their workflows and applications.<br />
<br />
= <center>Source Files</center> =<br />
Demo files are offline until they are updated.<br />
<br />
=<center>Adding Apparat To A Project</center>=<br />
When you want a project to enable Apparat, you'll have to enable it. Once you do that, all existing and new launchers associated with that project will automatically have Apparat integrated into the build process.<br />
<br />
[[File:Apparat_6.png|center]]<br />
To begin, right click on a project and select Properties.<br />
<br />
[[File:Apparat_7.png|center]]<br />
Next, find Apparat within the project's Properties panel and click 'Enable Apparat for this project'. This will enable Apparat for the existing launchers and any new ones created.<br />
<br />
==<center>Configuring Apparat</center>==<br />
[[File:Apparat_11.png|center|600px]]<br />
Adding and removing Apparat's features is simple, as can be seen in the above screen shot. By default, FDT will pass in your compiled SWF to Apparat for processing. Since no specific output is defined, Apparat will overwrite the supplied SWF with the optimized one.<br />
<br />
This GUI also enables you to add additional arguments. Learn more about Using Apparat's Arguments with FDT.<br />
<br />
=<center>Using Reducer</center>=<br />
<br />
Apparat's reducer is a powerful feature that is used to compress PNGs and bytecode. From Apparat's [http://apparat.googlecode.com/hg/README README]:<br />
<br />
''You can use reducer for advanced compression of your SWF files. Reducer tries to compress embedded PNG graphics. You can leverage this option also with the ActionScript compiler by specifing "[Embed(src=..., compress=true)]". However to speedup compilation you can ignore the compress parameter and let Reducer do the job since it makes use of multicore architectures.''<br />
<br />
== <center>Simple Reducer Example</center> ==<br />
<br />
[[File:Apparat_5.png|center]]<br />
If you're using the provided Apparat Example Project, running the 'No Apparat' launch configuration.<br />
<br />
[[File:Apparat_8.png|center]]<br />
<br />
FDT will then create a simple .SWF that is 740 bytes.<br />
<br />
[[File:Apparat_9.png|center]]<br />
<br />
Next, choose and run the 'Reducer Demo' configuration.<br />
<br />
[[File:Apparat_10.png|center]] <br />
<br />
FDT will then create the .SWF that is 740 bytes, then use Apparat's Reducer to shrink it down by 37% to 279 bytes.<br />
<br />
== <center>PNG Compression With Reducer</center> ==<br />
[[File:Apparat_12.png|center|600px]]<br />
Opening up the Apparat panel within your project's Properties View, add an additional argument to Reducer 'q=.5'. This will adjust Apparat's JPEG compression level (see Apparat's [http://apparat.googlecode.com/hg/README README]). <br />
<br />
*''Remember, we only need to pass the argument as 'q=.5' instead of the command line version '-q .5' ''<br />
<br />
Back in Editor view, open the file ''PNGReducerDemo.as'' and notice that this is embedding an image.<br />
<br />
[[File:Apparat_14.png|center]]<br />
<br />
<br />
Lastly, execute the 'PNG Reducer Demo' launcher:<br />
<br />
[[File:Apparat_15.png|center]]<br />
<br />
After running, you'll be able to see the compression level of Apparat:<br />
<br />
[[File:Apparat_16.png|center]]<br />
<br />
== <center>Using With Reducer On Other Files</center> ==<br />
<br />
Let's add an additional .SWF to our launcher for Apparat to optimize. We'll learn how to:<br />
<br />
* Add more Apparat commands<br />
* Use arguments with Apparat<br />
<br />
The example files are included in the demo, but you'll have to add the commands to Apparat yourself.<br />
<br />
Being by opening your project's Apparat configuration and following these steps:<br />
<br />
[[File:Apparat_23.png|center]]<br />
<br />
Here are the arguments being added to apparat:<br />
<br />
<syntaxhighlight lang="bash"><br />
i=${project}/misc/library.swf o=${project}/bin/library.swf<br />
</syntaxhighlight> <br />
<br />
<br />
<br />
''Learn more about using Apparat Arguments with FDT below.''<br />
<br />
Now when these launchers are executed, Apparat will execute the reducer not only on the .SWF we just created, but also on another .SWF as well. It will also save the reduced .SWF into a different directory.<br />
<br />
=<center>Using Stripper</center>=<br />
From Apparat's README:<br />
<br />
''This tool removes all debug information from a SWF file. It is a type-safe removal keeping side-effects... Stripper removes also all debug related bytecode.''<br />
<br />
Using Apparat's Stripper with FDT is a great way to easily remove debug info, such as trace statements, from any .SWF.<br />
<br />
[[File:Apparat_17.png|center]]<br />
<br />
The above example shows a simple ''trace'' statement in my code. In the Apparat properties panel, make sure "Stripper" has been enabled:<br />
<br />
[[File:Apparat_18.png|center]]<br />
<br />
Then run the ''StripperDemo'' configuration from the ''Debug'' menu:<br />
<br />
[[File:Apparat_19.png|center]]<br />
<br />
and take note of the console.<br />
<br />
[[File:Apparat_21.png|center]]<br />
<br />
Even though FDT has loaded the SWF and initiated a Debug session, it is unable to connect to the SWF. This is because Apparat has removed the .SWF's debug information.<br />
<br />
=<center>DUMP</center>=<br />
Apparat's Dump can be used to generate detailed information about a SWF. This includes UML graph information (via DOT file) and ABC information.<br />
<br />
[[File:Dump.png]]<br />
<br />
In this example, Dump is implemented with these parameters:<br />
<br />
<syntaxhighlight lang="bash"><br />
o=${swfLocation}/dump abc swf uml<br />
</syntaxhighlight><br />
<br />
=<center>TDSI</center>=<br />
The TDSI tool performs various bytecode transformations. Besides specific transformations the application will always try to do certain peephole optimizations. Most of them will fix problems with older ActionScript compiler versions.<br />
<br />
[[File:Tdsi.png]]<br />
Learn about using TDSI and it's arguments [http://code.google.com/p/apparat/source/browse/README here]<br />
<br />
[http://blog.joa-ebert.com/2010/05/26/new-apparat-example/ Check out this TDSI example from Joa]<br />
<br />
=<center>Using Apparat's Arguments with FDT</center>=<br />
The best place to learn about Apparat's arguments is via Apparat's [http://code.google.com/p/apparat/source/browse/README README] that is hosted on Google Code.<br />
<br />
Currently, you have to add arguments by hand and when you do, you'll need to omit the dash '-' before each arguments.<br />
<br />
If you were to execute Apparat from the command line you would write arguments like this:<br />
<br />
<syntaxhighlight lang="bash"><br />
reducer -o /Users/OSX/_dev/runtime-New_configuration/appart_test/bin/tdsi.swf <br />
-i /Users/OSX/_dev/runtime-New_configuration/appart_test/bin/tdsi.swf <br />
</syntaxhighlight> <br />
<br />
<br />
With FDT, you'll need to omit the dash '-' and you can use additional variables such as ''${project}'' that will automatically add in the location of your project directory. <br />
<br />
<syntaxhighlight lang="bash"><br />
i=${project}/misc/library.swf o=${project}/bin/library.swf<br />
</syntaxhighlight> <br />
<br />
<br />
==Additional Arguments==<br />
FDT provides additional variables for you to use. The are<br />
<br />
#'''${project}''': This is the root directory of your project.<br />
#'''${outputSwf}''': The name of the output SWF that is defined in the launcher.<br />
#'''${swfLocation}''': The location of the output SWF that is being define in the launcher. (this is usually the bin folder)<br />
<br />
<br />
=<center>Using A Custom Installation Of Apparat & Scala</center>=<br />
<br />
[[File:Apparat_4.png|center|600px]]<br />
<br />
For convenience, FDT ships with both Apparat and Scala. If you would rather use your own installation of Apparat & Scala this can be done via FDT's Apparat Preferences.<br />
<br />
==<center>Download Apparat</center>==<br />
<br />
[[File:Apparat_2.png|center]]<br />
<br />
If you choose to not use FDT's built in Apparat installation, you can install Apparat yourself:<br />
<br />
Visit [http://code.google.com/p/apparat/downloads/list Apparat's Download Page] for the latest version of Apparat or follow this [http://apparat.googlecode.com/files/apparat-1.0-RC9-bin.zip download link]<br />
After downloading them, expand the zip file and place them somewhere handy - you'll be linking to these sources shortly.<br />
<br />
[[File:Apparat_3.png|center]]<br />
<br />
==<center>Download Scala</center>==<br />
<br />
[[File:Scala_1.png|center]]<br />
<br />
If you choose to not use FDT's built in Scala installation, you can install Scala yourself:<br />
<br />
Next just like when Apparat was downloaded, you'll need to download Scala as well. Scala is a general purpose programming language with some powerful features. Apparat is written using Scala so you'll need both. <br />
<br />
Windows users can download it [http://www.scala-lang.org/downloads/distrib/files/scala-2.8.1.final.zip here].<br />
<br />
OSX and Unix users can download it [http://www.scala-lang.org/downloads/distrib/files/scala-2.8.1.final.tgz here].<br />
<br />
After downloading the archive, expand it.<br />
<br />
[[File:Scala_2.png|center]]<br />
(If you choose to use FDT's built in Scala & Apparat, you can skip this)<br />
<br />
Next thing, you'll need to tell FDT where to find Apparat and Scala. This is done via 'Preferences > FDT > Apparat' preferences view. Simply choose the root directory of each.</div>Aklementhttp://fdt.powerflasher.com/docs/Project_TemplatesProject Templates2012-06-02T12:15:05Z<p>Aklement: /* Source Files */</p>
<hr />
<div>Project templates allow developers to:<br />
<br />
*Create a custom GUI per template to adjust the project setup.<br />
*Variables that can placed into any text file and edited via a GUI, then replaced after the template is generated.<br />
*Expressions, such as conditionals and concatenation, that allow more flexibility. <br />
*The ability to predefine source code libraries that are located outside the workspace (linked resources).<br />
*An Ant script that can be executed upon project creation.<br />
<br />
A simple example of template consolidation is how the default templates now include a checkbox for unit testing, as opposed to creating two separate templates - one with unit testing and one without.<br />
<br />
[[File:Tempaltes.png|center]]<br />
FDT developers can create sophisticated project setups that can be customized just before generation.<br />
<br />
= <center>Source Files</center> =<br />
Source files are offline until demo is updated. Stay tuned.<br />
<br />
= <center>Video</center> =<br />
<center>{{#widget:Vimeo|id=19808603|height=262|width=450}}</center><br />
<br />
<br />
<center>{{#widget:Vimeo|id=19808895|height=262|width=450}}</center><br />
<br />
<br />
<center>{{#widget:Vimeo|id=19809286|height=262|width=450}}</center><br />
<br />
<br />
<center>{{#widget:Vimeo|id=19838128|height=262|width=450}}</center><br />
<br />
=The Setup=<br />
==Where They Are Located==<br />
FDT's project templates are located in a folder on your system. <br />
<br />
On OSX the path is:<br />
(Your User Name) > Library > Application Support > FDT<br />
<br />
For windows:<br />
C:\Users\{Username}\AppData\Roaming\FDT<br />
<br />
==Inside the FDT Folder==<br />
[[File:Inside.png|center]]<br />
<br />
<br />
<br />
==='''projectTemplateBackup'''===<br />
This folder is where templates that were created before version 4.2 will be moved to when FDT is upgraded from FDT 4.1 to 4.2 <br />
<br />
<br />
<br />
==='''projectTemplates'''===<br />
This folder holds your project templates. When a folder is placed in here, it will appear in your new project wizard. FDT ships with 2 folders, ''Desktop'' and ''Web''; however, you can create as many as you like.<br />
<br />
[[File:Groups.png|center]]<br />
In the above example the folder 'Another Group' was created and then appears in the New Project Wizard.<br />
<br />
Other files & folders:<br />
<br />
*Desktop - Default folder for templates associated with AIR.<br />
*Web - Default folder for templates associated with standard Flash deployment.<br />
*order.xml - The order which the templates are shown within the New Flash Project wizard.<br />
*sdks.xml - A file that holds any custom SDK setups that both ship with FDT and created by users.<br />
*haxeExtension.xsd - An XML schema for haxe templates.<br />
*projectTemplate.xsd - An XML schema for project templates.<br />
<br />
<br />
<br />
==='''projectTypes'''===<br />
This folder contains XML files that determine a ''type'' for a project. Each ''type'' allows you to preset properties such as compatible SDKs, selected .SWCs of an SDK and compiler arguments. You can create your own project types.<br />
<br />
<br />
==Inside the Project Folder==<br />
[[File:Inside_a_project.png|center]]<br />
A project template has three parts:<br />
<br />
*A ''project'' folder - this is where you place files that can be processed (if they have variables in them) and / or included upon project creation.<br />
*description.xml - this is where you define how your template is setup, processed and the UI for it.<br />
*icon.gif - An icon to help identify the template.<br />
<br />
=Simple Project Template Tutorial=<br />
Follow this walkthrough to create a new template, based on a copy from an existing one, and add a combobox that will allow you to set the base class for your ''Main'' class.<br />
<br />
==Step One==<br />
Within the ''Web'' folder, make a copy of the ''AS3'' template and rename it to ''MyTemplate''.<br />
[[File:Step1.png|center]]<br />
==Step Two==<br />
Open ''description.xml'' and change the name to the name of your template - in this case from ''AS3'' to ''MyTemplate''<br />
[[File:Step2.png|center]]<br />
==Step Three==<br />
Within the ''Project Setup'' element, add this code:<br />
<br />
<syntaxhighlight lang="xml"><br />
<variable name="extends" label="Main Class Extends:"<br />
default="Sprite" type="enum('Sprite','MovieClip')" /> <br />
</syntaxhighlight><br />
<br />
<br />
<br />
<br />
Within the ''Project Setup'' group:<br />
[[File:Step3.png|center]]<br />
<br />
The above code will:<br />
* Create a variable named '${extends}'<br />
* Within the New Project Wizard UI, give it a label of 'Main Class Extends:'<br />
* Set the Default value to ''Sprite''<br />
* Create a combobox with the values ''Sprite'' and ''MovieClip''<br />
<br />
The UI will now look like this:<br />
<br />
[[File:Step4.png|center]]<br />
<br />
==Step Four==<br />
Now we need to make sure the variable is processed correctly and is placed into our ActionScript file. Locate the ''contentCreation'' element in your ''description.xml'' and make sure that our ''Main.as'' is targeted and ''process'' is set to true.<br />
<br />
[[File:Step5.png|center]]<br />
<br />
In this case the file is already being processed, but it's good to double check.<br />
<br />
Next, open the ''Main.as'' in the ''project > as'' folder:<br />
<br />
[[File:Step6.png|center]]<br />
<br />
and add the variable ''${extends}'' to ''Main.as''<br />
<br />
[[File:Step7.png|center]]<br />
Now when the project is created, it will replace ''${extends}'' in your ActionScript file with whatever the value of ''extends''.<br />
<br />
[[File:Step8.png|center]]<br />
<br />
=Advanced Template Tutorial=<br />
The Simple Project Template Tutorial showed how easily it is to add variables to your template and have those variables change your ActionScript code. In this next example, we'll show how you can use some of the advanced concepts to provide even more sophisticated template setups. We'll create an option to add metadata 'themes' to your ActionScript class and an option to include a .fla.<br />
<br />
==Step One==<br />
Make a duplicate of the ''AS3'' template and rename it to ''Metadata AS3'' like in steps one and two in the ''Simple Project Template Tutorial''.<br />
[[File:Part1.png|center]]<br />
<br />
==Step Two==<br />
Create the UI for a checkbox and a combobox.<br />
<br />
<syntaxhighlight lang="xml"><br />
<group label="Metadata"><br />
<variable name="addMetaData" label="Add Metadata" <br />
default="true" type="boolean" /><br />
<variable name="metaTheme" label="Size"<br />
default="Leaderboard" <br />
type="enum('Leaderboard','Full Banner','Half Banner','Full Site')" /> <br />
</group><br />
</syntaxhighlight><br />
<br />
[[File:Part2.png|center]]<br />
<br />
==Step Three==<br />
Create the expressions, within the expressions element, to help generate the metadata tag depending on what values we choose via the UI - whether to add metadata or not and the metadata theme. There are a few expressions to make:<br />
<br />
* Three maps (hash tables / hash maps) to hold values which will change depending on the theme we choose.<br />
* One expression that will concatenate our values together to create the metadata string<br />
* One expression that will set the metadata string as blank if the users turns off metadata<br />
* A description expression that will update the description text box within the New Project Wizard UI<br />
<br />
Maps:<br />
<syntaxhighlight lang="xml"><br />
<map name="bannerWidth" > <br />
<entry key="Leaderboard" value="'728'"/><br />
<entry key="Full Banner" value="'468'"/><br />
<entry key="Half Banner" value="'234'"/><br />
<entry key="Full Site" value="'800'"/><br />
</map><br />
<map name="bannerHeight" > <br />
<entry key="Leaderboard" value="'90'"/><br />
<entry key="Full Banner" value="'60'"/><br />
<entry key="Half Banner" value="'60'"/><br />
<entry key="Full Site" value="'600'"/><br />
</map><br />
<map name="bannerFPS" > <br />
<entry key="Leaderboard" value="'22'"/><br />
<entry key="Full Banner" value="'22'"/><br />
<entry key="Half Banner" value="'22'"/><br />
<entry key="Full Site" value="'60'"/><br />
</map><br />
</syntaxhighlight><br />
<br />
Metadata concatenation:<br />
<syntaxhighlight lang="xml"><br />
<expression name="metaDataExp" <br />
value="concat('[SWF(backgroundColor=&quot;',0xFFFFFF,'&quot;, <br />
frameRate=&quot;',bannerFPS(${metaTheme}),'&quot;, <br />
width=&quot;',<br />
bannerWidth(${metaTheme}),'&quot;, height=&quot;',<br />
bannerHeight(${metaTheme}),'&quot;)]')" /><br />
</syntaxhighlight><br />
<br />
Setting the metadata variable to blank if the users disables metadata:<br />
<syntaxhighlight lang="xml"><br />
<expression name="metaData" value="if(${addMetaData},${metaDataExp},'')" /><br />
</syntaxhighlight><br />
<br />
An expression that will update the description UI:<br />
<syntaxhighlight lang="xml"><br />
<expression name="metaDataDesc"<br />
value="if(${addMetaData},(concat('Metadata: ',${metaDataExp})),'')"/><br />
</syntaxhighlight><br />
<br />
==Step Four==<br />
Then we'll add the description variable to the ''description'' element:<br />
<br />
<syntaxhighlight lang="xml"><br />
<description>This template will create a project named '${projectName}' <br />
which contains only the basic libraries to develop and compile a pure AS3 project.<br />
${newline}${htmlDesc}${newline}${metaDataDesc}</description><br />
</syntaxhighlight><br />
<br />
<br />
[[File:Part4.png|center]]<br />
<br />
==Step Five==<br />
To make sure this works, double check that the target file is listed within the ''contentCreation'' element:<br />
<br />
[[File:Part5.png|center]]<br />
<br />
Now edit the ActionScript file to add the metadata variable ''${metaDataExp}''<br />
<br />
[[File:Part6.png|center]]<br />
<br />
==Step Six==<br />
The last part will be to add the options for a .fla. Add a UI button for an option for a .fla. Let's put it in our ''Project Setup'' group.<br />
<br />
<syntaxhighlight lang="xml"><br />
<variable name="addFla" label="Add .fla"<br />
default="true" type="boolean" /><br />
</syntaxhighlight><br />
<br />
[[File:Part7.png|center]]<br />
<br />
==Step Seven==<br />
Last, we'll add some logic to the ''contentCreation'' element that will determine to include the .fla in our project:<br />
<br />
[[File:Part8.png|center]]<br />
<br />
and then add the .fla to our ''project'' folder<br />
<br />
[[File:Part9.png|center]]<br />
<br />
<br />
=Project Template Syntax=<br />
Here you can find the full XML syntax reference for the [http://fdt.powerflasher.com/docs/Project_Template_Syntax Project Templates syntax]</div>Aklementhttp://fdt.powerflasher.com/docs/Font_Library_CreatorFont Library Creator2012-06-02T12:14:16Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:Font_intro.png|center]]<br />
Fonts can be a real pain, especially when working with an application that uses multiple languages or requires localization. Once you do decide the best way to include fonts with your application, you may want to have control over which glyphs or characters are included. Simply including ALL your fonts' glyphs and characters will unnecessarily bloat your application. The control over how many characters are embeded is an especially handy feature of the Font Creator. <br />
<br />
For this tutorial, we'll go over different ways of using FDT's ''Font Library Creator'' to embed custom fonts into your application.<br />
<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=https://github.com/TeamFDT/Examples/blob/master/sample-projects/font_demo.zip?raw=true]]<br />
<br />
=<center>Getting Started</center>=<br />
<br />
While not necessary, the sample project files for this tutorial will be very helpful in following along and understanding all the different ways of working with the ''Font Library Creator''. Once downloaded and imported you'll see the three projects that are referenced in this tutorial.<br />
[[File:015_001.png|center]]<br />
<br />
When working with fonts on your own, keep this snippet handy to help you see what fonts are making it into your application:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
if (Font.enumerateFonts().length) {<br />
for ( var i : int = 0; i < Font.enumerateFonts().length; i++ ) {<br />
trace('Font ', Font.enumerateFonts()[i].fontName, ' Has Been Found!');<br />
}<br />
} else {<br />
trace('*********** Doh! No Fonts Found ***********')<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
This tutorial uses a slightly modified version of the above loop.<br />
<br />
=<center>Embedding Via ActionScript Files</center>=<br />
Let's start off with an error. This is actually a great way to start because solving it will give good insight to:<br />
<br />
* How embedding, via metadata tags, work<br />
* Why using relative embed paths is useful<br />
* When using the Font Library Creator, embedding via .SWCs or .SWFs may be better<br />
<br />
==<center>Absolute Paths Are Evil</center>==<br />
After importing the project, jump to your ''Run Configurations'' window (''Run>Run Configurations'') and you'll see all the run configurations associated with these projects [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:015_002.png]]. If you choose to run ''ASDemo - Single Font'' you'll most likely see this error:<br />
<br />
<br />
<syntaxhighlight lang="bash"><br />
Could not create file /Users/OSX/_dev/fdt/EmbedFontsAS/bin/Single.swf.<br />
Build failed.<br />
</syntaxhighlight><br />
<br />
<br />
<br />
This is because when I used the Font Library Creator tool, it embedded the fonts based on where they were located on my machine. If you take a look at the took at the font ActionScript classes you'll see the embed code being used [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:015_003.png]]:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
[Embed(source="/Users/OSX/_dev/fdt/EmbedFontsAS/assets/Quicksand.otf"...<br />
</syntaxhighlight><br />
<br />
<br />
<br />
When using the Font Library Creator Tool to create ActionScript font classes, it will locate the fonts on your computer and use that path to write the embed code. In order to get this example running, you'll need to adjust the path so it matches the location on your machine. Before going on let's fix that.<br />
<br />
Locate ''Quicksand.ffl'' within the ''libs'' folder and double click on it. The window that opens in the Editor is the GUI for FDT's ''Font Library Creator'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:015_005.png]]. Once here, find the field for ''File Font'' and click the browse button:<br />
[[File:015_006.png|center|400px]]<br />
<br />
Navigate to where the ''Quicksand.otf'' font is located on your machine (within the example project folder) and then hit ''Open'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:015_007.png]]. After the font is selected make sure you have the desired ''Character Set'' selected. This example is including the typical ''Uppercase'', ''Lowercase'', ''Numerals'', and ''Punctuation'' - it should come out to 114 glyphs total. Click the ''Create Library'' button and FDT will generate a new ''QuicksandFont'' ActionScript class for you inside of the ''fonts'' folder.<br />
[[File:015_008.png|center]]<br />
<br />
When your file path is updated, run the ''ASDemo - Single Font'' run configuration and FDT will then embed your font into your application and run it [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:015_009.png]].<br />
<br />
==<center>Looking At The Code</center>==<br />
Ok, so time to step back a bit and explain a little more about what's going on. As mentioned in the beginning of the tutorial, fonts and embedding of assets can be an entire lesson onto itself. So for now we'll just hit the important bits to know when using this technique:<br />
<br />
*In this case, The Font Library Creator is just creating a class for you and writing the embed code. If you're going to embed just one font family and don't mind embedding all of it, you might as well write your own embed code. This is really only helpful when you want to embed only certain characters because FDT automatically writes the unicode ranges for you.<br />
<br />
*In order to have the fonts available to use, you don't need to instantiate the class that FDT creates. Check out this code in ''Single.as'':<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
public var font : QuicksandFont;<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The above is all you need - simply importing the class will do the trick.<br />
<br />
*When you want to use the font, use the name you gave it within the ''ID'' field within the ''Font Library Creator'':<br />
<br />
[[File:015_010.png|center]]<br />
<br />
In this example, the font was given a name of ''Quicksand''. The syntax to use this font is:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
text.defaultTextFormat = new TextFormat("Quicksand");<br />
</syntaxhighlight><br />
<br />
<br />
<br />
*When you import a class that has multiple fonts embedded, '''ALL''' the fonts are going to be embedded. Looking at ''Many.as'' this line of code is importing the class:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
public var myFonts : MyFonts;<br />
</syntaxhighlight><br />
<br />
<br />
<br />
If you then look at ''MyFonts.as'' you'll see embed code for two fonts - which will both be embedded with the class.<br />
<br />
* The compiler will be transcoding (or consider transcoding) the fonts '''EVERY''' time you compile.<br />
<br />
All in all, there's not much reason to embed your fonts this way. Unless you have a specific reason, stick with .SWCs or loading your fonts at runtime.<br />
<br />
=<center>Using Font SWCs</center>=<br />
Using SWCs is my favorite way of using custom fonts with my applications. This is because:<br />
<br />
* FDT won't need to transcode the fonts at compile time<br />
* You can pick and choose which fonts you want to use - or import all of them with one line of code<br />
* They are more transportable - you don't need to have the font files in order to use them<br />
<br />
There is one drawback however. You won't get code hinting within FDT for the font names. To get the font names you'll have to either look at the classes inside the .SWC or look at the '',ffl'' file to see what they were named at compile time.<br />
<br />
==<center>Looking At The Code</center>==<br />
[[File:015_011.png|center|600px]]<br />
<br />
Here you can see the Font Library Creator when creating a .SWC as well as the resulting .SWC (MyFonts.swc). Within the .SWC, you'll see these classes:<br />
[[File:015_013.png|center]]<br />
These are actually what you'll need to import to use these fonts.<br />
<br />
To import all the fonts in the .SWC, for this example, you'd use the top one:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
public var myFonts : FontClass_11da7c36c5aafac8;<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The other two classes with ''font0'' and ''font1'' suffixes are the individual fonts. <br />
<br />
As mentioned before, if you end up with one of these .SWCs and are not sure what ID was given to each font, so you can assign it to a textfield, open one of the classes inside the .SWC and note the ''fontName'' property of the embed code and use that.<br />
<br />
[[File:015_014.png|center|600px]]<br />
<br />
<br />
As a last tip, you don't even need to create a variable to include a font. This syntax will work just as well:<br />
<br />
<syntaxhighlight lang="actionscript" highlight="3"><br />
public class Single extends Sprite {<br />
public var offset : Number = 0;<br />
FontClass_11da7c36c5aafac8_font0;<br />
<br />
public function Single() {<br />
check_for_fonts();<br />
}<br />
</syntaxhighlight><br />
<br />
=<center>Using Font SWFs</center>=<br />
The real advantage for using font .SWFs over font .SWCs is when you want to load fonts at runtime. This is handy if you want to dynamically change the fonts of your application or want to use a custom loading scheme. You can also embed font .SWFs at compile time as well.<br />
<br />
==<center>Embedding</center>==<br />
If you want to embed the fonts at compile time, use this syntax:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
[Embed( source="/MyFonts.swf", fontFamily="Quicksand" )]<br />
private var font1 : Class;<br />
[Embed( source="/MyFonts.swf", fontFamily="RondaSeven" )]<br />
private var font2 : Class;<br />
</syntaxhighlight><br />
<br />
<br />
<br />
Take note that the variable type or name is not important, but what is important is the font name (ID) that was used when the font .SWF was created. The tricky thing is that if this .SWF was just given to you, you're not going to know what ''fontFamily'' to look for. In order to find out use that loop code included at the beginning of the article to scan your .SWF at runtime to see what you've got. If you were given the ''.ffl'' file as well, you can look in there to see what IDs were used.<br />
<br />
==<center>Loading At Runtime & The Gotcha</center>==<br />
To use the fonts at runtime, simply use a simple loader to load in the font .SWF. When then .SWF is loaded into the VM, the fonts will be available within the application domain. <br />
<br />
BUT!<br />
<br />
In order to use these fonts, you're going to need one utility class:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
mx.core.FontAsset;<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The easist thing to do is just to reference the class in your code. Here I just added this one statement to my font .SWF loaded event hander:<br />
<br />
<br />
<syntaxhighlight lang="actionscript" highlight="2"><br />
private function get_fonts(event : Event) : void {<br />
FontAsset;<br />
check_for_fonts();<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
<br />
Once this is done, you can just refer to the font ''ID'' that it was assigned in order to use it with a text field.<br />
<br />
Check out the supplied project ''EmbedFontsSWF'' to see working examples of this.<br />
<br />
=<center>Wrap Up</center>=<br />
Whew, that was a lot to go over. As can be seen, font embedding can be tricky, but FDT's ''Font Library Creator'' really does help out a lot, especially when you want to just include specific glyphs or characters with your font sets. <br />
<br />
Happy embedding.</div>Aklementhttp://fdt.powerflasher.com/docs/Using_FDT%27s_DebuggerUsing FDT's Debugger2012-06-02T12:13:45Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:013_046.png|600px|center|FDT's Debugger In Action]]<br />
Powerflasher first introduced a debugger with version 3 of FDT. Since then, many improvements have been made. Now that version 4 also includes a profiler, Flash developers are now more armed than ever to take on buggy applications.<br />
<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=https://github.com/TeamFDT/Examples/blob/master/sample-projects/debugging_start.zip?raw=true]]<br />
<br />
=<center>Getting Started</center>=<br />
==<center>Check For Debug Version of Flash Player</center>==<br />
Before venturing into using FDT's debugger, you'll need to make sure you have the debug version of the Flash Player installed. There are two easy ways to determine if you're using the debug version:<br />
<br />
#Go to Adobe's [http://www.adobe.com/software/flash/about/ detection website] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_002.png]].<br />
#Confirm that your stand alone Flash Player (located on your hard drive) is the debug player [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_001.jpg]].<br />
<br />
If you have the debug version of Flash Player then you're ready to get started, if not you'll need to install it.<br />
<br />
==<center>Install Debug Version of Flash Player</center>==<br />
If you don't have the debug version of Flash Player, getting it is easy. Simply go to Adobe's [http://www.adobe.com/support/flashplayer/downloads.html Flash Player Support Center] and choose the appropriate installation for your operating system [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_003.png]].<br />
<br />
==<center>Problems</center>==<br />
Sometimes an OS update, a browser particularity or multiple installations of the Flash Player will still cause problems with debugging. If you're still having trouble getting FDT to connect to the Flash Debugger, check out these resources for uninstalling Flash Player, do you can then reinstall the debug version of Flash Player:<br />
<br />
*[http://kb2.adobe.com/cps/141/tn_14157.html Uninstall Flash Player | Windows]<br />
*[http://kb2.adobe.com/cps/865/cpsid_86551.html#prob1=uninst,os=m10.6, Uninstall for OSX]<br />
<br />
==<center>Import Trace Template</center>==<br />
After you've [[Downloads|Downloaded]] and [[Sharing and Archiving Projects|Imported]] the sample project for this lesson, you'll find a template file that will adjust FDT's default Quicktrace template as well as load in a new ''trace()'' method [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_004.png]]. It's not necessary for this lesson to have these templates installed, but they can be helpful. If your're not sure how to import code templates (snippets), check out [[Creating Code Templates]].<br />
<br />
==<center>Sample Project's Source Code</center>==<br />
Once you have have the project imported, or have you're own setup, let's look at the example code :<br />
<br />
'''Main.mxml'''<br />
<syntaxhighlight lang="mxml"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<?xml version="1.0" encoding="utf-8"?><br />
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" <br />
xmlns:s="library://ns.adobe.com/flex/spark"<br />
xmlns:mx="library://ns.adobe.com/flex/mx" <br />
creationComplete="trace_complete(event)"><br />
<br />
<fx:Script><br />
<![CDATA[<br />
import flash.display.Sprite;<br />
import flash.events.MouseEvent;<br />
<br />
import mx.events.FlexEvent;<br />
<br />
private var null_object : Sprite = null;<br />
private var xml_data : Data = new Data();<br />
<br />
private function trace_complete(event : FlexEvent) : void {<br />
trace('My App Is Ready');<br />
}<br />
<br />
private function trace_event(event : MouseEvent) : void {<br />
trace(this, ' @ trace_click', ' :: event = ', (event));<br />
}<br />
<br />
private function trace_data(event : MouseEvent) : void {<br />
trace(this, ' @ trace_click', ' :: event = ', (xml_data.data));<br />
}<br />
<br />
private function trigger_runtime_error(event : MouseEvent) : void {<br />
null_object.height = 10;<br />
}<br />
<br />
private function trigger_breakpoint_nested(event : MouseEvent) : void {<br />
xml_data.trigger_breakpoint();<br />
}<br />
<br />
private function step_through_code(event : MouseEvent) : void {<br />
xml_data.run_counter();<br />
xml_data.run_counter(); <br />
}<br />
]]><br />
</fx:Script><br />
<s:Group verticalCenter="0" horizontalCenter="0"><br />
<s:layout><br />
<s:VerticalLayout horizontalAlign="center"><br />
</s:VerticalLayout><br />
</s:layout><br />
<br />
<s:Button id="trace_btn" label="Trace Event" <br />
click="trace_event(event)"/><br />
<s:Button id="trace_data_btn" label="Trace Data" <br />
click="trace_data(event)"/><br />
<s:Button id="error_btn" label="Trigger Run Time Error" <br />
click="trigger_runtime_error(event)"/><br />
<s:Button id="breakpoint_btn_2" label="Trigger Breakpoint In Nested Object"<br />
click="trigger_breakpoint_nested(event)"/><br />
<s:Button id="breakpoint_btn" label="Step Through Code"<br />
click="step_through_code(event)"/><br />
</s:Group><br />
</s:Application><br />
</syntaxhighlight><br />
<br />
<br />
'''Data.as'''<br />
<syntaxhighlight lang="actionscript"><br />
package demo.debug{<br />
<br />
public class Data {<br />
private var _data : XML = <books><br />
<book><br />
<title>ActionScript Cookbook</title><br />
<authors><br />
<author name="Joey Lott" /><br />
</authors><br />
</book><br />
<book><br />
<title>Flash Cookbook</title><br />
<authors><br />
<author name="Joey Lott" /><br />
<author name="Jeffrey Bardzell" /><br />
</authors><br />
</book><br />
<book><br />
<title>Flash Remoting: The Definitive Guide</title><br />
<authors><br />
<author name="Tom Muck" /><br />
</authors><br />
</book><br />
<book><br />
<title>ActionScript for Flash MX: The Definitive Guide</title><br />
<authors><br />
<author name="Colin Moock" /><br />
</authors><br />
</book><br />
</books>;<br />
private var _my_var : int;<br />
public var array_of_data : Array = [1, null, '1', "one"];<br />
<br />
public function trigger_breakpoint() : void {<br />
trace(this, ' @ trigger_breakpoint', ' :: _data = ' , (_data));<br />
}<br />
<br />
public function run_counter() : void {<br />
do_count();<br />
}<br />
<br />
private function do_count() : void {<br />
_my_var = 0;<br />
_my_var++;<br />
_my_var++;_my_var++;<br />
_my_var++;<br />
trace(this, ' @ do_count', ' :: _my_var = ', (_my_var));<br />
}<br />
<br />
public function get data() : XML {<br />
return _data;<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
This project has two classes, ''Main.mxml'' and ''Data.as'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_005.png]]. While this is a Flex project, the same debugging techniques can be used in an ActionScript only project.<br />
<br />
=<center>Launching An Application in Debug Mode</center>=<br />
Compiling and connecting to the debugger is simple. There two quickest ways are:<br />
<br />
<br />
#Just right click on your ''Main'' class either in the ''Flash Explorer'' or within the ''Editor'' and choose ''Debug As>FDT SWF Application'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_006.png]].<br />
#From the ''Debug Menu'' choose a launch configuration to run in Debug mode [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_010.png]].<br />
<br />
<br />
If you're following along with the example files, once you launch your .SWF, you'll see the ''External SWF Viewer'' appear with a few buttons on the stage [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_007.png]]. We'll get to what the buttons do in a little bit. For now, move the ''External SWF Viewer'' to the side and take note of the console on the bottom of the screen [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_008.png]].<br />
<br />
''*If the console view isn't visible go to: Window>Show View>Console to reveal it'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_009.png]].<br />
<br />
If the console reads:<br />
<br />
<syntaxhighlight lang="bash"><br />
Using Flex SDK 4 Debugger Adapter.<br />
[Info] Connection to player established.<br />
[Loading] Loaded: ::Users:OSX:_dev:fdt:Debugging_Start:bin:Main.swf<br />
</syntaxhighlight><br />
<br />
<br />
Then FDT has successfully began the debug session. If not, recheck that you have the debug version of Flash Player installed and that all other ''Standard'' versions of Flash Player have been uninstalled from your OS.<br />
<br />
=<center>Using ''Trace()'' to Output Messages</center>=<br />
With the example project compiled and running in debug mode, we can already see the most popular and simplest technique for debugging - the ''trace()'' method. The ''trace'' method is a top level function that all Flash applications have access to. It allows developers to output text messages to whoever is listening. In this example the console view is listening for these messages.<br />
<br />
==<center>Trace a String</center>==<br />
Already the console is picking up on a message via trace:<br />
<br />
<syntaxhighlight lang="bash"><br />
My App Is Ready<br />
</syntaxhighlight><br />
<br />
<br />
This is a message that is being sent from a ''trace()'' statement within FDT. In our example it's coming from the ''trace_complete'' method:<br />
<br />
<syntaxhighlight lang="actionscript" highlight="2"><br />
private function trace_complete(event : FlexEvent) : void {<br />
trace('My App Is Ready');<br />
}<br />
</syntaxhighlight><br />
<br />
This type of tracing is the simplest way of sending messages.<br />
<br />
==<center>Trace An Object & FDT Quicktrace</center>==<br />
If you use FDT's ''quicktrace'' keystroke (move cursor over an object and press Cmd+0) or the quicktrace methods supplied in the tutorial snippet , you will notice that within the ''trace'' method there is an Object being referenced that is not a string :<br />
<br />
<syntaxhighlight lang="mxml" highlight="2"><br />
private function trace_event(event : MouseEvent) : void {<br />
trace(this, ' @ trace_click', ' :: event = ', (event));<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
In this example the ''event'' object is being sent out to the console. To see the output, click on the ''Trace Event'' button within our application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_011.png]]. When this happens, another message will be sent to the console [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_012.png]]. This time the message is different. When this happens the console will output additional information about that object. In the case of event, we get this type of output:<br />
<br />
<syntaxhighlight lang="bash"><br />
Main0 @ trace_click :: event = [MouseEvent type="click" bubbles=true <br />
cancelable=false eventPhase=2 localX=81 localY=18 stageX=314 <br />
stageY=154 relatedObject=null ctrlKey=false altKey=false <br />
shiftKey=false buttonDown=false delta=0]<br />
</syntaxhighlight><br />
<br />
<br />
Other times we will see a ''Type'' output or a ''fully qualified name'' of the object being traced. In the case of an XML object, we'll have the entire XML object spit back at us. WIth the example project, click on the ''Trace Data'' button and the console will show us an XML output [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_013.png]]. <br />
<br />
=<center>The Debug Perspective</center>=<br />
While the ''trace'' is very, very handy - it's really just a taste of what the debugger can do. There are numerous ways to switch to the debug perspective. Learn more about perspectives and getting to to FDT's Debug perspectives with the [[Navigating Your Code and FDT's Workspace]] tutorial. <br />
<br />
==<center>Switch To Debug Perspective</center>==<br />
For this example, we're going to have FDT automatically switch to the Debug perspective for us when it encounters a runtime error. Initiate an error by clicking on the ''Trigger Run Time Error'' button with our .SWF [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_014.png]]. Immediately an error will occur and FDT will ask if you want to switch to the Debug Perspective [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_015.png]]. Click ''Yes'' and FDT will then switch to the ''Debug Perspective''.<br />
[[File:013_016.png|center|600px]]<br />
<br />
==<center>Views And Panels</center>==<br />
Views and panels can be moved around at will - just like any other perspective. If you ever need to how a view that is hidden, simply go to ''Window>Show View'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_017.png]]. <br />
<br />
For this tutorial we'll just focus on 3 views:<br />
<br />
*'''Debug'''<br />
*'''Breakpoints'''<br />
*'''Variables'''<br />
<br />
<br />
===<center>'''Debug'''</center>===<br />
The Debug view is perhaps the most important. It acts like the 'control center' for debugging applications [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_018.png]]. It displays two important things:<br />
<br />
# The current thread.<br />
# The ''Call Stack'' of the current thread that contains ''Stack Frames''.<br />
<br />
Ok, so the ''current thread'' information isn't terribly relevant because Flash is single threaded - but inside that thread we have the ''Call Stack''<br />
<br />
The ''Call Stack'' is where you find out where the error occurred and how you got there [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_020.png]]. The stack frames are displayed in order from (going from to bottom) most recent frame to first frame. If you click on a stack frame, the ''Variables'' and ''Editor'' view will update with information about the Object and variables are that are present in the frame: [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_018.png]] & [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_019.png]].<br />
<br />
This view has a few controls as well:<br />
<br />
[[Image:Resume.png]] The ''Resume'' will resume the execution of the .SWF (if it was stopped via a breakpoint), this will continue until it hits the next breakpoint.<br />
<br />
[[Image:Terminate.png]] ''Terminate'' will stop the debugging session. The button here in the Debug panel/view is the same as the ''Terminate'' button within the Console view.<br />
<br />
[[Image:Step_controls.png]] The ''Step Controls'' allow you to walk through the program as it executes.<br />
<br />
*''Step Into'' Executes the current line. If the line is a call to a method or constructor, and there is source available for the called code, the program counter moves to the declaration of the method or constructor. Otherwise, the program counter moves to the next line in the file.<br />
*''Step Over'' Executes the current line '''and''' moves the program counter to the next line of the file. If the executed line is a call to a method or constructor, the code in the method or constructor is '''also''' executed.<br />
*''Step out of/Return'' Executes the rest of the code in the current method or constructor and moves the program counter to the line after the caller of the method or constructor. This command is useful if you have stepped into a method that you do not need to analyze.<br />
<br />
''* Step Into and Step Over can be confusing. The main difference is that when using Step Over, the debugger will just call the method and move to the next line. If you were using Step Into, the debugger will go inside that method and walk through all the code there.<br />
<br />
===<center>'''Breakpoints'''</center>===<br />
This view will show you any Breakpoints that have been set in your code. This application only has one break point set [[File:Img_preview.png | link=File:http://fdt.powerflasher.com/docs/File:013_022.png]]. <br />
<br />
When setting breakpoints it's important not to put multiple statements on a single line because you can't step over or set breakpoints on more than one statement on the same line. So:<br />
<br />
<syntaxhighlight lang="actionscript" highlight="4"><br />
private function do_count() : void {<br />
_my_var = 0;<br />
_my_var++;<br />
_my_var++;_my_var++;<br />
_my_var++;<br />
trace(this, ' @ do_count', ' :: _my_var = ', (_my_var));<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
<br />
In the highlighted line above, the debugger will not have any way to pause between the two statements.<br />
<br />
<br />
===<center>'''Variables'''</center>===<br />
Depending on what Object you have selected in the stack trace, FDT will analyze the objects within the current scope. It will give you the instance name as well as the value associated with it. You can even change the values of variables while the code is executing.This is a very powerful view<br />
<br />
[[File:013_021.png|400px|center]]<br />
<br />
=<center>Analyzing Your Application</center>=<br />
We just got done introducing the Debugger and showed what happens when Flash encounters a runtime error. Now lets take some time to use the debugger to analyze our application.<br />
<br />
==<center>Setting A Breakpoint</center>==<br />
Return back to the ''Flash FDT Perspective'' and open up the ''Data.as'' class [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_023.png]]. Go to line ''33'' and double click within the margin to set a breakpoint [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_024.png]]. What a breakpoint will do is stop right before it executes the line where the break point is set. Then once again launch your application in debug mode [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_025.png]].<br />
<br />
When the application runs, click on the ''Trigger Breakpoint in Nested Object'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_026.png]]. When FDT asks you to switch to the Debug perspective, do so.<br />
<br />
[[File:013_027.png|600px|center]]<br />
<br />
==<center>Viewing The Call Stack & Stack Frames</center>==<br />
Let's take another look at the ''Stack Frames'' - we can now see how we got here. <br />
<br />
[[Image:013_028.png|600px|center]]<br />
<br />
Start stepping back through each frame and notice how the Editor and Variables view are being updated [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_030.png]] & [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_031.png]]. We're in effect stepping backwards through the program.<br />
<br />
Now let's go back to the topmost ''Stack Frame'' and begin to expand the Objects within the ''Variables'' view [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_032.png]]. Here we can see the ''_data'' reference and the data it's pointing to - in this case it's XML data. The output, as a ''toString'' method, is also visible below the object navigator.<br />
<br />
==<center>Step Execution</center>==<br />
Although breakpoints are very handy in that they allow us to pause our application and take a look, breakpoints are even more useful when used in combination with the ''Step Execution'' controls. <br />
<br />
If your still in a debugging session, terminate it now. Now add a breakpoint to line ''36'' of the example project [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_036.png]] and debug it again. This time, click on the ''Step Through Code'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_037.png]].<br />
<br />
Once back in the Debug Perspective, click on ''Step Return'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_038.png]] and you'll see FDT automatically execute the rest of the method (check out the console to see additional trace statements added) and return to the ''Button'' component - the place where the ''step_through_code'' method was called [http://fdt.powerflasher.com/docs/File:013_040.png].<br />
<br />
Instead of exiting out of the debug session, let's just resume it by clicking on the ''Resume'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_041.png]]. The debugger will un-pause the application, but still stay connected. Once again, let's trigger another breakpoint by clicking, again, clicking on the ''Step Through Code'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_042.png]]. This time, click on the ''Step Over'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_043.png]] and notice how FDT will execute the next line of code, the method ''run_counter'', and then pause before it runs the next line. We can tell that the ''run_counter'' method was executed because an additional trace was added to the Console [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_044.png]]. <br />
<br />
Now let's give ''Step Into'' a try. Without un-pausing or terminating the session, click on the ''Step Into'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_045.png]]. The debugger will now navigate to the definition of the ''run_counter'' method - which is located in the ''Data'' class. Continue pressing ''Step Over'' until you hit line ''41'' , or the line where the ''do_count'' method is declared. Once here go to your ''Variables'' view and let's take a closer look at what we have. Start expanding the variables of this object and take note how you can inspect each variable and it's value.<br />
<br />
[[Image:013_046.png|600px|center]]<br />
<br />
The first line of code is this:<br />
<br />
<syntaxhighlight lang="actionscript"><br />
_my_var = 0;<br />
</syntaxhighlight><br />
<br />
In the ''Variables'' view we can see that the current value of ''_my_var'' is '''4'''. Once more, press ''Step Into'' to have FDT move to that first line of code, but notice how the assignment hasn't taken place - ''_my_var'' still has the value ''4''. Now, keep an eye on ''_my_var'' and continue to ''Step Into''. You'll notice that ''_my_var'' is reset to 0 and then incremented by one. As you're stepping though this, notice how when the debugger hits this line:<br />
<br />
<syntaxhighlight lang="actionscript" highlight="4"><br />
private function do_count() : void {<br />
_my_var = 0;<br />
_my_var++;<br />
_my_var++;_my_var++;<br />
_my_var++;<br />
trace(this, ' @ do_count', ' :: _my_var = ', (_my_var));<br />
}<br />
</syntaxhighlight><br />
<br />
...it executes both statements. This is because the debugger will not step through statements, rather it steps through lines of code.<br />
<br />
==<center>Changing Variables</center>==<br />
Before executing the trace statement, lets change the ''_my_var'' to something else... how about 1,000,000 [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:013_047.png]]! After changing the value of ''_my_var'', press ''Step Into'' again and watch how the trace statement then outputs ''1000000'' to the console.<br />
<br />
==<center>Using Step Return To Backtrack The Call Stack</center>==<br />
Now that we've tunnelled deep into our application, let's go backwards up the ''Call Stack''. When you begin pressing ''Step Return'' you will begin going backwards through the each stack frame until eventually you return to the top most calling method, which in our case, was that ''Button''. Keep an eye on the call stack in the Debug view to get a better understanding of where you are.<br />
<br />
<gallery widths=75px heights=55px perrow=5 caption="Using Step Return"><br />
File:013_048.png<br />
File:013_049.png<br />
File:013_050.png<br />
File:013_051.png<br />
File:013_052.png<br />
</gallery><br />
<br />
=<center>FAQ</center>=<br />
<br />
Q: Why doesn't FDT either switch perspectives or ask me to switch perspectives?<br />
<br />
A: Check out the FAQ: [[FAQ#When_I_Debug_or_Profile_My_Application.2C_The_Perspective_Doesn.27t_Change]]<br />
=<center>Wrap Up</center>=<br />
There's a lot that can be achieved using the debugger, take the time to play with it and see just how much you can do using it.</div>Aklementhttp://fdt.powerflasher.com/docs/SDK_ManagementSDK Management2012-06-02T12:13:19Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:001_0008x.png|center]]<br />
Right now is an exciting time for Flash development. Soon there will be mobile AIR development, mobile Flex development and new Flash/Flex features are continuously being added. This makes SDK management particularly important. <br />
<br />
This tutorial will go over the basics of managing SDKs with FDT.<br />
<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=https://github.com/TeamFDT/Examples/blob/master/sample-projects/sdk_management_finish.zip?raw=true]]<br />
<br />
=<center>Getting Started</center>=<br />
All you need to follow along is a project open. You can either create your own or import the project created at the end of the [[Basic AS3 Tutorial]]. Visit the [[Downloads]] page to get it.<br />
<br />
=<center>FDT & SDKs</center>=<br />
FDT is an IDE specializing in creating applications for the desktop and web - whether you're using the Flex framework, just ActionScript or even haXe. But in order to do build applications with these languages, FDT needs to know what tools to use to get you where you want. That is where SDKs come in.<br />
<br />
Think of your finial application like a piece of hand crafted furniture. In this scenario, you're the master craftsman and FDT is your assistant. What's missing are your tools, and it's the job of your assistant (FDT) to make sure your tools are ready for you to use. The type of tools you and FDT use determine what kind of furniture (the finial application) you create. This is where SDKs come in. Explaining how and what exactly SDKs are is too big of a topic to get into here, but for a quick intro check out [http://en.wikipedia.org/wiki/Software_development_kit Wikipedia's article] about SDKs. <br />
<br />
FDT uses the [http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK Open Source Flex SDK] to build Flash applications. The initial release of FDT 4 shipped with two SDKs - Flex 3.5 and Flex 4.0; however, you're likely going to want to add more SDKs as newer Flex SDK become available as well as add more specific SDKs (e.g. for mobile development) or even create and use custom SDKs.<br />
<br />
==<center>FDT's Shipped SDKs</center>==<br />
A good place to start is where FDT keeps the SDKs it ships with. If you look inside the ''plugins'' folder of your FDT installation directory, you'll see two folders that being with:<br />
<br />
''com.powerflasher.fdt.shippedFlexSDK''<br />
<br />
In this example, we see that FDT has shipped with Flex 3.5 and Flex 4 [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_001.png]]. Taking a closer look, we can see the SDK .ZIP file that FDT unzipped when it first installed. ''flex_sdk_4.zip'' in this example, and the ''flex'' directory where it unzipped to [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_002.png]]. Knowing where these default SDKs are is useful if you ever have a problem with them.<br />
<br />
=<center>Adding and Removing SDKs</center>=<br />
Adding and removing SDKs is very simple. Begin by going to FDT's ''Installed SDKs'' window located here [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_003.png]] at:<br />
<br />
''Preferences>FDT>Installed SDKs''<br />
<br />
Here we can see your installed SDKs and their location. In this example , we see the two SDKs pointed out earlier in this lesson that are inside of the ''plugins'' folder within FDT's installation directory [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_003.png]]. <br />
<br />
The checkbox next to the SDK entry is what FDT will use by default when you create a project. You must always have a SDK selected and you can't remove a SDK when it's been selected as the default.<br />
==<center>Add SDK</center>==<br />
The quickest way to add a SDK is to click the '''Search''' button within the ''Installed SDKs'' window [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_004.png]]. A window will then open and ask you to ''Select the root directory of the SDK'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_005.png]]. In this example, several SDKs have already been downloaded and uncompressed and are all within one ''sdks'' folder. The specific location of your SDKs is not terribly important, but it helps to keep them together.<br />
<br />
After selecting the root directory of the SDK you want to link to, select ''Open'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_005.png]]. FDT will then scan the SDK for all the source code (distributed as .SWCs) that are included with the SDK [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_006.png]]. When complete, FDT will detect the name of the SDK, ''Flex Hero'' in this example, and add it to your list of ''Installed SDKs'' for you to edit, delete, duplicate or remove [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_007.png]].<br />
<br />
==<center>Remove SDK</center>==<br />
If you decide that a SDK is no longer needed, removing is just one click. With the target SDK selected, but not set as your default SDK, click the ''Remove'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_008.png]]. FDT will then remove the SDK from your list.<br />
<br />
''*note: This doesn't delete your folder containing the SDK. It will still remain on your hardrive.<br />
=<center>Using SDKs With Your Project</center>=<br />
With your SDK locations installed into FDT, you can now begin to use them with your projects.<br />
<br />
==<center>Change A Project's SDK</center>==<br />
A time may come when working on a project where you may want to change the SDK that is being used. Changing an existing project's SDK is simple. With your project open in the ''Flash Explorer'', right click on the project and navigate to ''Flash Project>Change SDK'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_009.png]]. The ''Change SDK'' window will appear and you can then select an existing SDK [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_010.png]] or click on ''configure...'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_011.png]] in case you want to add a new one [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_012.png]].<br />
<br />
==<center>Edit A Project's SDK (Add or Remove Source)</center>==<br />
Another adjustment that can be made to a project's SDK, is to omit or add .SWCs that are already existing with the SDK.<br />
<br />
For example, while using FDT's default ''AS 3'' project type, you may want to use the new [http://opensource.adobe.com/wiki/display/tlf/Text+Layout+Framework ''Text Layout Framework'']. <br />
<br />
FDT's project types allow for a lean implementation of the Flex SDK - this helps keep things organized and minimize version and compilation errors while projects evolve. Because of this, some of FDT's default project types exclude certain parts of the Flex SDK from the build path. The SDK is still intact, but in order to add the SDK's Text Layout Framework to our ''AS 3'' project type, we'll need to add to have FDT activate it. <br />
<br />
''*note: Any of FDT's '''Flex''' project types will automatically include the Text Layout Framework - it's just the lean AS 3 project type that omits it.''<br />
<br />
To begin, let's create a new Class that uses the ''Text Layout Framework''. Create a new class, and copy the source code below.<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flashx.textLayout.container.ContainerController;<br />
import flashx.textLayout.elements.ParagraphElement;<br />
import flashx.textLayout.elements.SpanElement;<br />
import flashx.textLayout.elements.TextFlow;<br />
<br />
import flash.display.Sprite;<br />
<br />
public class TextLayout extends Sprite {<br />
public function TextLayout() {<br />
<br />
var textFlow : TextFlow = new TextFlow();<br />
var p : ParagraphElement = new ParagraphElement();<br />
textFlow.addChild(p);<br />
<br />
var span : SpanElement = new SpanElement();<br />
span.text = "Hello, World";<br />
span.fontSize = 48;<br />
p.addChild(span);<br />
<br />
textFlow.flowComposer.addController(<br />
new ContainerController(this, 400, 200));<br />
textFlow.flowComposer.updateAllControllers();<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
As you'll notice, FDT lights up like a pinball machine [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_013.png]]! This is because FDT isn't including the ''textLayout.swc'' in the build path. If you were using a Flex project, it would, but since this is a lean AS 3 project, it's been left out. This can be confirmed by expanding the SDK library within the ''Flash Explorer'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_014.png]].<br />
<br />
Begin adding the ''textLayout.swc'' by right clicking on the project, and choosing ''Properties'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_015.png]]. When the ''Properties'' window opens, choose the ''SDK Library'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_016.png]]. Once here, click on the ''Select SWCs...'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_017.png]]. <br />
<br />
What will appear is the ''Included SWCs'' window. Here you can add or take away chunks of source code from the SDK your project is associated with. To add the ''Text Layout Framework'', click on the ''textLayout.swc'' checkbox and then hit ''OK'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_018.png]]. FDT will then add the .SWC to your build path [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_019.png]].<br />
<br />
When you return to your editor, you'll see that FDT now has included the ''textLayout.swc'' with your build path and all the errors have disappeared [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_020.png]].<br />
<br />
=<center>Creating and Editing Custom SDKs</center>=<br />
If you remember earlier in this tutorial, it was mentioned that FDT has a lean ''AS 3'' project type to avoid compatibility errors - we'll quickly show why that's important and how to fix it using a custom SDK.<br />
<br />
==<center>A Custom SDK In Action</center>==<br />
The Open Source Media Framework (OSMF) is a great initiative to provide a platform for video delivery; however, there are some good news and bad news about it's distribution:<br />
<br />
* '''Good News''' : It's included with the Flex SDK.<br />
* '''Bad News''' : The source code the Flex SDK distribution is often outdated.<br />
<br />
'''An example!'''<br />
<br />
Create a new Class called ''OSMF'' and fill in the source code below:<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import org.osmf.media.MediaPlayerSprite;<br />
import org.osmf.media.URLResource;<br />
<br />
import flash.display.Sprite;<br />
<br />
public class OSMF extends Sprite {<br />
public function OSMF() {<br />
var sprite : MediaPlayerSprite = new MediaPlayerSprite();<br />
addChild(sprite);<br />
sprite.resource = new URLResource(<br />
"http://mediapm.edgesuite.net/strobe/content/test/AFaerysTale_sylviaApostol_640_500_short.flv");<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
Just like with the ''Text Layout Framework'' example above, FDT goes nuts with errors. This is because the ''AS 3'' project type does not include the ''osmf.swc'' by default. <br />
<br />
No problem right...? Well.....<br />
<br />
If we go through the process again and add the ''osmf.swc'' to our source path like we did with the ''textLayout.swc'' earlier - [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_021.png]] and [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_022.png]] - we see that we still have two errors:<br />
<br />
<syntaxhighlight lang="bash"><br />
Variable 'resource' is not declared. Found 'resource' at line 14 column 11. <br />
Incompatible types URL and String. Found at line 14 column 38. <br />
</syntaxhighlight><br />
<br />
<br />
When this tutorial was created, the code in the example above is correct - but why do we get errors? We get errors here because the source code above is used for the most recent distribution of OSMF, and the ''osmf.swc'' that shipped with the Flex 4.0 SDK is outdated. While we could just download and then add the new version of the ''OSMF.swc'' to our specific project, this is a good time to show how useful it is to have a custom SDK. That way some of our projects can have access to this version of OSMF and other projects that rely on the old ''osmf.swc'' will be unaffected.<br />
<br />
We'll need to do two things:<br />
<br />
#Make sure we have the latest distribution of OSMF<br />
#Compile to Flash 10.1 ( the latest OSMF requires 10.1 )<br />
<br />
Begin by right clicking on the SDK icon (or project icon) and select ''Flash Project>Change SDK'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_023.png]]. When the ''Change SDK'' window appears, click on ''Configure...'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_024.png]] then hit ''Search'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_025.png]]. I've already created a copy of the Flex 4.1 SDK and added the latest OSMF .SWF in there, so I'll select that [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_026.png]]. Next, give it a new name so you'll know that it's not the standard Flex 4.1 SDK - select the SDK from the list of ''Installed SDKs'' and click ''Edit'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_027.png]]. Now give the SDK a new name, this example is simply calling it ''Custom Flex 4.1'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_028.png]].<br />
<br />
After hitting ''OK'' you'll return back to the ''Change SDK'' window and select our new custom SDK [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_029.png]]. Then change the player version to Flash Player 10.1 [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_032.png]]. <br />
<br />
FDT will already let you know that something is wrong [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_033.png]]. You'll see this message:<br />
<br />
<syntaxhighlight lang="bash"><br />
Some classpath libraries are missing or SDK version is not compatible.<br />
</syntaxhighlight><br />
<br />
<br />
FDT is letting us know that we're missing some source code, specifically the OSMF code that we were referencing earlier. Let's now make sure we're referencing the new OSMF by again assigning the updated OSMF .SWC to our project.<br />
<br />
Once again, right click on the project and select ''Properties'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_034.png]]. Once inside the ''Properties'' window, remove the old ''osmf.swc'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_036.png]] ( if it's still there ) and then click the ''Select SWCs'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_037.png]]. Choose the OSMF .SWC ( notice how this OSMF .SWC is all caps and the other one was all lower case ) [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_038.png]].<br />
<br />
When you return to your project, use the ''Organize Imports'' shortcut to make sure FDT imports any missing classes and then run then run your .SWF [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:012_039.png]].<br />
<br />
=<center>Wrap Up</center>=<br />
FDT's new SDK management is powerful and easy - relieving stress for Flash developers around the world.</div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_Profiling_ApplicationsIntro To Profiling Applications2012-06-02T12:12:50Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:Profiler.png|center]]<br />
Profiling is an important part of software development. The FDT Profiler helps developers detect performance issues within a Flash application. If you're creating a simple image carousel, a profiler is something that you may not need. If you're building an AIR application that will work on a computer kiosk, running for hours on end, a profiler will likely be a life saver.<br />
<br />
There two different approaches to profiling, [[Memory Profiling]] and [[Performance Profiling]]. We'll go over these two separate modes in future walkthroughs. For now, we're going to focus on becoming familier with launching the profiler, exploring the [[Profiling Perspective]], and have a small introduction to Memory Profiling.<br />
<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=https://github.com/TeamFDT/Examples/blob/master/sample-projects/profile_start.zip?raw=true]]<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15172353|width=600|height=400}}<br />
<br />
{{#widget:Vimeo|id=19151708|width=600|height=400}}<br />
<br />
=<center>Getting Started</center>=<br />
Visit the [[Downloads]] page to download the source code used in the [[Basic AS3 Tutorial]] to get started. Or create a new project and copy and paste the source code below. <br />
<br />
''Main.as:''<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package demo {<br />
import graphics.shapes.Circle;<br />
<br />
import flash.display.Sprite;<br />
import flash.events.Event;<br />
import flash.events.MouseEvent;<br />
<br />
public class Main extends Sprite {<br />
private var circles : Array = [];<br />
<br />
public function Main() {<br />
this.stage.addEventListener(MouseEvent.MOUSE_DOWN, start_circles);<br />
this.stage.addEventListener(MouseEvent.MOUSE_UP, stop_circles);<br />
} <br />
<br />
private function start_circles(event : MouseEvent) : void {<br />
this.addEventListener(Event.ENTER_FRAME, draw_circles);<br />
}<br />
<br />
private function stop_circles(event : MouseEvent) : void {<br />
this.removeEventListener(Event.ENTER_FRAME, draw_circles);<br />
<br />
while(circles[0]) {<br />
this.removeChild(circles.pop());<br />
}<br />
}<br />
<br />
private function draw_circles(event : Event) : void {<br />
// with no referece this won't be garbage collected<br />
addChild(create_circle());<br />
// hold a referce in array so it can be removed from stage <br />
//and garbage collected<br />
circles.unshift(create_circle());<br />
addChild(circles[0]);<br />
}<br />
<br />
private function create_circle() : Circle {<br />
var circle : Circle = new Circle();<br />
circle.x = this.stage.stageWidth * Math.random();<br />
circle.y = this.stage.stageHeight * Math.random();<br />
return circle;<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
''Cirlce.as:''<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package graphics.shapes {<br />
import flash.display.Shape;<br />
<br />
public class Circle extends Shape {<br />
public function Circle() {<br />
this.graphics.beginFill(0xffffff * Math.random());<br />
this.graphics.drawCircle(0, 0, 20 * Math.random());<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
==<center>How The Example Project Works</center>==<br />
With our project setup and our ''Main.as'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_001.gif]] class and ''Circle.as'' class [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_002.gif]] setup. We'll quickly cover the code. ''Circle'' is just a class that draws a circle of random size and color. It's also located in the ''graphics.shapes'' namespace (package). ''Main'' is a class that creates circles and adds them to the stage. The only bit of code to note is this:<br />
<br />
<syntaxhighlight lang="actionscript"><br />
private function draw_circles(event : Event) : void {<br />
// with no referece this won't be garbage collected<br />
addChild(create_circle());<br />
// hold a referce in array so it can be removed from stage and garbage collected<br />
circles.unshift(create_circle());<br />
addChild(circles[0]);<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
Here we're creating two circles - one is placed directly on the stage and the other is having a reference (pointer) stored into an Array so we can retrieve it later:<br />
<br />
<syntaxhighlight lang="actionscript"><br />
private function stop_circles(event : MouseEvent) : void {<br />
this.removeEventListener(Event.ENTER_FRAME, draw_circles);<br />
<br />
while(circles[0]) {<br />
this.removeChild(circles.pop());<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
On MOUSE_UP, we're stopping the creation of new circles and each ''Circle'' in the ''circles'' array is being taken out of the array and then removed from the stage. This will remove any references to the circle we've created so it can be easily deleted from memory (garbage collected).<br />
<br />
==<center>Running The SWF</center>==<br />
Before profiling, lets just run the .SWF to see what's going on. This demo already has a launch configuration included [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_003.gif]], and to access this we'll jump to the ''Run Configurations'' window [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_004.gif]], select it [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_005.gif]] and hit ''Run'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_006.gif]]. When the window pops up [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_007.gif]], press down on the stage (MouseEvent.MOUSE_DOWN) to begin drawing circles [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_008.gif]] and then release the mouse (MouseEvent.MOUSE_UP) to have half of them disappear [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_009.gif]].<br />
<br />
The circles that disappeared will be eligible for garbage collection and the ones on the stage will not.<br />
<br />
=<center>Launching The Profiler</center>=<br />
Now, let's get to the profiler. Again, we have multiple ways of launching the profiler, but to make sure we're using the same launch profile, let's go to the profile menu and choose our 'ProfileTest' launch. FDT will compile and and launch the .SWF then switch to the Profile perspective [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_011.gif]]. For now let's move off the ''External SWF Viewer'' and focus on the ''Profiler Perspective'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_012.gif]].<br />
<br />
''note: In this example, the views have been moved around to make best use of the space available. You can set it up however you like.''<br />
<br />
''note: By default a .SWFs background will become transparent when loaded onto another .SWF. The profiler is actually loading your .SWF into another .SWF. That is why the background in this example appears with the default Flex background color. The background color you are seeing is the background color of the Profiler .SWF. If you are using the Flex Framework you will see the profiler .SWF launch and then your Flex App load on top of it- and your 'background' color would then be the color as defined by the Flex Application.''<br />
<br />
=<center>The Profiler Perspective</center>=<br />
==<center>Memory Graph</center>==<br />
The top part is the ''Memory Graph'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_013.gif]]. This is a visual representation of the .SWF's memory footprint displayed over time. This is where you'll be looking to compare ''Peak Memory'' (a total of all Objects created) and ''Current Memory'' (Objects that are currently active in memory).<br />
<br />
==<center>Live Objects</center>==<br />
The next view is the ''LiveObjects'' view [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_014.gif]]. This provides a breakdown of the objects created and how much memory that type of object takes up. In this example we can see that the ''String'' type takes up .31 percent of memory in our app.<br />
<br />
==<center>Profile Monitor</center>==<br />
The [[Profile Monitor]] is where we control the profile process [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_015.gif]]. Use this when you want to force garbage collection [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_016.gif]], ''terminate'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_017.gif]] or ''suspend'' (pause) the profiler [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_018.gif]]. When using these controls, make sure you have the currently running process selected, otherwise you won't be able to control the active profiling session [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_019.gif]].<br />
<br />
==<center>Console</center>==<br />
The [[Console]] view here is the same as it exists elsewhere in FDT [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_020.gif]]. It simply provides an output of FDT's actions.<br />
<br />
=<center>Profiler In Action</center>=<br />
Bring focus back to the running .SWF and press and hold the mouse button. As you do this, circles will begin appearing on the stage. You'll see the ''Memory Graph'' begin to climb and the ''Live2Objects'' view being updated [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_021.gif]]. When the mouse is released, half of the circles will disappear. The objects that disappeared are now eligible for garbage collection. For the standard player release, Flash's garbage collection is designed to be automated and not to be user initiated. Since we are using the debug player, FDT has access to an API that allows developers to initiate garbage collection as they wish. To initiate garbage collection, press the ''Run Garbage Collection'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_022.gif]].<br />
<br />
Instantly, you'll see a dip in the ''Current Memory'' within the ''Memory Graph'' view and the ''Instances'' column within the ''LiveObjects'' view will drop [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_023.gif]]. This drop represents the deletion of those circles we removed from the stage. <br />
<br />
==<center>Filters</center>==<br />
To get a better idea of what is going on, let's pause the execution of the .SWF and profiler by pressing the ''Suspend'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_024.gif]]. With everything paused, let's take a closer look at the filters that are available. Here we have two important filters: ''Filter internal packages'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_025.gif]] and ''Filter native objects'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_026.gif]]. To a get a better idea of what garbage collection did for us, click on the ''Filter native objects'' filter. Here we can see the objects we created, ''Main'' and ''Circle'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_027.gif]]. Notice that there are ''305'' circles active compared to ''611'' that have been generated in total. Our ''ENTER_FRAME'' event handler was creating two objects total - one we explicitly generate a reference for and one that we anonymously add. Our ''MOUSE_UP'' handler is then removing the circles we created a reference for and leaving the others behind. That is why when the garbage collector executed it removed exactly half of the circles, ''305'', of the total ''610''.<br />
<br />
==<center>Memory Snapshots</center>==<br />
Sometimes it doesn't make sense to pause your .SWF to inspect it. That is what ''Memory Snapshots'' are for. If your .SWF is not already executing, resume it now. After minimizing the ''Console'' view, prepare to take a snapshot by selecting the running process and press the ''Create Memory Snapshot'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_028.gif]].<br />
<br />
''note: this example was restarted to clean up the UI a bit so it's not going to match exactly previous screens;however, the steps to this point are the same.''<br />
<br />
FDT will then create a memory snapshot of the running .SWF [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_029.gif]]. Let's wait a little bit and then hit the garbage collection button and wait for the memory to be cleared [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_031.gif]]. After the memory has been cleared take another snapshot [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_032.gif]].<br />
<br />
With both snapshots created, we can now take a closer look at what was going on at that moment and even compare the two. Initiate the [[Memory Snapshot]] view by double clicking on one of the snapshots [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_033.gif]]. To clear things up a bit, let's use the ''Filter native objects'' filter on the snapshot [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_034.gif]]. This snapshot now provides a detailed report of the status of the application at a specific time. We can dive even deeper and investigate the instances associated with that type by expanding the ''Class'' type [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_035.gif]]. Clicking an a particular instance [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_036.gif]] will then activate the ''Back References'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_037.gif]] associated with it. The ''Allocation Trace'' is also available to us and provides further information about the running .SWF [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_038.gif]].<br />
<br />
Another useful features regarding Snapshots is the ability to compare Snapshots. Do this by selecting the two available Snapshots and pressing the ''Compare Snapshot'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_040.gif]]. A new ''Compared Snapshot'' will be created [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_041.gif]]. Double click on this and the [[Compare Snapshot]] view will open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:08_042.gif]]. Here ''Missing Objects'' and ''Additional Objects'' can be investigated. In our case, the ''Missing Objects'' are those that were deleted when we initiated garbage collection and the ''Additional Objects'' are the various events being dispatched by the mouse events and ENTER_FRAME event.<br />
<br />
=<center>FAQ</center>=<br />
<br />
Q: Why doesn't FDT either switch perspectives or ask me to switch perspectives?<br />
<br />
A: Check out the FAQ:<br/> [[FAQ#When I Debug or Profile My Application, The Perspective Doesn't Change]]<br />
<br />
Q: What are the key benefits of the FDT Profiler?<br />
<br />
A: Here some:<br />
* launch configuration makes it possible to setup different scenarios and start them with just one click<br />
* reuse existing launch configurations, if existing configurations are reused for profiling you don't have to configure customized compiler arguments again.<br />
* filters can be set via launcher<br />
* predefined filters for internal packages, native objects + internal actions<br />
* custom filters for included packages (positive) + excluded packages (negative)<br />
* buttons for enabling/disabling all predefined + custom filters during profiling -> fast comparison<br />
* bars for percentage values to get a visual impression of all ratios<br />
* allocation trace + back references in one view within (compared) memory snapshot<br />
* profiling with system browser, external SWF viewer + AIR Debug launcher (Standalone player does not support profiling)<br />
* detailled data collection, e.q. ByteArray<br />
* filtered startup data for performance snapshots can be resetted at any time to get a full data performance snapshot, it really works like a filter<br />
* filtering startup data for performance profiling can be triggered automatically (customizable duration)<br />
* debugger can be used simultaneously<br />
<br />
=<center>Wrap Up</center>=<br />
<br />
There's still plenty more to cover when it comes to profiling. Keep an eye out for more profiling tutorials coming soon.</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_and_Ant_TutorialFDT and Ant Tutorial2012-06-02T12:12:18Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:Ant.png|center]]<br />
Sometimes the build process can get pretty complex. For example, you may create several SWCs, SWFs, have some HTML files to be dynamically updated and files to be copied and uploaded. In these cases the launcher on it's own won't cut it. This is where Ant comes in.<br />
<br />
FDT ships with built in Ant tasks for you to use and at the same time, Ant provides a lot of useful tasks already. This intro will help get you acquainted with using FDT and Ant.<br />
<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=https://github.com/TeamFDT/Examples/blob/master/sample-projects/ant_finish.zip?raw=true]]<br />
<br />
= <center>Getting Started</center> =<br />
Let's begin by downloading the project from the [[Basic AS3 Tutorial]] and then import it. If you're not sure how to import projects see the [[Sharing and Archiving Projects]] tutorial.<br />
<br />
While you don't need to import the project to follow along, it will jump start things for us.<br />
<br />
=<center>Create Your Build File</center>=<br />
With the project open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_001.gif]], let's begin by creating our ''build'' Ant file. Right click on the project and choose ''new>other…'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_002.gif]].<br />
<br />
Type ''xml'' in the filter field, choose ''XML'' from the ''XML'' folder and then click ''Next'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_003.gif]]. Name the file ''build.xml'' (it can be anything but ''build'' is the standard), save it within the root directory and then click ''Finish'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_004.gif]]. <br />
<br />
As of now, the file is a standard .XML file. We can edit the file as is and it will work but it would be immensely helpful if we had the syntax highlighting and auto completion like we have when editing ActionScript files. To do this, we want to make sure FDT opens this file up as an Ant build file.<br />
<br />
For FDT to recognize this .xml file as an Ant file, all we need to do is to do is add in this syntax [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_005.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<project><br />
<target><br />
</target><br />
</project> <br />
</syntaxhighlight><br />
<br />
<br />
Close the file and then open it back up within the editor. We need to do this because the first time FDT opened the file, it opened it as a generic .XML file - using the XML Editor. When the file is opened up and the Ant file syntax is recognized, it will open the file with the Ant Editor.<br />
<br />
When the file is opened up again, you will immediately recognize that FDT has detected an error: ''target element appears without a name attribute'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_006.gif]]. This is great, FDT now will tell us about syntax errors and any incomplete arguments (attributes) with our tasks.<br />
<br />
We also now have code hinting and auto completion. Move your cursor to the ''target'' task and begin typing ''name'' and then ''Ctrl+Space'' (autocomplete) and the ''name'' attribute will be filled in. Add a name, let's use ''default'', then save the file to have the errors recalculated in our ''Problems'' view.<br />
<br />
=<center>Your First Task: Compiling & JRE Error</center>=<br />
Within the ''task'' element, begin typing ''fdt.launch.application'' and use FDT's auto-complete to fill in the remainder of the element [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_007.gif]]. With the element created, add these three attributes to the element: ''projectname'' , ''mainclass'' and ''target''.<br />
<br />
<syntaxhighlight lang="xml"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf"/><br />
</syntaxhighlight><br />
<br />
<br />
This is the minimum needed to create a .SWF with FDT and Ant. Just like many other tasks in FDT, there are a few different ways to run Ant tasks. The easiest way is to execute tasks via the ''Ant View''. If the view isn't open already, open it via ''Window>Show View>Ant'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_008.gif]]. With the Ant view open, drag the ''build.xml'' file into the ''Ant'' panel [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_009.gif]] and then expand the elements and you'll see how the Ant View's contents match the build.xml file in the Editor [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_010.gif]].<br />
<br />
To start the build, just select the target ( ''default'' in our case ) within the Ant View [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_011.gif]] and then click the ''Run'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_012.gif]].<br />
<br />
Immediately we encounter an error:<br />
<br />
''Problem: failed to create task or type fdt.launch.application''<br />
<br />
This may seem frustrating at first, but when you understand how Ant, Java, FDT and your operating system work together it makes sense why this happens. By default, development with Eclipse (the platform FDT is built upon) recommends using separate Java Runtime Environments (JRE) when developing and testing applications. That's great for Java developers, but we don't need that type of sand boxing when creating .SWFs.<br />
<br />
We need to have the Ant build execute within the same JRE as FDT in order to have access to FDT's custom Ant tasks. Otherwise, it will run in a sandboxed environment that doesn't know anything about FDT. <br />
<br />
Fortunately for us, this is a simple fix - from the ''External Tools'' menu choose ''External Tools Configurations'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_013.gif]]. With the ''External Tools Configurations'' open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_014.gif]] navigate to the ''JRE'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_015.gif]] and check the radio button next to ''Run in the same JRE as the workspace'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_016.gif]]. From here we can simply click ''Run'' to have the build execute [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_017.gif]].<br />
<br />
The build will run and from the output [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_018.gif]] we see that our .swf has been created. The important bit to read is this:<br />
<br />
''[fdt.launch.application] 644 bytes written to file /Users/OSX/_dev/fdt/AS3Project/bin/Main.swf in 2429 ms<br />
BUILD SUCCESSFUL''<br />
<br />
=<center>Customizing The Build and Using Multiple Targets</center>= <br />
<br />
With the basics down, lets extend our Ant build. It won't be very realistic, but it will demonstrate ways of extending Ant. <br />
<br />
First thing I want to do is give my build a name so it's not referred to as ''project'' and change the name of my target to ''compile'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_019.gif]].<br />
<br />
<syntaxhighlight lang="xml"><br />
<project name="AS3Project Build"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
</target><br />
</project><br />
</syntaxhighlight><br />
<br />
<br />
<br />
Next, I'll add a task to create a .SWC [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_020.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<project name="AS3Project Build"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
<fdt.launch.library projectname="AS3Project" target="bin/Main.swc"/><br />
</target><br />
</project><br />
</syntaxhighlight><br />
<br />
<br />
<br />
Then add some more tasks [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_021.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<project name="AS3Project Build"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
<fdt.launch.library projectname="AS3Project" target="bin/Main.swc"/><br />
</target><br />
<br />
<target name="browse"><br />
<fdt.browse location="${basedir}/bin/Main.swf" /><br />
</target><br />
<br />
<target name="zip"><br />
<zip destfile="${basedir}/deploy.zip" basedir="${basedir}/bin"/><br />
<move file="${basedir}/deploy.zip" todir="${basedir}/deploy" /><br />
</target><br />
<br />
</project><br />
</syntaxhighlight><br />
<br />
<br />
<br />
This is all pretty straight forward. <br />
*The new ''browse'' target will launch my browser and navigate it to the ''Main.swf''.<br />
* ''zip'' will create a zip file (this task is built into Ant).<br />
* ''move'' will move files (this task is built into Ant).<br />
<br />
For more info on the built in Ant tasks, check out an [http://ant.apache.org/manual/tasksoverview.htm overview of Ant tasks]. <br />
<br />
Last, I'm going to include a ''run.all'' target [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_022.gif]] and then set it as my default [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_023.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<target name="run.all" depends="compile,browse,zip"><br />
</target><br />
</syntaxhighlight><br />
<br />
<br />
Setting the default task is handy: running the file from the command line won't need a target argument, double clicking on the build file within the Ant view will run it, and the task in the Ant view is now blue - making it easier to read [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_024.gif]].<br />
<br />
To run everything, just double click on the Ant build file icon within the Ant view, and all the magic will start [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_025.gif]].<br />
<br />
Here is the build file in it's entirety:<br />
<br />
<syntaxhighlight lang="xml"><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<project name="AS3Project Build" default="run.all"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
<fdt.launch.library projectname="AS3Project" target="bin/Main.swc" /><br />
</target><br />
<br />
<target name="browse"><br />
<fdt.browse location="${basedir}/bin/Main.swf" /><br />
</target><br />
<br />
<target name="zip"><br />
<zip destfile="${basedir}/deploy.zip" basedir="${basedir}/bin" /><br />
<move file="${basedir}/deploy.zip" todir="${basedir}/deploy" /><br />
</target><br />
<br />
<target name="run.all" depends="compile,browse,zip"><br />
</target><br />
</project><br />
</syntaxhighlight><br />
<br />
= <center>Wrap Up</center> =<br />
This was just a taste of Ant, and enjoy using it with FDT.</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_and_Ant_TutorialFDT and Ant Tutorial2012-06-02T12:11:43Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:Ant.png|center]]<br />
Sometimes the build process can get pretty complex. For example, you may create several SWCs, SWFs, have some HTML files to be dynamically updated and files to be copied and uploaded. In these cases the launcher on it's own won't cut it. This is where Ant comes in.<br />
<br />
FDT ships with built in Ant tasks for you to use and at the same time, Ant provides a lot of useful tasks already. This intro will help get you acquainted with using FDT and Ant.<br />
<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=http://github.com/TeamFDT/Examples/blob/master/sample-projects/ant_finish.zip]]<br />
<br />
= <center>Getting Started</center> =<br />
Let's begin by downloading the project from the [[Basic AS3 Tutorial]] and then import it. If you're not sure how to import projects see the [[Sharing and Archiving Projects]] tutorial.<br />
<br />
While you don't need to import the project to follow along, it will jump start things for us.<br />
<br />
=<center>Create Your Build File</center>=<br />
With the project open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_001.gif]], let's begin by creating our ''build'' Ant file. Right click on the project and choose ''new>other…'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_002.gif]].<br />
<br />
Type ''xml'' in the filter field, choose ''XML'' from the ''XML'' folder and then click ''Next'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_003.gif]]. Name the file ''build.xml'' (it can be anything but ''build'' is the standard), save it within the root directory and then click ''Finish'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_004.gif]]. <br />
<br />
As of now, the file is a standard .XML file. We can edit the file as is and it will work but it would be immensely helpful if we had the syntax highlighting and auto completion like we have when editing ActionScript files. To do this, we want to make sure FDT opens this file up as an Ant build file.<br />
<br />
For FDT to recognize this .xml file as an Ant file, all we need to do is to do is add in this syntax [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_005.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<project><br />
<target><br />
</target><br />
</project> <br />
</syntaxhighlight><br />
<br />
<br />
Close the file and then open it back up within the editor. We need to do this because the first time FDT opened the file, it opened it as a generic .XML file - using the XML Editor. When the file is opened up and the Ant file syntax is recognized, it will open the file with the Ant Editor.<br />
<br />
When the file is opened up again, you will immediately recognize that FDT has detected an error: ''target element appears without a name attribute'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_006.gif]]. This is great, FDT now will tell us about syntax errors and any incomplete arguments (attributes) with our tasks.<br />
<br />
We also now have code hinting and auto completion. Move your cursor to the ''target'' task and begin typing ''name'' and then ''Ctrl+Space'' (autocomplete) and the ''name'' attribute will be filled in. Add a name, let's use ''default'', then save the file to have the errors recalculated in our ''Problems'' view.<br />
<br />
=<center>Your First Task: Compiling & JRE Error</center>=<br />
Within the ''task'' element, begin typing ''fdt.launch.application'' and use FDT's auto-complete to fill in the remainder of the element [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_007.gif]]. With the element created, add these three attributes to the element: ''projectname'' , ''mainclass'' and ''target''.<br />
<br />
<syntaxhighlight lang="xml"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf"/><br />
</syntaxhighlight><br />
<br />
<br />
This is the minimum needed to create a .SWF with FDT and Ant. Just like many other tasks in FDT, there are a few different ways to run Ant tasks. The easiest way is to execute tasks via the ''Ant View''. If the view isn't open already, open it via ''Window>Show View>Ant'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_008.gif]]. With the Ant view open, drag the ''build.xml'' file into the ''Ant'' panel [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_009.gif]] and then expand the elements and you'll see how the Ant View's contents match the build.xml file in the Editor [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_010.gif]].<br />
<br />
To start the build, just select the target ( ''default'' in our case ) within the Ant View [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_011.gif]] and then click the ''Run'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_012.gif]].<br />
<br />
Immediately we encounter an error:<br />
<br />
''Problem: failed to create task or type fdt.launch.application''<br />
<br />
This may seem frustrating at first, but when you understand how Ant, Java, FDT and your operating system work together it makes sense why this happens. By default, development with Eclipse (the platform FDT is built upon) recommends using separate Java Runtime Environments (JRE) when developing and testing applications. That's great for Java developers, but we don't need that type of sand boxing when creating .SWFs.<br />
<br />
We need to have the Ant build execute within the same JRE as FDT in order to have access to FDT's custom Ant tasks. Otherwise, it will run in a sandboxed environment that doesn't know anything about FDT. <br />
<br />
Fortunately for us, this is a simple fix - from the ''External Tools'' menu choose ''External Tools Configurations'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_013.gif]]. With the ''External Tools Configurations'' open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_014.gif]] navigate to the ''JRE'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_015.gif]] and check the radio button next to ''Run in the same JRE as the workspace'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_016.gif]]. From here we can simply click ''Run'' to have the build execute [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_017.gif]].<br />
<br />
The build will run and from the output [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_018.gif]] we see that our .swf has been created. The important bit to read is this:<br />
<br />
''[fdt.launch.application] 644 bytes written to file /Users/OSX/_dev/fdt/AS3Project/bin/Main.swf in 2429 ms<br />
BUILD SUCCESSFUL''<br />
<br />
=<center>Customizing The Build and Using Multiple Targets</center>= <br />
<br />
With the basics down, lets extend our Ant build. It won't be very realistic, but it will demonstrate ways of extending Ant. <br />
<br />
First thing I want to do is give my build a name so it's not referred to as ''project'' and change the name of my target to ''compile'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_019.gif]].<br />
<br />
<syntaxhighlight lang="xml"><br />
<project name="AS3Project Build"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
</target><br />
</project><br />
</syntaxhighlight><br />
<br />
<br />
<br />
Next, I'll add a task to create a .SWC [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_020.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<project name="AS3Project Build"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
<fdt.launch.library projectname="AS3Project" target="bin/Main.swc"/><br />
</target><br />
</project><br />
</syntaxhighlight><br />
<br />
<br />
<br />
Then add some more tasks [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_021.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<project name="AS3Project Build"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
<fdt.launch.library projectname="AS3Project" target="bin/Main.swc"/><br />
</target><br />
<br />
<target name="browse"><br />
<fdt.browse location="${basedir}/bin/Main.swf" /><br />
</target><br />
<br />
<target name="zip"><br />
<zip destfile="${basedir}/deploy.zip" basedir="${basedir}/bin"/><br />
<move file="${basedir}/deploy.zip" todir="${basedir}/deploy" /><br />
</target><br />
<br />
</project><br />
</syntaxhighlight><br />
<br />
<br />
<br />
This is all pretty straight forward. <br />
*The new ''browse'' target will launch my browser and navigate it to the ''Main.swf''.<br />
* ''zip'' will create a zip file (this task is built into Ant).<br />
* ''move'' will move files (this task is built into Ant).<br />
<br />
For more info on the built in Ant tasks, check out an [http://ant.apache.org/manual/tasksoverview.htm overview of Ant tasks]. <br />
<br />
Last, I'm going to include a ''run.all'' target [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_022.gif]] and then set it as my default [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_023.gif]]:<br />
<br />
<syntaxhighlight lang="xml"><br />
<target name="run.all" depends="compile,browse,zip"><br />
</target><br />
</syntaxhighlight><br />
<br />
<br />
Setting the default task is handy: running the file from the command line won't need a target argument, double clicking on the build file within the Ant view will run it, and the task in the Ant view is now blue - making it easier to read [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_024.gif]].<br />
<br />
To run everything, just double click on the Ant build file icon within the Ant view, and all the magic will start [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:09_025.gif]].<br />
<br />
Here is the build file in it's entirety:<br />
<br />
<syntaxhighlight lang="xml"><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<project name="AS3Project Build" default="run.all"><br />
<target name="compile"><br />
<fdt.launch.application projectname="AS3Project" <br />
mainclass="src/Main.as" target="bin/Main.swf" /><br />
<fdt.launch.library projectname="AS3Project" target="bin/Main.swc" /><br />
</target><br />
<br />
<target name="browse"><br />
<fdt.browse location="${basedir}/bin/Main.swf" /><br />
</target><br />
<br />
<target name="zip"><br />
<zip destfile="${basedir}/deploy.zip" basedir="${basedir}/bin" /><br />
<move file="${basedir}/deploy.zip" todir="${basedir}/deploy" /><br />
</target><br />
<br />
<target name="run.all" depends="compile,browse,zip"><br />
</target><br />
</project><br />
</syntaxhighlight><br />
<br />
= <center>Wrap Up</center> =<br />
This was just a taste of Ant, and enjoy using it with FDT.</div>Aklementhttp://fdt.powerflasher.com/docs/Launch_Configuration_TutorialLaunch Configuration Tutorial2012-06-02T12:11:21Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:001_0006x.png|center]]<br />
A core characteristic of FDT is the Launch Configuration. Having a clear understanding of how it works, will enable you to understand how the FDT builds your projects. This is an unique FDT feature that other IDEs can't even touch.<br />
<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=http://github.com/TeamFDT/Examples/blob/master/sample-projects/launcher_demo_finish.zip?raw=true]]<br />
<br />
= <center>Why Launch Configurations</center> =<br />
<br />
Customizable Launch Configurations gives developers a great deal of power and flexibility. While it would be much easier for beginners to have FDT force a particular file structure and naming conventions, as they become more and more familiar with FDT ( or any IDE ) they are eventually going to want to have things work their way. Here are some important concepts to understand when working with Launch Configurations:<br />
<br />
* Developers can set ANY class to act the ''Main'' or ''Document'' class of a project. As long as the Class exists within any source folder, it can be set as the Class to build your application (if it's a class that doesn't inherit from Sprite, FDT will throw a compile error).<br />
* You can easily change the name of the output .SWF to anything you want without having to alter any compiler arguments yourself.<br />
* A project does not itself contain launch or compile settings; instead, a project has one or more launch configurations (saved as files in your .settings folder) which contain the settings FDT will use to compile your .SWFs.<br />
<br />
That last point is probably the most different when coming from other IDEs. The best way to explain this is to demonstrate it.<br />
<br />
= <center>Getting Started</center> =<br />
<br />
Let's begin by downloading the project from the [[Basic AS3 Tutorial]] and then import it. If you're not sure how to import projects see the [[Sharing and Archiving Projects]] tutorial.<br />
<br />
While you don't need to import the project to follow along, it will jump start things for us.<br />
<br />
After importing the project created in the [[Basic AS3 Tutorial]] ( or creating your own ), expand the ''launch'' folder located within the ''.settings'' folder [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_001.gif]]. Here you can see the ''Main.launch'' file that contains launch settings for this project. Now, delete that file ( don't worry we'll make plenty more ) [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_002.gif]]. Make sure no file is open in the Editor ( if the Main.as class is open in the Editor close it ) then click on the ''Run'' button within the menu bar [[Image:Run button.gif]].<br />
<br />
What should happen next is FDT will show an ''Unable To Launch'' dialogue box [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_003.gif]].<br />
<br />
What's going on is, neither FDT nor our project themselves know how to compile a .SWF or .SWC. They rely on a Launch Configuration to tell them what settings to use in order to compile anything. FDT or a particular project are just like a plane and all your code are the passengers. In this scenario, think of the Launch Configurations as the pilot who know where to fly and how to get there. Just like a plane can have multiple pilots, FDT can have multiple launch configurations.<br />
<br />
== <center>Creating Configurations</center> ==<br />
<br />
In both the [[Basic AS3 Tutorial]] and the [[Flex / Air Tutorial]], it was demonstrated how FDT can create a Launch Configuration automatically by running the from the Flash Explorer [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_004.gif]] or by running from the Editor [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_005.gif]]. Instead we'll create a configuration completely from scratch. Begin by choosing ''Run Configurations...'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_006.gif]]. What will appear is FDT's [[Launch Configurations]] window. Select ''FDT SWF Application'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_007.gif]] and click on the ''New launch configuration'' icon at the top [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_008.gif]].<br />
<br />
For this example, I didn't have the project selected in the Flash Explorer and FDT didn't automatically fill in the ''Project'' field and gave the configuration a generic name of ''New_configuration'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_009.gif]]. <br />
<br />
Fill in a name for the configuration, I'll name this one ''launch_1'', and click the ''Browse'' button to choose a project [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_010.png]]. FDT will ask you to choose a project for this configuration, we only have one project open so only one appears, and click ''OK'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_011.gif]]. FDT will now warn you that ''You must choose a Main Class!'' - choose one by clicking on the ''Browse...'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_012.gif]]. Just like with choosing a Project before, chose your ''Main'' class here - only one file appears because our project only has one Class in it [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_013.gif]]. Now FDT tells us ''You must choose a swf output file!'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_014.gif]]. If you were to click ''Browse...'' this time, FDT will ask you to choose an already existing file. Let's not do this and instead create a new one. Fill in ''bin/launch_1.swf'' in the ''Output'' field. ''bin'' is the name and path of the folder I want to use and ''launch_1.swf'' is the name I want to give the .SWF [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_015.gif]].<br />
<br />
Finally, press the ''Run'' button to compile our .SWF [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_017.gif]].<br />
<br />
== <center>Working With Launchers</center> ==<br />
<br />
After hitting ''Run'', FDT will compile your .SWF. What you'll notice is, you can see the compilation output in the [[Console]] View and see the ''launch_1.swf'' in the ''bin'' folder [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_018.gif]]. What you also probably notice is:<br />
* FDT didn't show the .SWF.<br />
* FDT didn't save a launch configuration in the ''.settings/launch'' folder.<br />
<br />
While this may seem like an error or a hassle to deal with, this is actually a gem of a situation. We need to tell FDT what to do, if anything, after compiling our .SWF. As we'll soon see, we can start to do some really cool stuff. For now, lets get to viewing our .SWF.<br />
<br />
Get back to the ''Run Configurations'' window and click on the ''Start'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_019.gif]]. Check the box next to ''Open URI after compilation'' and click ''Browse'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_020.gif]] to choose which .swf to launch after compilation [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_021.gif]]. Next choose what you want FDT to use to view the .swf, lets use the ''External SWF Viewer'', and make sure that the viewer's width and height match your .SWF [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_022.gif]]. When ready, click ''Run'' to launch your .swf [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_023.gif]].<br />
<br />
== <center>Working With Different Viewers</center> ==<br />
FDT enables you to easily choose different ways of viewing your application.<br />
For web based projects, you can use either:<br />
<br />
*Browser<br />
*External SWF Viewer<br />
*Adobe Flash Player<br />
<br />
[[File:Choose_viewers.png|600px]]<br />
<br />
You can also point to any type of file, e.g. HTML & >SWF. This enables developer to choose a webserver/ HTML page to view content that has their just compiled target SWF embedded. This is handy when the 'Browser' target has been chosen.<br />
<br />
Before choosing the Adobe Flash Player as you're viewer, you'll need to set the location of it via FDT's preferences.<br />
<br />
[[File:Flash_player_debugger.png|600px]]<br />
<br />
== <center>Saving Launch Configurations</center> ==<br />
<br />
One last thing we need to cover before getting into more advanced topics with launchers, is to learn about saving our configurations. Saving configurations is important when we want to share or archive our projects to use later. If we were to delete our project right now, we wouldn't have our launch configuration to use at a later time or if we hand off the project to someone else.<br />
<br />
Saving configurations is straightforward and simple. Begin by once again opening the ''Run Configurations'' window and then choosing the ''Common'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_024.gif]]. Check the ''Shared file:'' radio button and then select ''Browse...'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_025.gif]]. Choose the ''launch'' folder ( you can choose any folder you like ) [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_026.gif]], and run the configuration once again [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_027.gif]]. After the configuration runs, your .swf will render and FDT will have created a launch configuration within the ''launch'' folder.<br />
<br />
== <center>Changing Compiler Options</center> ==<br />
<br />
There's no doubt that at some point you're going to want to adjust some compiler settings. Some things you may want to change include:<br />
<br />
* Background color<br />
* Frame rate<br />
* Size<br />
<br />
We'll do this via the ''Compiler Arguments'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_029.gif]]. Then select the ''Use launcher specific compiler arguments'' radio button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_030.gif]]. Then add an argument to change the .SWF's default size to 800x600 [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_031.gif]]:<br />
<br />
<syntaxhighlight lang="actionscript"><br />
-default-size=800,600<br />
</syntaxhighlight><br />
<br />
<br />
''*note: FDT's new compiling process requires that the ''-default-size'' argument be entered slightly differently than what is documented within the Flex API. Use the above syntax (note the comma: '','' ) as a template to change the width and height.<br />
<br />
If you ever need to find out what compiler arguments to use, click on the ''Show compiler documentation'' link on the bottom [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_032.gif]]. FDT will then open up your browser and navigate to the documentation home page [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_033.gif]].<br />
<br />
Run your launcher again and see the External SWF View pop up [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_034.gif]].<br />
<br />
A quick note here, notice how the External SWF Viewer's size is still 550x400. Our .SWF is launching at 800x600 and this will cause some odd scaling issues. To correct this, return to the ''Start'' tab of the ''Run Configurations'' window and adjust the width and height of the External SWF View to match your .SWF's default size [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_035.gif]].<br />
<br />
== <center>Creating Multiple Launch Configurations</center> ==<br />
<br />
If you remember earlier, we discussed how FDT's launcher setup doesn't force developers to have their project compile and launch in any specific way. Let's demonstrate this by simply creating another launch configuration that uses the same source code, but outputs a different .SWF name. Return to the ''Run Configurations'' window, select the ''launch_1'' configuration and click the duplicate icon on the top [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_036.gif]]. Rename it to ''launch_2'' and change the ''Output'' field to make a new .swf named ''launch_2.swf'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_037.gif]].<br />
<br />
Notice how this is using the same ''Main.as'' class as before, but we are creating a different .SWF. Run this configuration and notice how FDT will create a new launch configuration for us and save it within the ''launch'' folder and create a new ''launch_2.swf'' for us.<br />
<br />
== <center>Using The Launcher Chain</center> ==<br />
[[File:Launcher_chain.png]]<br />
<br />
Now we are going to put all of this together and demonstrate a clever way of using multiple launch configurations, compiler options, and the new [[Launcher Chain]].<br />
<br />
To get started, I'm going to clean things up a bit and delete these launch configurations and output .SWFs [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_038.gif]]. Next I'll create a new class, ''Ball'', and copy the code from ''Main.as''.<br />
<br />
''Main.as''<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flash.display.Sprite;<br />
<br />
public class Main extends Sprite {<br />
public function Main() {<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
''Ball.as''<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flash.display.Shape;<br />
import flash.display.Sprite;<br />
<br />
public class Ball extends Sprite {<br />
public function Ball() {<br />
var circle : Shape = new Shape();<br />
circle.graphics.beginFill(0xff0000);<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
}<br />
}<br />
}<br />
<br />
</syntaxhighlight><br />
<br />
Next, lets modify the source for ''Ball.as'' to include some compilation variables [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_040.gif]]:<br />
<br />
''Ball.as''<br />
<syntaxhighlight lang="actionscript"><br />
<br />
package {<br />
import flash.display.Shape;<br />
import flash.display.Sprite;<br />
<br />
public class Ball extends Sprite {<br />
public function Ball() {<br />
var circle : Shape = new Shape();<br />
<br />
CONFIG::RED{<br />
circle.graphics.beginFill(0xff0000); <br />
}<br />
<br />
CONFIG::BLUE{<br />
circle.graphics.beginFill(0x0000ff); <br />
}<br />
<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
Next use a [[Quickfix]] to generate the "CONFIG" namespace (CMD+1) [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_041.png]]. Then create a launch configuration named ''Red_Ball'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_042.gif]] that uses the ''Ball.as'' class and outputs a ''Red_Ball.swf''. Next, jump to the ''Compiler Arguments'' tab and add these arguments to the list [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_043.gif]]:<br />
<br />
<syntaxhighlight lang="actionscript"><br />
-define=CONFIG::RED,true<br />
-define=CONFIG::BLUE,false<br />
</syntaxhighlight><br />
<br />
<br />
and turn off ''Open URI after compilation'' within the ''Start'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_047.gif]].<br />
<br />
Now, create a copy of this configuration [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_044.gif]], call it ''Blue_Ball'' and have it save to a .swf named ''Blue_Ball.swf'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_045.gif]]. Before closing this configuration, update the ''Compiler Arguments'' so it's a little different than the ''Red_Ball'' configuration [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_046.gif]]: <br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
-define=CONFIG::RED,false<br />
-define=CONFIG::BLUE,true<br />
</syntaxhighlight><br />
<br />
<br />
and again make sure you turn off ''Open URI after compilation'' within the ''Start'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_047.gif]].<br />
<br />
Now, back to our ''Main.as'' class, update the code with the following [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_048.gif]]:<br />
<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flash.net.URLRequest;<br />
import flash.display.Loader;<br />
import flash.display.Sprite;<br />
<br />
public class Main extends Sprite {<br />
public function Main() {<br />
var red_loader : Loader = new Loader();<br />
var blue_loader : Loader = new Loader();<br />
<br />
red_loader.load(new URLRequest('Red_Ball.swf')); <br />
blue_loader.load(new URLRequest('Blue_Ball.swf')); <br />
<br />
blue_loader.x = 200;<br />
<br />
addChild(red_loader);<br />
addChild(blue_loader); <br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
Lastly, create a new configuration to compile our ''Main.as'' class [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_049.gif]]. Then jump over the the ''Launcher Chain'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_049.gif]], click the ''Add'' button and add the two other launch configurations [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_051.gif]]. Then reorder the chain so our other two configurations will compile before our ''Main'' launch configuration executes [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_052.gif]].<br />
<br />
Before hitting ''Run'', lets take a step back and think about what is going on:<br />
<br />
* We have one ''Ball.as'' class that draws a ball.<br />
* There are two different launch configurations that will each use the same ''Ball.as'' class but apply different compiler options and output options to create two different .SWFs.<br />
* A third launch configuration was created to compile our ''Main.as'' class which will load two other .SWFs ( which don't exist yet ).<br />
* The third launch configuration includes a custom ''Launcher Chain'' that will make sure the other two launch configurations (''Blue_Ball'' and ''Red_Ball'') will run first.<br />
<br />
Whew. It's a lot but lets hit ''Run'' and see what happens [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:07_053.gif]]. What we see here is:<br />
<br />
* FDT compiled two .SWFs for us, and didn't open them up (because we disabled ''launch URI...'' ) - applying specific compiler arguments to each.<br />
* FDT then compiled our ''Main.swf'' which in turn loaded in the two .SWFs FDT created for us.<br />
<br />
== <center>Add and use installed Web Browsers</center> ==<br />
<br />
Also see this tutorial on [http://www.funky-monkey.nl/blog/2012/01/02/adding-an-webbrowser-to-fdt-eclipse-on-mac-osx/ Adding an webbrowser to FDT / Eclipse on Mac OSX].<br />
<br />
In FDT you can add and use all Web Browsers which are installed on your Computer to view your compiled .SWF files. You have also the choice to use FDT's internal Web Browser.<br />
To add a new Web Browser, open the Preferences Dialog by clicking Menu ''FDT 4'' and then ''Preferences''. Expand tree ''General'' and select ''Web Browser''.[[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:Preferences.png]]<br />
Click button ''New'' to launch ''Add External Web Browser'' dialog. To add Firefox Browser enter the Browser name into ''Name'' field as well as the ''Location'' and the ''Parameters'' to launch[[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:Firefox.png]]. Click button ''OK'' to apply the changes. You can do the same with Safari[[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:Safari.png]] and other Web Browsers.<br />
<br />
To use the new added Web Browser as viewer, open ''Preference'' dialog, expand tree ''General'' and select ''Web Browser''. Click the radio button ''Use external web browser'' and check eg. ''Firefox'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:SelExtWebBrowser.png]]. Close the dialog by clicking button ''OK''.<br />
To get the new selected Web Browser used to display your .SWF file you need to change the Viewer configuration, too. Launch ''Run Configuration'' dialog by clicking menu ''Run'' and select ''Run Configurations…'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:RunConfiguration.png]]. Select the ''Start'' tab on the right side and select ''Browser'' in the drop down menu of the ''Viewer configuration'' area[[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:SelBrowConf.png]]. Click button ''Apply'' and ''Run'' to compile the project and display the .SWF file with the just configured Web Browser.<br />
<br />
=== <center>Specific workaround to use Google Chrome</center> ===<br />
<br />
Due to an issue in Eclipse you can't add Google's Chrome Browser like the other ones. Refer to [http://stackoverflow.com/questions/3304854/is-there-a-way-to-add-google-chrome-as-an-external-web-browser-in-flash-builder-s] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=297273] for more information.<br />
<br />
Create an executable script:<br />
<br />
''#!/bin/sh''<br />
<br />
''open -a 'Google Chrome' $1 &''<br />
<br />
and locate this into<br />
<br />
''/usr/bin''<br />
<br />
Open the Preferences Dialog by clicking Menu ''FDT 4'' and then ''Preferences''. Expand tree ''General'' and select ''Web Browser''.[[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:Preferences.png]]<br />
<br />
Click button ''New'' to launch ''Add External Web Browser'' dialog. To add Google Chrome Browser enter the Browser name into ''Name'' field as well as the ''Location'' and the ''Parameters'' to launch [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:GoogleChrome.png]]. Click button ''OK'' to apply the changes.<br />
<br />
= <center>Wrap Up</center>=<br />
As you can see, there's a lot of potential here within FDT's launcher, and launcher chain. Feel free to experiment and let us know what you do with it!</div>Aklementhttp://fdt.powerflasher.com/docs/Writing_Code_With_FDTWriting Code With FDT2012-06-02T12:10:37Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:001_0004x.png|center]]<br />
FDT’s most notable features are those associated with the Smart Editor. While we can't go over all the Smart Editor features, we'll take a look at some of the more powerful ones including code completion, code generation and FDT's formatter. <br />
<br />
In this walkthrough we'll use the project created in the [[Basic AS3 Tutorial]] as a base to explore FDT's code writing capabilities. <br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=http://github.com/TeamFDT/Examples/blob/master/sample-projects/writing_code_finish.zip?raw=true]]<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15745041|width=600|height=400}}<br />
<br />
= <center>Getting Started</center> =<br />
Let's begin by downloading the project from the [[Basic AS3 Tutorial]] and then import it. If you're not sure how to import projects see the [[Sharing and Archiving Projects]] tutorial.<br />
<br />
While you don't need to import the project to follow along, it will jump start things for us.<br />
<br />
= <center>Advanced Code Completion (context and convention based)</center> =<br />
<br />
[[Code Completion]], or content assist, is designed to help developers write code quickly. It's also useful when working with an API that is either new to you or so large that remembering all of it is not reasonable. It can be used to access variables, properties and methods (even methods defined in an objects superclass) - within either the currently active object or any object reference you are working with.<br />
<br />
== <center>Type Definition Auto Complete</center> ==<br />
With our project open, let's create another circle on the screen [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_001.jpg]]. <br />
<br />
<br />
<syntaxhighlight lang="actionscript" highlight="15"><br />
package {<br />
import flash.display.Shape;<br />
import flash.display.Sprite;<br />
<br />
/**<br />
* @author Powerflasher<br />
*/<br />
public class Main extends Sprite {<br />
public function Main() {<br />
var circle : Shape = new Shape();<br />
circle.graphics.beginFill(0xff0000);<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
<br />
another_circle = new Shape();<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
Start creating ''another_circle'' and as you begin typing ''Shape'' type, hit auto complete, ''Ctrl+Space'' (OSX) or ''Ctrl+Space'' (Windows), to see FDT's auto completion suggestions. When using auto complete, the more you type, the more FDT will filter out. <br />
<br />
Select the ''Shape'' type from the popup window by either using the arrow keys or clicking it with the mouse [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_002.jpg]].<br />
<br />
== <center>Reference, Property and Method Auto Complete</center> ==<br />
Next, let's use one of FDT's [[Quickfixes]], more on those next, to quickly create a field variable. Trigger Quickfix, ''Cmd+1'' (OSX) or ''Ctrl+1'' (Win), and choose ''Create field...'' [http://fdt.powerflasher.com/docs/File:04_003.jpg]. After that hit ''enter'' or ''return'' to accept the code generation and continue editing. Let's then continue using auto complete to quickly access the object's ''graphics'' methods [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_004.jpg]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_005.jpg]].<br />
<br />
Continue creating our circle using auto completion [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_006.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flash.display.Shape;<br />
import flash.display.Sprite;<br />
<br />
/**<br />
* @author Powerflasher<br />
*/<br />
public class Main extends Sprite {<br />
private var another_circle : Shape;<br />
public function Main() {<br />
var circle : Shape = new Shape();<br />
circle.graphics.beginFill(0xff0000);<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
<br />
another_circle = new Shape();<br />
circle.graphics.beginFill(0x00ff00);<br />
circle.graphics.drawCircle(300, 300, 50);<br />
addChild(another_circle);<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
= <center>QuickFixes</center> =<br />
[[File:04_009x.png|center]]<br />
To many developers, [[QuickFixes]] are their favorite feature. QuickFixes are contextual code generation that you can use to fix errors quickly and develop in a ''Coding By Intention'' fashion. This tutorial won't go over all of FDT's QuickFixes, but it will give a great intro to using many of the most popular ones.<br />
<br />
== <center>Class & Interface Generation</center> ==<br />
<br />
FDT's Class & Interface Generation allows developers to create create classes on the fly. In our example, I want to encapsulate this circle drawing logic into a Class. To begin, I'll rename this ''Shape'' type definition to a new Class I want to create named ''Circle'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_007.jpg]]. <br />
<br />
<syntaxhighlight lang="actionscript"><br />
another_circle = new Circle();<br />
</syntaxhighlight><br />
<br />
<br />
FDT will flag this an en error because I haven't created it yet [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_008.jpg]]. I'll use Quickfix to generate the class for me [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_009.jpg]].<br />
<br />
When invoked, FDT will open the New ActionScript Class Wizard with the class name and package location ( in this case there is none since we're on the top level ) [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_010.jpg]]. Have this class inherit from Shape and then hit ''Finish''. When created, FDT will open our new class in the editor [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_011.jpg]].<br />
<br />
== <center>Method Generation</center> ==<br />
<br />
Next thing I want to do is jump back to the ''Main'' class and change the type declaration of ''another_circle'' at the top to match the new class we created.<br />
<br />
<syntaxhighlight lang="actionscript"><br />
private var another_circle : Shape;<br />
</syntaxhighlight><br />
<br />
<br />
Even though there is no error here, because our new Circle class ''is'' a Shape, when I use auto completion, FDT will auto complete to the Shape class and not provide code hinting for any new methods or properties we create. Jump to the declaration of the class by placing the cursor over the variable name and hit ''F3'' for [[Jump To Declaration]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_012.jpg]]. Once here, change the Type from Shape to Circle [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_013.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript"><br />
private var another_circle : Circle;<br />
</syntaxhighlight><br />
<br />
<br />
With our class created, we can easily create methods in that class from anywhere. What I want to do is, move the bit of code where we create the circle, into the Circle class. Begin by writing the name of the method you want to generate and make sure to include the executing parenthesis ''()'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_014.jpg]]. In this case, I'll take it a bit further and show how FDT will automatically edit the method signature when generating the method. I'll add some parameters to the new method [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_015.jpg]] and then trigger Quickfix.<br />
<br />
<syntaxhighlight lang="actionscript"><br />
circle.draw_circle(0xff0000, 50);<br />
</syntaxhighlight><br />
<br />
<br />
When the Quickfix is executed, FDT will navigate to the target Class and write the method for us and edit the signature to match the parameter types we had put in before. If you like, tab through the fields in case you want to change the names of the parameters [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_016.jpg]]. <br />
<br />
Now fill in the code for this method [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_017.jpg]]:<br />
<br />
<syntaxhighlight lang="actionscript"><br />
public function draw_circle(color : int, size : int) : void {<br />
this.graphics.beginFill(color);<br />
this.graphics.drawCircle(0, 0, size);<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
Return to ''Main.as'' and remove the code we don't need anymore [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_018.jpg]].<br />
<br />
Next I'll create a new method in this class, ''draw_circles()'', [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_019.jpg]] select the code I want to move by holding down shift and pressing the up arrow [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_020.jpg]], release shift and then hold down <br />
''option'' and tap the down arrow to move the code to the new method [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_021.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flash.display.Sprite;<br />
<br />
/**<br />
* @author Powerflasher<br />
*/<br />
public class Main extends Sprite {<br />
private var another_circle : Circle;<br />
public function Main() {<br />
draw_circles();<br />
}<br />
<br />
private function draw_circles() : void {<br />
var circle : Shape = new Shape();<br />
circle.graphics.beginFill(0xff0000);<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
<br />
another_circle = new Circle();<br />
another_circle.draw_circle(0xff0000, 50);<br />
addChild(another_circle);<br />
}<br />
}<br />
}<br />
<br />
</syntaxhighlight><br />
<br />
== <center>Reference Generation</center> ==<br />
<br />
Of the QuickFixes, reference generation is one of the most used. Using this Quickfix, developers can quickly create field variables and local variabless. We used this before to create our ''another_circle'' field variable before. I'm going to use this again to change the local variable ''circle'' to a field variable. Do this by just changing the type from ''Shape'' to ''Circle'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_022.jpg]] and then removing the keyword ''var'' and the type declaration [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_023.jpg]]. <br />
<br />
Last I'll invoke Quickfix to change this into a field variable [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_024.jpg]] and then use the ''draw_circle'' method to remove some unneeded code [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_025.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flash.display.Shape; <br />
import flash.display.Sprite;<br />
<br />
/**<br />
* @author Powerflasher<br />
*/<br />
public class Main extends Sprite {<br />
private var another_circle : Circle;<br />
private var circle : Circle;<br />
public function Main() {<br />
draw_circles();<br />
}<br />
<br />
private function draw_circles() : void {<br />
circle = new Circle();<br />
another_circle.draw_circle(0xff0000, 100);<br />
addChild(circle);<br />
<br />
another_circle = new Circle();<br />
another_circle.draw_circle(0xff0000, 50);<br />
addChild(another_circle);<br />
}<br />
}<br />
}<br />
<br />
</syntaxhighlight><br />
<br />
== <center>Property Generation</center> ==<br />
<br />
There's a good chance that sometime in the future I am going to want to read or change the color of one of our circles. I could jump to the ''Circle'' class and create a field variable there, but it'd be faster to create the property here from this Main class. Creating properties in this fashion is similar to the method generation described before. Simply write the name of the property, I'm using ''color'' in this case, you want to create as well as make the assignment [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_026.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript" highlight="4"><br />
private function draw_circles() : void {<br />
circle = new Circle();<br />
circle.draw_circle(0xff0000, 100);<br />
circle.color = 0x00ff00;<br />
addChild(circle);<br />
<br />
another_circle = new Circle();<br />
another_circle.draw_circle(0xff0000, 50);<br />
addChild(another_circle);<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
After selecting the Quickfix, FDT wil open the target class in the editor and allow you to make any final adjustment to it [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_027.jpg]]. While I'm here, I'll jump to my ''draw_circle'' method and save that color assignment [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_028.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript" highlight="2"><br />
public function draw_circle(color : int, size : int) : void {<br />
this.color = color;<br />
this.graphics.beginFill(color);<br />
this.graphics.drawCircle(0, 0, size);<br />
}<br />
</syntaxhighlight><br />
<br />
== <center>Getter and Setter (Accessor and Mutator) Generation</center> ==<br />
<br />
While this public property created before works for reading the color, it doesn't actually help if you want to change the color. In that case, let's create both a getter and setter to take care of this. Because field variables and methods can't have the same name, I'll quickly edit the name of ''color'' to ''_color'' and make it a private property [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_029.jpg]]. Next I'll use a Qucikfix to have FDT generate both a getter and a setter [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_030.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript"><br />
package {<br />
import flash.display.Shape;<br />
<br />
public class Circle extends Shape {<br />
private var _color : int;<br />
<br />
public function Circle() {<br />
}<br />
<br />
public function draw_circle(color : int, size : int) : void {<br />
this._color = color;<br />
this.graphics.beginFill(color);<br />
this.graphics.drawCircle(0, 0, size);<br />
}<br />
<br />
public function get color() : int {<br />
return _color;<br />
}<br />
<br />
public function set color(color : int) : void {<br />
_color = color;<br />
}<br />
}<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
With the methods created [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_031.jpg]], I'll generate a property to record the size of the circle by typing ''size'' and then use auto complete to create the property [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_032.jpg]]. I'll then jump to the ''draw_circle'' method and record that property [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_033.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript" highlight="3"><br />
public function draw_circle(color : int, size : int) : void {<br />
this._color = color;<br />
this.size = size;<br />
this.graphics.beginFill(color);<br />
this.graphics.drawCircle(0, 0, size);<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
Next I'll go to my setting function, and adjust it so when I change the color of the circle, this circle will redraw itself with the new color [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_034.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript"><br />
public function set color(color : int) : void {<br />
_color = color;<br />
this.graphics.clear();<br />
this.graphics.beginFill(color);<br />
this.graphics.drawCircle(0, 0, this.size);<br />
}<br />
</syntaxhighlight><br />
<br />
== <center>Event Handler Generation</center> ==<br />
<br />
The last Quickfix we'll cover in this tutorial will be event handler generation. Now that the ''Circle'' class is setup to easily change color, I'm going to write some code so that whenever I click the stage, the circles will change to a random color.<br />
<br />
Jump back to your Main class, and within the constructor, add an event listener [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_035.jpg]] to the stage for a mouse event [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_036.jpg]]. When I've written the name of the event handler I want to execute, I can invoke Quickfix to auto generate the method for me [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_037.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript" highlight="7"><br />
public class Main extends Sprite {<br />
private var another_circle : Circle;<br />
private var circle : Circle;<br />
<br />
public function Main() {<br />
draw_circles();<br />
this.stage.addEventListener(MouseEvent.CLICK, change_color);<br />
}<br />
<br />
private function draw_circles() : void {<br />
circle = new Circle();<br />
circle.draw_circle(0xff0000, 100);<br />
circle.color = 0x00ff00;<br />
addChild(circle);<br />
<br />
another_circle = new Circle();<br />
another_circle.draw_circle(0xff0000, 50);<br />
addChild(another_circle);<br />
}<br />
</syntaxhighlight><br />
<br />
<br />
After executing the Quickfix [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_038.jpg]], fill in the code that will change the color of our circles [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_039.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript" ><br />
public function Main() {<br />
draw_circles();<br />
this.stage.addEventListener(MouseEvent.CLICK, change_color);<br />
}<br />
<br />
private function change_color(event : MouseEvent) : void {<br />
another_circle.color = 0xffffff * Math.random();<br />
circle.color = 0xffffff * Math.random();<br />
<br />
another_circle.x = stage.stageWidth * Math.random();<br />
another_circle.x = stage.stageWidth * Math.random();<br />
<br />
circle.x = stage.stageWidth * Math.random();<br />
circle.y = stage.stageHeight * Math.random();<br />
}<br />
</syntaxhighlight><br />
<br />
= <center>Organize Imports</center> =<br />
<br />
During the course of writing code, either you will need to import an object into your class or unused imports will accumulate. Using [[Organize Imports]], ''Cmd+Shift+O'' (OSX) or ''Ctrl+Shift+O'' (Win) will both remove unused import statements and add any import statements your code needs.<br />
<br />
With our ''Main'' class active in the editor [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_040.jpg]], use the [[Organize Imports]] key stoke to get rid of that unused ''Shape'' import statement [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_041.jpg]].<br />
<br />
<syntaxhighlight lang="actionscript" highlight="2"><br />
import flash.display.Sprite;<br />
import flash.display.Shape;<br />
</syntaxhighlight><br />
<br />
= <center>Code Formatter</center> =<br />
<br />
The last thing to go over in this tutorial will be using FDT's [[Code Formatter]]. The code formatter allows you to define how your code is structured including while space, wrapping braces, indentation, and blank lines. Check out the [[Code Formatter]] docs to learn how to customize the code formater and even how to setup project specific formatting.<br />
<br />
In this example, there isn't much formatting that needs to be taken care of. The only one that sticks out is how the constructor is pushed up against the field variables [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_042.jpg]]. To correct this, I'll call the auto formatter, ''Cmd+Shift+F'' (OSX ) or ''Ctrl+Shift+F'' (Win), and FDT will adjust the blank lines to provide some space for easier reading [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:04_043.jpg]].<br />
<br />
= <center>Wrap Up</center> =<br />
<br />
FDT has many, many more features to be explored. Stay tuned for more tutorials!</div>Aklementhttp://fdt.powerflasher.com/docs/Flex_/_Air_TutorialFlex / Air Tutorial2012-06-02T12:10:08Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:001_0002.png|center|600px]]<br />
With FDT 4, developers not only have full Flex 4 support, but also access to FDT's Smart Editor features such as [[Quickfixes]] and [[Auto Completion]] while editing both Actionscript and MXML. For this tutorial, we'll use the Flex framework to build a simple AIR web browser.<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=http://github.com/TeamFDT/Examples/blob/master/sample-projects/flex_air_finish.zip?raw=true]]<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15601474|width=600|height=400}}<br />
<br />
= <center>Creating Our Project</center> =<br />
[[File:03_004x.jpg|center]]<br />
Once you have FDT open, you have a few different ways of creating a new project. <br />
You can:<br />
<br />
*Click ''Create new Flash Project'' via the [[Welcome Screen]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_001.jpg]].<br />
*Right click in the [[Flash Explorer]] and choose ''New Flash Project'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_002.jpg]].<br />
*Choose ''New Flash Project'' from the ''File>New menu'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_003.jpg]]. <br />
<br />
Right away you'll see FDT's new [[Project Template Wizard]] open. Give the project a new name, ''AIR App'' will work fine, and choose the ''Empty Flex 4 AIR Project'' template from the ''Desktop'' folder on the left [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_004.jpg]]. When a valid project name has been added and a project template has been selected, the ''Finish'' button will highlight. Click ''Finish'' to continue.<br />
<br />
== <center>Our Project In The Flash Explorer</center> ==<br />
Now we can see the project FDT created for us within the Flash Explorer. Click on the little arrow next to the project icon to expand it's contents. Here you can see the basic FDT project setup and see what our template has setup for us.<br />
<br />
*This top SDK icon tells us the [[Project Type]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_006.jpg]].<br />
*The ''src'' folder has been setup as our default [[Source Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_007.jpg]].<br />
*The ''bin'' folder is set as the default [[Output Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_008.jpg]].<br />
*The ''.settings'' folder and ''.project'' file are what FDT uses to keep track of [[Project Settings]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_009.jpg]].<br />
<br />
= <center>Creating Your First Class</center> =<br />
To run and build a Flash Project, FDT only needs one file. If you're familiar with Flash Authoring [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_010.jpg]] or Flash Builder [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_011.jpg]], this is like creating your ''Document Class'' or ''Main'' class. Create this file by right clicking on the ''src'' folder and choosing ''new>MXML Class'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_012.jpg]]. What pops up is FDT's [[New MXML Class Wizard]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_013.jpg]]. Once here, fill in a package path ''demo.powerflasher'', add a valid class name, ''Main'' is pretty standard , and then define the superclass by clicking on the ''Browse...'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_014.jpg]]. For this AIR application, we'll use a WindowedApplication component. Filer the component by beginning to type ''Windowed'' within the search input box on the top and when you see ''WindowedApplication - mx.core'' click on that and hit the ''OK'' button. Finally hit the ''OK'' button to finish [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_015.jpg]].<br />
<br />
FDT will now create a new Class for you automatically and open it within the [[Editor View]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_016.jpg]]. If some reason it didn't open for you, double click on the ''Main.mxml'' file within the Flash Explorer. With our ''Main.mxml'' file open, let's being by setting some application settings.<br />
<br />
== <center>Editing MXML and ActionScript with FDT's Smart Editor Features</center> ==<br />
Using FDT's [[Auto Completion]], begin filling in properties for this application. By default FDT's auto completion is triggered by hitting ''Ctrl+Space'' on OSX and ''Ctrl+Space'' on Windows. When auto completion is engaged, it will display a preview of properties and methods associated with this component. Continue typing the name of the desired property and FDT will being filtering the results. When you're close to what you want, use the up and down arrows to select the desired property and hit enter [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_017.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" paddingBottom="0" <br />
paddingLeft="0" paddingRight="0" paddingTop="0"><br />
</syntaxhighlight><br />
<br />
<br />
While editing properties of the component, the current line may begin to extend off the screen [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_018.jpg]]. You can tidy up things by using another of FDT's smart editor features, [[Auto Formatter]]. By default, the key binding for the auto formatter is ''Cmd+Shift+F'' (OSX) and ''Ctrl+Shift+F'' (Windows) [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_019.jpg]].<br />
<br />
== <center>Creating MXML Components</center> ==<br />
Next lets add some Flex components. Let's begin by creating a navigation bar for the application. Again, using auto completion, create an application control bar [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_020.jpg]], then two buttons and a text input component [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_021.jpg]]. Next we'll create the HTML container to hold render the downloaded webpage [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_022.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home"/><br />
<mx:Button label="Go" id="go"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight ><br />
<br />
<br />
<br />
If your wondering why we have access to the HTML container, it's because this project template has been defined as a Flex AIR application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_023.jpg]]. When expanding the [[Linked SWCs]] Icon You can see all the .SWCs that were included in the build path by default when this template was created [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_024.jpg]]. Exploring the linked .SWCs here, we can see references to classes associated with the Flex AIR SDK [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_025.jpg]].<br />
<br />
Getting back to application, so far we've only coded MXML components. If we were to launch this application now, we'd only see Flex components on the screen, but nothing would happen when we interact with them.<br />
<br />
== <center>Using Quickfixes</center> ==<br />
[[File:001_0002x.png|center]]<br />
The first thing I want to happen is, I want FDT to automatically download a preset home page when the application loads. Lets do this by using FDT's auto completion for an ''applicationComplete'' handler, and then write in a function that we will soon create. Write in a function ''set_up()'' and notice how FDT automatically flags this as an error. <br />
<br />
<br />
<syntaxhighlight lang="mxml" highlight="4"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home"/><br />
<mx:Button label="Go" id="go"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight><br />
<br />
<br />
This is because FDT knows this event handler doesn't exist yet, and it's letting us know. To correct this we'll use what many consider one of FDT's most powerful feaures, [[QuickFixes]]. A quickfix is something coders use to write code faster and correct errors quickly. In this case, an error, invoking quickfix will cause FDT to determine possible corrections depending on the type of error. By default, the quickfix key stroke is ''Ctrl+1'' for Windows and ''Cmd+1'' for OSX. Place your cursor on the same line as the error and invoke quickFix [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_026.jpg]]. In this case, FDT is suggesting that the error can be fixed by creating a method ''set_up''. That is exactly what I want, so I will select that.<br />
<br />
When selected, FDT will deduce that a ''Script'' block has not been created, and will create one for us, as well as create the ''set_up'' method [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_027.jpg]].<br />
<br />
Next I'll continue to add code and [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_028.jpg]] use FDT's auto completion to tell me what components are available and then use another quickfix to create a constant in my application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_029.jpg]]. Next thing I want to do is create more event handlers for my Flex components, again using a combination of auto completion and quick fixes to have FDT write the code for me [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_030.jpg]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_031.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
<br />
<mx:Script><br />
<![CDATA[<br />
private static const HOME_URL : String = "http://www.fdt.powerflasher.com/";<br />
<br />
private function set_up() : void {<br />
urlTextbox.text = HOME_URL;<br />
}<br />
<br />
private function go_home(event : MouseEvent) : void {<br />
}<br />
<br />
private function update_url(event : MouseEvent = null):void {<br />
}<br />
]]><br />
</mx:Script><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home" click="go_home(event)"/><br />
<mx:Button label="Go" id="go" click="update_url(event)"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight><br />
<br />
== <center>Navigation Shortcut</center> ==<br />
I'll then quickly jump to one of the callbacks by using the [[Navigation Shortcut]] '''F3'''. By default, '''F3''' will take me right to the declaration of whatever property or method I currently have my cursor over. Now I'll just fill in some code to make the application function [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_032.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<br />
<br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
<br />
<mx:Script><br />
<![CDATA[<br />
private static const HOME_URL : String = "http://www.fdt.powerflasher.com/";<br />
<br />
private function set_up() : void {<br />
urlTextbox.text = HOME_URL;<br />
update_url();<br />
}<br />
<br />
private function go_home(event : MouseEvent) : void {<br />
urlTextbox.text = HOME_URL;<br />
update_url();<br />
}<br />
<br />
private function update_url(event : MouseEvent = null):void {<br />
if(urlTextbox.text.substr(0, 7) == "http://") {<br />
htmlControl.location = urlTextbox.text;<br />
} else {<br />
htmlControl.location = urlTextbox.text = "http://" + urlTextbox.text;<br />
}<br />
}<br />
]]><br />
</mx:Script><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home" click="go_home(event)"/><br />
<mx:Button label="Go" id="go" click="update_url(event)"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight><br />
<br />
= <center>Compiling The Application</center> =<br />
[[File:001_0003x.png|center|300px]]<br />
To build and run this AIR app all you need to do is right click on our ''Main'' file within the editor and choose ''Run As>FDT SWF Application'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_033.jpg]] or right click on the file within the Flash Explorer and choose ''Run As>FDT SWF Application'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_034.jpg]].<br />
<br />
When ''Run As>FDT SWF Application'' is selected, FDT will begin building your application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_035.jpg]] and when it's done, it will open the [[AIR Debug Launcher (ADL)]] and run our AIR application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_036.jpg]]. <br />
<br />
After viewing your .SWF, close the ADL and confirm your .SWF was created by opening up your ''bin'' output folder and looking for ''Main.swf'' as well the [[AIR Application Descriptor File]] that FDT created for us [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_037.jpg]].<br />
<br />
== <center>Adjusting Compilation Settings</center> ==<br />
Before concluding this tutorial, we'll quickly go over making an adjustment to our [[Run Configuration]]. There's are a few things to adjust. <br />
<br />
* Give the launch configuration a name.<br />
* Change the size of my application, to 800 x 600.<br />
* Change the name of my application.<br />
<br />
I'll quickly add a ''title'' property and adjust the application dimensions to 800x600:<br />
<br />
<br />
<syntaxhighlight lang="mxml" highlight="3"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
title="FDT Flex / AIR Applicaiton" width="800" height="600"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
</syntaxhighlight><br />
<br />
<br />
Then move on to editing my launch configuration.<br />
<br />
To begin, go to the ''Run'' menu and choose ''Run Configurations...'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_038.jpg]]. This will open the [[Run Configurations Window]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_039.jpg]]. This is were developers can make changes to any launch configuration for any open projects. What makes Run configurations powerful is that they are largely independent from your project and thus have the flexibility to add or change settings very easily. To learn more check out the [[Launch Configuration Tutorial]] tutorial.<br />
<br />
Getting back to our AIR app, the next thing to do is to change the name of the configuration to something more meaningful, let's call it''AIR Web Browser'' then adjust the output name of the .SWF that FDT creates to ''MyApp.swf'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_040.jpg]]. Next jump to the ''Start'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_041.jpg]] where I can tell FDT how I want to preview this app [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_042.jpg]]. I'll need to make sure that the name of my new .SWF is added here - otherwise it will open the .SWF I created last time - and change the the settings of the viewer to match the settings of my application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_042.jpg]].<br />
<br />
In this case, the ADL will automatically fit the size of the application I set here; however, not all Flex or AS3 projects are using these same components, and some distortion will occur if the viewer I'm using is a different size than the application I'm building. If you've ever opened a .SWF with the stand alone player or a web browser without any HTML, you'll know about scaling issues.<br />
<br />
Recompile and see our new AIR preview [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_044.jpg]].<br />
<br />
= <center>Wrap Up</center> =<br />
Congratulations, you’ve built an AIR application using FDT and Flex. From here, you’ll probably want to learn more about editing Launch Configurations and compiler options such as .SWF size and background color. See our [[Launch Configuration Tutorial]] for more info on that.<br />
<br />
<br />
FAQ<br />
*Q: How Do I change .SWF settings like background color or size?<br />
*A: Check out the [[Launch Configuration Tutorial]] tutorial to learn about different ways to compile and view your Flash Applications<br />
<br />
*Q: Does my class need to be named ''Main''.<br />
*A: Not at all - any legal class name works. FDT has a very powerful and flexible way of building and running your applications. Check out [[Launch Configuration Tutorial]] for more info.<br />
<br />
*Q: Why is it that when I click on my project within the Flash Explorer and then go to the [[Run Menu]], I don't see my ''Main'' class, ''(no launch history)'' or I see ''Run As>FDT SWC Library''<br />
*A: FDT works differently than other IDEs. It uses [[Launch Configurations]] and doesn't force you to hardcode any settings. This includes compiler options, your 'Main' class or the name of your output .swfs. You can even create many different launch configurations for one project. Learn more with the [[Launch Configuration Tutorial]].</div>Aklementhttp://fdt.powerflasher.com/docs/Basic_AS3_TutorialBasic AS3 Tutorial2012-06-02T12:09:32Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:Basic_as3_splash.png|center]]<br />
Beginning with FDT4, creating AS3 projects has never been easier. FDT now features powerful template management that is designed to help developers get up and running pretty quick.<br />
<br />
If you haven't installed FDT and created your workspace yet, check out the [[Installing and Running FDT]] tutorial to guide you through the process.<br />
<br/><br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=http://github.com/TeamFDT/Examples/blob/master/sample-projects/as3_basic_finish.zip?raw=true]]<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15571978|width=600|height=400}}<br />
<br />
= <center>Creating Your First Project</center> =<br />
[[File:02_004.jpg|center|200px]]<br />
Once you have FDT open, you have a few different ways of creating a new project. You can click ''Create new Flash Project'' via the [[Welcome Screen]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_001.jpg]], right click in the [[Flash Explorer]] and choose ''New Flash Project'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_002.jpg]] or choose ''New Flash Project'' from the ''File>New'' menu [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_003.jpg]]. <br />
<br />
[[File:02_002.jpg|center|200px]]<br />
<br />
Right away you'll see FDT's new [[Project Template Wizard]] open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_004.jpg]]. Give the project a name, ''AS3 Project'' will work fine, and let's stick with choosing ''Empty AS3 Project''. When a valid project name has been added and a project template has been selected, the ''Finish'' button will highlight - so click finish to continue.<br />
<br />
[[File:02_005.jpg|center|200px]]<br />
<br />
= <center>Creating Your First Class</center> =<br />
Within the Flash Explorer we can see the project FDT created for us. Click on the little arrow next to the project icon to expand it's contents. Here you can see the setup for a basic FDT project and see what our ''Empty AS3 Project'' template has setup for us.<br />
[[File:02_006.jpg|center|200px]]<br />
<br />
* This top SDK icon tells us the [[Project Type]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_007.jpg]]<br />
* The ''src'' folder has been setup as our default [[Source Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_008.jpg]] <br />
* The ''bin'' folder is set as the default [[Output Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_009.jpg]] <br />
* The ''.settings'' folder and ''.project'' file are what FDT uses to keep track of [[Project Settings]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_010.jpg]]<br />
<br />
To run and build a Flash Project, FDT only needs one file. If you're familiar with Flash Authoring [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_011.jpg]] or Flash Builder [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_012.jpg]], this is like creating your Document Class or Main class. Create this file by right clicking on the ''src'' folder and choosing ''new>AS Class''.<br />
<br />
[[File:02_012x.jpg|center|200px]]<br />
<br />
What pops up is FDT's [[New ActionScript Class Wizard]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_013.jpg]]. Once here, we'll just fill in a valid class name, ''Main'' is pretty standard.<br />
<br />
[[File:02_014.jpg|center|200px]]<br />
<br />
Then define the superclass by clicking on the ''Browse...'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_015.jpg]]. You can use either ''Sprite'' or ''MovieClip'' for superclass and unless you have a special reason, Sprite will work fine. Filter the Sprite class by beginning to type ''Sprite'' within the search input box on the top and when you see ''Sprite - flash.display'' click on that and hit the ''OK'' button. After filling in a valid class name and a valid superclass to extend, hit the ''OK'' button.<br />
<br />
[[File:02_016.jpg|center|200px]]<br />
<br />
FDT will now create a new class for you automatically and open it within the [[Editor View]]. If some reason it didn't open for you, double click on the ''Main.as'' file within the Flash Explorer [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_017.jpg]].<br />
<br />
=<center>Writing Code For Your Class</center>=<br />
With our ''Main.as'' file open, let's create a simple red circle on the screen and then run our file.<br />
<br />
Within the [[constructor]] of your class, add this bit of code to add a red circle to the stage.<br />
<br />
[[File:02_018.jpg|center|200px]]<br />
<br />
<syntaxhighlight lang="actionscript"><br />
var circle : Shape = new Shape();<br />
circle.graphics.beginFill(0xff0000);<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
</syntaxhighlight><br />
<br />
<br />
When typing this code within the constructor, FDT will flag some errors. Resolve these errors by using one of FDT's [[Smart Editor]] features: [[Organize Imports]]. Invoke this by pressing ''Cmd+Shift+O'' (OSX) or ''Ctrl+Shift+O'' (Windows). FDT will automatically add the missing import statements [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_019.jpg]].<br />
<br />
=<center>Launch Your SWF</center>=<br />
[[File:02_020x.jpg|center]]<br />
To quickest way to launch your application is to right click on the ''Main'' class within the editor and select ''Run As>FDT SWF Application''.<br />
<br />
[[File:02_020.jpg|center|200px]]<br />
<br />
FDT will being the build process, as can been seen in the [[Console]] view [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_021.jpg]], and when complete, FDT will launch the [[External SWF Viewer]] that runs our .SWF with the red circle on the [[Stage]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_022.jpg]]. <br />
<br />
With compilation successful, FDT will have created a .SWF in your [[Output Folder]] ''bin'' by default and created a [[Launch Configuration]] located within the folder ''.settings>launch''.<br />
<br />
[[File:02_023.jpg|center|200px]]<br />
<br />
After viewing your .SWF, close the External SWF Viewer and confirm your .SWF was created by opening up your ''bin'' output folder and looking for ''Main.swf''.<br />
<br />
=<center>Wrap Up</center>=<br />
Congratulations, you’ve built your first FDT application. From here, you’ll probably want to learn more about editing Launch Configurations and compiler options such as .SWF size and background color. See our [[Launch Configuration Tutorial]] for more info on that.<br />
<br />
=<center>FAQ</center>=<br />
*Q: My project compiled but it didn't open in the External SWF Viewer<br />
*A: Check to see if [http://www.adobe.com/support/flashplayer/downloads.html Flash Player] and [http://www.java.com/en/download/installed.jsp Java] are properly installed.<br />
<br />
*Q: How Do I change .SWF settings like background color or size?<br />
*A: Check out the [[Launch Configuration Tutorial]] tutorial to learn about different ways to compile and view your Flash Applications<br />
<br />
*Q: Does my class need to be named ''Main''.<br />
*A: Not at all - any legal class name works. FDT has a very powerful and flexible way of building and running your applications. Check out the [[Launch Configuration Tutorial]] for more info.<br />
<br />
*Q: Why is my output swf named ''Main.swf'' and why is my launch configuration named ''Main''.<br />
*A: When clicking on a Class and choosing ''Run As...'' from either the Editor View or the Flash Explorer - if FDT doesn't detect that a launch configuration already exists for that file, FDT will create a new one. The new launch configuration created will have the same name as the Class that was selected when choosing ''Run As...'' or ''Debug As...''.<br />
<br />
*Q: Why is it that when I click on my project within the Flash Explorer and then go to the [[Run Menu]], I don't see my ''Main class'' but I see ''(no launch history)'' or I see ''Run As>FDT SWC Library''.<br />
*A: FDT works differently than other IDEs. It uses [[Launch Configurations]] and doesn't force you to hardcode any settings. This includes compiler options, your ''Main'' class or the name of your output .swfs. You can even create many different launch configurations for one project. Learn more with the [[Launch Configuration Tutorial]] tutorial.</div>Aklementhttp://fdt.powerflasher.com/docs/Flex_/_Air_TutorialFlex / Air Tutorial2012-06-02T12:07:14Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:001_0002.png|center|600px]]<br />
With FDT 4, developers not only have full Flex 4 support, but also access to FDT's Smart Editor features such as [[Quickfixes]] and [[Auto Completion]] while editing both Actionscript and MXML. For this tutorial, we'll use the Flex framework to build a simple AIR web browser.<br />
<br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=http://github.com/TeamFDT/Examples/tree/master/sample-projects]]<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15601474|width=600|height=400}}<br />
<br />
= <center>Creating Our Project</center> =<br />
[[File:03_004x.jpg|center]]<br />
Once you have FDT open, you have a few different ways of creating a new project. <br />
You can:<br />
<br />
*Click ''Create new Flash Project'' via the [[Welcome Screen]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_001.jpg]].<br />
*Right click in the [[Flash Explorer]] and choose ''New Flash Project'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_002.jpg]].<br />
*Choose ''New Flash Project'' from the ''File>New menu'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_003.jpg]]. <br />
<br />
Right away you'll see FDT's new [[Project Template Wizard]] open. Give the project a new name, ''AIR App'' will work fine, and choose the ''Empty Flex 4 AIR Project'' template from the ''Desktop'' folder on the left [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_004.jpg]]. When a valid project name has been added and a project template has been selected, the ''Finish'' button will highlight. Click ''Finish'' to continue.<br />
<br />
== <center>Our Project In The Flash Explorer</center> ==<br />
Now we can see the project FDT created for us within the Flash Explorer. Click on the little arrow next to the project icon to expand it's contents. Here you can see the basic FDT project setup and see what our template has setup for us.<br />
<br />
*This top SDK icon tells us the [[Project Type]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_006.jpg]].<br />
*The ''src'' folder has been setup as our default [[Source Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_007.jpg]].<br />
*The ''bin'' folder is set as the default [[Output Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_008.jpg]].<br />
*The ''.settings'' folder and ''.project'' file are what FDT uses to keep track of [[Project Settings]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_009.jpg]].<br />
<br />
= <center>Creating Your First Class</center> =<br />
To run and build a Flash Project, FDT only needs one file. If you're familiar with Flash Authoring [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_010.jpg]] or Flash Builder [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_011.jpg]], this is like creating your ''Document Class'' or ''Main'' class. Create this file by right clicking on the ''src'' folder and choosing ''new>MXML Class'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_012.jpg]]. What pops up is FDT's [[New MXML Class Wizard]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_013.jpg]]. Once here, fill in a package path ''demo.powerflasher'', add a valid class name, ''Main'' is pretty standard , and then define the superclass by clicking on the ''Browse...'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_014.jpg]]. For this AIR application, we'll use a WindowedApplication component. Filer the component by beginning to type ''Windowed'' within the search input box on the top and when you see ''WindowedApplication - mx.core'' click on that and hit the ''OK'' button. Finally hit the ''OK'' button to finish [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_015.jpg]].<br />
<br />
FDT will now create a new Class for you automatically and open it within the [[Editor View]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_016.jpg]]. If some reason it didn't open for you, double click on the ''Main.mxml'' file within the Flash Explorer. With our ''Main.mxml'' file open, let's being by setting some application settings.<br />
<br />
== <center>Editing MXML and ActionScript with FDT's Smart Editor Features</center> ==<br />
Using FDT's [[Auto Completion]], begin filling in properties for this application. By default FDT's auto completion is triggered by hitting ''Ctrl+Space'' on OSX and ''Ctrl+Space'' on Windows. When auto completion is engaged, it will display a preview of properties and methods associated with this component. Continue typing the name of the desired property and FDT will being filtering the results. When you're close to what you want, use the up and down arrows to select the desired property and hit enter [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_017.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" paddingBottom="0" <br />
paddingLeft="0" paddingRight="0" paddingTop="0"><br />
</syntaxhighlight><br />
<br />
<br />
While editing properties of the component, the current line may begin to extend off the screen [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_018.jpg]]. You can tidy up things by using another of FDT's smart editor features, [[Auto Formatter]]. By default, the key binding for the auto formatter is ''Cmd+Shift+F'' (OSX) and ''Ctrl+Shift+F'' (Windows) [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_019.jpg]].<br />
<br />
== <center>Creating MXML Components</center> ==<br />
Next lets add some Flex components. Let's begin by creating a navigation bar for the application. Again, using auto completion, create an application control bar [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_020.jpg]], then two buttons and a text input component [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_021.jpg]]. Next we'll create the HTML container to hold render the downloaded webpage [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_022.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home"/><br />
<mx:Button label="Go" id="go"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight ><br />
<br />
<br />
<br />
If your wondering why we have access to the HTML container, it's because this project template has been defined as a Flex AIR application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_023.jpg]]. When expanding the [[Linked SWCs]] Icon You can see all the .SWCs that were included in the build path by default when this template was created [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_024.jpg]]. Exploring the linked .SWCs here, we can see references to classes associated with the Flex AIR SDK [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_025.jpg]].<br />
<br />
Getting back to application, so far we've only coded MXML components. If we were to launch this application now, we'd only see Flex components on the screen, but nothing would happen when we interact with them.<br />
<br />
== <center>Using Quickfixes</center> ==<br />
[[File:001_0002x.png|center]]<br />
The first thing I want to happen is, I want FDT to automatically download a preset home page when the application loads. Lets do this by using FDT's auto completion for an ''applicationComplete'' handler, and then write in a function that we will soon create. Write in a function ''set_up()'' and notice how FDT automatically flags this as an error. <br />
<br />
<br />
<syntaxhighlight lang="mxml" highlight="4"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home"/><br />
<mx:Button label="Go" id="go"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight><br />
<br />
<br />
This is because FDT knows this event handler doesn't exist yet, and it's letting us know. To correct this we'll use what many consider one of FDT's most powerful feaures, [[QuickFixes]]. A quickfix is something coders use to write code faster and correct errors quickly. In this case, an error, invoking quickfix will cause FDT to determine possible corrections depending on the type of error. By default, the quickfix key stroke is ''Ctrl+1'' for Windows and ''Cmd+1'' for OSX. Place your cursor on the same line as the error and invoke quickFix [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_026.jpg]]. In this case, FDT is suggesting that the error can be fixed by creating a method ''set_up''. That is exactly what I want, so I will select that.<br />
<br />
When selected, FDT will deduce that a ''Script'' block has not been created, and will create one for us, as well as create the ''set_up'' method [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_027.jpg]].<br />
<br />
Next I'll continue to add code and [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_028.jpg]] use FDT's auto completion to tell me what components are available and then use another quickfix to create a constant in my application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_029.jpg]]. Next thing I want to do is create more event handlers for my Flex components, again using a combination of auto completion and quick fixes to have FDT write the code for me [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_030.jpg]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_031.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
<br />
<mx:Script><br />
<![CDATA[<br />
private static const HOME_URL : String = "http://www.fdt.powerflasher.com/";<br />
<br />
private function set_up() : void {<br />
urlTextbox.text = HOME_URL;<br />
}<br />
<br />
private function go_home(event : MouseEvent) : void {<br />
}<br />
<br />
private function update_url(event : MouseEvent = null):void {<br />
}<br />
]]><br />
</mx:Script><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home" click="go_home(event)"/><br />
<mx:Button label="Go" id="go" click="update_url(event)"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight><br />
<br />
== <center>Navigation Shortcut</center> ==<br />
I'll then quickly jump to one of the callbacks by using the [[Navigation Shortcut]] '''F3'''. By default, '''F3''' will take me right to the declaration of whatever property or method I currently have my cursor over. Now I'll just fill in some code to make the application function [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_032.jpg]].<br />
<br />
<br />
<syntaxhighlight lang="mxml"><br />
<br />
<br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
<br />
<mx:Script><br />
<![CDATA[<br />
private static const HOME_URL : String = "http://www.fdt.powerflasher.com/";<br />
<br />
private function set_up() : void {<br />
urlTextbox.text = HOME_URL;<br />
update_url();<br />
}<br />
<br />
private function go_home(event : MouseEvent) : void {<br />
urlTextbox.text = HOME_URL;<br />
update_url();<br />
}<br />
<br />
private function update_url(event : MouseEvent = null):void {<br />
if(urlTextbox.text.substr(0, 7) == "http://") {<br />
htmlControl.location = urlTextbox.text;<br />
} else {<br />
htmlControl.location = urlTextbox.text = "http://" + urlTextbox.text;<br />
}<br />
}<br />
]]><br />
</mx:Script><br />
<br />
<mx:ApplicationControlBar width="100%" height="40"><br />
<mx:Button label="Home" id="home" click="go_home(event)"/><br />
<mx:Button label="Go" id="go" click="update_url(event)"/><br />
<mx:TextInput id="urlTextbox" text="" width="235"/><br />
</mx:ApplicationControlBar><br />
<br />
<mx:HTML id="htmlControl" width="100%" height="100%"/><br />
</mx:WindowedApplication><br />
</syntaxhighlight><br />
<br />
= <center>Compiling The Application</center> =<br />
[[File:001_0003x.png|center|300px]]<br />
To build and run this AIR app all you need to do is right click on our ''Main'' file within the editor and choose ''Run As>FDT SWF Application'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_033.jpg]] or right click on the file within the Flash Explorer and choose ''Run As>FDT SWF Application'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_034.jpg]].<br />
<br />
When ''Run As>FDT SWF Application'' is selected, FDT will begin building your application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_035.jpg]] and when it's done, it will open the [[AIR Debug Launcher (ADL)]] and run our AIR application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_036.jpg]]. <br />
<br />
After viewing your .SWF, close the ADL and confirm your .SWF was created by opening up your ''bin'' output folder and looking for ''Main.swf'' as well the [[AIR Application Descriptor File]] that FDT created for us [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_037.jpg]].<br />
<br />
== <center>Adjusting Compilation Settings</center> ==<br />
Before concluding this tutorial, we'll quickly go over making an adjustment to our [[Run Configuration]]. There's are a few things to adjust. <br />
<br />
* Give the launch configuration a name.<br />
* Change the size of my application, to 800 x 600.<br />
* Change the name of my application.<br />
<br />
I'll quickly add a ''title'' property and adjust the application dimensions to 800x600:<br />
<br />
<br />
<syntaxhighlight lang="mxml" highlight="3"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"<br />
title="FDT Flex / AIR Applicaiton" width="800" height="600"<br />
paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0"<br />
applicationComplete="set_up()"><br />
</syntaxhighlight><br />
<br />
<br />
Then move on to editing my launch configuration.<br />
<br />
To begin, go to the ''Run'' menu and choose ''Run Configurations...'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_038.jpg]]. This will open the [[Run Configurations Window]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_039.jpg]]. This is were developers can make changes to any launch configuration for any open projects. What makes Run configurations powerful is that they are largely independent from your project and thus have the flexibility to add or change settings very easily. To learn more check out the [[Launch Configuration Tutorial]] tutorial.<br />
<br />
Getting back to our AIR app, the next thing to do is to change the name of the configuration to something more meaningful, let's call it''AIR Web Browser'' then adjust the output name of the .SWF that FDT creates to ''MyApp.swf'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_040.jpg]]. Next jump to the ''Start'' tab [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_041.jpg]] where I can tell FDT how I want to preview this app [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_042.jpg]]. I'll need to make sure that the name of my new .SWF is added here - otherwise it will open the .SWF I created last time - and change the the settings of the viewer to match the settings of my application [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_042.jpg]].<br />
<br />
In this case, the ADL will automatically fit the size of the application I set here; however, not all Flex or AS3 projects are using these same components, and some distortion will occur if the viewer I'm using is a different size than the application I'm building. If you've ever opened a .SWF with the stand alone player or a web browser without any HTML, you'll know about scaling issues.<br />
<br />
Recompile and see our new AIR preview [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:03_044.jpg]].<br />
<br />
= <center>Wrap Up</center> =<br />
Congratulations, you’ve built an AIR application using FDT and Flex. From here, you’ll probably want to learn more about editing Launch Configurations and compiler options such as .SWF size and background color. See our [[Launch Configuration Tutorial]] for more info on that.<br />
<br />
<br />
FAQ<br />
*Q: How Do I change .SWF settings like background color or size?<br />
*A: Check out the [[Launch Configuration Tutorial]] tutorial to learn about different ways to compile and view your Flash Applications<br />
<br />
*Q: Does my class need to be named ''Main''.<br />
*A: Not at all - any legal class name works. FDT has a very powerful and flexible way of building and running your applications. Check out [[Launch Configuration Tutorial]] for more info.<br />
<br />
*Q: Why is it that when I click on my project within the Flash Explorer and then go to the [[Run Menu]], I don't see my ''Main'' class, ''(no launch history)'' or I see ''Run As>FDT SWC Library''<br />
*A: FDT works differently than other IDEs. It uses [[Launch Configurations]] and doesn't force you to hardcode any settings. This includes compiler options, your 'Main' class or the name of your output .swfs. You can even create many different launch configurations for one project. Learn more with the [[Launch Configuration Tutorial]].</div>Aklementhttp://fdt.powerflasher.com/docs/Basic_AS3_TutorialBasic AS3 Tutorial2012-06-02T12:06:07Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:Basic_as3_splash.png|center]]<br />
Beginning with FDT4, creating AS3 projects has never been easier. FDT now features powerful template management that is designed to help developers get up and running pretty quick.<br />
<br />
If you haven't installed FDT and created your workspace yet, check out the [[Installing and Running FDT]] tutorial to guide you through the process.<br />
<br/><br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=http://github.com/TeamFDT/Examples/tree/master/sample-projects]]<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15571978|width=600|height=400}}<br />
<br />
= <center>Creating Your First Project</center> =<br />
[[File:02_004.jpg|center|200px]]<br />
Once you have FDT open, you have a few different ways of creating a new project. You can click ''Create new Flash Project'' via the [[Welcome Screen]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_001.jpg]], right click in the [[Flash Explorer]] and choose ''New Flash Project'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_002.jpg]] or choose ''New Flash Project'' from the ''File>New'' menu [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_003.jpg]]. <br />
<br />
[[File:02_002.jpg|center|200px]]<br />
<br />
Right away you'll see FDT's new [[Project Template Wizard]] open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_004.jpg]]. Give the project a name, ''AS3 Project'' will work fine, and let's stick with choosing ''Empty AS3 Project''. When a valid project name has been added and a project template has been selected, the ''Finish'' button will highlight - so click finish to continue.<br />
<br />
[[File:02_005.jpg|center|200px]]<br />
<br />
= <center>Creating Your First Class</center> =<br />
Within the Flash Explorer we can see the project FDT created for us. Click on the little arrow next to the project icon to expand it's contents. Here you can see the setup for a basic FDT project and see what our ''Empty AS3 Project'' template has setup for us.<br />
[[File:02_006.jpg|center|200px]]<br />
<br />
* This top SDK icon tells us the [[Project Type]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_007.jpg]]<br />
* The ''src'' folder has been setup as our default [[Source Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_008.jpg]] <br />
* The ''bin'' folder is set as the default [[Output Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_009.jpg]] <br />
* The ''.settings'' folder and ''.project'' file are what FDT uses to keep track of [[Project Settings]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_010.jpg]]<br />
<br />
To run and build a Flash Project, FDT only needs one file. If you're familiar with Flash Authoring [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_011.jpg]] or Flash Builder [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_012.jpg]], this is like creating your Document Class or Main class. Create this file by right clicking on the ''src'' folder and choosing ''new>AS Class''.<br />
<br />
[[File:02_012x.jpg|center|200px]]<br />
<br />
What pops up is FDT's [[New ActionScript Class Wizard]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_013.jpg]]. Once here, we'll just fill in a valid class name, ''Main'' is pretty standard.<br />
<br />
[[File:02_014.jpg|center|200px]]<br />
<br />
Then define the superclass by clicking on the ''Browse...'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_015.jpg]]. You can use either ''Sprite'' or ''MovieClip'' for superclass and unless you have a special reason, Sprite will work fine. Filter the Sprite class by beginning to type ''Sprite'' within the search input box on the top and when you see ''Sprite - flash.display'' click on that and hit the ''OK'' button. After filling in a valid class name and a valid superclass to extend, hit the ''OK'' button.<br />
<br />
[[File:02_016.jpg|center|200px]]<br />
<br />
FDT will now create a new class for you automatically and open it within the [[Editor View]]. If some reason it didn't open for you, double click on the ''Main.as'' file within the Flash Explorer [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_017.jpg]].<br />
<br />
=<center>Writing Code For Your Class</center>=<br />
With our ''Main.as'' file open, let's create a simple red circle on the screen and then run our file.<br />
<br />
Within the [[constructor]] of your class, add this bit of code to add a red circle to the stage.<br />
<br />
[[File:02_018.jpg|center|200px]]<br />
<br />
<syntaxhighlight lang="actionscript"><br />
var circle : Shape = new Shape();<br />
circle.graphics.beginFill(0xff0000);<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
</syntaxhighlight><br />
<br />
<br />
When typing this code within the constructor, FDT will flag some errors. Resolve these errors by using one of FDT's [[Smart Editor]] features: [[Organize Imports]]. Invoke this by pressing ''Cmd+Shift+O'' (OSX) or ''Ctrl+Shift+O'' (Windows). FDT will automatically add the missing import statements [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_019.jpg]].<br />
<br />
=<center>Launch Your SWF</center>=<br />
[[File:02_020x.jpg|center]]<br />
To quickest way to launch your application is to right click on the ''Main'' class within the editor and select ''Run As>FDT SWF Application''.<br />
<br />
[[File:02_020.jpg|center|200px]]<br />
<br />
FDT will being the build process, as can been seen in the [[Console]] view [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_021.jpg]], and when complete, FDT will launch the [[External SWF Viewer]] that runs our .SWF with the red circle on the [[Stage]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_022.jpg]]. <br />
<br />
With compilation successful, FDT will have created a .SWF in your [[Output Folder]] ''bin'' by default and created a [[Launch Configuration]] located within the folder ''.settings>launch''.<br />
<br />
[[File:02_023.jpg|center|200px]]<br />
<br />
After viewing your .SWF, close the External SWF Viewer and confirm your .SWF was created by opening up your ''bin'' output folder and looking for ''Main.swf''.<br />
<br />
=<center>Wrap Up</center>=<br />
Congratulations, you’ve built your first FDT application. From here, you’ll probably want to learn more about editing Launch Configurations and compiler options such as .SWF size and background color. See our [[Launch Configuration Tutorial]] for more info on that.<br />
<br />
=<center>FAQ</center>=<br />
*Q: My project compiled but it didn't open in the External SWF Viewer<br />
*A: Check to see if [http://www.adobe.com/support/flashplayer/downloads.html Flash Player] and [http://www.java.com/en/download/installed.jsp Java] are properly installed.<br />
<br />
*Q: How Do I change .SWF settings like background color or size?<br />
*A: Check out the [[Launch Configuration Tutorial]] tutorial to learn about different ways to compile and view your Flash Applications<br />
<br />
*Q: Does my class need to be named ''Main''.<br />
*A: Not at all - any legal class name works. FDT has a very powerful and flexible way of building and running your applications. Check out the [[Launch Configuration Tutorial]] for more info.<br />
<br />
*Q: Why is my output swf named ''Main.swf'' and why is my launch configuration named ''Main''.<br />
*A: When clicking on a Class and choosing ''Run As...'' from either the Editor View or the Flash Explorer - if FDT doesn't detect that a launch configuration already exists for that file, FDT will create a new one. The new launch configuration created will have the same name as the Class that was selected when choosing ''Run As...'' or ''Debug As...''.<br />
<br />
*Q: Why is it that when I click on my project within the Flash Explorer and then go to the [[Run Menu]], I don't see my ''Main class'' but I see ''(no launch history)'' or I see ''Run As>FDT SWC Library''.<br />
*A: FDT works differently than other IDEs. It uses [[Launch Configurations]] and doesn't force you to hardcode any settings. This includes compiler options, your ''Main'' class or the name of your output .swfs. You can even create many different launch configurations for one project. Learn more with the [[Launch Configuration Tutorial]] tutorial.</div>Aklementhttp://fdt.powerflasher.com/docs/Basic_AS3_TutorialBasic AS3 Tutorial2012-06-02T12:05:36Z<p>Aklement: /* Source Files */</p>
<hr />
<div>[[File:Basic_as3_splash.png|center]]<br />
Beginning with FDT4, creating AS3 projects has never been easier. FDT now features powerful template management that is designed to help developers get up and running pretty quick.<br />
<br />
If you haven't installed FDT and created your workspace yet, check out the [[Installing and Running FDT]] tutorial to guide you through the process.<br />
<br/><br />
= <center>Source Files</center> =<br />
[[File:Download_soruce_files.png|center|link=https://github.com/TeamFDT/Examples/tree/master/sample-projects]<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15571978|width=600|height=400}}<br />
<br />
= <center>Creating Your First Project</center> =<br />
[[File:02_004.jpg|center|200px]]<br />
Once you have FDT open, you have a few different ways of creating a new project. You can click ''Create new Flash Project'' via the [[Welcome Screen]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_001.jpg]], right click in the [[Flash Explorer]] and choose ''New Flash Project'' [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_002.jpg]] or choose ''New Flash Project'' from the ''File>New'' menu [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_003.jpg]]. <br />
<br />
[[File:02_002.jpg|center|200px]]<br />
<br />
Right away you'll see FDT's new [[Project Template Wizard]] open [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_004.jpg]]. Give the project a name, ''AS3 Project'' will work fine, and let's stick with choosing ''Empty AS3 Project''. When a valid project name has been added and a project template has been selected, the ''Finish'' button will highlight - so click finish to continue.<br />
<br />
[[File:02_005.jpg|center|200px]]<br />
<br />
= <center>Creating Your First Class</center> =<br />
Within the Flash Explorer we can see the project FDT created for us. Click on the little arrow next to the project icon to expand it's contents. Here you can see the setup for a basic FDT project and see what our ''Empty AS3 Project'' template has setup for us.<br />
[[File:02_006.jpg|center|200px]]<br />
<br />
* This top SDK icon tells us the [[Project Type]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_007.jpg]]<br />
* The ''src'' folder has been setup as our default [[Source Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_008.jpg]] <br />
* The ''bin'' folder is set as the default [[Output Folder]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_009.jpg]] <br />
* The ''.settings'' folder and ''.project'' file are what FDT uses to keep track of [[Project Settings]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_010.jpg]]<br />
<br />
To run and build a Flash Project, FDT only needs one file. If you're familiar with Flash Authoring [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_011.jpg]] or Flash Builder [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_012.jpg]], this is like creating your Document Class or Main class. Create this file by right clicking on the ''src'' folder and choosing ''new>AS Class''.<br />
<br />
[[File:02_012x.jpg|center|200px]]<br />
<br />
What pops up is FDT's [[New ActionScript Class Wizard]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_013.jpg]]. Once here, we'll just fill in a valid class name, ''Main'' is pretty standard.<br />
<br />
[[File:02_014.jpg|center|200px]]<br />
<br />
Then define the superclass by clicking on the ''Browse...'' button [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_015.jpg]]. You can use either ''Sprite'' or ''MovieClip'' for superclass and unless you have a special reason, Sprite will work fine. Filter the Sprite class by beginning to type ''Sprite'' within the search input box on the top and when you see ''Sprite - flash.display'' click on that and hit the ''OK'' button. After filling in a valid class name and a valid superclass to extend, hit the ''OK'' button.<br />
<br />
[[File:02_016.jpg|center|200px]]<br />
<br />
FDT will now create a new class for you automatically and open it within the [[Editor View]]. If some reason it didn't open for you, double click on the ''Main.as'' file within the Flash Explorer [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_017.jpg]].<br />
<br />
=<center>Writing Code For Your Class</center>=<br />
With our ''Main.as'' file open, let's create a simple red circle on the screen and then run our file.<br />
<br />
Within the [[constructor]] of your class, add this bit of code to add a red circle to the stage.<br />
<br />
[[File:02_018.jpg|center|200px]]<br />
<br />
<syntaxhighlight lang="actionscript"><br />
var circle : Shape = new Shape();<br />
circle.graphics.beginFill(0xff0000);<br />
circle.graphics.drawCircle(150, 150, 100);<br />
addChild(circle);<br />
</syntaxhighlight><br />
<br />
<br />
When typing this code within the constructor, FDT will flag some errors. Resolve these errors by using one of FDT's [[Smart Editor]] features: [[Organize Imports]]. Invoke this by pressing ''Cmd+Shift+O'' (OSX) or ''Ctrl+Shift+O'' (Windows). FDT will automatically add the missing import statements [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_019.jpg]].<br />
<br />
=<center>Launch Your SWF</center>=<br />
[[File:02_020x.jpg|center]]<br />
To quickest way to launch your application is to right click on the ''Main'' class within the editor and select ''Run As>FDT SWF Application''.<br />
<br />
[[File:02_020.jpg|center|200px]]<br />
<br />
FDT will being the build process, as can been seen in the [[Console]] view [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_021.jpg]], and when complete, FDT will launch the [[External SWF Viewer]] that runs our .SWF with the red circle on the [[Stage]] [[File:Img_preview.png | link=http://fdt.powerflasher.com/docs/File:02_022.jpg]]. <br />
<br />
With compilation successful, FDT will have created a .SWF in your [[Output Folder]] ''bin'' by default and created a [[Launch Configuration]] located within the folder ''.settings>launch''.<br />
<br />
[[File:02_023.jpg|center|200px]]<br />
<br />
After viewing your .SWF, close the External SWF Viewer and confirm your .SWF was created by opening up your ''bin'' output folder and looking for ''Main.swf''.<br />
<br />
=<center>Wrap Up</center>=<br />
Congratulations, you’ve built your first FDT application. From here, you’ll probably want to learn more about editing Launch Configurations and compiler options such as .SWF size and background color. See our [[Launch Configuration Tutorial]] for more info on that.<br />
<br />
=<center>FAQ</center>=<br />
*Q: My project compiled but it didn't open in the External SWF Viewer<br />
*A: Check to see if [http://www.adobe.com/support/flashplayer/downloads.html Flash Player] and [http://www.java.com/en/download/installed.jsp Java] are properly installed.<br />
<br />
*Q: How Do I change .SWF settings like background color or size?<br />
*A: Check out the [[Launch Configuration Tutorial]] tutorial to learn about different ways to compile and view your Flash Applications<br />
<br />
*Q: Does my class need to be named ''Main''.<br />
*A: Not at all - any legal class name works. FDT has a very powerful and flexible way of building and running your applications. Check out the [[Launch Configuration Tutorial]] for more info.<br />
<br />
*Q: Why is my output swf named ''Main.swf'' and why is my launch configuration named ''Main''.<br />
*A: When clicking on a Class and choosing ''Run As...'' from either the Editor View or the Flash Explorer - if FDT doesn't detect that a launch configuration already exists for that file, FDT will create a new one. The new launch configuration created will have the same name as the Class that was selected when choosing ''Run As...'' or ''Debug As...''.<br />
<br />
*Q: Why is it that when I click on my project within the Flash Explorer and then go to the [[Run Menu]], I don't see my ''Main class'' but I see ''(no launch history)'' or I see ''Run As>FDT SWC Library''.<br />
*A: FDT works differently than other IDEs. It uses [[Launch Configurations]] and doesn't force you to hardcode any settings. This includes compiler options, your ''Main'' class or the name of your output .swfs. You can even create many different launch configurations for one project. Learn more with the [[Launch Configuration Tutorial]] tutorial.</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-31T14:23:05Z<p>Aklement: /* Bug Fixes */</p>
<hr />
<div>=FDT 5.5.1=<br />
Released: 2011/05/30<br />
<br />
==Bug Fixes==<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&fixfor=10499&status=6&sorter/field=issuekey&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
This was a maintenance release to FDT 5.5. It mostly addresses issues associated with migrating from FDT 5.0->5.5.<br />
<br />
=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
<br />
===Eclipse Compatibility===<br />
FDT 5.5 requires Eclipse 3.7+. Earlier versions of Eclipse will not work.<br />
<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.<br />
<br />
===ANE===<br />
*When used as a linked resource, ANEs can be recognized as a .SWC and not compiled correctly. [http://bugs.powerflasher.com/jira/browse/FDT-2732 See the ticket here].</div>Aklementhttp://fdt.powerflasher.com/docs/Media_Resource_PageMedia Resource Page2012-05-30T15:05:02Z<p>Aklement: /* FDT 5 Icon */</p>
<hr />
<div>== PRESS TEASER ==<br />
<br />
FDT 5 is a flexible development toolkit in Eclipse for interactive developers. It´s made with passion for expert Flash and Flex coding, innovative mobile development and versatile HTML5 / JavaScript / WebGL / PHP programming with haXe. Create your applications in FDT and efficiently target multiple platforms.<br />
<br />
== FDT 5 Icon ==<br />
[[File:512FDT5.png|50px|FDT 5 Logo|link=http://fdt.powerflasher.com/docs/File:512FDT5.png]]<br />
<br />
<br />
Click on the above image to get the full size Icon.<br />
<br />
== FDT 5 Splash Screen ==<br />
[[File:Splash_.png|200px|FDT 5 Logo|link=http://fdt.powerflasher.com/docs/File:Splash_.png]]<br />
<br />
Click on the above image to get the full size image. <br />
The above image is also a .PNG while splash screens for Eclipse need to be a .BMP file. Simply open the above image and save it as a .BMP and place it in your FDT / Eclipse directory to have it as your splash screen.<br />
<br />
== FDT 5 LOGO == <br />
<!-- {| align="right"<br />
| [[File:FDT5_300dpi.jpg|200px|FDT 5 Logo|link=]]<br />
|} --><br />
[[File:FDT5_300dpi.jpg|50px|FDT 5 Logo|link=]]<br />
<br />
'''300 dpi'''<br />
* [[media:FDT5_300dpi.jpg|JPG]] <br />
<!-- TIF --><br />
* [[media:FDT5_300dpi_greyscale.jpg|JPG Greyscale]]<br />
<!-- TIF Greyscale --><br />
<br />
'''512 pixel'''<br />
* [[media:FDT5_512_dbg.png|Dark Background]] <br />
* [[media:FDT5_512_lbg.png|Light Background]]<br />
* [[media:FDT5_512_greyscale.png|Greyscale]]<br />
<br />
'''800 pixel'''<br />
* [[media:FDT5_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_800_lbg.png|Light Background]]<br />
* [[media:FDT5_800_greyscale.png|Greyscale]]<br />
'''1024 pixel'''<br />
* [[media:FDT5_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_1024_greyscale.png|Greyscale]]<br />
<br />
== FDT 5 LOGO HORIZONTAL ==<br />
[[File:FDT5_h_512_lbg.png|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
'''512 pixel'''<br />
* [[media:FDT5_h_512_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_512_lbg.png|Light Background]]<br />
* [[media:FDT5_h_512_greyscale.png|Greyscale]]<br />
<br />
'''800 pixel'''<br />
* [[media:FDT5_h_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_800_lbg.png|Light Background]]<br />
* [[media:FDT5_h_800_greyscale.png|Greyscale]]<br />
<br />
'''1024 pixel'''<br />
* [[media:FDT5_h_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_h_1024_greyscale.png|Greyscale]]<br />
<br />
== FDT 5 VERTIVAL LOGO ==<br />
[[File:FDT5_v_512_lbg.png|frameless|right|50px|FDT 5 Logo HORIZONTAL|link=]]<br />
'''512 pixel'''<br />
* [[media:FDT5_v_512_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_512_lbg.png|Light Background]]<br />
* [[media:FDT5_v_512_greyscale.png|Greyscale]]<br />
'''800 pixel'''<br />
* [[media:FDT5_v_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_800_lbg.png|Light Background]]<br />
* [[media:FDT5_v_800_greyscale.png|Greyscale]]<br />
'''1024 pixel'''<br />
* [[media:FDT5_v_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_v_1024_greyscale.png|Greyscale]]<br />
<br />
== SUPPORTED BY FDT 5 BANNER ==<br />
[[File:FDT5_Banner_256.png|frameless|right|128px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Banner_128.png|128 pixel]]<br />
* [[media:FDT5_Banner_128_greyscale.png|128 pixel Greyscale]]<br />
<br />
* [[media:FDT5_Banner_256.png|256 pixel]]<br />
* [[media:FDT5_Banner_256_greyscale.png|256 pixel Greyscale]]<br />
<br />
* [[media:FDT5_Banner_512.png|512 pixel]]<br />
* [[media:FDT5_Banner_512_greyscale.png|512 pixel Greyscale]]<br />
<br />
== WALLPAPER ==<br />
<br />
'''Wallpaper 1'''<br />
[[File:FDT5_Wallpaper_1280x800.jpg|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Wallpaper_1280x800.jpg|1280X800]]<br />
* [[media:FDT5_Wallpaper_1440x900.jpg|1440X900]]<br />
* [[media:FDT5_Wallpaper_1680x1050.jpg|1680X1050]]<br />
* [[media:FDT5_Wallpaper_1920x1080.jpg|1920X1080]]<br />
* [[media:FDT5_Wallpaper_1920x1200.jpg|1920X1200]]<br />
<br />
'''Wallpaper 2'''<br />
[[File:FDT5_Wallpaper_2_1280x800.jpg|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Wallpaper_2_1280x800.jpg|1280X800]]<br />
* [[media:FDT5_Wallpaper_2_1440x900.jpg|1440X900]]<br />
* [[media:FDT5_Wallpaper_2_1680x1050.jpg|1680X1050]]<br />
* [[media:FDT5_Wallpaper_2_1920x1080.jpg|1920X1080]]<br />
* [[media:FDT5_Wallpaper_2_1920x1200.jpg|1920X1200]]<br />
* [[media:FDT5_Wallpaper_2_2560x1440.jpg|2560X1440]]<br />
* [[media:FDT5_Wallpaper_2_2560x1600.jpg|2560X1600]]<br />
<br />
Higher resolution logos / banner / wallpaper and TIFF files may be requested via email.<br />
<br />
<!--<br />
<br />
== Download ==<br />
<br />
Fall files in one package incl. FDT Logo TIFF file:<br />
<br />
-></div>Aklementhttp://fdt.powerflasher.com/docs/Media_Resource_PageMedia Resource Page2012-05-30T15:04:53Z<p>Aklement: /* FDT 5 Splash Screen */</p>
<hr />
<div>== PRESS TEASER ==<br />
<br />
FDT 5 is a flexible development toolkit in Eclipse for interactive developers. It´s made with passion for expert Flash and Flex coding, innovative mobile development and versatile HTML5 / JavaScript / WebGL / PHP programming with haXe. Create your applications in FDT and efficiently target multiple platforms.<br />
<br />
== FDT 5 Icon ==<br />
[[File:512FDT5.png|50px|FDT 5 Logo|link=http://fdt.powerflasher.com/docs/File:512FDT5.png]]<br />
Click on the above image to get the full size Icon.<br />
<br />
== FDT 5 Splash Screen ==<br />
[[File:Splash_.png|200px|FDT 5 Logo|link=http://fdt.powerflasher.com/docs/File:Splash_.png]]<br />
<br />
Click on the above image to get the full size image. <br />
The above image is also a .PNG while splash screens for Eclipse need to be a .BMP file. Simply open the above image and save it as a .BMP and place it in your FDT / Eclipse directory to have it as your splash screen.<br />
<br />
== FDT 5 LOGO == <br />
<!-- {| align="right"<br />
| [[File:FDT5_300dpi.jpg|200px|FDT 5 Logo|link=]]<br />
|} --><br />
[[File:FDT5_300dpi.jpg|50px|FDT 5 Logo|link=]]<br />
<br />
'''300 dpi'''<br />
* [[media:FDT5_300dpi.jpg|JPG]] <br />
<!-- TIF --><br />
* [[media:FDT5_300dpi_greyscale.jpg|JPG Greyscale]]<br />
<!-- TIF Greyscale --><br />
<br />
'''512 pixel'''<br />
* [[media:FDT5_512_dbg.png|Dark Background]] <br />
* [[media:FDT5_512_lbg.png|Light Background]]<br />
* [[media:FDT5_512_greyscale.png|Greyscale]]<br />
<br />
'''800 pixel'''<br />
* [[media:FDT5_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_800_lbg.png|Light Background]]<br />
* [[media:FDT5_800_greyscale.png|Greyscale]]<br />
'''1024 pixel'''<br />
* [[media:FDT5_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_1024_greyscale.png|Greyscale]]<br />
<br />
== FDT 5 LOGO HORIZONTAL ==<br />
[[File:FDT5_h_512_lbg.png|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
'''512 pixel'''<br />
* [[media:FDT5_h_512_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_512_lbg.png|Light Background]]<br />
* [[media:FDT5_h_512_greyscale.png|Greyscale]]<br />
<br />
'''800 pixel'''<br />
* [[media:FDT5_h_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_800_lbg.png|Light Background]]<br />
* [[media:FDT5_h_800_greyscale.png|Greyscale]]<br />
<br />
'''1024 pixel'''<br />
* [[media:FDT5_h_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_h_1024_greyscale.png|Greyscale]]<br />
<br />
== FDT 5 VERTIVAL LOGO ==<br />
[[File:FDT5_v_512_lbg.png|frameless|right|50px|FDT 5 Logo HORIZONTAL|link=]]<br />
'''512 pixel'''<br />
* [[media:FDT5_v_512_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_512_lbg.png|Light Background]]<br />
* [[media:FDT5_v_512_greyscale.png|Greyscale]]<br />
'''800 pixel'''<br />
* [[media:FDT5_v_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_800_lbg.png|Light Background]]<br />
* [[media:FDT5_v_800_greyscale.png|Greyscale]]<br />
'''1024 pixel'''<br />
* [[media:FDT5_v_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_v_1024_greyscale.png|Greyscale]]<br />
<br />
== SUPPORTED BY FDT 5 BANNER ==<br />
[[File:FDT5_Banner_256.png|frameless|right|128px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Banner_128.png|128 pixel]]<br />
* [[media:FDT5_Banner_128_greyscale.png|128 pixel Greyscale]]<br />
<br />
* [[media:FDT5_Banner_256.png|256 pixel]]<br />
* [[media:FDT5_Banner_256_greyscale.png|256 pixel Greyscale]]<br />
<br />
* [[media:FDT5_Banner_512.png|512 pixel]]<br />
* [[media:FDT5_Banner_512_greyscale.png|512 pixel Greyscale]]<br />
<br />
== WALLPAPER ==<br />
<br />
'''Wallpaper 1'''<br />
[[File:FDT5_Wallpaper_1280x800.jpg|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Wallpaper_1280x800.jpg|1280X800]]<br />
* [[media:FDT5_Wallpaper_1440x900.jpg|1440X900]]<br />
* [[media:FDT5_Wallpaper_1680x1050.jpg|1680X1050]]<br />
* [[media:FDT5_Wallpaper_1920x1080.jpg|1920X1080]]<br />
* [[media:FDT5_Wallpaper_1920x1200.jpg|1920X1200]]<br />
<br />
'''Wallpaper 2'''<br />
[[File:FDT5_Wallpaper_2_1280x800.jpg|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Wallpaper_2_1280x800.jpg|1280X800]]<br />
* [[media:FDT5_Wallpaper_2_1440x900.jpg|1440X900]]<br />
* [[media:FDT5_Wallpaper_2_1680x1050.jpg|1680X1050]]<br />
* [[media:FDT5_Wallpaper_2_1920x1080.jpg|1920X1080]]<br />
* [[media:FDT5_Wallpaper_2_1920x1200.jpg|1920X1200]]<br />
* [[media:FDT5_Wallpaper_2_2560x1440.jpg|2560X1440]]<br />
* [[media:FDT5_Wallpaper_2_2560x1600.jpg|2560X1600]]<br />
<br />
Higher resolution logos / banner / wallpaper and TIFF files may be requested via email.<br />
<br />
<!--<br />
<br />
== Download ==<br />
<br />
Fall files in one package incl. FDT Logo TIFF file:<br />
<br />
-></div>Aklementhttp://fdt.powerflasher.com/docs/Media_Resource_PageMedia Resource Page2012-05-30T15:04:26Z<p>Aklement: /* FDT 5 LOGO */</p>
<hr />
<div>== PRESS TEASER ==<br />
<br />
FDT 5 is a flexible development toolkit in Eclipse for interactive developers. It´s made with passion for expert Flash and Flex coding, innovative mobile development and versatile HTML5 / JavaScript / WebGL / PHP programming with haXe. Create your applications in FDT and efficiently target multiple platforms.<br />
<br />
== FDT 5 Icon ==<br />
[[File:512FDT5.png|50px|FDT 5 Logo|link=http://fdt.powerflasher.com/docs/File:512FDT5.png]]<br />
Click on the above image to get the full size Icon.<br />
<br />
== FDT 5 Splash Screen ==<br />
[[File:Splash_.png|50px|FDT 5 Logo|link=http://fdt.powerflasher.com/docs/File:Splash_.png]]<br />
Click on the above image to get the full size image. <br />
The above image is also a .PNG while splash screens for Eclipse need to be a .BMP file. Simply open the above image and save it as a .BMP and place it in your FDT / Eclipse directory to have it as your splash screen.<br />
<br />
== FDT 5 LOGO == <br />
<!-- {| align="right"<br />
| [[File:FDT5_300dpi.jpg|200px|FDT 5 Logo|link=]]<br />
|} --><br />
[[File:FDT5_300dpi.jpg|50px|FDT 5 Logo|link=]]<br />
<br />
'''300 dpi'''<br />
* [[media:FDT5_300dpi.jpg|JPG]] <br />
<!-- TIF --><br />
* [[media:FDT5_300dpi_greyscale.jpg|JPG Greyscale]]<br />
<!-- TIF Greyscale --><br />
<br />
'''512 pixel'''<br />
* [[media:FDT5_512_dbg.png|Dark Background]] <br />
* [[media:FDT5_512_lbg.png|Light Background]]<br />
* [[media:FDT5_512_greyscale.png|Greyscale]]<br />
<br />
'''800 pixel'''<br />
* [[media:FDT5_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_800_lbg.png|Light Background]]<br />
* [[media:FDT5_800_greyscale.png|Greyscale]]<br />
'''1024 pixel'''<br />
* [[media:FDT5_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_1024_greyscale.png|Greyscale]]<br />
<br />
== FDT 5 LOGO HORIZONTAL ==<br />
[[File:FDT5_h_512_lbg.png|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
'''512 pixel'''<br />
* [[media:FDT5_h_512_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_512_lbg.png|Light Background]]<br />
* [[media:FDT5_h_512_greyscale.png|Greyscale]]<br />
<br />
'''800 pixel'''<br />
* [[media:FDT5_h_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_800_lbg.png|Light Background]]<br />
* [[media:FDT5_h_800_greyscale.png|Greyscale]]<br />
<br />
'''1024 pixel'''<br />
* [[media:FDT5_h_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_h_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_h_1024_greyscale.png|Greyscale]]<br />
<br />
== FDT 5 VERTIVAL LOGO ==<br />
[[File:FDT5_v_512_lbg.png|frameless|right|50px|FDT 5 Logo HORIZONTAL|link=]]<br />
'''512 pixel'''<br />
* [[media:FDT5_v_512_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_512_lbg.png|Light Background]]<br />
* [[media:FDT5_v_512_greyscale.png|Greyscale]]<br />
'''800 pixel'''<br />
* [[media:FDT5_v_800_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_800_lbg.png|Light Background]]<br />
* [[media:FDT5_v_800_greyscale.png|Greyscale]]<br />
'''1024 pixel'''<br />
* [[media:FDT5_v_1024_dbg.png|Dark Background]]<br />
* [[media:FDT5_v_1024_lbg.png|Light Background]]<br />
* [[media:FDT5_v_1024_greyscale.png|Greyscale]]<br />
<br />
== SUPPORTED BY FDT 5 BANNER ==<br />
[[File:FDT5_Banner_256.png|frameless|right|128px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Banner_128.png|128 pixel]]<br />
* [[media:FDT5_Banner_128_greyscale.png|128 pixel Greyscale]]<br />
<br />
* [[media:FDT5_Banner_256.png|256 pixel]]<br />
* [[media:FDT5_Banner_256_greyscale.png|256 pixel Greyscale]]<br />
<br />
* [[media:FDT5_Banner_512.png|512 pixel]]<br />
* [[media:FDT5_Banner_512_greyscale.png|512 pixel Greyscale]]<br />
<br />
== WALLPAPER ==<br />
<br />
'''Wallpaper 1'''<br />
[[File:FDT5_Wallpaper_1280x800.jpg|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Wallpaper_1280x800.jpg|1280X800]]<br />
* [[media:FDT5_Wallpaper_1440x900.jpg|1440X900]]<br />
* [[media:FDT5_Wallpaper_1680x1050.jpg|1680X1050]]<br />
* [[media:FDT5_Wallpaper_1920x1080.jpg|1920X1080]]<br />
* [[media:FDT5_Wallpaper_1920x1200.jpg|1920X1200]]<br />
<br />
'''Wallpaper 2'''<br />
[[File:FDT5_Wallpaper_2_1280x800.jpg|frameless|right|100px|FDT 5 Logo HORIZONTAL|link=]]<br />
<br />
* [[media:FDT5_Wallpaper_2_1280x800.jpg|1280X800]]<br />
* [[media:FDT5_Wallpaper_2_1440x900.jpg|1440X900]]<br />
* [[media:FDT5_Wallpaper_2_1680x1050.jpg|1680X1050]]<br />
* [[media:FDT5_Wallpaper_2_1920x1080.jpg|1920X1080]]<br />
* [[media:FDT5_Wallpaper_2_1920x1200.jpg|1920X1200]]<br />
* [[media:FDT5_Wallpaper_2_2560x1440.jpg|2560X1440]]<br />
* [[media:FDT5_Wallpaper_2_2560x1600.jpg|2560X1600]]<br />
<br />
Higher resolution logos / banner / wallpaper and TIFF files may be requested via email.<br />
<br />
<!--<br />
<br />
== Download ==<br />
<br />
Fall files in one package incl. FDT Logo TIFF file:<br />
<br />
-></div>Aklementhttp://fdt.powerflasher.com/docs/File:Splash_.pngFile:Splash .png2012-05-30T15:02:31Z<p>Aklement: </p>
<hr />
<div></div>Aklementhttp://fdt.powerflasher.com/docs/File:512FDT5.pngFile:512FDT5.png2012-05-30T14:59:41Z<p>Aklement: </p>
<hr />
<div></div>Aklementhttp://fdt.powerflasher.com/docs/Main_PageMain Page2012-05-30T14:57:11Z<p>Aklement: /* Downloads */</p>
<hr />
<div>[[File:Text_icon.png|30px|link=]] means the tutorial is written <br /><br />
[[File:Videoicon.png|30px|link=]] means the tutorial has video <br /><br />
[[File:Download_arrow.png|30px|link=]] means the tutorial has example files to download <br /><br />
<br />
= FDT Getting Started Guide =<br />
<br />
Michael Plank, from [http://www.pro3games.com/ pro3dgames], has written a great tutorial on activetuts. <br />
[http://active.tutsplus.com/tutorials/workflow/beginners-guide-to-powerflashers-fdt-4/ Check it out here].<br />
<br />
<br />
<br />
These short guides will lead you through the installation and will introduce you to some of the highly efficient and time-saving features and the basic structure of the FDT work environment.<br />
<br />
==Quick Fixes and Quick Assists==<br />
Our [http://fdt.powerflasher.com/blog/fdt-video-gallery/ Videos] page has all our Quick Fixes and Quick Assists in video format. A great place to learn about FDT's most popular and powerful features.<br />
<br />
==Tutorials==<br />
*[[Installing and Running FDT]]<br />
*[[Basic AS3 Tutorial]]<br />
*[[Writing Code With FDT]]<br />
*[[Navigating Your Code and FDT's Workspace]]<br />
<br />
==Shortcuts==<br />
Forget the mouse! The FDT shortcuts are one of the most important techniques to increase coding efficiency. Here is a cheat sheet of the most popular shortcuts for quick reference<br />
*[[FDT Shortcuts| Learn about FDT's shortcuts.]]<br />
<br />
==FAQ==<br />
If you're confused or having a problem getting yourself going. Check out our FAQ.<br />
<br />
*[[FAQ | Installing & Using FDT FAQ]]<br />
*[[FDT Marketing FAQ | FDT Marketing FAQ]]<br />
<br />
= Videos =<br />
We're always adding new videos of tutorials, FDT's features, workflows and new ways of using FDT.<br />
Check out our [http://fdt.powerflasher.com/blog/fdt-video-gallery Videos] page.<br />
<br />
= Flash Tutorials (FDT 4 & 5)=<br />
== Installing And Running FDT ==<br />
If you haven't installed FDT, or are having trouble getting FDT to install or launch, check out this tutorial. We'll make sure you have Java installed and walk you through downloading and installing FDT on Windows and OSX. <br />
<br />
*[[Installing and Running FDT| Continue to the Installing and Running FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Basic AS3 Tutorial ==<br />
Learn the basics of creating, building and compiling your first FDT project. You'll use the Project Wizard to create a project, then create your first Class and compile and view your application. <br />
<br />
*[[Basic AS3 Tutorial | Continue to the Basic AS3 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Flex / AIR Tutorial ==<br />
See how quickly you can code and run an AIR application with the Flex framework. Similar to the [[Basic AS3 Tutorial]], you'll go a little further by adjusting compiler options and being introduced to some of FDT's Smart Editor features. <br />
<br />
*[[Flex / Air Tutorial | Continue to the Flex / Air Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Writing Code With FDT ==<br />
FDT is packed with features designed to help developers write code efficiently and quickly. This walkthrough will go through many, but not all, of the most popular Smart Editor features. <br />
<br />
*[[Writing Code With FDT|Continue to the Writing Code With FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Navigating Your Code and FDT's Workspace ==<br />
With all the ins and outs of an IDE like FDT, a developer can get lost is seemingly endless windows and views. It's important to know how to get around the application and make sure you stay in control of what you're looking at. <br />
<br />
*[[Navigating Your Code and FDT's Workspace|Continue to the Navigating Your Code and FDT's Workspace tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
== Launch Configurations ==<br />
Eventually, you're going to want to make some tweaks to your .SWF's settings (name, background color, size, frame rate ) as well as start using some advanced features such as viewing your .SWF in a browser.<br />
<br />
This tutorial goes over these important topics, as well as introduces FDT's new Launcher Chain feature.<br />
<br />
*[[Launch Configuration Tutorial| Continue to the Launch Configuration Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== FDT and Ant Tutorial ==<br />
Ant is a build tool that developers can use to extend FDT. It's an XML based syntax and can be used to extend FDT's built in launcher or used instead of the launcher if developers want to have even more control over their build process. It also has many built in tasks such as uploading to FTP, checking out from .SVN and creating .ZIP files just to name a few.<br />
<br />
*[[FDT and Ant Tutorial|Continue to the FDT and Ant Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Intro To Profiling Applications ==<br />
The FDT Profiler helps developers to detect performance issues within a flash application by providing two different approaches for profiling:<br />
<br />
*[[Intro To Profiling Applications| Continue to the Intro To Profiling Applications tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]][[File:Videoicon.png|20px|link=]]<br />
<br />
== Creating Code Templates (snippets) ==<br />
FDT’s code templates, also referred to as code snippets, allow for quick generation of user defined code. Although FDT ships with many templates pre-installed, users can edit existing templates, create new ones and even share templates with other FDT developers. <br />
<br />
*[[Creating Code Templates|Continue to the Creating Code Templates tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Sharing and Archiving Projects ==<br />
Become familiar with how easy it is to share and distribute projects with others with FDT. This tutorial will show you how to import and export projects with FDT.<br />
<br />
*[[Sharing and Archiving Projects| Continue to the Sharing and Archiving Projects tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Setting Up and Using FDT & SVN ==<br />
Sharing FDT projects is very easy to do. Follow this tutorial to learn how to:<br />
* Activate a SVN plugin for FDT<br />
* Add a project to a repository <br />
* How to checkout an existing FDT project using a SVN repository.<br />
<br />
*[[Setting Up and Using FDT & SVN| Continue to the Setting Up and Using FDT & SVN tutorial]]<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
== SDK Management ==<br />
With the release of FDT 4, developers now have granular control over their SDKs. Not only is adding and removing SDKs to projects easy, you can also easily add and remove specific parts of the SDK you may or may not need. You can also easily manage custom SDKs.<br />
<br />
*[[SDK Management|Continue to the SDK Management tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Using FDT's Debugger ==<br />
FDT Max includes a powerful debugger. During the development process, a debugging tool is useful to help discover and fix bugs. Armed with FDT's debugger, you'll be prepared to crush any bugs that stand in your way.<br />
<br />
*[[Using FDT's Debugger|Continue to the Using FDT's Debugger tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==From Flash Builder To FDT==<br />
If the differences between FDT and Flash Builder were boiled down into one word, it would be Flexibility. Beside having powerful code editing features that are missing with Flash Builder, FDT is flexible with your project management whereas Flash Builder is going to harness you with constraints. While, at first, these concepts will seem foreign to the long term Flash Builder user - as you master them you'll quickly understand the power and flexibility they provide.<br />
<br />
*[[From Flash Builder To FDT|Continue to the From Flash Builder To FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Font Library Creator==<br />
FDT now includes a Font Library Creator. This is a very hand GUI tool that is designed to make font management much, much easier. Developers can use the Font Library Creator to not just add fonts but also control which glyphs and characters are used. <br />
<br />
In this tutorial you'll learn how to use fonts via:<br />
* Actionscript Embed<br />
* SWCs<br />
* SWFs - both at compile time and runtime<br />
<br />
* [[Font Library Creator|Continue to the Font Library Creator tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Project Templates==<br />
FDT developers can create sophisticated project setups that can be customized just before generation.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project templates with FDT<br />
* Where templates are located and their structure<br />
* How to create a simple project template<br />
* How to create complex templates<br />
<br />
*[[Project Templates|Continue to the Project Template tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Project References==<br />
This enables powerful ways for developers to share source code between multiple projects.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project references<br />
* How to share source code between projects<br />
<br />
*[[Project_References|Continue to the Project References Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Working With Linked Resources ==<br />
Some developers like to have source code, either via a folder or .AS files, added to their project that is saved on their workstation outside of their project. The solution for this is to use FDT's 'Linked Resource' feature.<br />
<br />
*[[Working With Linked Resources|Continue to the Working With Linked Resources Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Apparat & FDT==<br />
With FDT 4.4, we've began to support Apparat. Apparat is a powerful framework to optimize ABC, SWC and SWF files. It's open source and looks to push the boundaries of ways for Flash developers to enhance their workflows and applications.<br />
<br />
In this tutorial you'll learn:<br />
* How to enable Apparat for your projects<br />
<br />
*[[Apparat|Continue to the Apparat Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Adding The Flex 4.5 & 3.6 SDKs To FDT==<br />
Learn how to add the latest SDKs to FDT.<br />
<br />
*[[Installing 3.6 & 4.5 SDKs|Continue the Installing 3.6 & 4.5 SDKs Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Migrating Projects & Using Project Types==<br />
Watch this simple video on how to move a project to a new SDK and Project Type.<br />
<br />
*[[Changing SDKs And Project Types|Continue the Changing SDKs And Project Types Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
==Setting Up and Using Mobile Templates==<br />
Watch these two videos on how to merge the Flex 4.5.1 and AIR 2.7 sdks.<br />
<br />
*[[Setting Up and Using Mobile Templates|Continue the Setting Up and Using Mobile Templates Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= Flash Tutorials (FDT 5)=<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Mobile Applications With FDT|Continue to the Building Mobile Applications With FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Advanced Refactoring==<br />
With FDT 5, the team has added powerful refactoring to your workflow. These refactorings have been integrated into our Quick Assist workflow, so you won't be slowed down at all - in fact you'll see how quickly you can restructure your code.<br />
<br />
*[[Advanced Refactoring & FDT 5|Continue to the Advanced Refactoring & FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==AIR SDK Merging==<br />
Until now, when developers wanted to merge an AIR & Flex SDK it had to be done by hand, often using the command line. With FDT 5, developers can have this process automated for them.<br />
<br />
*[[AIR SDK Merging|Continue to the AIR SDK Merging Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==ASDoc==<br />
Whenever the code in your project has ASDoc notation, FDT will read it and display it both in the ASDoc View and in the editor. This is one of our most voted features.<br />
<br />
*[[ASDoc|Continue to the ASDoc Documentation]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Source Attachment For SWCs==<br />
With FDT, you can easily include the source files for your favorite SWC libraries. This enables you to get the speed and convenience of a SWC and the power of debugging and ASDocs.<br />
<br />
*[[Source Attachment For SWCs|Continue to the Source Attachment For SWCs tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Breakpoint Support in Flex SDK==<br />
When source code has been added to a SDK, FDT will then scan for ADocs and integrate the sources to use with breakpoints.<br />
<br />
*[[Breakpoint Support in Flex SDK|Continue to the Breakpoint Support in Flex SDK tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Standalone Applications With FDT & Zinc 4.0 |Continue to the Building Standalone Applications With FDT & Zinc 4.0]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= New Features (FDT 5.5)=<br />
==SWFBridge==<br />
At the core FDT has always been about comfort, customization and community. With FDT 5.5, the team delivers a new feature that is a powerful combination of all 3 – SWFBridge.<br />
<br />
*[http://fdt.powerflasher.com/swf-bridge/ See our microsite].<br />
<br />
==Blackberry Support==<br />
Easily create, debug and publish applications for Blackberry directly from FDT.<br />
<br />
*[http://fdt.powerflasher.com/blackberry-for-fdt/ See the microsite for more info].<br />
<br />
==ANE Support==<br />
With FDT 5.5, Native Extensions have been fully integrated into FDT. Add, remove and package you applications with ANEs with just a few clicks.<br />
<br />
*[[ANE Support|Continue to learn more about ANE Support]]<br />
<br />
==Setup Wizard==<br />
FDT's Setup Wizard helps you customize FDT to your needs and will get you coding quickly. This is helpful for those experienced or new to FDT.<br />
<br />
*[[Setup Wizard|Continue to learn more about the Setup Wizard]]<br />
<br />
==Debugger Enhancements==<br />
See some of FDT's newest additions to the debugger, including Exception Breakpoints and Watch Expressions.<br />
<br />
*[http://vimeo.com/41373498 See the new features in action].<br />
<br />
==Improved Quick Assists & Fixes==<br />
The FDT team has improved upon existing Quick Fixes and Quick Assists to provide more refactoring options.<br />
<br />
*[http://vimeo.com/41440516 See the new Quick Fixes in action].<br />
<br />
==New Ant Tasks==<br />
The new 'fdt.invoke.launchConfiguration' task enables the execution of any launch configuration directly from Ant.<br />
<br />
*[http://vimeo.com/41847484 See the new Ant Task in action].<br />
<br />
= Haxe Tutorials (FDT 5)=<br />
== An Overview of Haxe & FDT ==<br />
Developed in collaboration with Powerflasher and [http://www.influxis.com Influxis], the FDT Haxe plugin provides developers a powerful tool for authoring the haXe multi-platform language. <br />
<br />
*[[An Overview of haXe & FDT| Continue to the An Overview of Haxe & FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Adding a Linked Folder (Resource) ==<br />
If you have source code located outside of your workspace, FDT allows you to create a link to this folder and have access to any source code therein.<br />
<br />
*[[Adding a Linked Folder To A haXe Project| Continue to learn how to add a linked folder to A Haxe project]]<br />
<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
= Community Resources =<br />
We really appreciate the of efforts the FDT community, it's a big part of what makes FDT so great. Check out our [[Community Resources]] page to learn about tutorials and tips that fans of FDT have created.<br />
<br />
= Online Workshops =<br />
Every Last Tuesday of the month at 9 to 10am (PST)<br />
<br />
Join our next Live Broadcast FDT4 workshop. [http://fdt4.eventbrite.com/ Register here] to keep you informed on the latest activities.<br />
<br />
The sessions will be contingent on the audience attending.<br />
Tell us what we should cover when you register.<br />
<br />
You will learn how to use FDT or help getting started, while covering some of latest new features.<br />
This is also an opportunity to discuss code and best practices developing multi-target applications in ActionScript, Flex or haXe for the Desktop, Mobile and Web.<br />
<br />
Most of all, this is also a great opportunity to ask any question directly to the FDT team and give us feedback.<br />
<br />
The session will be live on [http://www.ustream.tv/channel/fdt-live-previews ustream.tv]<br />
<br />
Here you can find the recordings of our past workshops:<br />
<br />
*[[FDT Workshops|Continue to the FDT Workshops video page]]<br />
<br />
= Reference =<br />
== Project Template Syntax==<br />
The new project template model introduced in 4.2 greatly extended the syntax of the description.xml including UI components and expressions.<br />
<br />
Learn more by reading about [[Project Template Syntax]]<br />
<br />
== Ant Tasks ==<br />
<br />
[http://en.wikipedia.org/wiki/Apache_Ant Ant] is a tool that allows developers to extend FDT and automate various tasks. It's XML based and easy to learn. Ant on it's own has many built in tasks, and even better, FDT has various Ant tasks of it's own for you to use.<br />
<br />
Learn more by reading [[FDT Ant Tasks]].<br />
<br />
= Features =<br />
<br />
== Smart Editor ==<br />
<br />
*[[Live Error Highlighting]]<br />
*[[Adjustable Error Settings]] <br />
*[[Auto Library Folder]] <br />
*[[Syntactic and Semantic Highlighting]] <br />
*[[Advanced Code Completion]] (context and convention based) <br />
*[[Code Templates]] <br />
*[[Quick Fixes]] <br />
*[[Quick Assist]] <br />
*[[Integrated Color Picker]]<br />
*[[Organize Imports]] <br />
*[[ Advanced code formatter (AS3 + MXML)]] <br />
*[[Project Tasks]] (TODO, FIXME, ...) <br />
*[[Customizable Hotkeys]] <br />
*[[Rename Refactoring]] (for files, types, variables, metadata and functions)<br />
*[[Quick Trace]] <br />
*[[Move Refactoring]]<br />
*[[Occurrence Marking]]<br />
*[[MXML Namespace Generation & Refactoring]]<br />
<br />
== Navigation ==<br />
<br />
*[[Quick Outline]] <br />
*[[Quick Open Type]] <br />
*[[Quick Type Hierarchy]] <br />
*[[Quick Type Dependency]] <br />
*[[Quick Explore]] <br />
*[[Outline View]] <br />
*[[Open Declaration]] <br />
*[[Open Resource]] <br />
*[[Open Type]] <br />
*[[Reference Search]]<br />
*[[FDT Search]]<br />
*[[Quick Access]]<br />
<br />
== Project Management ==<br />
* [[SWFBridge | SWFBridge (FDT 5.5 Beta)]]<br />
* [[Creation Wizards]]<br />
* [[SDK Management]]<br />
* Multiple [[Source Folders]]<br />
* [[Linked Libraries]] Linking of external source folders<br />
* [[SWC Support]] Linking of external SWCs<br />
* Version Control Support [SVN]<br />
* SWC browsing and source code representation<br />
* [[Refactoring]]<br />
<br />
== Testing and Deployment ==<br />
*[[Flash Authoring Support]]<br />
*[[Customizable Compilation]]<br />
*[[FDT and ANT]]<br />
*[[ANT Exporter]]<br />
*[[Launch Configuration]]<br />
*[[SWF Viewers]]<br />
*[[Profiler]]<br />
*[[Debugger]]<br />
<br />
= Downloads =<br />
==Example Projects==<br />
<br />
Visit our [[Downloads]] page for more.<br />
<br />
==Media Resources==<br />
Decorate your workspace with FDT artwork. <br />
<br />
Jump to our [[Media Resource Page]].<br />
<br />
==Legacy FDT Downloads==<br />
<br />
If you need to download an earlier version of FDT, please [http://fdt.powerflasher.com/contact contact us]. Provide the name and email address that is associated with the version license.<br />
<br />
= Suggested Eclipse Plugins =<br />
<br />
Because FDT is part of the Eclipse community, there are many plugins that can be integrated with FDT. <br />
Visit our [[Suggested Eclipse Plugins]] page for some plugins we think you might find helpful.<br />
<br />
= FAQs =<br />
If you're confused, run into a problem getting started or looking for a place to download legacy versions of FDT. Check out our FAQ.<br />
<br />
Otherwise, [http://fdt.powerflasher.com/contact/ contact us.]<br />
<br />
==Downloading, Setting Up & Using FDT==<br />
[[FAQ | Continue to the Downloading, Setting Up & Using FDT FAQ]]<br />
<br />
==Sales & Marketing==<br />
[[ FDT Marketing FAQ | Continue to the Sales & Marketing FAQ]]<br />
<br />
==Subscriptions & License Management==<br />
[[ Subscriptions & License Management FAQ | Continue to the Subscriptions & License Management FAQ]]<br />
<br />
= Release Notes =<br />
<br />
To update to the latest FDT version follow the instructions in our [http://fdt.powerflasher.com/docs/FAQ#How_do_I_update_FDT.3F FAQ] otherwise you can download the latest FDT [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ here].<br />
<br />
Latest version information:<br />
*[[FDT 5 Release Notes]]<br />
*[[FDT 4 Release Notes]]</div>Aklementhttp://fdt.powerflasher.com/docs/Main_PageMain Page2012-05-30T13:30:21Z<p>Aklement: /* Artwork */</p>
<hr />
<div>[[File:Text_icon.png|30px|link=]] means the tutorial is written <br /><br />
[[File:Videoicon.png|30px|link=]] means the tutorial has video <br /><br />
[[File:Download_arrow.png|30px|link=]] means the tutorial has example files to download <br /><br />
<br />
= FDT Getting Started Guide =<br />
<br />
Michael Plank, from [http://www.pro3games.com/ pro3dgames], has written a great tutorial on activetuts. <br />
[http://active.tutsplus.com/tutorials/workflow/beginners-guide-to-powerflashers-fdt-4/ Check it out here].<br />
<br />
<br />
<br />
These short guides will lead you through the installation and will introduce you to some of the highly efficient and time-saving features and the basic structure of the FDT work environment.<br />
<br />
==Quick Fixes and Quick Assists==<br />
Our [http://fdt.powerflasher.com/blog/fdt-video-gallery/ Videos] page has all our Quick Fixes and Quick Assists in video format. A great place to learn about FDT's most popular and powerful features.<br />
<br />
==Tutorials==<br />
*[[Installing and Running FDT]]<br />
*[[Basic AS3 Tutorial]]<br />
*[[Writing Code With FDT]]<br />
*[[Navigating Your Code and FDT's Workspace]]<br />
<br />
==Shortcuts==<br />
Forget the mouse! The FDT shortcuts are one of the most important techniques to increase coding efficiency. Here is a cheat sheet of the most popular shortcuts for quick reference<br />
*[[FDT Shortcuts| Learn about FDT's shortcuts.]]<br />
<br />
==FAQ==<br />
If you're confused or having a problem getting yourself going. Check out our FAQ.<br />
<br />
*[[FAQ | Installing & Using FDT FAQ]]<br />
*[[FDT Marketing FAQ | FDT Marketing FAQ]]<br />
<br />
= Videos =<br />
We're always adding new videos of tutorials, FDT's features, workflows and new ways of using FDT.<br />
Check out our [http://fdt.powerflasher.com/blog/fdt-video-gallery Videos] page.<br />
<br />
= Flash Tutorials (FDT 4 & 5)=<br />
== Installing And Running FDT ==<br />
If you haven't installed FDT, or are having trouble getting FDT to install or launch, check out this tutorial. We'll make sure you have Java installed and walk you through downloading and installing FDT on Windows and OSX. <br />
<br />
*[[Installing and Running FDT| Continue to the Installing and Running FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Basic AS3 Tutorial ==<br />
Learn the basics of creating, building and compiling your first FDT project. You'll use the Project Wizard to create a project, then create your first Class and compile and view your application. <br />
<br />
*[[Basic AS3 Tutorial | Continue to the Basic AS3 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Flex / AIR Tutorial ==<br />
See how quickly you can code and run an AIR application with the Flex framework. Similar to the [[Basic AS3 Tutorial]], you'll go a little further by adjusting compiler options and being introduced to some of FDT's Smart Editor features. <br />
<br />
*[[Flex / Air Tutorial | Continue to the Flex / Air Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Writing Code With FDT ==<br />
FDT is packed with features designed to help developers write code efficiently and quickly. This walkthrough will go through many, but not all, of the most popular Smart Editor features. <br />
<br />
*[[Writing Code With FDT|Continue to the Writing Code With FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Navigating Your Code and FDT's Workspace ==<br />
With all the ins and outs of an IDE like FDT, a developer can get lost is seemingly endless windows and views. It's important to know how to get around the application and make sure you stay in control of what you're looking at. <br />
<br />
*[[Navigating Your Code and FDT's Workspace|Continue to the Navigating Your Code and FDT's Workspace tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
== Launch Configurations ==<br />
Eventually, you're going to want to make some tweaks to your .SWF's settings (name, background color, size, frame rate ) as well as start using some advanced features such as viewing your .SWF in a browser.<br />
<br />
This tutorial goes over these important topics, as well as introduces FDT's new Launcher Chain feature.<br />
<br />
*[[Launch Configuration Tutorial| Continue to the Launch Configuration Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== FDT and Ant Tutorial ==<br />
Ant is a build tool that developers can use to extend FDT. It's an XML based syntax and can be used to extend FDT's built in launcher or used instead of the launcher if developers want to have even more control over their build process. It also has many built in tasks such as uploading to FTP, checking out from .SVN and creating .ZIP files just to name a few.<br />
<br />
*[[FDT and Ant Tutorial|Continue to the FDT and Ant Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Intro To Profiling Applications ==<br />
The FDT Profiler helps developers to detect performance issues within a flash application by providing two different approaches for profiling:<br />
<br />
*[[Intro To Profiling Applications| Continue to the Intro To Profiling Applications tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]][[File:Videoicon.png|20px|link=]]<br />
<br />
== Creating Code Templates (snippets) ==<br />
FDT’s code templates, also referred to as code snippets, allow for quick generation of user defined code. Although FDT ships with many templates pre-installed, users can edit existing templates, create new ones and even share templates with other FDT developers. <br />
<br />
*[[Creating Code Templates|Continue to the Creating Code Templates tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Sharing and Archiving Projects ==<br />
Become familiar with how easy it is to share and distribute projects with others with FDT. This tutorial will show you how to import and export projects with FDT.<br />
<br />
*[[Sharing and Archiving Projects| Continue to the Sharing and Archiving Projects tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Setting Up and Using FDT & SVN ==<br />
Sharing FDT projects is very easy to do. Follow this tutorial to learn how to:<br />
* Activate a SVN plugin for FDT<br />
* Add a project to a repository <br />
* How to checkout an existing FDT project using a SVN repository.<br />
<br />
*[[Setting Up and Using FDT & SVN| Continue to the Setting Up and Using FDT & SVN tutorial]]<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
== SDK Management ==<br />
With the release of FDT 4, developers now have granular control over their SDKs. Not only is adding and removing SDKs to projects easy, you can also easily add and remove specific parts of the SDK you may or may not need. You can also easily manage custom SDKs.<br />
<br />
*[[SDK Management|Continue to the SDK Management tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Using FDT's Debugger ==<br />
FDT Max includes a powerful debugger. During the development process, a debugging tool is useful to help discover and fix bugs. Armed with FDT's debugger, you'll be prepared to crush any bugs that stand in your way.<br />
<br />
*[[Using FDT's Debugger|Continue to the Using FDT's Debugger tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==From Flash Builder To FDT==<br />
If the differences between FDT and Flash Builder were boiled down into one word, it would be Flexibility. Beside having powerful code editing features that are missing with Flash Builder, FDT is flexible with your project management whereas Flash Builder is going to harness you with constraints. While, at first, these concepts will seem foreign to the long term Flash Builder user - as you master them you'll quickly understand the power and flexibility they provide.<br />
<br />
*[[From Flash Builder To FDT|Continue to the From Flash Builder To FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Font Library Creator==<br />
FDT now includes a Font Library Creator. This is a very hand GUI tool that is designed to make font management much, much easier. Developers can use the Font Library Creator to not just add fonts but also control which glyphs and characters are used. <br />
<br />
In this tutorial you'll learn how to use fonts via:<br />
* Actionscript Embed<br />
* SWCs<br />
* SWFs - both at compile time and runtime<br />
<br />
* [[Font Library Creator|Continue to the Font Library Creator tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Project Templates==<br />
FDT developers can create sophisticated project setups that can be customized just before generation.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project templates with FDT<br />
* Where templates are located and their structure<br />
* How to create a simple project template<br />
* How to create complex templates<br />
<br />
*[[Project Templates|Continue to the Project Template tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Project References==<br />
This enables powerful ways for developers to share source code between multiple projects.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project references<br />
* How to share source code between projects<br />
<br />
*[[Project_References|Continue to the Project References Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Working With Linked Resources ==<br />
Some developers like to have source code, either via a folder or .AS files, added to their project that is saved on their workstation outside of their project. The solution for this is to use FDT's 'Linked Resource' feature.<br />
<br />
*[[Working With Linked Resources|Continue to the Working With Linked Resources Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Apparat & FDT==<br />
With FDT 4.4, we've began to support Apparat. Apparat is a powerful framework to optimize ABC, SWC and SWF files. It's open source and looks to push the boundaries of ways for Flash developers to enhance their workflows and applications.<br />
<br />
In this tutorial you'll learn:<br />
* How to enable Apparat for your projects<br />
<br />
*[[Apparat|Continue to the Apparat Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Adding The Flex 4.5 & 3.6 SDKs To FDT==<br />
Learn how to add the latest SDKs to FDT.<br />
<br />
*[[Installing 3.6 & 4.5 SDKs|Continue the Installing 3.6 & 4.5 SDKs Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Migrating Projects & Using Project Types==<br />
Watch this simple video on how to move a project to a new SDK and Project Type.<br />
<br />
*[[Changing SDKs And Project Types|Continue the Changing SDKs And Project Types Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
==Setting Up and Using Mobile Templates==<br />
Watch these two videos on how to merge the Flex 4.5.1 and AIR 2.7 sdks.<br />
<br />
*[[Setting Up and Using Mobile Templates|Continue the Setting Up and Using Mobile Templates Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= Flash Tutorials (FDT 5)=<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Mobile Applications With FDT|Continue to the Building Mobile Applications With FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Advanced Refactoring==<br />
With FDT 5, the team has added powerful refactoring to your workflow. These refactorings have been integrated into our Quick Assist workflow, so you won't be slowed down at all - in fact you'll see how quickly you can restructure your code.<br />
<br />
*[[Advanced Refactoring & FDT 5|Continue to the Advanced Refactoring & FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==AIR SDK Merging==<br />
Until now, when developers wanted to merge an AIR & Flex SDK it had to be done by hand, often using the command line. With FDT 5, developers can have this process automated for them.<br />
<br />
*[[AIR SDK Merging|Continue to the AIR SDK Merging Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==ASDoc==<br />
Whenever the code in your project has ASDoc notation, FDT will read it and display it both in the ASDoc View and in the editor. This is one of our most voted features.<br />
<br />
*[[ASDoc|Continue to the ASDoc Documentation]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Source Attachment For SWCs==<br />
With FDT, you can easily include the source files for your favorite SWC libraries. This enables you to get the speed and convenience of a SWC and the power of debugging and ASDocs.<br />
<br />
*[[Source Attachment For SWCs|Continue to the Source Attachment For SWCs tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Breakpoint Support in Flex SDK==<br />
When source code has been added to a SDK, FDT will then scan for ADocs and integrate the sources to use with breakpoints.<br />
<br />
*[[Breakpoint Support in Flex SDK|Continue to the Breakpoint Support in Flex SDK tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Standalone Applications With FDT & Zinc 4.0 |Continue to the Building Standalone Applications With FDT & Zinc 4.0]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= New Features (FDT 5.5)=<br />
==SWFBridge==<br />
At the core FDT has always been about comfort, customization and community. With FDT 5.5, the team delivers a new feature that is a powerful combination of all 3 – SWFBridge.<br />
<br />
*[http://fdt.powerflasher.com/swf-bridge/ See our microsite].<br />
<br />
==Blackberry Support==<br />
Easily create, debug and publish applications for Blackberry directly from FDT.<br />
<br />
*[http://fdt.powerflasher.com/blackberry-for-fdt/ See the microsite for more info].<br />
<br />
==ANE Support==<br />
With FDT 5.5, Native Extensions have been fully integrated into FDT. Add, remove and package you applications with ANEs with just a few clicks.<br />
<br />
*[[ANE Support|Continue to learn more about ANE Support]]<br />
<br />
==Setup Wizard==<br />
FDT's Setup Wizard helps you customize FDT to your needs and will get you coding quickly. This is helpful for those experienced or new to FDT.<br />
<br />
*[[Setup Wizard|Continue to learn more about the Setup Wizard]]<br />
<br />
==Debugger Enhancements==<br />
See some of FDT's newest additions to the debugger, including Exception Breakpoints and Watch Expressions.<br />
<br />
*[http://vimeo.com/41373498 See the new features in action].<br />
<br />
==Improved Quick Assists & Fixes==<br />
The FDT team has improved upon existing Quick Fixes and Quick Assists to provide more refactoring options.<br />
<br />
*[http://vimeo.com/41440516 See the new Quick Fixes in action].<br />
<br />
==New Ant Tasks==<br />
The new 'fdt.invoke.launchConfiguration' task enables the execution of any launch configuration directly from Ant.<br />
<br />
*[http://vimeo.com/41847484 See the new Ant Task in action].<br />
<br />
= Haxe Tutorials (FDT 5)=<br />
== An Overview of Haxe & FDT ==<br />
Developed in collaboration with Powerflasher and [http://www.influxis.com Influxis], the FDT Haxe plugin provides developers a powerful tool for authoring the haXe multi-platform language. <br />
<br />
*[[An Overview of haXe & FDT| Continue to the An Overview of Haxe & FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Adding a Linked Folder (Resource) ==<br />
If you have source code located outside of your workspace, FDT allows you to create a link to this folder and have access to any source code therein.<br />
<br />
*[[Adding a Linked Folder To A haXe Project| Continue to learn how to add a linked folder to A Haxe project]]<br />
<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
= Community Resources =<br />
We really appreciate the of efforts the FDT community, it's a big part of what makes FDT so great. Check out our [[Community Resources]] page to learn about tutorials and tips that fans of FDT have created.<br />
<br />
= Online Workshops =<br />
Every Last Tuesday of the month at 9 to 10am (PST)<br />
<br />
Join our next Live Broadcast FDT4 workshop. [http://fdt4.eventbrite.com/ Register here] to keep you informed on the latest activities.<br />
<br />
The sessions will be contingent on the audience attending.<br />
Tell us what we should cover when you register.<br />
<br />
You will learn how to use FDT or help getting started, while covering some of latest new features.<br />
This is also an opportunity to discuss code and best practices developing multi-target applications in ActionScript, Flex or haXe for the Desktop, Mobile and Web.<br />
<br />
Most of all, this is also a great opportunity to ask any question directly to the FDT team and give us feedback.<br />
<br />
The session will be live on [http://www.ustream.tv/channel/fdt-live-previews ustream.tv]<br />
<br />
Here you can find the recordings of our past workshops:<br />
<br />
*[[FDT Workshops|Continue to the FDT Workshops video page]]<br />
<br />
= Reference =<br />
== Project Template Syntax==<br />
The new project template model introduced in 4.2 greatly extended the syntax of the description.xml including UI components and expressions.<br />
<br />
Learn more by reading about [[Project Template Syntax]]<br />
<br />
== Ant Tasks ==<br />
<br />
[http://en.wikipedia.org/wiki/Apache_Ant Ant] is a tool that allows developers to extend FDT and automate various tasks. It's XML based and easy to learn. Ant on it's own has many built in tasks, and even better, FDT has various Ant tasks of it's own for you to use.<br />
<br />
Learn more by reading [[FDT Ant Tasks]].<br />
<br />
= Features =<br />
<br />
== Smart Editor ==<br />
<br />
*[[Live Error Highlighting]]<br />
*[[Adjustable Error Settings]] <br />
*[[Auto Library Folder]] <br />
*[[Syntactic and Semantic Highlighting]] <br />
*[[Advanced Code Completion]] (context and convention based) <br />
*[[Code Templates]] <br />
*[[Quick Fixes]] <br />
*[[Quick Assist]] <br />
*[[Integrated Color Picker]]<br />
*[[Organize Imports]] <br />
*[[ Advanced code formatter (AS3 + MXML)]] <br />
*[[Project Tasks]] (TODO, FIXME, ...) <br />
*[[Customizable Hotkeys]] <br />
*[[Rename Refactoring]] (for files, types, variables, metadata and functions)<br />
*[[Quick Trace]] <br />
*[[Move Refactoring]]<br />
*[[Occurrence Marking]]<br />
*[[MXML Namespace Generation & Refactoring]]<br />
<br />
== Navigation ==<br />
<br />
*[[Quick Outline]] <br />
*[[Quick Open Type]] <br />
*[[Quick Type Hierarchy]] <br />
*[[Quick Type Dependency]] <br />
*[[Quick Explore]] <br />
*[[Outline View]] <br />
*[[Open Declaration]] <br />
*[[Open Resource]] <br />
*[[Open Type]] <br />
*[[Reference Search]]<br />
*[[FDT Search]]<br />
*[[Quick Access]]<br />
<br />
== Project Management ==<br />
* [[SWFBridge | SWFBridge (FDT 5.5 Beta)]]<br />
* [[Creation Wizards]]<br />
* [[SDK Management]]<br />
* Multiple [[Source Folders]]<br />
* [[Linked Libraries]] Linking of external source folders<br />
* [[SWC Support]] Linking of external SWCs<br />
* Version Control Support [SVN]<br />
* SWC browsing and source code representation<br />
* [[Refactoring]]<br />
<br />
== Testing and Deployment ==<br />
*[[Flash Authoring Support]]<br />
*[[Customizable Compilation]]<br />
*[[FDT and ANT]]<br />
*[[ANT Exporter]]<br />
*[[Launch Configuration]]<br />
*[[SWF Viewers]]<br />
*[[Profiler]]<br />
*[[Debugger]]<br />
<br />
= Downloads =<br />
==Example Projects==<br />
<br />
Visit our [[Downloads]] page for more.<br />
<br />
==Legacy FDT Downloads==<br />
<br />
If you need to download an earlier version of FDT, please [http://fdt.powerflasher.com/contact contact us]. Provide the name and email address that is associated with the version license.<br />
<br />
= Suggested Eclipse Plugins =<br />
<br />
Because FDT is part of the Eclipse community, there are many plugins that can be integrated with FDT. <br />
Visit our [[Suggested Eclipse Plugins]] page for some plugins we think you might find helpful.<br />
<br />
= FAQs =<br />
If you're confused, run into a problem getting started or looking for a place to download legacy versions of FDT. Check out our FAQ.<br />
<br />
Otherwise, [http://fdt.powerflasher.com/contact/ contact us.]<br />
<br />
==Downloading, Setting Up & Using FDT==<br />
[[FAQ | Continue to the Downloading, Setting Up & Using FDT FAQ]]<br />
<br />
==Sales & Marketing==<br />
[[ FDT Marketing FAQ | Continue to the Sales & Marketing FAQ]]<br />
<br />
==Subscriptions & License Management==<br />
[[ Subscriptions & License Management FAQ | Continue to the Subscriptions & License Management FAQ]]<br />
<br />
= Release Notes =<br />
<br />
To update to the latest FDT version follow the instructions in our [http://fdt.powerflasher.com/docs/FAQ#How_do_I_update_FDT.3F FAQ] otherwise you can download the latest FDT [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ here].<br />
<br />
Latest version information:<br />
*[[FDT 5 Release Notes]]<br />
*[[FDT 4 Release Notes]]</div>Aklementhttp://fdt.powerflasher.com/docs/Main_PageMain Page2012-05-30T13:29:39Z<p>Aklement: /* Downloads */</p>
<hr />
<div>[[File:Text_icon.png|30px|link=]] means the tutorial is written <br /><br />
[[File:Videoicon.png|30px|link=]] means the tutorial has video <br /><br />
[[File:Download_arrow.png|30px|link=]] means the tutorial has example files to download <br /><br />
<br />
= FDT Getting Started Guide =<br />
<br />
Michael Plank, from [http://www.pro3games.com/ pro3dgames], has written a great tutorial on activetuts. <br />
[http://active.tutsplus.com/tutorials/workflow/beginners-guide-to-powerflashers-fdt-4/ Check it out here].<br />
<br />
<br />
<br />
These short guides will lead you through the installation and will introduce you to some of the highly efficient and time-saving features and the basic structure of the FDT work environment.<br />
<br />
==Quick Fixes and Quick Assists==<br />
Our [http://fdt.powerflasher.com/blog/fdt-video-gallery/ Videos] page has all our Quick Fixes and Quick Assists in video format. A great place to learn about FDT's most popular and powerful features.<br />
<br />
==Tutorials==<br />
*[[Installing and Running FDT]]<br />
*[[Basic AS3 Tutorial]]<br />
*[[Writing Code With FDT]]<br />
*[[Navigating Your Code and FDT's Workspace]]<br />
<br />
==Shortcuts==<br />
Forget the mouse! The FDT shortcuts are one of the most important techniques to increase coding efficiency. Here is a cheat sheet of the most popular shortcuts for quick reference<br />
*[[FDT Shortcuts| Learn about FDT's shortcuts.]]<br />
<br />
==FAQ==<br />
If you're confused or having a problem getting yourself going. Check out our FAQ.<br />
<br />
*[[FAQ | Installing & Using FDT FAQ]]<br />
*[[FDT Marketing FAQ | FDT Marketing FAQ]]<br />
<br />
= Videos =<br />
We're always adding new videos of tutorials, FDT's features, workflows and new ways of using FDT.<br />
Check out our [http://fdt.powerflasher.com/blog/fdt-video-gallery Videos] page.<br />
<br />
= Flash Tutorials (FDT 4 & 5)=<br />
== Installing And Running FDT ==<br />
If you haven't installed FDT, or are having trouble getting FDT to install or launch, check out this tutorial. We'll make sure you have Java installed and walk you through downloading and installing FDT on Windows and OSX. <br />
<br />
*[[Installing and Running FDT| Continue to the Installing and Running FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Basic AS3 Tutorial ==<br />
Learn the basics of creating, building and compiling your first FDT project. You'll use the Project Wizard to create a project, then create your first Class and compile and view your application. <br />
<br />
*[[Basic AS3 Tutorial | Continue to the Basic AS3 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Flex / AIR Tutorial ==<br />
See how quickly you can code and run an AIR application with the Flex framework. Similar to the [[Basic AS3 Tutorial]], you'll go a little further by adjusting compiler options and being introduced to some of FDT's Smart Editor features. <br />
<br />
*[[Flex / Air Tutorial | Continue to the Flex / Air Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Writing Code With FDT ==<br />
FDT is packed with features designed to help developers write code efficiently and quickly. This walkthrough will go through many, but not all, of the most popular Smart Editor features. <br />
<br />
*[[Writing Code With FDT|Continue to the Writing Code With FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Navigating Your Code and FDT's Workspace ==<br />
With all the ins and outs of an IDE like FDT, a developer can get lost is seemingly endless windows and views. It's important to know how to get around the application and make sure you stay in control of what you're looking at. <br />
<br />
*[[Navigating Your Code and FDT's Workspace|Continue to the Navigating Your Code and FDT's Workspace tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
== Launch Configurations ==<br />
Eventually, you're going to want to make some tweaks to your .SWF's settings (name, background color, size, frame rate ) as well as start using some advanced features such as viewing your .SWF in a browser.<br />
<br />
This tutorial goes over these important topics, as well as introduces FDT's new Launcher Chain feature.<br />
<br />
*[[Launch Configuration Tutorial| Continue to the Launch Configuration Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== FDT and Ant Tutorial ==<br />
Ant is a build tool that developers can use to extend FDT. It's an XML based syntax and can be used to extend FDT's built in launcher or used instead of the launcher if developers want to have even more control over their build process. It also has many built in tasks such as uploading to FTP, checking out from .SVN and creating .ZIP files just to name a few.<br />
<br />
*[[FDT and Ant Tutorial|Continue to the FDT and Ant Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Intro To Profiling Applications ==<br />
The FDT Profiler helps developers to detect performance issues within a flash application by providing two different approaches for profiling:<br />
<br />
*[[Intro To Profiling Applications| Continue to the Intro To Profiling Applications tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]][[File:Videoicon.png|20px|link=]]<br />
<br />
== Creating Code Templates (snippets) ==<br />
FDT’s code templates, also referred to as code snippets, allow for quick generation of user defined code. Although FDT ships with many templates pre-installed, users can edit existing templates, create new ones and even share templates with other FDT developers. <br />
<br />
*[[Creating Code Templates|Continue to the Creating Code Templates tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Sharing and Archiving Projects ==<br />
Become familiar with how easy it is to share and distribute projects with others with FDT. This tutorial will show you how to import and export projects with FDT.<br />
<br />
*[[Sharing and Archiving Projects| Continue to the Sharing and Archiving Projects tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Setting Up and Using FDT & SVN ==<br />
Sharing FDT projects is very easy to do. Follow this tutorial to learn how to:<br />
* Activate a SVN plugin for FDT<br />
* Add a project to a repository <br />
* How to checkout an existing FDT project using a SVN repository.<br />
<br />
*[[Setting Up and Using FDT & SVN| Continue to the Setting Up and Using FDT & SVN tutorial]]<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
== SDK Management ==<br />
With the release of FDT 4, developers now have granular control over their SDKs. Not only is adding and removing SDKs to projects easy, you can also easily add and remove specific parts of the SDK you may or may not need. You can also easily manage custom SDKs.<br />
<br />
*[[SDK Management|Continue to the SDK Management tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Using FDT's Debugger ==<br />
FDT Max includes a powerful debugger. During the development process, a debugging tool is useful to help discover and fix bugs. Armed with FDT's debugger, you'll be prepared to crush any bugs that stand in your way.<br />
<br />
*[[Using FDT's Debugger|Continue to the Using FDT's Debugger tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==From Flash Builder To FDT==<br />
If the differences between FDT and Flash Builder were boiled down into one word, it would be Flexibility. Beside having powerful code editing features that are missing with Flash Builder, FDT is flexible with your project management whereas Flash Builder is going to harness you with constraints. While, at first, these concepts will seem foreign to the long term Flash Builder user - as you master them you'll quickly understand the power and flexibility they provide.<br />
<br />
*[[From Flash Builder To FDT|Continue to the From Flash Builder To FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Font Library Creator==<br />
FDT now includes a Font Library Creator. This is a very hand GUI tool that is designed to make font management much, much easier. Developers can use the Font Library Creator to not just add fonts but also control which glyphs and characters are used. <br />
<br />
In this tutorial you'll learn how to use fonts via:<br />
* Actionscript Embed<br />
* SWCs<br />
* SWFs - both at compile time and runtime<br />
<br />
* [[Font Library Creator|Continue to the Font Library Creator tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Project Templates==<br />
FDT developers can create sophisticated project setups that can be customized just before generation.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project templates with FDT<br />
* Where templates are located and their structure<br />
* How to create a simple project template<br />
* How to create complex templates<br />
<br />
*[[Project Templates|Continue to the Project Template tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Project References==<br />
This enables powerful ways for developers to share source code between multiple projects.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project references<br />
* How to share source code between projects<br />
<br />
*[[Project_References|Continue to the Project References Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Working With Linked Resources ==<br />
Some developers like to have source code, either via a folder or .AS files, added to their project that is saved on their workstation outside of their project. The solution for this is to use FDT's 'Linked Resource' feature.<br />
<br />
*[[Working With Linked Resources|Continue to the Working With Linked Resources Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Apparat & FDT==<br />
With FDT 4.4, we've began to support Apparat. Apparat is a powerful framework to optimize ABC, SWC and SWF files. It's open source and looks to push the boundaries of ways for Flash developers to enhance their workflows and applications.<br />
<br />
In this tutorial you'll learn:<br />
* How to enable Apparat for your projects<br />
<br />
*[[Apparat|Continue to the Apparat Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Adding The Flex 4.5 & 3.6 SDKs To FDT==<br />
Learn how to add the latest SDKs to FDT.<br />
<br />
*[[Installing 3.6 & 4.5 SDKs|Continue the Installing 3.6 & 4.5 SDKs Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Migrating Projects & Using Project Types==<br />
Watch this simple video on how to move a project to a new SDK and Project Type.<br />
<br />
*[[Changing SDKs And Project Types|Continue the Changing SDKs And Project Types Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
==Setting Up and Using Mobile Templates==<br />
Watch these two videos on how to merge the Flex 4.5.1 and AIR 2.7 sdks.<br />
<br />
*[[Setting Up and Using Mobile Templates|Continue the Setting Up and Using Mobile Templates Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= Flash Tutorials (FDT 5)=<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Mobile Applications With FDT|Continue to the Building Mobile Applications With FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Advanced Refactoring==<br />
With FDT 5, the team has added powerful refactoring to your workflow. These refactorings have been integrated into our Quick Assist workflow, so you won't be slowed down at all - in fact you'll see how quickly you can restructure your code.<br />
<br />
*[[Advanced Refactoring & FDT 5|Continue to the Advanced Refactoring & FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==AIR SDK Merging==<br />
Until now, when developers wanted to merge an AIR & Flex SDK it had to be done by hand, often using the command line. With FDT 5, developers can have this process automated for them.<br />
<br />
*[[AIR SDK Merging|Continue to the AIR SDK Merging Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==ASDoc==<br />
Whenever the code in your project has ASDoc notation, FDT will read it and display it both in the ASDoc View and in the editor. This is one of our most voted features.<br />
<br />
*[[ASDoc|Continue to the ASDoc Documentation]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Source Attachment For SWCs==<br />
With FDT, you can easily include the source files for your favorite SWC libraries. This enables you to get the speed and convenience of a SWC and the power of debugging and ASDocs.<br />
<br />
*[[Source Attachment For SWCs|Continue to the Source Attachment For SWCs tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Breakpoint Support in Flex SDK==<br />
When source code has been added to a SDK, FDT will then scan for ADocs and integrate the sources to use with breakpoints.<br />
<br />
*[[Breakpoint Support in Flex SDK|Continue to the Breakpoint Support in Flex SDK tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Standalone Applications With FDT & Zinc 4.0 |Continue to the Building Standalone Applications With FDT & Zinc 4.0]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= New Features (FDT 5.5)=<br />
==SWFBridge==<br />
At the core FDT has always been about comfort, customization and community. With FDT 5.5, the team delivers a new feature that is a powerful combination of all 3 – SWFBridge.<br />
<br />
*[http://fdt.powerflasher.com/swf-bridge/ See our microsite].<br />
<br />
==Blackberry Support==<br />
Easily create, debug and publish applications for Blackberry directly from FDT.<br />
<br />
*[http://fdt.powerflasher.com/blackberry-for-fdt/ See the microsite for more info].<br />
<br />
==ANE Support==<br />
With FDT 5.5, Native Extensions have been fully integrated into FDT. Add, remove and package you applications with ANEs with just a few clicks.<br />
<br />
*[[ANE Support|Continue to learn more about ANE Support]]<br />
<br />
==Setup Wizard==<br />
FDT's Setup Wizard helps you customize FDT to your needs and will get you coding quickly. This is helpful for those experienced or new to FDT.<br />
<br />
*[[Setup Wizard|Continue to learn more about the Setup Wizard]]<br />
<br />
==Debugger Enhancements==<br />
See some of FDT's newest additions to the debugger, including Exception Breakpoints and Watch Expressions.<br />
<br />
*[http://vimeo.com/41373498 See the new features in action].<br />
<br />
==Improved Quick Assists & Fixes==<br />
The FDT team has improved upon existing Quick Fixes and Quick Assists to provide more refactoring options.<br />
<br />
*[http://vimeo.com/41440516 See the new Quick Fixes in action].<br />
<br />
==New Ant Tasks==<br />
The new 'fdt.invoke.launchConfiguration' task enables the execution of any launch configuration directly from Ant.<br />
<br />
*[http://vimeo.com/41847484 See the new Ant Task in action].<br />
<br />
= Haxe Tutorials (FDT 5)=<br />
== An Overview of Haxe & FDT ==<br />
Developed in collaboration with Powerflasher and [http://www.influxis.com Influxis], the FDT Haxe plugin provides developers a powerful tool for authoring the haXe multi-platform language. <br />
<br />
*[[An Overview of haXe & FDT| Continue to the An Overview of Haxe & FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Adding a Linked Folder (Resource) ==<br />
If you have source code located outside of your workspace, FDT allows you to create a link to this folder and have access to any source code therein.<br />
<br />
*[[Adding a Linked Folder To A haXe Project| Continue to learn how to add a linked folder to A Haxe project]]<br />
<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
= Community Resources =<br />
We really appreciate the of efforts the FDT community, it's a big part of what makes FDT so great. Check out our [[Community Resources]] page to learn about tutorials and tips that fans of FDT have created.<br />
<br />
= Online Workshops =<br />
Every Last Tuesday of the month at 9 to 10am (PST)<br />
<br />
Join our next Live Broadcast FDT4 workshop. [http://fdt4.eventbrite.com/ Register here] to keep you informed on the latest activities.<br />
<br />
The sessions will be contingent on the audience attending.<br />
Tell us what we should cover when you register.<br />
<br />
You will learn how to use FDT or help getting started, while covering some of latest new features.<br />
This is also an opportunity to discuss code and best practices developing multi-target applications in ActionScript, Flex or haXe for the Desktop, Mobile and Web.<br />
<br />
Most of all, this is also a great opportunity to ask any question directly to the FDT team and give us feedback.<br />
<br />
The session will be live on [http://www.ustream.tv/channel/fdt-live-previews ustream.tv]<br />
<br />
Here you can find the recordings of our past workshops:<br />
<br />
*[[FDT Workshops|Continue to the FDT Workshops video page]]<br />
<br />
= Reference =<br />
== Project Template Syntax==<br />
The new project template model introduced in 4.2 greatly extended the syntax of the description.xml including UI components and expressions.<br />
<br />
Learn more by reading about [[Project Template Syntax]]<br />
<br />
== Ant Tasks ==<br />
<br />
[http://en.wikipedia.org/wiki/Apache_Ant Ant] is a tool that allows developers to extend FDT and automate various tasks. It's XML based and easy to learn. Ant on it's own has many built in tasks, and even better, FDT has various Ant tasks of it's own for you to use.<br />
<br />
Learn more by reading [[FDT Ant Tasks]].<br />
<br />
= Features =<br />
<br />
== Smart Editor ==<br />
<br />
*[[Live Error Highlighting]]<br />
*[[Adjustable Error Settings]] <br />
*[[Auto Library Folder]] <br />
*[[Syntactic and Semantic Highlighting]] <br />
*[[Advanced Code Completion]] (context and convention based) <br />
*[[Code Templates]] <br />
*[[Quick Fixes]] <br />
*[[Quick Assist]] <br />
*[[Integrated Color Picker]]<br />
*[[Organize Imports]] <br />
*[[ Advanced code formatter (AS3 + MXML)]] <br />
*[[Project Tasks]] (TODO, FIXME, ...) <br />
*[[Customizable Hotkeys]] <br />
*[[Rename Refactoring]] (for files, types, variables, metadata and functions)<br />
*[[Quick Trace]] <br />
*[[Move Refactoring]]<br />
*[[Occurrence Marking]]<br />
*[[MXML Namespace Generation & Refactoring]]<br />
<br />
== Navigation ==<br />
<br />
*[[Quick Outline]] <br />
*[[Quick Open Type]] <br />
*[[Quick Type Hierarchy]] <br />
*[[Quick Type Dependency]] <br />
*[[Quick Explore]] <br />
*[[Outline View]] <br />
*[[Open Declaration]] <br />
*[[Open Resource]] <br />
*[[Open Type]] <br />
*[[Reference Search]]<br />
*[[FDT Search]]<br />
*[[Quick Access]]<br />
<br />
== Project Management ==<br />
* [[SWFBridge | SWFBridge (FDT 5.5 Beta)]]<br />
* [[Creation Wizards]]<br />
* [[SDK Management]]<br />
* Multiple [[Source Folders]]<br />
* [[Linked Libraries]] Linking of external source folders<br />
* [[SWC Support]] Linking of external SWCs<br />
* Version Control Support [SVN]<br />
* SWC browsing and source code representation<br />
* [[Refactoring]]<br />
<br />
== Testing and Deployment ==<br />
*[[Flash Authoring Support]]<br />
*[[Customizable Compilation]]<br />
*[[FDT and ANT]]<br />
*[[ANT Exporter]]<br />
*[[Launch Configuration]]<br />
*[[SWF Viewers]]<br />
*[[Profiler]]<br />
*[[Debugger]]<br />
<br />
= Downloads =<br />
==Example Projects==<br />
<br />
Visit our [[Downloads]] page for more.<br />
<br />
==Artwork==<br />
<br />
Visit our [[Artwork]] page to download FDT branding.<br />
<br />
<br />
==Legacy FDT Downloads==<br />
<br />
If you need to download an earlier version of FDT, please [http://fdt.powerflasher.com/contact contact us]. Provide the name and email address that is associated with the version license.<br />
<br />
= Suggested Eclipse Plugins =<br />
<br />
Because FDT is part of the Eclipse community, there are many plugins that can be integrated with FDT. <br />
Visit our [[Suggested Eclipse Plugins]] page for some plugins we think you might find helpful.<br />
<br />
= FAQs =<br />
If you're confused, run into a problem getting started or looking for a place to download legacy versions of FDT. Check out our FAQ.<br />
<br />
Otherwise, [http://fdt.powerflasher.com/contact/ contact us.]<br />
<br />
==Downloading, Setting Up & Using FDT==<br />
[[FAQ | Continue to the Downloading, Setting Up & Using FDT FAQ]]<br />
<br />
==Sales & Marketing==<br />
[[ FDT Marketing FAQ | Continue to the Sales & Marketing FAQ]]<br />
<br />
==Subscriptions & License Management==<br />
[[ Subscriptions & License Management FAQ | Continue to the Subscriptions & License Management FAQ]]<br />
<br />
= Release Notes =<br />
<br />
To update to the latest FDT version follow the instructions in our [http://fdt.powerflasher.com/docs/FAQ#How_do_I_update_FDT.3F FAQ] otherwise you can download the latest FDT [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ here].<br />
<br />
Latest version information:<br />
*[[FDT 5 Release Notes]]<br />
*[[FDT 4 Release Notes]]</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-29T14:19:59Z<p>Aklement: /* Bug Fixes */</p>
<hr />
<div>=FDT 5.5.1=<br />
Released: 2011/05/30<br />
<br />
==Bug Fixes==<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&fixfor=10499&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
This was a maintenance release to FDT 5.5. It mostly addresses issues associated with migrating from FDT 5.0->5.5.<br />
<br />
=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
<br />
===Eclipse Compatibility===<br />
FDT 5.5 requires Eclipse 3.7+. Earlier versions of Eclipse will not work.<br />
<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.<br />
<br />
===ANE===<br />
*When used as a linked resource, ANEs can be recognized as a .SWC and not compiled correctly. [http://bugs.powerflasher.com/jira/browse/FDT-2732 See the ticket here].</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-29T14:18:48Z<p>Aklement: /* Bug Fixes */</p>
<hr />
<div>=FDT 5.5.1=<br />
Released: 2011/05/30<br />
<br />
==Bug Fixes==<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&fixfor=10499&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
<br />
===Eclipse Compatibility===<br />
FDT 5.5 requires Eclipse 3.7+. Earlier versions of Eclipse will not work.<br />
<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.<br />
<br />
===ANE===<br />
*When used as a linked resource, ANEs can be recognized as a .SWC and not compiled correctly. [http://bugs.powerflasher.com/jira/browse/FDT-2732 See the ticket here].</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-29T14:18:40Z<p>Aklement: /* Bug Fixes */</p>
<hr />
<div>=FDT 5.5.1=<br />
Released: 2011/05/30<br />
<br />
==Bug Fixes==<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&fixfor=10499&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA].<br />
<br />
=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
<br />
===Eclipse Compatibility===<br />
FDT 5.5 requires Eclipse 3.7+. Earlier versions of Eclipse will not work.<br />
<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.<br />
<br />
===ANE===<br />
*When used as a linked resource, ANEs can be recognized as a .SWC and not compiled correctly. [http://bugs.powerflasher.com/jira/browse/FDT-2732 See the ticket here].</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-29T14:06:19Z<p>Aklement: /* FDT 5.5 */</p>
<hr />
<div>=FDT 5.5.1=<br />
Released: 2011/05/30<br />
<br />
==Bug Fixes==<br />
<br />
<br />
=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
<br />
===Eclipse Compatibility===<br />
FDT 5.5 requires Eclipse 3.7+. Earlier versions of Eclipse will not work.<br />
<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.<br />
<br />
===ANE===<br />
*When used as a linked resource, ANEs can be recognized as a .SWC and not compiled correctly. [http://bugs.powerflasher.com/jira/browse/FDT-2732 See the ticket here].</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-21T17:26:37Z<p>Aklement: /* FDT 5.5 */</p>
<hr />
<div>=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
<br />
===Eclipse Compatibility===<br />
FDT 5.5 requires Eclipse 3.7+. Earlier versions of Eclipse will not work.<br />
<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.<br />
<br />
===ANE===<br />
*When used as a linked resource, ANEs can be recognized as a .SWC and not compiled correctly. [http://bugs.powerflasher.com/jira/browse/FDT-2732 See the ticket here].</div>Aklementhttp://fdt.powerflasher.com/docs/An_Overview_of_haXe_%26_FDTAn Overview of haXe & FDT2012-05-17T16:55:50Z<p>Aklement: /* Video */</p>
<hr />
<div>= About FDT Haxe Support=<br />
<br />
Haxe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT's Haxe support provides developers a powerful tool for authoring in a multi target fashion.<br />
<br />
FDT's Haxe features include:<br />
<br />
*Live error checking <br />
*Autocompletion (variables and functions) <br />
*Syntax coloring <br />
*New Class/Interface/Enum wizards <br />
*Haxe Project Wizard<br />
*Autocompletion Server<br />
*Snippets<br />
*Multiple Target Output<br />
*Flash Debugger - traces and Breakpoints (Max only)<br />
<br />
FDT can only provide as many features as the compiler allows. We also suggest anyone anyone interested in Haxe supporting more features, subscribe to the [http://lists.motion-twin.com/mailman/listinfo/haxe Haxe mailing list] and make suggestions on features you'd like FDT & haXe to provide. It's a very active group with smart people and interesting topics.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=31122674|width=600|height=400}}<br />
{{#widget:Vimeo|id=42348465|width=600|height=400}}<br />
<br />
== Snippets (5.5) ==<br />
[[File:FDT_5.png]]<br />
== Creating A Project ==<br />
[[File:fdt_haxe_001.png|600px]]<br />
Create a new haXe project by right clicking the the FDT explorer and choosing, 'New FDT Project'.<br />
<br />
[[File:fdt_haxe_002.png|600px]]<br />
[[File:fdt_haxe_003.png|600px]]<br />
By default, FDT provides three templates to help you get started with Flash, Javascript and PHP. FDT supports all haXe targets; if you wish to use a different target, click 'Next' to change default target.<br />
<br />
[[File:fdt_haxe_004.png|600px]]<br />
[[File:fdt_haxe_005.png|600px]]<br />
When clicking 'Next', you can now have other options to further configure your project - such as your output type and add source folders.<br />
<br />
[[File:fdt_haxe_006.png|600px]]<br />
Upon project creation, FDT will run the haXe compiler and generate your first output. In this example, we used a Flash target and so a .SWF was generated.<br />
<br />
== Adding Another Target & Adjusting Compiler Options ==<br />
<br />
[[File:fdt_haxe_007.png|600px]]<br />
[[File:fdt_haxe_008.png|600px]]<br />
To add another target double click on the file 'compile.hxml'. Here you can see the current targets and when a target is selected, you can edit it's options.<br />
<br />
[[File:fdt_haxe_009.png|600px]]<br />
To add another target, click the 'add' button, choose an output, and output file and once you set a source folder, you can even have autocomplete when you choose a 'Main' class.<br />
<br />
[[File:fdt_haxe_010.png|600px]]<br />
Expert users may want to edit the compiler options by hand, to do this, click on the 'Source' tab and FDT will reveal the source of the .HXML file.<br />
<br />
[[File:fdt_haxe_011.png|600px]]<br />
Once you save the 'compile.hxml' file, FDT & haXe will generate a Javascript file for you.<br />
<br />
These are the basics of getting up and running with FDT & haXe. Have fun and explore the power of haXe.</div>Aklementhttp://fdt.powerflasher.com/docs/File:FDT_5.pngFile:FDT 5.png2012-05-17T16:55:25Z<p>Aklement: </p>
<hr />
<div></div>Aklementhttp://fdt.powerflasher.com/docs/An_Overview_of_haXe_%26_FDTAn Overview of haXe & FDT2012-05-17T16:53:35Z<p>Aklement: /* About FDT Haxe Support */</p>
<hr />
<div>= About FDT Haxe Support=<br />
<br />
Haxe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT's Haxe support provides developers a powerful tool for authoring in a multi target fashion.<br />
<br />
FDT's Haxe features include:<br />
<br />
*Live error checking <br />
*Autocompletion (variables and functions) <br />
*Syntax coloring <br />
*New Class/Interface/Enum wizards <br />
*Haxe Project Wizard<br />
*Autocompletion Server<br />
*Snippets<br />
*Multiple Target Output<br />
*Flash Debugger - traces and Breakpoints (Max only)<br />
<br />
FDT can only provide as many features as the compiler allows. We also suggest anyone anyone interested in Haxe supporting more features, subscribe to the [http://lists.motion-twin.com/mailman/listinfo/haxe Haxe mailing list] and make suggestions on features you'd like FDT & haXe to provide. It's a very active group with smart people and interesting topics.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=31122674|width=600|height=400}}<br />
<br />
== Creating A Project ==<br />
[[File:fdt_haxe_001.png|600px]]<br />
Create a new haXe project by right clicking the the FDT explorer and choosing, 'New FDT Project'.<br />
<br />
[[File:fdt_haxe_002.png|600px]]<br />
[[File:fdt_haxe_003.png|600px]]<br />
By default, FDT provides three templates to help you get started with Flash, Javascript and PHP. FDT supports all haXe targets; if you wish to use a different target, click 'Next' to change default target.<br />
<br />
[[File:fdt_haxe_004.png|600px]]<br />
[[File:fdt_haxe_005.png|600px]]<br />
When clicking 'Next', you can now have other options to further configure your project - such as your output type and add source folders.<br />
<br />
[[File:fdt_haxe_006.png|600px]]<br />
Upon project creation, FDT will run the haXe compiler and generate your first output. In this example, we used a Flash target and so a .SWF was generated.<br />
<br />
== Adding Another Target & Adjusting Compiler Options ==<br />
<br />
[[File:fdt_haxe_007.png|600px]]<br />
[[File:fdt_haxe_008.png|600px]]<br />
To add another target double click on the file 'compile.hxml'. Here you can see the current targets and when a target is selected, you can edit it's options.<br />
<br />
[[File:fdt_haxe_009.png|600px]]<br />
To add another target, click the 'add' button, choose an output, and output file and once you set a source folder, you can even have autocomplete when you choose a 'Main' class.<br />
<br />
[[File:fdt_haxe_010.png|600px]]<br />
Expert users may want to edit the compiler options by hand, to do this, click on the 'Source' tab and FDT will reveal the source of the .HXML file.<br />
<br />
[[File:fdt_haxe_011.png|600px]]<br />
Once you save the 'compile.hxml' file, FDT & haXe will generate a Javascript file for you.<br />
<br />
These are the basics of getting up and running with FDT & haXe. Have fun and explore the power of haXe.</div>Aklementhttp://fdt.powerflasher.com/docs/An_Overview_of_haXe_%26_FDTAn Overview of haXe & FDT2012-05-17T16:52:38Z<p>Aklement: /* About FDT HaXe Support */</p>
<hr />
<div>= About FDT Haxe Support=<br />
<br />
Haxe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT's Haxe support provides developers a powerful tool for authoring in a multi target fashion.<br />
<br />
FDT's Haxe features include:<br />
<br />
*Live error checking <br />
*Autocompletion (variables and functions) <br />
*Syntax coloring <br />
*New Class/Interface/Enum wizards <br />
*HaXe Project Wizard<br />
<br />
FDT can only provide as many features as the compiler allows. We also suggest anyone anyone interested in Haxe supporting more features, subscribe to the [http://lists.motion-twin.com/mailman/listinfo/haxe Haxe mailing list] and make suggestions on features you'd like FDT & haXe to provide. It's a very active group with smart people and interesting topics.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=31122674|width=600|height=400}}<br />
<br />
== Creating A Project ==<br />
[[File:fdt_haxe_001.png|600px]]<br />
Create a new haXe project by right clicking the the FDT explorer and choosing, 'New FDT Project'.<br />
<br />
[[File:fdt_haxe_002.png|600px]]<br />
[[File:fdt_haxe_003.png|600px]]<br />
By default, FDT provides three templates to help you get started with Flash, Javascript and PHP. FDT supports all haXe targets; if you wish to use a different target, click 'Next' to change default target.<br />
<br />
[[File:fdt_haxe_004.png|600px]]<br />
[[File:fdt_haxe_005.png|600px]]<br />
When clicking 'Next', you can now have other options to further configure your project - such as your output type and add source folders.<br />
<br />
[[File:fdt_haxe_006.png|600px]]<br />
Upon project creation, FDT will run the haXe compiler and generate your first output. In this example, we used a Flash target and so a .SWF was generated.<br />
<br />
== Adding Another Target & Adjusting Compiler Options ==<br />
<br />
[[File:fdt_haxe_007.png|600px]]<br />
[[File:fdt_haxe_008.png|600px]]<br />
To add another target double click on the file 'compile.hxml'. Here you can see the current targets and when a target is selected, you can edit it's options.<br />
<br />
[[File:fdt_haxe_009.png|600px]]<br />
To add another target, click the 'add' button, choose an output, and output file and once you set a source folder, you can even have autocomplete when you choose a 'Main' class.<br />
<br />
[[File:fdt_haxe_010.png|600px]]<br />
Expert users may want to edit the compiler options by hand, to do this, click on the 'Source' tab and FDT will reveal the source of the .HXML file.<br />
<br />
[[File:fdt_haxe_011.png|600px]]<br />
Once you save the 'compile.hxml' file, FDT & haXe will generate a Javascript file for you.<br />
<br />
These are the basics of getting up and running with FDT & haXe. Have fun and explore the power of haXe.</div>Aklementhttp://fdt.powerflasher.com/docs/Main_PageMain Page2012-05-17T16:52:15Z<p>Aklement: /* haXe Tutorials (FDT 5) */</p>
<hr />
<div>[[File:Text_icon.png|30px|link=]] means the tutorial is written <br /><br />
[[File:Videoicon.png|30px|link=]] means the tutorial has video <br /><br />
[[File:Download_arrow.png|30px|link=]] means the tutorial has example files to download <br /><br />
<br />
= FDT Getting Started Guide =<br />
<br />
Michael Plank, from [http://www.pro3games.com/ pro3dgames], has written a great tutorial on activetuts. <br />
[http://active.tutsplus.com/tutorials/workflow/beginners-guide-to-powerflashers-fdt-4/ Check it out here].<br />
<br />
<br />
<br />
These short guides will lead you through the installation and will introduce you to some of the highly efficient and time-saving features and the basic structure of the FDT work environment.<br />
<br />
==Quick Fixes and Quick Assists==<br />
Our [http://fdt.powerflasher.com/blog/fdt-video-gallery/ Videos] page has all our Quick Fixes and Quick Assists in video format. A great place to learn about FDT's most popular and powerful features.<br />
<br />
==Tutorials==<br />
*[[Installing and Running FDT]]<br />
*[[Basic AS3 Tutorial]]<br />
*[[Writing Code With FDT]]<br />
*[[Navigating Your Code and FDT's Workspace]]<br />
<br />
==Shortcuts==<br />
Forget the mouse! The FDT shortcuts are one of the most important techniques to increase coding efficiency. Here is a cheat sheet of the most popular shortcuts for quick reference<br />
*[[FDT Shortcuts| Learn about FDT's shortcuts.]]<br />
<br />
==FAQ==<br />
If you're confused or having a problem getting yourself going. Check out our FAQ.<br />
<br />
*[[FAQ | Installing & Using FDT FAQ]]<br />
*[[FDT Marketing FAQ | FDT Marketing FAQ]]<br />
<br />
= Videos =<br />
We're always adding new videos of tutorials, FDT's features, workflows and new ways of using FDT.<br />
Check out our [http://fdt.powerflasher.com/blog/fdt-video-gallery Videos] page.<br />
<br />
= Flash Tutorials (FDT 4 & 5)=<br />
== Installing And Running FDT ==<br />
If you haven't installed FDT, or are having trouble getting FDT to install or launch, check out this tutorial. We'll make sure you have Java installed and walk you through downloading and installing FDT on Windows and OSX. <br />
<br />
*[[Installing and Running FDT| Continue to the Installing and Running FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Basic AS3 Tutorial ==<br />
Learn the basics of creating, building and compiling your first FDT project. You'll use the Project Wizard to create a project, then create your first Class and compile and view your application. <br />
<br />
*[[Basic AS3 Tutorial | Continue to the Basic AS3 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Flex / AIR Tutorial ==<br />
See how quickly you can code and run an AIR application with the Flex framework. Similar to the [[Basic AS3 Tutorial]], you'll go a little further by adjusting compiler options and being introduced to some of FDT's Smart Editor features. <br />
<br />
*[[Flex / Air Tutorial | Continue to the Flex / Air Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Writing Code With FDT ==<br />
FDT is packed with features designed to help developers write code efficiently and quickly. This walkthrough will go through many, but not all, of the most popular Smart Editor features. <br />
<br />
*[[Writing Code With FDT|Continue to the Writing Code With FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Navigating Your Code and FDT's Workspace ==<br />
With all the ins and outs of an IDE like FDT, a developer can get lost is seemingly endless windows and views. It's important to know how to get around the application and make sure you stay in control of what you're looking at. <br />
<br />
*[[Navigating Your Code and FDT's Workspace|Continue to the Navigating Your Code and FDT's Workspace tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
== Launch Configurations ==<br />
Eventually, you're going to want to make some tweaks to your .SWF's settings (name, background color, size, frame rate ) as well as start using some advanced features such as viewing your .SWF in a browser.<br />
<br />
This tutorial goes over these important topics, as well as introduces FDT's new Launcher Chain feature.<br />
<br />
*[[Launch Configuration Tutorial| Continue to the Launch Configuration Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== FDT and Ant Tutorial ==<br />
Ant is a build tool that developers can use to extend FDT. It's an XML based syntax and can be used to extend FDT's built in launcher or used instead of the launcher if developers want to have even more control over their build process. It also has many built in tasks such as uploading to FTP, checking out from .SVN and creating .ZIP files just to name a few.<br />
<br />
*[[FDT and Ant Tutorial|Continue to the FDT and Ant Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Intro To Profiling Applications ==<br />
The FDT Profiler helps developers to detect performance issues within a flash application by providing two different approaches for profiling:<br />
<br />
*[[Intro To Profiling Applications| Continue to the Intro To Profiling Applications tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]][[File:Videoicon.png|20px|link=]]<br />
<br />
== Creating Code Templates (snippets) ==<br />
FDT’s code templates, also referred to as code snippets, allow for quick generation of user defined code. Although FDT ships with many templates pre-installed, users can edit existing templates, create new ones and even share templates with other FDT developers. <br />
<br />
*[[Creating Code Templates|Continue to the Creating Code Templates tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Sharing and Archiving Projects ==<br />
Become familiar with how easy it is to share and distribute projects with others with FDT. This tutorial will show you how to import and export projects with FDT.<br />
<br />
*[[Sharing and Archiving Projects| Continue to the Sharing and Archiving Projects tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Setting Up and Using FDT & SVN ==<br />
Sharing FDT projects is very easy to do. Follow this tutorial to learn how to:<br />
* Activate a SVN plugin for FDT<br />
* Add a project to a repository <br />
* How to checkout an existing FDT project using a SVN repository.<br />
<br />
*[[Setting Up and Using FDT & SVN| Continue to the Setting Up and Using FDT & SVN tutorial]]<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
== SDK Management ==<br />
With the release of FDT 4, developers now have granular control over their SDKs. Not only is adding and removing SDKs to projects easy, you can also easily add and remove specific parts of the SDK you may or may not need. You can also easily manage custom SDKs.<br />
<br />
*[[SDK Management|Continue to the SDK Management tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Using FDT's Debugger ==<br />
FDT Max includes a powerful debugger. During the development process, a debugging tool is useful to help discover and fix bugs. Armed with FDT's debugger, you'll be prepared to crush any bugs that stand in your way.<br />
<br />
*[[Using FDT's Debugger|Continue to the Using FDT's Debugger tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==From Flash Builder To FDT==<br />
If the differences between FDT and Flash Builder were boiled down into one word, it would be Flexibility. Beside having powerful code editing features that are missing with Flash Builder, FDT is flexible with your project management whereas Flash Builder is going to harness you with constraints. While, at first, these concepts will seem foreign to the long term Flash Builder user - as you master them you'll quickly understand the power and flexibility they provide.<br />
<br />
*[[From Flash Builder To FDT|Continue to the From Flash Builder To FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Font Library Creator==<br />
FDT now includes a Font Library Creator. This is a very hand GUI tool that is designed to make font management much, much easier. Developers can use the Font Library Creator to not just add fonts but also control which glyphs and characters are used. <br />
<br />
In this tutorial you'll learn how to use fonts via:<br />
* Actionscript Embed<br />
* SWCs<br />
* SWFs - both at compile time and runtime<br />
<br />
* [[Font Library Creator|Continue to the Font Library Creator tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Project Templates==<br />
FDT developers can create sophisticated project setups that can be customized just before generation.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project templates with FDT<br />
* Where templates are located and their structure<br />
* How to create a simple project template<br />
* How to create complex templates<br />
<br />
*[[Project Templates|Continue to the Project Template tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Project References==<br />
This enables powerful ways for developers to share source code between multiple projects.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project references<br />
* How to share source code between projects<br />
<br />
*[[Project_References|Continue to the Project References Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Working With Linked Resources ==<br />
Some developers like to have source code, either via a folder or .AS files, added to their project that is saved on their workstation outside of their project. The solution for this is to use FDT's 'Linked Resource' feature.<br />
<br />
*[[Working With Linked Resources|Continue to the Working With Linked Resources Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Apparat & FDT==<br />
With FDT 4.4, we've began to support Apparat. Apparat is a powerful framework to optimize ABC, SWC and SWF files. It's open source and looks to push the boundaries of ways for Flash developers to enhance their workflows and applications.<br />
<br />
In this tutorial you'll learn:<br />
* How to enable Apparat for your projects<br />
<br />
*[[Apparat|Continue to the Apparat Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Adding The Flex 4.5 & 3.6 SDKs To FDT==<br />
Learn how to add the latest SDKs to FDT.<br />
<br />
*[[Installing 3.6 & 4.5 SDKs|Continue the Installing 3.6 & 4.5 SDKs Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Migrating Projects & Using Project Types==<br />
Watch this simple video on how to move a project to a new SDK and Project Type.<br />
<br />
*[[Changing SDKs And Project Types|Continue the Changing SDKs And Project Types Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
==Setting Up and Using Mobile Templates==<br />
Watch these two videos on how to merge the Flex 4.5.1 and AIR 2.7 sdks.<br />
<br />
*[[Setting Up and Using Mobile Templates|Continue the Setting Up and Using Mobile Templates Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= Flash Tutorials (FDT 5)=<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Mobile Applications With FDT|Continue to the Building Mobile Applications With FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Advanced Refactoring==<br />
With FDT 5, the team has added powerful refactoring to your workflow. These refactorings have been integrated into our Quick Assist workflow, so you won't be slowed down at all - in fact you'll see how quickly you can restructure your code.<br />
<br />
*[[Advanced Refactoring & FDT 5|Continue to the Advanced Refactoring & FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==AIR SDK Merging==<br />
Until now, when developers wanted to merge an AIR & Flex SDK it had to be done by hand, often using the command line. With FDT 5, developers can have this process automated for them.<br />
<br />
*[[AIR SDK Merging|Continue to the AIR SDK Merging Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==ASDoc==<br />
Whenever the code in your project has ASDoc notation, FDT will read it and display it both in the ASDoc View and in the editor. This is one of our most voted features.<br />
<br />
*[[ASDoc|Continue to the ASDoc Documentation]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Source Attachment For SWCs==<br />
With FDT, you can easily include the source files for your favorite SWC libraries. This enables you to get the speed and convenience of a SWC and the power of debugging and ASDocs.<br />
<br />
*[[Source Attachment For SWCs|Continue to the Source Attachment For SWCs tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Breakpoint Support in Flex SDK==<br />
When source code has been added to a SDK, FDT will then scan for ADocs and integrate the sources to use with breakpoints.<br />
<br />
*[[Breakpoint Support in Flex SDK|Continue to the Breakpoint Support in Flex SDK tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Standalone Applications With FDT & Zinc 4.0 |Continue to the Building Standalone Applications With FDT & Zinc 4.0]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= New Features (FDT 5.5)=<br />
==SWFBridge==<br />
At the core FDT has always been about comfort, customization and community. With FDT 5.5, the team delivers a new feature that is a powerful combination of all 3 – SWFBridge.<br />
<br />
*[http://fdt.powerflasher.com/swf-bridge/ See our microsite].<br />
<br />
==Blackberry Support==<br />
Easily create, debug and publish applications for Blackberry directly from FDT.<br />
<br />
*[http://fdt.powerflasher.com/blackberry-for-fdt/ See the microsite for more info].<br />
<br />
==ANE Support==<br />
With FDT 5.5, Native Extensions have been fully integrated into FDT. Add, remove and package you applications with ANEs with just a few clicks.<br />
<br />
*[[ANE Support|Continue to learn more about ANE Support]]<br />
<br />
==Setup Wizard==<br />
FDT's Setup Wizard helps you customize FDT to your needs and will get you coding quickly. This is helpful for those experienced or new to FDT.<br />
<br />
*[[Setup Wizard|Continue to learn more about the Setup Wizard]]<br />
<br />
==Debugger Enhancements==<br />
See some of FDT's newest additions to the debugger, including Exception Breakpoints and Watch Expressions.<br />
<br />
*[http://vimeo.com/41373498 See the new features in action].<br />
<br />
==Improved Quick Assists & Fixes==<br />
The FDT team has improved upon existing Quick Fixes and Quick Assists to provide more refactoring options.<br />
<br />
*[http://vimeo.com/41440516 See the new Quick Fixes in action].<br />
<br />
==New Ant Tasks==<br />
The new 'fdt.invoke.launchConfiguration' task enables the execution of any launch configuration directly from Ant.<br />
<br />
*[http://vimeo.com/41847484 See the new Ant Task in action].<br />
<br />
= Haxe Tutorials (FDT 5)=<br />
== An Overview of Haxe & FDT ==<br />
Developed in collaboration with Powerflasher and [http://www.influxis.com Influxis], the FDT Haxe plugin provides developers a powerful tool for authoring the haXe multi-platform language. <br />
<br />
*[[An Overview of haXe & FDT| Continue to the An Overview of Haxe & FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Adding a Linked Folder (Resource) ==<br />
If you have source code located outside of your workspace, FDT allows you to create a link to this folder and have access to any source code therein.<br />
<br />
*[[Adding a Linked Folder To A haXe Project| Continue to learn how to add a linked folder to A Haxe project]]<br />
<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
= Community Resources =<br />
We really appreciate the of efforts the FDT community, it's a big part of what makes FDT so great. Check out our [[Community Resources]] page to learn about tutorials and tips that fans of FDT have created.<br />
<br />
= Online Workshops =<br />
Every Last Tuesday of the month at 9 to 10am (PST)<br />
<br />
Join our next Live Broadcast FDT4 workshop. [http://fdt4.eventbrite.com/ Register here] to keep you informed on the latest activities.<br />
<br />
The sessions will be contingent on the audience attending.<br />
Tell us what we should cover when you register.<br />
<br />
You will learn how to use FDT or help getting started, while covering some of latest new features.<br />
This is also an opportunity to discuss code and best practices developing multi-target applications in ActionScript, Flex or haXe for the Desktop, Mobile and Web.<br />
<br />
Most of all, this is also a great opportunity to ask any question directly to the FDT team and give us feedback.<br />
<br />
The session will be live on [http://www.ustream.tv/channel/fdt-live-previews ustream.tv]<br />
<br />
Here you can find the recordings of our past workshops:<br />
<br />
*[[FDT Workshops|Continue to the FDT Workshops video page]]<br />
<br />
= Reference =<br />
== Project Template Syntax==<br />
The new project template model introduced in 4.2 greatly extended the syntax of the description.xml including UI components and expressions.<br />
<br />
Learn more by reading about [[Project Template Syntax]]<br />
<br />
== Ant Tasks ==<br />
<br />
[http://en.wikipedia.org/wiki/Apache_Ant Ant] is a tool that allows developers to extend FDT and automate various tasks. It's XML based and easy to learn. Ant on it's own has many built in tasks, and even better, FDT has various Ant tasks of it's own for you to use.<br />
<br />
Learn more by reading [[FDT Ant Tasks]].<br />
<br />
= Features =<br />
<br />
== Smart Editor ==<br />
<br />
*[[Live Error Highlighting]]<br />
*[[Adjustable Error Settings]] <br />
*[[Auto Library Folder]] <br />
*[[Syntactic and Semantic Highlighting]] <br />
*[[Advanced Code Completion]] (context and convention based) <br />
*[[Code Templates]] <br />
*[[Quick Fixes]] <br />
*[[Quick Assist]] <br />
*[[Integrated Color Picker]]<br />
*[[Organize Imports]] <br />
*[[ Advanced code formatter (AS3 + MXML)]] <br />
*[[Project Tasks]] (TODO, FIXME, ...) <br />
*[[Customizable Hotkeys]] <br />
*[[Rename Refactoring]] (for files, types, variables, metadata and functions)<br />
*[[Quick Trace]] <br />
*[[Move Refactoring]]<br />
*[[Occurrence Marking]]<br />
*[[MXML Namespace Generation & Refactoring]]<br />
<br />
== Navigation ==<br />
<br />
*[[Quick Outline]] <br />
*[[Quick Open Type]] <br />
*[[Quick Type Hierarchy]] <br />
*[[Quick Type Dependency]] <br />
*[[Quick Explore]] <br />
*[[Outline View]] <br />
*[[Open Declaration]] <br />
*[[Open Resource]] <br />
*[[Open Type]] <br />
*[[Reference Search]]<br />
*[[FDT Search]]<br />
*[[Quick Access]]<br />
<br />
== Project Management ==<br />
* [[SWFBridge | SWFBridge (FDT 5.5 Beta)]]<br />
* [[Creation Wizards]]<br />
* [[SDK Management]]<br />
* Multiple [[Source Folders]]<br />
* [[Linked Libraries]] Linking of external source folders<br />
* [[SWC Support]] Linking of external SWCs<br />
* Version Control Support [SVN]<br />
* SWC browsing and source code representation<br />
* [[Refactoring]]<br />
<br />
== Testing and Deployment ==<br />
*[[Flash Authoring Support]]<br />
*[[Customizable Compilation]]<br />
*[[FDT and ANT]]<br />
*[[ANT Exporter]]<br />
*[[Launch Configuration]]<br />
*[[SWF Viewers]]<br />
*[[Profiler]]<br />
*[[Debugger]]<br />
<br />
= Downloads =<br />
==Example Projects==<br />
<br />
Visit our [[Downloads]] page for more.<br />
<br />
==Legacy FDT Downloads==<br />
<br />
If you need to download an earlier version of FDT, please [http://fdt.powerflasher.com/contact contact us]. Provide the name and email address that is associated with the version license.<br />
<br />
= Suggested Eclipse Plugins =<br />
<br />
Because FDT is part of the Eclipse community, there are many plugins that can be integrated with FDT. <br />
Visit our [[Suggested Eclipse Plugins]] page for some plugins we think you might find helpful.<br />
<br />
= FAQs =<br />
If you're confused, run into a problem getting started or looking for a place to download legacy versions of FDT. Check out our FAQ.<br />
<br />
Otherwise, [http://fdt.powerflasher.com/contact/ contact us.]<br />
<br />
==Downloading, Setting Up & Using FDT==<br />
[[FAQ | Continue to the Downloading, Setting Up & Using FDT FAQ]]<br />
<br />
==Sales & Marketing==<br />
[[ FDT Marketing FAQ | Continue to the Sales & Marketing FAQ]]<br />
<br />
==Subscriptions & License Management==<br />
[[ Subscriptions & License Management FAQ | Continue to the Subscriptions & License Management FAQ]]<br />
<br />
= Release Notes =<br />
<br />
To update to the latest FDT version follow the instructions in our [http://fdt.powerflasher.com/docs/FAQ#How_do_I_update_FDT.3F FAQ] otherwise you can download the latest FDT [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ here].<br />
<br />
Latest version information:<br />
*[[FDT 5 Release Notes]]<br />
*[[FDT 4 Release Notes]]</div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_haXe_Development_With_FDTIntro To haXe Development With FDT2012-05-17T16:33:07Z<p>Aklement: /* Wrap Up */</p>
<hr />
<div>= About FDT HaXe Support=<br />
<br />
HaXe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. Our goal is to provide the best haXe coding experience and that it feels like coding in the AS2, AS3 or MXML editor of [http://fdt.powerflasher.com/ FDT]: same shortcuts, same syntax coloring, same coding comfort.&nbsp; <br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=42348465|width=600|height=400}}</div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_haXe_Development_With_FDTIntro To haXe Development With FDT2012-05-17T16:33:00Z<p>Aklement: /* Compiling and Viewing your .SWF */</p>
<hr />
<div>= About FDT HaXe Support=<br />
<br />
HaXe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. Our goal is to provide the best haXe coding experience and that it feels like coding in the AS2, AS3 or MXML editor of [http://fdt.powerflasher.com/ FDT]: same shortcuts, same syntax coloring, same coding comfort.&nbsp; <br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=42348465|width=600|height=400}}<br />
<br />
= Wrap Up =<br />
<br />
That's it, you've successfully set up your first FDT haXe Flash project! <br />
<br />
As this plugin is still a beta release, please bare with us! For any feedback, feature requests, improvements, bugs and other issues we encourage you to use [http://bugs.powerflasher.com/jira/browse/FTDHXPLIN PowerFlasher JIRA site], our community driven tracking website, to make the haXe support in FDT the greatest ever.<br></div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_haXe_Development_With_FDTIntro To haXe Development With FDT2012-05-17T16:32:54Z<p>Aklement: /* Using the FDT HaXe Plugin */</p>
<hr />
<div>= About FDT HaXe Support=<br />
<br />
HaXe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. Our goal is to provide the best haXe coding experience and that it feels like coding in the AS2, AS3 or MXML editor of [http://fdt.powerflasher.com/ FDT]: same shortcuts, same syntax coloring, same coding comfort.&nbsp; <br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=42348465|width=600|height=400}}<br />
<br />
= Compiling and Viewing your .SWF =<br />
<br />
== Adding HaXe Code ==<br />
<br />
The syntax of haXe is a bit beyond the scope of this tutorial - but that doesn't mean we have to code something boring! Copy and paste the code below to make a simple animation [[Image:Img preview.png|Img preview.png]]. Or type in the the code yourself to begin exploring the syntax auto completion FDT provides.<br> <br />
<br />
<br> <source lang="actionscript"><br />
<br />
package ;<br />
import flash.display.Sprite;<br />
import flash.events.Event;<br />
<br />
class Main{<br />
static var view:Sprite;<br />
static var x: Float = 0;<br />
static var y: Float = 200;<br />
static var speed :Float = 20;<br />
static var max_x : Float = 550;<br />
<br />
static function main() {<br />
new Main(); <br />
}<br />
<br />
function new(){<br />
view = new Sprite();<br />
flash.Lib.current.addChild (view);<br />
flash.Lib.current.stage.addEventListener(Event.ENTER_FRAME, update_view);<br />
}<br />
<br />
function update_view (e: Dynamic){<br />
view.graphics.clear();<br />
view.graphics.beginFill(0xff0000, 1);<br />
view.graphics.drawCircle(x, y, 50);<br />
<br />
if(is_invalid_x()) speed = speed * -1;<br />
x+= speed;<br />
}<br />
<br />
function is_invalid_x() : Bool {<br />
return x > max_x || x < 0;<br />
}<br />
}<br />
<br />
</source><br />
<br />
== Compiling HaXe ==<br />
<br />
For the time being, FDT will automatically attempt to compile your .SWF every time you save it. If there are no errors in your project, your .SWF will appear in your ''project&nbsp;''older. If it doesn't appear, try refreshing your project.<br />
<br />
== View Your SWF ==<br />
<br />
You can view your SWF with FDT by&nbsp;selecting Run As &gt; SWF File. You can also use Ant Scripts with your HaXe Project&nbsp;but for more in depth know-how on using Ant, check out the [[FDT and Ant Tutorial]].<br> <br />
<br />
(Note: ''If you get an error while tying to run the Ant file, it's probably a JRE error, check out the [[FDT and Ant Tutorial]] to learn how to correct it.)''<br />
<br />
= Wrap Up =<br />
<br />
That's it, you've successfully set up your first FDT haXe Flash project! <br />
<br />
As this plugin is still a beta release, please bare with us! For any feedback, feature requests, improvements, bugs and other issues we encourage you to use [http://bugs.powerflasher.com/jira/browse/FTDHXPLIN PowerFlasher JIRA site], our community driven tracking website, to make the haXe support in FDT the greatest ever.<br></div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_haXe_Development_With_FDTIntro To haXe Development With FDT2012-05-17T16:32:47Z<p>Aklement: /* Installation */</p>
<hr />
<div>= About FDT HaXe Support=<br />
<br />
HaXe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. Our goal is to provide the best haXe coding experience and that it feels like coding in the AS2, AS3 or MXML editor of [http://fdt.powerflasher.com/ FDT]: same shortcuts, same syntax coloring, same coding comfort.&nbsp; <br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=42348465|width=600|height=400}}<br />
<br />
= Using the FDT HaXe Plugin =<br />
<br />
Before authoring and compiling haXe, you'll need to define the haXe SDK location for FDT to reference. <br />
<br />
== Setting up the haXe SDK Location ==<br />
<br />
Open FDT's preference widow and navigate to ''HaXe&gt;SDK''&nbsp;and input the installation directory of haXe. If you're not sure where haXe is installed, the installation window will clue you in. Here we can see that the installer is moving files and creating links to ''/usr/lib/haxe'' - this is the default location for OSX. After inputing the sdk location, hit ''OK.''<br />
<br />
== Create Your First haXe Project ==<br />
<br />
All haXe projects now have there own project wizard. Begin by creating an ''Basic HaXe Project'', If you can't see this in the new project menu or don't see new HaXe Classes you will need to goto the Window menu and select the "Reset Perspective" option and they will appear. <br />
<br />
<br> <br />
<br />
[[Image:Empty haxe project wizard 1.png|center|600px|Empty haxe project wizard 1.png]] <br />
<br />
During the process of creating a HaXe Project you will be able to select the HaXe SDK just for this project by ''"Enabling project specific settings"''.<br> <br />
<br />
[[Image:Empty haxe project wizard 2.png|center|600px|Empty haxe project wizard 2.png]] <br />
<br />
Then finally you can configure the target output of your HaXe Project for creating the basis of our HaXe project configuration (HXML), In this case we creating a flash project.<br> <br />
<br />
[[Image:Empty haxe project wizard 3.png|center|600px|Empty haxe project wizard 3.png]]<br />
<br />
== Convert Project To A HaXe Project ==<br />
<br />
With your first class created, right click on the project and select ''Add HaXe Project Nature''. When this happens, FDT will ask you to input some project variables. We already have configured our ''HaXe SDK Location'' so just hit ''Next''. <br />
<br />
Let's leave the haXe configuration file to the default location but modify the ''Output Path'' to ''bin/Main.swf''. When completed, FDT will have created a few extra files and folders for us. We don't need to worry about ''.hxtypes'' but we use ''project.hxml'' to set configurations to our project. We can also see that FDT has begun to parse our project for syntax errors.<br />
<br />
== Adjust Compiler Settings ==<br />
<br />
Before writing some code, let's alter some compiler options - this is done via the ''project.hxml'' file. Open us the file by double clicking on it, you will see a page similar to image below. You can click on the source tag at the bottom if you prefer to edit it manually.<br><br>[[Image:Haxe compilation settings.png|center|Haxe compilation settings.png]]<br />
<br />
= Compiling and Viewing your .SWF =<br />
<br />
== Adding HaXe Code ==<br />
<br />
The syntax of haXe is a bit beyond the scope of this tutorial - but that doesn't mean we have to code something boring! Copy and paste the code below to make a simple animation [[Image:Img preview.png|Img preview.png]]. Or type in the the code yourself to begin exploring the syntax auto completion FDT provides.<br> <br />
<br />
<br> <source lang="actionscript"><br />
<br />
package ;<br />
import flash.display.Sprite;<br />
import flash.events.Event;<br />
<br />
class Main{<br />
static var view:Sprite;<br />
static var x: Float = 0;<br />
static var y: Float = 200;<br />
static var speed :Float = 20;<br />
static var max_x : Float = 550;<br />
<br />
static function main() {<br />
new Main(); <br />
}<br />
<br />
function new(){<br />
view = new Sprite();<br />
flash.Lib.current.addChild (view);<br />
flash.Lib.current.stage.addEventListener(Event.ENTER_FRAME, update_view);<br />
}<br />
<br />
function update_view (e: Dynamic){<br />
view.graphics.clear();<br />
view.graphics.beginFill(0xff0000, 1);<br />
view.graphics.drawCircle(x, y, 50);<br />
<br />
if(is_invalid_x()) speed = speed * -1;<br />
x+= speed;<br />
}<br />
<br />
function is_invalid_x() : Bool {<br />
return x > max_x || x < 0;<br />
}<br />
}<br />
<br />
</source><br />
<br />
== Compiling HaXe ==<br />
<br />
For the time being, FDT will automatically attempt to compile your .SWF every time you save it. If there are no errors in your project, your .SWF will appear in your ''project&nbsp;''older. If it doesn't appear, try refreshing your project.<br />
<br />
== View Your SWF ==<br />
<br />
You can view your SWF with FDT by&nbsp;selecting Run As &gt; SWF File. You can also use Ant Scripts with your HaXe Project&nbsp;but for more in depth know-how on using Ant, check out the [[FDT and Ant Tutorial]].<br> <br />
<br />
(Note: ''If you get an error while tying to run the Ant file, it's probably a JRE error, check out the [[FDT and Ant Tutorial]] to learn how to correct it.)''<br />
<br />
= Wrap Up =<br />
<br />
That's it, you've successfully set up your first FDT haXe Flash project! <br />
<br />
As this plugin is still a beta release, please bare with us! For any feedback, feature requests, improvements, bugs and other issues we encourage you to use [http://bugs.powerflasher.com/jira/browse/FTDHXPLIN PowerFlasher JIRA site], our community driven tracking website, to make the haXe support in FDT the greatest ever.<br></div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_haXe_Development_With_FDTIntro To haXe Development With FDT2012-05-17T16:32:40Z<p>Aklement: /* HaXe Programming Language */</p>
<hr />
<div>= About FDT HaXe Support=<br />
<br />
HaXe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. Our goal is to provide the best haXe coding experience and that it feels like coding in the AS2, AS3 or MXML editor of [http://fdt.powerflasher.com/ FDT]: same shortcuts, same syntax coloring, same coding comfort.&nbsp; <br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=42348465|width=600|height=400}}<br />
<br />
= Installation =<br />
<br />
To get started with haXe, you'll need to download a few extra add-ons. <br />
<br />
== Download haXe ==<br />
<br />
*Visit [http://haxe.org/download haXe's download page], and download one of the automatic installers for your platform. For this example, we'll be installing haXe for OSX.<br><br />
<br />
While installing, the installer may ask you to install ''Neko''. Neko is a language / Virtual Machine platform that comes with the installer. Even if you've never use Neko and haXe together, it may come in handy in the future so go ahead and install that as well. <br />
<br />
[[Image:Haxe installer.png|center|Haxe installer.png]] <br />
<br />
When the installer is complete,&nbsp;confirm that the installation of haXe was successful by opening your console and executing the command ''haXe'': <br />
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="bash source-bash"><pre class="de1">haxe</pre></div></div> <br />
<br> If installed correctly, the console should print out haXe info: <br />
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="bash source-bash"><pre class="de1">OSXs-MacBook:~ OSX$ haxe<br />
haXe Compiler 2.07 - (c)2005-2011 Motion-Twin<br />
Usage&nbsp;: haxe -main &lt;class&gt; [-swf|-js|-neko|-php|-cpp|-as3] &lt;output&gt; [options]<br />
Options&nbsp;:<br />
-cp &lt;path&gt;&nbsp;: add a directory to find source files<br />
-js &lt;file&gt;&nbsp;: compile code to JavaScript file<br />
-swf &lt;file&gt;&nbsp;: compile code to Flash SWF file<br />
-as3 &lt;directory&gt;&nbsp;: generate AS3 code into target directory<br />
-neko &lt;file&gt;&nbsp;: compile code to Neko Binary<br />
-php &lt;directory&gt;&nbsp;: generate PHP code into target directory<br />
-cpp &lt;directory&gt;&nbsp;: generate C++ code into target directory<br />
-xml &lt;file&gt;&nbsp;: generate XML types description<br />
-main &lt;class&gt;&nbsp;: select startup class<br />
-lib &lt;library[:version]&gt;&nbsp;: use a haxelib library<br />
-D &lt;var&gt;&nbsp;: define a conditional compilation flag<br />
-v&nbsp;: turn on verbose mode<br />
-debug&nbsp;: add debug informations to the compiled code<br />
-help Display this list of options<br />
--help Display this list of options<br />
<br />
</pre></div></div> <br />
If it doesn't - try restarting your computer or reinstalling it again.<br />
<br />
== Install FDT's haXe Plugin <br> ==<br />
<br />
*Before you install the plugin you will need the latest copy of FDT, so you not got it please either update or download, install, setup licence, etc...<br><br />
<br />
*Start up FDT 4 and select ''Help&gt;Install new Software''&nbsp; *Select the ''FDT Plugins Site'' update site (If it is not included in your drop down menu, enter: http://fdt.powerflasher.com/plugins in the ''Work with'' text input and hit return)<br />
<br />
When you install the plugin if drill down into the FDT Plugin you will see two options now<br />
<br />
*FDT haXe Plugin <br />
*FDT haXe SDK Feature (Optional)<br><br />
<br />
If you have the following error raised during installation, then repeat the install and un-tick the "FDT haXe SDK Feature (Optional)" tick box.<br> <br />
<pre>An error occurred while installing the items<br />
<br />
session context was:(profile=epp.package.jee, <br />
phase=org.eclipse.equinox.internal.provisional.p2.engine.phases.Install, <br />
operand=null --&gt; [R]com.powerflasher.fdt.haxe.sdk_win 2.7.0, <br />
action=org.eclipse.equinox.internal.p2.touchpoint.natives.actions.UnzipAction).</pre> <br />
<br> <br />
<br />
[[Image:Haxe plugin install new software.png|600px|Haxe plugin install new software.png]]<br> <br />
<br />
*Select "FDT haXe Plugin" from the plugin list, hit ''Next'' and follow the final installation steps.&nbsp;You will be warned about installing unsigned code, please click OK to override the warning.<br><br />
<br />
<br>[[Image:Haxe plugin security warning.png|center|Haxe plugin security warning.png]]<br> <br />
<br />
*When prompted restart FDT 4<br><br />
<br />
<br>[[Image:Haxe plugin software update.png|center|Haxe plugin software update.png]]<br><br />
<br />
= Using the FDT HaXe Plugin =<br />
<br />
Before authoring and compiling haXe, you'll need to define the haXe SDK location for FDT to reference. <br />
<br />
== Setting up the haXe SDK Location ==<br />
<br />
Open FDT's preference widow and navigate to ''HaXe&gt;SDK''&nbsp;and input the installation directory of haXe. If you're not sure where haXe is installed, the installation window will clue you in. Here we can see that the installer is moving files and creating links to ''/usr/lib/haxe'' - this is the default location for OSX. After inputing the sdk location, hit ''OK.''<br />
<br />
== Create Your First haXe Project ==<br />
<br />
All haXe projects now have there own project wizard. Begin by creating an ''Basic HaXe Project'', If you can't see this in the new project menu or don't see new HaXe Classes you will need to goto the Window menu and select the "Reset Perspective" option and they will appear. <br />
<br />
<br> <br />
<br />
[[Image:Empty haxe project wizard 1.png|center|600px|Empty haxe project wizard 1.png]] <br />
<br />
During the process of creating a HaXe Project you will be able to select the HaXe SDK just for this project by ''"Enabling project specific settings"''.<br> <br />
<br />
[[Image:Empty haxe project wizard 2.png|center|600px|Empty haxe project wizard 2.png]] <br />
<br />
Then finally you can configure the target output of your HaXe Project for creating the basis of our HaXe project configuration (HXML), In this case we creating a flash project.<br> <br />
<br />
[[Image:Empty haxe project wizard 3.png|center|600px|Empty haxe project wizard 3.png]]<br />
<br />
== Convert Project To A HaXe Project ==<br />
<br />
With your first class created, right click on the project and select ''Add HaXe Project Nature''. When this happens, FDT will ask you to input some project variables. We already have configured our ''HaXe SDK Location'' so just hit ''Next''. <br />
<br />
Let's leave the haXe configuration file to the default location but modify the ''Output Path'' to ''bin/Main.swf''. When completed, FDT will have created a few extra files and folders for us. We don't need to worry about ''.hxtypes'' but we use ''project.hxml'' to set configurations to our project. We can also see that FDT has begun to parse our project for syntax errors.<br />
<br />
== Adjust Compiler Settings ==<br />
<br />
Before writing some code, let's alter some compiler options - this is done via the ''project.hxml'' file. Open us the file by double clicking on it, you will see a page similar to image below. You can click on the source tag at the bottom if you prefer to edit it manually.<br><br>[[Image:Haxe compilation settings.png|center|Haxe compilation settings.png]]<br />
<br />
= Compiling and Viewing your .SWF =<br />
<br />
== Adding HaXe Code ==<br />
<br />
The syntax of haXe is a bit beyond the scope of this tutorial - but that doesn't mean we have to code something boring! Copy and paste the code below to make a simple animation [[Image:Img preview.png|Img preview.png]]. Or type in the the code yourself to begin exploring the syntax auto completion FDT provides.<br> <br />
<br />
<br> <source lang="actionscript"><br />
<br />
package ;<br />
import flash.display.Sprite;<br />
import flash.events.Event;<br />
<br />
class Main{<br />
static var view:Sprite;<br />
static var x: Float = 0;<br />
static var y: Float = 200;<br />
static var speed :Float = 20;<br />
static var max_x : Float = 550;<br />
<br />
static function main() {<br />
new Main(); <br />
}<br />
<br />
function new(){<br />
view = new Sprite();<br />
flash.Lib.current.addChild (view);<br />
flash.Lib.current.stage.addEventListener(Event.ENTER_FRAME, update_view);<br />
}<br />
<br />
function update_view (e: Dynamic){<br />
view.graphics.clear();<br />
view.graphics.beginFill(0xff0000, 1);<br />
view.graphics.drawCircle(x, y, 50);<br />
<br />
if(is_invalid_x()) speed = speed * -1;<br />
x+= speed;<br />
}<br />
<br />
function is_invalid_x() : Bool {<br />
return x > max_x || x < 0;<br />
}<br />
}<br />
<br />
</source><br />
<br />
== Compiling HaXe ==<br />
<br />
For the time being, FDT will automatically attempt to compile your .SWF every time you save it. If there are no errors in your project, your .SWF will appear in your ''project&nbsp;''older. If it doesn't appear, try refreshing your project.<br />
<br />
== View Your SWF ==<br />
<br />
You can view your SWF with FDT by&nbsp;selecting Run As &gt; SWF File. You can also use Ant Scripts with your HaXe Project&nbsp;but for more in depth know-how on using Ant, check out the [[FDT and Ant Tutorial]].<br> <br />
<br />
(Note: ''If you get an error while tying to run the Ant file, it's probably a JRE error, check out the [[FDT and Ant Tutorial]] to learn how to correct it.)''<br />
<br />
= Wrap Up =<br />
<br />
That's it, you've successfully set up your first FDT haXe Flash project! <br />
<br />
As this plugin is still a beta release, please bare with us! For any feedback, feature requests, improvements, bugs and other issues we encourage you to use [http://bugs.powerflasher.com/jira/browse/FTDHXPLIN PowerFlasher JIRA site], our community driven tracking website, to make the haXe support in FDT the greatest ever.<br></div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_haXe_Development_With_FDTIntro To haXe Development With FDT2012-05-17T16:32:26Z<p>Aklement: /* Video */</p>
<hr />
<div>= About FDT HaXe Support=<br />
<br />
HaXe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. Our goal is to provide the best haXe coding experience and that it feels like coding in the AS2, AS3 or MXML editor of [http://fdt.powerflasher.com/ FDT]: same shortcuts, same syntax coloring, same coding comfort.&nbsp; <br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=42348465|width=600|height=400}}<br />
<br />
= HaXe Programming Language =<br />
<br />
haXe (pronounced hex) is a versatile open-source high-level programming language. The code can be produced entirely within the haXe development environment by using a single and unmodified code-base when compiling from one target to the next. Compared to most other languages are bound to their own platform (Java to the JVM, C# to .Net, ActionScript to the Flash Player), haXe is a multi-platform language.<br><br>To learn more and get the latest info on using haXe and the platforms it targets, check out the [http://haxe.org/doc/intro haXe's Introduciton].&nbsp;<br>[http://www.haxe.org/ <br>]HaXe has a highly active developer community mailing list which is well worth joining:&nbsp;<br>[http://lists.motion-twin.com/mailman/listinfo/haxe lists.motion-twin.com/mailman/listinfo/haxe]<br> <br />
<br />
== HaXe supported targets ==<br />
<br />
*'''Javascript'''&nbsp;: You can compile a haXe program to a single .js file. You can access the typed browser DOM APIs with autocompletion support, and all the dependencies will be resolved at compilation time. <br />
*'''Flash'''&nbsp;: You can compile a haXe program to a .swf file. haXe is compatible with Flash Players 6 to 10, with either "old" Flash 8 API or newest AS3/Flash9+ API. haXe offers very good performance and language features to develop Flash content. <br />
*'''NekoVM'''&nbsp;: You can compile a haXe program to NekoVM bytecode. This can be used for server-side programming such as dynamic webpages (using mod_neko for Apache) and also for command-line or desktop applications, since NekoVM can be embedded and extended with some other DLL. <br />
*'''PHP'''&nbsp;: You can compile a haXe program to .php files. This will enable you to use a high level strictly-typed language such as haXe while keeping full compatibility with your existing server platform and libraries. <br />
*'''C++'''&nbsp;: You can now generate C++ code from your haXe source code, with the required Makefiles. This is very useful for creating native applications, for instance in iPhone development.<br><br />
<br />
== <br>Why use haXe? ==<br />
<br />
haXe is a powerful modern language with many compelling features. It is aimed at giving developers a tool to create websites &amp; applications using a single unified programming language. Whether you use haXe for its cross-platform features, or focus on a single platform, there are many reasons to adopt it: <br />
<br />
*'''ECMA style programming for client-side, server-side &amp; desktop:&nbsp;'''The haXe syntax should be very familiar to those familiar with ActionScript and JavaScript. As it offers multiple targets (virtual machines and outputs) it can be used for a huge variety of applications. <br />
*'''Extremely fast compiling:&nbsp;'''The compiler is lightning fast. When compared to the Flash or Flex compilers, you will find a noticeable speed increase. Since compile time is so short haXe is an easy transition from non-compiled languages such as PHP and JavaScript. <br />
*'''The benefits of type checking:&nbsp;'''HaXe offers very tight type checking. Having compile-time checks in place allows you to catch errors in your code BEFORE testing it in the browser. This allows for a faster workflow for dynamically typed targets such as PHP and JavaScript. <br />
*'''HaXe adds missing language features to target platforms:&nbsp;'''HaXe has been created out of a desire for better features and tools for web-oriented development. It adds missing features to many of the targets - eg. inlining &amp; generics to Flash development, packages &amp; typing to JavaScript &amp; PHP, dynamic objects &amp; Runtime Type Information (enabling Reflection) to C++, and much more. Adding features to targets where they are lacking enables a haXe developer to have the same rich set of features available for use on ALL platforms that they want to target.'''<br>''' <br />
*'''Elegant Remoting between platforms:&nbsp;'''You can use remoting classes to pass objects between different platforms. Using the same codebase for different platforms means that the same classes can be compiled for many platforms. This allows for successful de-serialization making the remoting elegant and fast. <br />
*'''A single syntax &amp; features:&nbsp;'''Programming practices can often be achieved on different platforms, just with different syntax and quirks. By having a consistent syntax and feature set, there's no need to constantly switch into different programming 'modes'. This allows a developer greater focus on the logic and final output, which can greatly enhance productivity. <br />
*'''Conditional compilation - Write for one target and use on many:&nbsp;'''Code may be tailored for a single target platform, or designed for many platforms. For instance tween classes can be used in ActionScript, JavaScript and C++. Code logic can be transferred to the most suitable target in the platform with few changes, so if front-end code is running too slow, you can quickly move and test the same code running on the back-end'''<br>''' <br />
*'''Access to many file formats:&nbsp;'''The format library (hosted on googlecode) can read/write many formats such as 'abc' (ActionScript Byte Code), SWF headers &amp; more. These libraries are crossplatform making it accessible for many targets. <br />
*'''Compiler based auto-completion '''<br>HaXe provides a compiler based auto-completion system which allows IDEs to integrate completion on many otherwise hard to predict objects, such as those using type inference. This makes haXe auto-completion fast and accurate. <br />
*'''Open Source:''' In addition to being free, haXe is open source and provides installers for OSX, Windows, and Unix based operating systems. There are no base library requirements for the compiler, and a good deal of functionality is already provided with the haXe libraries.<br />
<br />
<br> <br />
<br />
== Haxelib (Open source code repository) ==<br />
<br />
haXe is distributed with haxelib, a tool which enables developers to share their code and libraries into a common repository. Before you can use haxelib you have to go through a easy setup: <br />
<br />
Access the [http://lib.haxe.org lib.haxe.org]&nbsp;website to view all the libraries available. More information can be found on the HaXe website and how to add new projects to HaXeLib:&nbsp;[http://haxe.org/doc/haxelib/using_haxelib haxe.org/doc/haxelib/using_haxelib] <br />
<br />
<br> <br />
<br />
*'''Using haxelib'''&nbsp;:&nbsp;haxelib is a commandline tool, so you need to run it from a console. The following commands are available: <br />
*'''haxelib search word'''&nbsp;: will list the projects which have either a name or description matching specified word. <br />
*'''haxelib info project-name'''&nbsp;: will give you information about a given project <br />
*'''haxelib install project-name [version]'''&nbsp;: will install the given project. You can optionally specify a specific version to be installed. By default, latest released version will be installed. <br />
*'''haxelib remove project-name [version]'''&nbsp;: will remove a complete project or only a specified version if specified. <br />
*'''haxelib list&nbsp;''': will list all the installed projects and their versions. For each project, the version surrounded by brackets is the current one. <br />
*'''haxelib upgrade'''&nbsp;: will upgrade all the installed projects to their latest version. This command prompts a confirmation for each upgradeable project. <br />
*'''haxelib set project-name version&nbsp;''': this will change the current version for a given project. The version must be already installed. <br />
*'''haxelib run project-name [arguments...]'''&nbsp;: this will run the given project if it provides a run script. Be careful to trust the project you are running since the script can damage your system.<br><br><br />
<br />
&nbsp;<br />
<br />
= Installation =<br />
<br />
To get started with haXe, you'll need to download a few extra add-ons. <br />
<br />
== Download haXe ==<br />
<br />
*Visit [http://haxe.org/download haXe's download page], and download one of the automatic installers for your platform. For this example, we'll be installing haXe for OSX.<br><br />
<br />
While installing, the installer may ask you to install ''Neko''. Neko is a language / Virtual Machine platform that comes with the installer. Even if you've never use Neko and haXe together, it may come in handy in the future so go ahead and install that as well. <br />
<br />
[[Image:Haxe installer.png|center|Haxe installer.png]] <br />
<br />
When the installer is complete,&nbsp;confirm that the installation of haXe was successful by opening your console and executing the command ''haXe'': <br />
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="bash source-bash"><pre class="de1">haxe</pre></div></div> <br />
<br> If installed correctly, the console should print out haXe info: <br />
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="bash source-bash"><pre class="de1">OSXs-MacBook:~ OSX$ haxe<br />
haXe Compiler 2.07 - (c)2005-2011 Motion-Twin<br />
Usage&nbsp;: haxe -main &lt;class&gt; [-swf|-js|-neko|-php|-cpp|-as3] &lt;output&gt; [options]<br />
Options&nbsp;:<br />
-cp &lt;path&gt;&nbsp;: add a directory to find source files<br />
-js &lt;file&gt;&nbsp;: compile code to JavaScript file<br />
-swf &lt;file&gt;&nbsp;: compile code to Flash SWF file<br />
-as3 &lt;directory&gt;&nbsp;: generate AS3 code into target directory<br />
-neko &lt;file&gt;&nbsp;: compile code to Neko Binary<br />
-php &lt;directory&gt;&nbsp;: generate PHP code into target directory<br />
-cpp &lt;directory&gt;&nbsp;: generate C++ code into target directory<br />
-xml &lt;file&gt;&nbsp;: generate XML types description<br />
-main &lt;class&gt;&nbsp;: select startup class<br />
-lib &lt;library[:version]&gt;&nbsp;: use a haxelib library<br />
-D &lt;var&gt;&nbsp;: define a conditional compilation flag<br />
-v&nbsp;: turn on verbose mode<br />
-debug&nbsp;: add debug informations to the compiled code<br />
-help Display this list of options<br />
--help Display this list of options<br />
<br />
</pre></div></div> <br />
If it doesn't - try restarting your computer or reinstalling it again.<br />
<br />
== Install FDT's haXe Plugin <br> ==<br />
<br />
*Before you install the plugin you will need the latest copy of FDT, so you not got it please either update or download, install, setup licence, etc...<br><br />
<br />
*Start up FDT 4 and select ''Help&gt;Install new Software''&nbsp; *Select the ''FDT Plugins Site'' update site (If it is not included in your drop down menu, enter: http://fdt.powerflasher.com/plugins in the ''Work with'' text input and hit return)<br />
<br />
When you install the plugin if drill down into the FDT Plugin you will see two options now<br />
<br />
*FDT haXe Plugin <br />
*FDT haXe SDK Feature (Optional)<br><br />
<br />
If you have the following error raised during installation, then repeat the install and un-tick the "FDT haXe SDK Feature (Optional)" tick box.<br> <br />
<pre>An error occurred while installing the items<br />
<br />
session context was:(profile=epp.package.jee, <br />
phase=org.eclipse.equinox.internal.provisional.p2.engine.phases.Install, <br />
operand=null --&gt; [R]com.powerflasher.fdt.haxe.sdk_win 2.7.0, <br />
action=org.eclipse.equinox.internal.p2.touchpoint.natives.actions.UnzipAction).</pre> <br />
<br> <br />
<br />
[[Image:Haxe plugin install new software.png|600px|Haxe plugin install new software.png]]<br> <br />
<br />
*Select "FDT haXe Plugin" from the plugin list, hit ''Next'' and follow the final installation steps.&nbsp;You will be warned about installing unsigned code, please click OK to override the warning.<br><br />
<br />
<br>[[Image:Haxe plugin security warning.png|center|Haxe plugin security warning.png]]<br> <br />
<br />
*When prompted restart FDT 4<br><br />
<br />
<br>[[Image:Haxe plugin software update.png|center|Haxe plugin software update.png]]<br><br />
<br />
= Using the FDT HaXe Plugin =<br />
<br />
Before authoring and compiling haXe, you'll need to define the haXe SDK location for FDT to reference. <br />
<br />
== Setting up the haXe SDK Location ==<br />
<br />
Open FDT's preference widow and navigate to ''HaXe&gt;SDK''&nbsp;and input the installation directory of haXe. If you're not sure where haXe is installed, the installation window will clue you in. Here we can see that the installer is moving files and creating links to ''/usr/lib/haxe'' - this is the default location for OSX. After inputing the sdk location, hit ''OK.''<br />
<br />
== Create Your First haXe Project ==<br />
<br />
All haXe projects now have there own project wizard. Begin by creating an ''Basic HaXe Project'', If you can't see this in the new project menu or don't see new HaXe Classes you will need to goto the Window menu and select the "Reset Perspective" option and they will appear. <br />
<br />
<br> <br />
<br />
[[Image:Empty haxe project wizard 1.png|center|600px|Empty haxe project wizard 1.png]] <br />
<br />
During the process of creating a HaXe Project you will be able to select the HaXe SDK just for this project by ''"Enabling project specific settings"''.<br> <br />
<br />
[[Image:Empty haxe project wizard 2.png|center|600px|Empty haxe project wizard 2.png]] <br />
<br />
Then finally you can configure the target output of your HaXe Project for creating the basis of our HaXe project configuration (HXML), In this case we creating a flash project.<br> <br />
<br />
[[Image:Empty haxe project wizard 3.png|center|600px|Empty haxe project wizard 3.png]]<br />
<br />
== Convert Project To A HaXe Project ==<br />
<br />
With your first class created, right click on the project and select ''Add HaXe Project Nature''. When this happens, FDT will ask you to input some project variables. We already have configured our ''HaXe SDK Location'' so just hit ''Next''. <br />
<br />
Let's leave the haXe configuration file to the default location but modify the ''Output Path'' to ''bin/Main.swf''. When completed, FDT will have created a few extra files and folders for us. We don't need to worry about ''.hxtypes'' but we use ''project.hxml'' to set configurations to our project. We can also see that FDT has begun to parse our project for syntax errors.<br />
<br />
== Adjust Compiler Settings ==<br />
<br />
Before writing some code, let's alter some compiler options - this is done via the ''project.hxml'' file. Open us the file by double clicking on it, you will see a page similar to image below. You can click on the source tag at the bottom if you prefer to edit it manually.<br><br>[[Image:Haxe compilation settings.png|center|Haxe compilation settings.png]]<br />
<br />
= Compiling and Viewing your .SWF =<br />
<br />
== Adding HaXe Code ==<br />
<br />
The syntax of haXe is a bit beyond the scope of this tutorial - but that doesn't mean we have to code something boring! Copy and paste the code below to make a simple animation [[Image:Img preview.png|Img preview.png]]. Or type in the the code yourself to begin exploring the syntax auto completion FDT provides.<br> <br />
<br />
<br> <source lang="actionscript"><br />
<br />
package ;<br />
import flash.display.Sprite;<br />
import flash.events.Event;<br />
<br />
class Main{<br />
static var view:Sprite;<br />
static var x: Float = 0;<br />
static var y: Float = 200;<br />
static var speed :Float = 20;<br />
static var max_x : Float = 550;<br />
<br />
static function main() {<br />
new Main(); <br />
}<br />
<br />
function new(){<br />
view = new Sprite();<br />
flash.Lib.current.addChild (view);<br />
flash.Lib.current.stage.addEventListener(Event.ENTER_FRAME, update_view);<br />
}<br />
<br />
function update_view (e: Dynamic){<br />
view.graphics.clear();<br />
view.graphics.beginFill(0xff0000, 1);<br />
view.graphics.drawCircle(x, y, 50);<br />
<br />
if(is_invalid_x()) speed = speed * -1;<br />
x+= speed;<br />
}<br />
<br />
function is_invalid_x() : Bool {<br />
return x > max_x || x < 0;<br />
}<br />
}<br />
<br />
</source><br />
<br />
== Compiling HaXe ==<br />
<br />
For the time being, FDT will automatically attempt to compile your .SWF every time you save it. If there are no errors in your project, your .SWF will appear in your ''project&nbsp;''older. If it doesn't appear, try refreshing your project.<br />
<br />
== View Your SWF ==<br />
<br />
You can view your SWF with FDT by&nbsp;selecting Run As &gt; SWF File. You can also use Ant Scripts with your HaXe Project&nbsp;but for more in depth know-how on using Ant, check out the [[FDT and Ant Tutorial]].<br> <br />
<br />
(Note: ''If you get an error while tying to run the Ant file, it's probably a JRE error, check out the [[FDT and Ant Tutorial]] to learn how to correct it.)''<br />
<br />
= Wrap Up =<br />
<br />
That's it, you've successfully set up your first FDT haXe Flash project! <br />
<br />
As this plugin is still a beta release, please bare with us! For any feedback, feature requests, improvements, bugs and other issues we encourage you to use [http://bugs.powerflasher.com/jira/browse/FTDHXPLIN PowerFlasher JIRA site], our community driven tracking website, to make the haXe support in FDT the greatest ever.<br></div>Aklementhttp://fdt.powerflasher.com/docs/Intro_To_haXe_Development_With_FDTIntro To haXe Development With FDT2012-05-17T16:32:09Z<p>Aklement: /* About FDT HaXe Support */</p>
<hr />
<div>= About FDT HaXe Support=<br />
<br />
HaXe is an open source and multiplatform programming language. Developed in collaboration with [http://www.powerflasher.com/ Powerflasher] and supported by [http://www.influxis.com/ Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. Our goal is to provide the best haXe coding experience and that it feels like coding in the AS2, AS3 or MXML editor of [http://fdt.powerflasher.com/ FDT]: same shortcuts, same syntax coloring, same coding comfort.&nbsp; <br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=15571978|width=600|height=400}}<br />
<br />
= HaXe Programming Language =<br />
<br />
haXe (pronounced hex) is a versatile open-source high-level programming language. The code can be produced entirely within the haXe development environment by using a single and unmodified code-base when compiling from one target to the next. Compared to most other languages are bound to their own platform (Java to the JVM, C# to .Net, ActionScript to the Flash Player), haXe is a multi-platform language.<br><br>To learn more and get the latest info on using haXe and the platforms it targets, check out the [http://haxe.org/doc/intro haXe's Introduciton].&nbsp;<br>[http://www.haxe.org/ <br>]HaXe has a highly active developer community mailing list which is well worth joining:&nbsp;<br>[http://lists.motion-twin.com/mailman/listinfo/haxe lists.motion-twin.com/mailman/listinfo/haxe]<br> <br />
<br />
== HaXe supported targets ==<br />
<br />
*'''Javascript'''&nbsp;: You can compile a haXe program to a single .js file. You can access the typed browser DOM APIs with autocompletion support, and all the dependencies will be resolved at compilation time. <br />
*'''Flash'''&nbsp;: You can compile a haXe program to a .swf file. haXe is compatible with Flash Players 6 to 10, with either "old" Flash 8 API or newest AS3/Flash9+ API. haXe offers very good performance and language features to develop Flash content. <br />
*'''NekoVM'''&nbsp;: You can compile a haXe program to NekoVM bytecode. This can be used for server-side programming such as dynamic webpages (using mod_neko for Apache) and also for command-line or desktop applications, since NekoVM can be embedded and extended with some other DLL. <br />
*'''PHP'''&nbsp;: You can compile a haXe program to .php files. This will enable you to use a high level strictly-typed language such as haXe while keeping full compatibility with your existing server platform and libraries. <br />
*'''C++'''&nbsp;: You can now generate C++ code from your haXe source code, with the required Makefiles. This is very useful for creating native applications, for instance in iPhone development.<br><br />
<br />
== <br>Why use haXe? ==<br />
<br />
haXe is a powerful modern language with many compelling features. It is aimed at giving developers a tool to create websites &amp; applications using a single unified programming language. Whether you use haXe for its cross-platform features, or focus on a single platform, there are many reasons to adopt it: <br />
<br />
*'''ECMA style programming for client-side, server-side &amp; desktop:&nbsp;'''The haXe syntax should be very familiar to those familiar with ActionScript and JavaScript. As it offers multiple targets (virtual machines and outputs) it can be used for a huge variety of applications. <br />
*'''Extremely fast compiling:&nbsp;'''The compiler is lightning fast. When compared to the Flash or Flex compilers, you will find a noticeable speed increase. Since compile time is so short haXe is an easy transition from non-compiled languages such as PHP and JavaScript. <br />
*'''The benefits of type checking:&nbsp;'''HaXe offers very tight type checking. Having compile-time checks in place allows you to catch errors in your code BEFORE testing it in the browser. This allows for a faster workflow for dynamically typed targets such as PHP and JavaScript. <br />
*'''HaXe adds missing language features to target platforms:&nbsp;'''HaXe has been created out of a desire for better features and tools for web-oriented development. It adds missing features to many of the targets - eg. inlining &amp; generics to Flash development, packages &amp; typing to JavaScript &amp; PHP, dynamic objects &amp; Runtime Type Information (enabling Reflection) to C++, and much more. Adding features to targets where they are lacking enables a haXe developer to have the same rich set of features available for use on ALL platforms that they want to target.'''<br>''' <br />
*'''Elegant Remoting between platforms:&nbsp;'''You can use remoting classes to pass objects between different platforms. Using the same codebase for different platforms means that the same classes can be compiled for many platforms. This allows for successful de-serialization making the remoting elegant and fast. <br />
*'''A single syntax &amp; features:&nbsp;'''Programming practices can often be achieved on different platforms, just with different syntax and quirks. By having a consistent syntax and feature set, there's no need to constantly switch into different programming 'modes'. This allows a developer greater focus on the logic and final output, which can greatly enhance productivity. <br />
*'''Conditional compilation - Write for one target and use on many:&nbsp;'''Code may be tailored for a single target platform, or designed for many platforms. For instance tween classes can be used in ActionScript, JavaScript and C++. Code logic can be transferred to the most suitable target in the platform with few changes, so if front-end code is running too slow, you can quickly move and test the same code running on the back-end'''<br>''' <br />
*'''Access to many file formats:&nbsp;'''The format library (hosted on googlecode) can read/write many formats such as 'abc' (ActionScript Byte Code), SWF headers &amp; more. These libraries are crossplatform making it accessible for many targets. <br />
*'''Compiler based auto-completion '''<br>HaXe provides a compiler based auto-completion system which allows IDEs to integrate completion on many otherwise hard to predict objects, such as those using type inference. This makes haXe auto-completion fast and accurate. <br />
*'''Open Source:''' In addition to being free, haXe is open source and provides installers for OSX, Windows, and Unix based operating systems. There are no base library requirements for the compiler, and a good deal of functionality is already provided with the haXe libraries.<br />
<br />
<br> <br />
<br />
== Haxelib (Open source code repository) ==<br />
<br />
haXe is distributed with haxelib, a tool which enables developers to share their code and libraries into a common repository. Before you can use haxelib you have to go through a easy setup: <br />
<br />
Access the [http://lib.haxe.org lib.haxe.org]&nbsp;website to view all the libraries available. More information can be found on the HaXe website and how to add new projects to HaXeLib:&nbsp;[http://haxe.org/doc/haxelib/using_haxelib haxe.org/doc/haxelib/using_haxelib] <br />
<br />
<br> <br />
<br />
*'''Using haxelib'''&nbsp;:&nbsp;haxelib is a commandline tool, so you need to run it from a console. The following commands are available: <br />
*'''haxelib search word'''&nbsp;: will list the projects which have either a name or description matching specified word. <br />
*'''haxelib info project-name'''&nbsp;: will give you information about a given project <br />
*'''haxelib install project-name [version]'''&nbsp;: will install the given project. You can optionally specify a specific version to be installed. By default, latest released version will be installed. <br />
*'''haxelib remove project-name [version]'''&nbsp;: will remove a complete project or only a specified version if specified. <br />
*'''haxelib list&nbsp;''': will list all the installed projects and their versions. For each project, the version surrounded by brackets is the current one. <br />
*'''haxelib upgrade'''&nbsp;: will upgrade all the installed projects to their latest version. This command prompts a confirmation for each upgradeable project. <br />
*'''haxelib set project-name version&nbsp;''': this will change the current version for a given project. The version must be already installed. <br />
*'''haxelib run project-name [arguments...]'''&nbsp;: this will run the given project if it provides a run script. Be careful to trust the project you are running since the script can damage your system.<br><br><br />
<br />
&nbsp;<br />
<br />
= Installation =<br />
<br />
To get started with haXe, you'll need to download a few extra add-ons. <br />
<br />
== Download haXe ==<br />
<br />
*Visit [http://haxe.org/download haXe's download page], and download one of the automatic installers for your platform. For this example, we'll be installing haXe for OSX.<br><br />
<br />
While installing, the installer may ask you to install ''Neko''. Neko is a language / Virtual Machine platform that comes with the installer. Even if you've never use Neko and haXe together, it may come in handy in the future so go ahead and install that as well. <br />
<br />
[[Image:Haxe installer.png|center|Haxe installer.png]] <br />
<br />
When the installer is complete,&nbsp;confirm that the installation of haXe was successful by opening your console and executing the command ''haXe'': <br />
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="bash source-bash"><pre class="de1">haxe</pre></div></div> <br />
<br> If installed correctly, the console should print out haXe info: <br />
<div dir="ltr" class="mw-geshi" style="text-align: left;"><div class="bash source-bash"><pre class="de1">OSXs-MacBook:~ OSX$ haxe<br />
haXe Compiler 2.07 - (c)2005-2011 Motion-Twin<br />
Usage&nbsp;: haxe -main &lt;class&gt; [-swf|-js|-neko|-php|-cpp|-as3] &lt;output&gt; [options]<br />
Options&nbsp;:<br />
-cp &lt;path&gt;&nbsp;: add a directory to find source files<br />
-js &lt;file&gt;&nbsp;: compile code to JavaScript file<br />
-swf &lt;file&gt;&nbsp;: compile code to Flash SWF file<br />
-as3 &lt;directory&gt;&nbsp;: generate AS3 code into target directory<br />
-neko &lt;file&gt;&nbsp;: compile code to Neko Binary<br />
-php &lt;directory&gt;&nbsp;: generate PHP code into target directory<br />
-cpp &lt;directory&gt;&nbsp;: generate C++ code into target directory<br />
-xml &lt;file&gt;&nbsp;: generate XML types description<br />
-main &lt;class&gt;&nbsp;: select startup class<br />
-lib &lt;library[:version]&gt;&nbsp;: use a haxelib library<br />
-D &lt;var&gt;&nbsp;: define a conditional compilation flag<br />
-v&nbsp;: turn on verbose mode<br />
-debug&nbsp;: add debug informations to the compiled code<br />
-help Display this list of options<br />
--help Display this list of options<br />
<br />
</pre></div></div> <br />
If it doesn't - try restarting your computer or reinstalling it again.<br />
<br />
== Install FDT's haXe Plugin <br> ==<br />
<br />
*Before you install the plugin you will need the latest copy of FDT, so you not got it please either update or download, install, setup licence, etc...<br><br />
<br />
*Start up FDT 4 and select ''Help&gt;Install new Software''&nbsp; *Select the ''FDT Plugins Site'' update site (If it is not included in your drop down menu, enter: http://fdt.powerflasher.com/plugins in the ''Work with'' text input and hit return)<br />
<br />
When you install the plugin if drill down into the FDT Plugin you will see two options now<br />
<br />
*FDT haXe Plugin <br />
*FDT haXe SDK Feature (Optional)<br><br />
<br />
If you have the following error raised during installation, then repeat the install and un-tick the "FDT haXe SDK Feature (Optional)" tick box.<br> <br />
<pre>An error occurred while installing the items<br />
<br />
session context was:(profile=epp.package.jee, <br />
phase=org.eclipse.equinox.internal.provisional.p2.engine.phases.Install, <br />
operand=null --&gt; [R]com.powerflasher.fdt.haxe.sdk_win 2.7.0, <br />
action=org.eclipse.equinox.internal.p2.touchpoint.natives.actions.UnzipAction).</pre> <br />
<br> <br />
<br />
[[Image:Haxe plugin install new software.png|600px|Haxe plugin install new software.png]]<br> <br />
<br />
*Select "FDT haXe Plugin" from the plugin list, hit ''Next'' and follow the final installation steps.&nbsp;You will be warned about installing unsigned code, please click OK to override the warning.<br><br />
<br />
<br>[[Image:Haxe plugin security warning.png|center|Haxe plugin security warning.png]]<br> <br />
<br />
*When prompted restart FDT 4<br><br />
<br />
<br>[[Image:Haxe plugin software update.png|center|Haxe plugin software update.png]]<br><br />
<br />
= Using the FDT HaXe Plugin =<br />
<br />
Before authoring and compiling haXe, you'll need to define the haXe SDK location for FDT to reference. <br />
<br />
== Setting up the haXe SDK Location ==<br />
<br />
Open FDT's preference widow and navigate to ''HaXe&gt;SDK''&nbsp;and input the installation directory of haXe. If you're not sure where haXe is installed, the installation window will clue you in. Here we can see that the installer is moving files and creating links to ''/usr/lib/haxe'' - this is the default location for OSX. After inputing the sdk location, hit ''OK.''<br />
<br />
== Create Your First haXe Project ==<br />
<br />
All haXe projects now have there own project wizard. Begin by creating an ''Basic HaXe Project'', If you can't see this in the new project menu or don't see new HaXe Classes you will need to goto the Window menu and select the "Reset Perspective" option and they will appear. <br />
<br />
<br> <br />
<br />
[[Image:Empty haxe project wizard 1.png|center|600px|Empty haxe project wizard 1.png]] <br />
<br />
During the process of creating a HaXe Project you will be able to select the HaXe SDK just for this project by ''"Enabling project specific settings"''.<br> <br />
<br />
[[Image:Empty haxe project wizard 2.png|center|600px|Empty haxe project wizard 2.png]] <br />
<br />
Then finally you can configure the target output of your HaXe Project for creating the basis of our HaXe project configuration (HXML), In this case we creating a flash project.<br> <br />
<br />
[[Image:Empty haxe project wizard 3.png|center|600px|Empty haxe project wizard 3.png]]<br />
<br />
== Convert Project To A HaXe Project ==<br />
<br />
With your first class created, right click on the project and select ''Add HaXe Project Nature''. When this happens, FDT will ask you to input some project variables. We already have configured our ''HaXe SDK Location'' so just hit ''Next''. <br />
<br />
Let's leave the haXe configuration file to the default location but modify the ''Output Path'' to ''bin/Main.swf''. When completed, FDT will have created a few extra files and folders for us. We don't need to worry about ''.hxtypes'' but we use ''project.hxml'' to set configurations to our project. We can also see that FDT has begun to parse our project for syntax errors.<br />
<br />
== Adjust Compiler Settings ==<br />
<br />
Before writing some code, let's alter some compiler options - this is done via the ''project.hxml'' file. Open us the file by double clicking on it, you will see a page similar to image below. You can click on the source tag at the bottom if you prefer to edit it manually.<br><br>[[Image:Haxe compilation settings.png|center|Haxe compilation settings.png]]<br />
<br />
= Compiling and Viewing your .SWF =<br />
<br />
== Adding HaXe Code ==<br />
<br />
The syntax of haXe is a bit beyond the scope of this tutorial - but that doesn't mean we have to code something boring! Copy and paste the code below to make a simple animation [[Image:Img preview.png|Img preview.png]]. Or type in the the code yourself to begin exploring the syntax auto completion FDT provides.<br> <br />
<br />
<br> <source lang="actionscript"><br />
<br />
package ;<br />
import flash.display.Sprite;<br />
import flash.events.Event;<br />
<br />
class Main{<br />
static var view:Sprite;<br />
static var x: Float = 0;<br />
static var y: Float = 200;<br />
static var speed :Float = 20;<br />
static var max_x : Float = 550;<br />
<br />
static function main() {<br />
new Main(); <br />
}<br />
<br />
function new(){<br />
view = new Sprite();<br />
flash.Lib.current.addChild (view);<br />
flash.Lib.current.stage.addEventListener(Event.ENTER_FRAME, update_view);<br />
}<br />
<br />
function update_view (e: Dynamic){<br />
view.graphics.clear();<br />
view.graphics.beginFill(0xff0000, 1);<br />
view.graphics.drawCircle(x, y, 50);<br />
<br />
if(is_invalid_x()) speed = speed * -1;<br />
x+= speed;<br />
}<br />
<br />
function is_invalid_x() : Bool {<br />
return x > max_x || x < 0;<br />
}<br />
}<br />
<br />
</source><br />
<br />
== Compiling HaXe ==<br />
<br />
For the time being, FDT will automatically attempt to compile your .SWF every time you save it. If there are no errors in your project, your .SWF will appear in your ''project&nbsp;''older. If it doesn't appear, try refreshing your project.<br />
<br />
== View Your SWF ==<br />
<br />
You can view your SWF with FDT by&nbsp;selecting Run As &gt; SWF File. You can also use Ant Scripts with your HaXe Project&nbsp;but for more in depth know-how on using Ant, check out the [[FDT and Ant Tutorial]].<br> <br />
<br />
(Note: ''If you get an error while tying to run the Ant file, it's probably a JRE error, check out the [[FDT and Ant Tutorial]] to learn how to correct it.)''<br />
<br />
= Wrap Up =<br />
<br />
That's it, you've successfully set up your first FDT haXe Flash project! <br />
<br />
As this plugin is still a beta release, please bare with us! For any feedback, feature requests, improvements, bugs and other issues we encourage you to use [http://bugs.powerflasher.com/jira/browse/FTDHXPLIN PowerFlasher JIRA site], our community driven tracking website, to make the haXe support in FDT the greatest ever.<br></div>Aklementhttp://fdt.powerflasher.com/docs/FAQFAQ2012-05-15T13:50:55Z<p>Aklement: /* How do I Download FDT 5? (Standalone) */</p>
<hr />
<div>=Installation And Setup=<br />
<br />
==How do I install FDT? (Standalone Version 5)==<br />
We recommend the latest standalone version.<br />
<br />
Visit this link [http://fdt.powerflasher.com/buy-download/ download] and install the latest FDT standalone version.<br />
<br />
*'''OSX:''' Download the .DMG, expand it and drag and drop it onto your desired folder.<br />
*'''Windows:''' FDT is distributed as a self extracting .ZIP file. Double click the provided archive to expand it.<br />
<br />
==How do I Download FDT 5? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win32.zip<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win64.zip<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_osx32.dmg<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_osx64.dmg<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux64.tar.gz<br />
<br />
==How do I Download FDT 4? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows64.exe<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux64.tar.gz<br />
<br />
==How do I install FDT? (Plugin Version 5)==<br />
The update url is: '''http://fdt.powerflasher.com/update/fdt5/'''. <br />
<br />
For detailed instructions and a video walkthrough, please [http://fdt.powerflasher.com/2011/11/fdt-plugin-released/ see this video].<br />
<br />
==How do I install FDT? (Plugin Version 4)==<br />
<br />
If you prefer to install FDT as part of your existing Eclipse 3.6+ instance, here the instructions:<br />
#Install [http://www.eclipse.org/ Eclipse]<br />
#Open Eclipse<br />
#Choose "Help->Software Updates..."<br />
#Select "Available Software" Tab and choose "Add Site..."<br />
#Insert "http://fdt.powerflasher.com/update" in Location field and confirm with OK<br />
#Please open "http://fdt.powerflasher.com/update" out of "Available Software" and select "FDT 4". The "FDT 4 Add-ons" category is optional. Depending features are only available if the corresponding plugins of third party contractors are pre-installed.<br />
#Click "Install..." to start the installation.<br />
<br />
==How do I install FDT? (Plugin Version 3.5)==<br />
<br />
Please [http://fdt.powerflasher.com/contact/ contact us] with your license information and we'll get you a link to download it.<br />
<br />
==How do I update FDT?==<br />
FDT will notify you of an update.<br />
<br />
==What are the minimal installation requirements for FDT?==<br />
FDT is officially supported under Windows, Mac OS X and Linux.<br />
To get started with FDT please also install and [http://www.fdt.powerflasher.com/download download] the FDT standalone version.<br />
<br />
==Does FDT run under Linux?==<br />
Yes ! Starting FDT4.1 release we have announced full support to Linux.<br />
<br />
Register [http://www.fdt.powerflasher.com/developer-tools/fdt/download-fdt/ here] to get your 30 days trial key and download your FDT Linux version.<br />
<br />
Please help us posting any feedback [http://bugs.powerflasher.com/jira/browse/FDT/component/10467 here] to make sure your FDT Linux development experience as confortable as possible.<br />
<br />
==Does FDT support 64bit Eclipse?==<br />
Yes, make sure to ...<br />
* [http://java.com/en/download/manual.jsp install 64 bit Java runtime] : Open this link with a 64 bit browser, download, install, restart browser and verify that the runtime is working.<br />
* [http://labs.adobe.com/downloads/flashplayer10_square.html Install 64 bit Flash Player]: On Windows you’ll need to install the one for IE only, other systems please install the “for all …” one.<br />
* Download and install [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ FDT4 64 bit version].<br />
<br />
==Can I install the standalone version of FDT identically on more than one system?==<br />
To install FDT to more than one system, there is the option to create a "Property File" of the configuration details. In that case, you would have to start your first installation of FDT with the following command:<br />
<br />
installername -f 'path to properties file'<br />
<br />
and the following with:<br />
<br />
installername -f 'properties file.'<br />
<br />
==FDT Installation fails (Unsupported major.minor version)==<br />
FDT needs at least Java 1.5 to run properly. Test your install of java [http://www.java.com/en/download/installed.jsp here].<br />
<br />
==I'm on Windows and the Plugin repository isn't working==<br />
This is a temporary issue that will be fixed soon. Until then the current workaround is:<br />
<br />
Paste the .jar files into the plugin directory of FDT, restart FDT and reset the perspective<br />
<br />
haXe Plugin: [http://www.fdt.powerflasher.com/fileadmin/plugin/haXe_FDT_plugin_alpha2.zip download]<br />
<br />
Pflection: [http://www.fdt.powerflasher.com/fileadmin/plugin/pflection_FDT_plugin.zip download]<br />
<br />
==My Startup (Splash) Screen Is The Default Eclipse Screen==<br />
When FDT is installed as a plugin, we could overwrite the default splash screen but we've decided not to. It's a best practice among the Eclipse community to not override the standalone Eclipse install in this way. This is because the user may have another Eclipse based product installed. For example, if you've downloaded the standalone version of Aptana and then install FDT as a plugin - we'd be overriding the Aptana screen with our own.<br />
<br />
== How can I Install FDT 5 As A Plugin? ==<br />
When FDT 5 was released, installation as a plugin was not supported. We recommend the stand alone version be used if possible.<br />
<br />
If it works out best for you to use the plugin version, we will soon provide a plugin option for everyone.<br />
<br />
==On First Run I only see only two menus (top bar)-"Edit" and "Window" (Linux)==<br />
Try going to Window>Customize Perspective and click 'Ok'. This may provide the proper menus scheme.<br />
<br />
For more info see these links:<br />
[http://askubuntu.com/questions/10481/how-do-i-disable-the-global-application-menu Ask Ubuntu]<br />
[http://ubuntuforums.org/showthread.php?t=1745436 Ubuntu Forums]<br />
<br />
=Upgrading And Using Licenses And FDT Discounts=<br />
<br />
==How can I upgrade my FDT 3.5 to FDT 4?==<br />
You cannot upgrade to FDT4 directly from FDT3.5. You need to [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ download] and install the FDT4 standalone version or install FDT 4 as a plugin to an Eclipse instance that doesn't had a FDT version installed before.<br />
<br />
==I'm a student. Do you offer special student licenses?==<br />
Students can buy all full versions and upgrades for 50 % of the retail price. Check out the [http://www.solutions.powerflasher.com/meta-menu/contact/ special application form].<br />
Please keep in mind that we need a copy of your student's ID which proves that you're actually enrolled at an university or school and that you are entitled to take this particularly favourable offer.<br />
<br />
==Do you support developers of open source projects?==<br />
We are very interested in encouraging projects everyone benefits from. So please let us know what you're doing and we encourage your work with the give-away of a free key for FDT 4 Max license.<br />
Follow [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/os-request/ this link] and fill out the application form. We will check out your project and get back to you as soon as possible.<br />
<br />
==Which versions should I get?==<br />
If you just started programming and want to structure your sources, you should go for '''FDT Pure'''. It provides you with a lot of cool features and will definitely shorten your development time. It's your entry into the world of professional coding.<br />
If you are already a professional and if you are used to working with professional development tools you should go for''' FDT Plus'''. A complete feature set supports you in handling your huge projects with bulky source codes and libraries. Your whole team can benefit from FDT Plus and how it simplifies your coding procedure.<br />
If you need solutions to tricky tasks and if you want to benefit from our latest achievements you should go for '''FDT Max'''. This version offers not only extended support, you can also team up with our experts to be part of well-priced training sessions, especially developed for our Professionals customers. FDT Max is for the experts among the experts!<br />
<br />
==I'm a software reseller. Are you working with resellers?==<br />
Yes we work with resellers.<br />
To get the special reseller rates please contact us via our [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/sales-contact/ Sales contact form] and provide us with all the necessary data about your company. With these information we will create your personal FDT reseller account which allows you to get the discount.<br />
<br />
=Contacting The Team For Support, Bugs, Feature Requests or Contributions=<br />
<br />
==What kind of support can I expect?==<br />
If you are a user of FDT 4 Max you can use our support form to get help within the next 24h. Please keep the following in mind: the more information we have, the easier it is for us to react quickly and satisfactory. So please give us a brief, but precise, description of your problem.<br />
<br />
http://www.fdt.powerflasher.com/developer-tools/fdt/support/<br />
<br />
==I have a feature request or I found a bug - where do I post it?==<br />
Please use our FDT Issue tracker on http://bugs.powerflasher.com<br />
<br />
Check out this [http://fdt.powerflasher.com/blog/how-to-use-jira/ tutorial] how to use JIRA.<br />
<br />
=Configuring FDT=<br />
<br />
==How can install the Flex SDKs?==<br />
When upgrading to or installing FDT 4.5, you'll need to make sure you have the appropriate Adobe Flex SDKs installed. Below is a video that will walk you through downloading and adding the SDKs to FDT.<br />
<br />
We also have a general [[SDK Management| SDK Management tutorial]] available as well. Check that out if you'd like to learn more about using SDKs with FDT.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=24623280|width=600|height=400}}<br />
<br />
==Can I Import or Export FDT Color Themes==<br />
FDT doesn't have official support for importing and exporting color themes. It can be done, but may require extra steps. The reason for this that color themes in Eclipse are saved within the workspace preferences - along with other preferences such as keystrokes. For now, the best is to Google 'Eclipse Color Themes'.<br />
<br />
[http://stackoverflow.com/questions/96981/color-themes-for-eclipse Here is a good link to start]<br />
<br />
==How Do I Customize Launching FDT==<br />
<br />
Check out this page to learn about [[Customizing How Projects Are Launched]]<br />
<br />
==Can I reset the default preference file in FDT==<br />
Eclipse would re-create the configuration folder with all the configuration files by deleting the configuration folder and forcing Eclipse to start up using the default settings. <br />
However, the FDTs settings are partly stored in the workspace as well as in FDTs directory. When deleting these configurations there is also a chance that the workspace will get messed up. Even if it works without problems the user will have to set up each project he had in his workspace once again. It is recommend to make a fresh installation of FDT instead, that way you are on the save side.<br />
<br />
=Using FDT=<br />
<br />
==Getting Started==<br />
We have devoted a section on our wiki to getting you running with FDT quickly.<br />
[http://fdt.powerflasher.com/docs/Main_Page#FDT_Getting_Started_Guide Check it out].<br />
<br />
== Is ActionScript 2 still supported?==<br />
While FDT4 has no longer support for AS2. You have the option to buy FDT 3.5 with AS2 support as a special bundle with FDT4 for US$99.<br />
<br />
==How can I reset the default Project Templates and Project Templates?==<br />
To reset the Project Types delete the folder projectTypes within the user-wide FDT configuration folder (/Users/username/Library/Application Support/FDT, C:\Users\username\FDT) and restart FDT.<br />
<br />
To reset the Project Templates delete the folder projectTemplates within the user-wide FDT configuration folder and restart the [http://www.fdt.powerflasher.com/developer-tools/fdt/fdt4-beta/milestone-2/fdt-4-tutorial-new-project-wizard/?L=122 New Project Wizard].<br />
<br />
==Where has the FDT Parser Preferences moved to?==<br />
Due to the new SDK Management we removed the parser settings and replaced the functionality with the FDT Compiler Preferences.<br />
<br />
==How can I define path variables for linked resources?==<br />
The preferences are now within the general workspace preferences (General - Workspace - Linked Resources). You can also click on the link within the FDT Welcome Screen to open them.<br />
<br />
==Why are there some wizards missing within Flash Explorer's '''New''' menu?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
==My profiler isn't working with FDT 4?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
<br />
==I'm having trouble using the debugger on Linux==<br />
[http://zoltanb.co.uk/how-to-set-up-flex-4-5-sdk-with-air-2-6-on-linux-using-fdt/ Please see this blog post] for more info about Adobe's SDK support for Linux and how to work with it.<br />
<br />
==I changed the project's SDK but nothing changed in my '''.as3_classpath''' file==<br />
We moved the classpath in FDT 4 Milestone 2.<br />
<br />
==How do I get rid of the FDT 3 Compatibility folder? I only want to use FDT 4!==<br />
If you don't need downward compatibility anymore you can just delete any of its files. The folder is only existing if your project contains any legacy file.<br />
<br />
==How can I use ''trace()'' with AS3?==<br />
The Flex SDK which is included in the FDT stand alone installation has to be installed.<br />
Furthermore you need the [http://www.adobe.com/support/flashplayer/downloads.html Flash Debug Player] to start your application. Please make sure that you're really using the DEBUG PLAYER.<br />
If you want to check which version of the Flash Player is installed on your system visit the [http://kb2.adobe.com/cps/155/tn_15507.html Adobe Version test].<br />
If everything is installed correctly open your main class and start your application with "Debug As... --> FDT AS3 Application" (instead of "Run As..."). Two consoles in eclipse will open one for the compiler and one for the debugger. The console for the debugger shows the output of your traces.<br />
<br />
==I'm trying to import the ''fl'' package and I get an error...==<br />
Use "compc.exe" from the FlexSDK to create an SWC library out of the following folder:<br />
<br />
'''<Adobe Flash CS3/4>\en\Configuration\Component Source\ActionScript 3.0\User Interface'''<br />
<br />
Use this SWC as linked library within your project afterwards. Alternativly you can use the folder directly as "linked library".<br />
<br />
==How can I improve FDT's performance?==<br />
To improve the FDT performance you can try the following suggestions:<br />
*Remove unused SDKs from FDT<br />
*Close unused project<br />
*Uncheck "build automatically"<br />
*Raise the memory value in eclipse.ini adding the following two lines:<br />
**Xms128m<br />
**Xmx768m<br />
<br />
Note: On a machine with only 1 gb of ram, lowering the value to 512mb will improve the performance<br />
<br />
We found also a good tip on <br />
[http://www.quora.com/FDT/If-I-have-8GB-of-RAM-whats-a-good-setting-for-the-Xms-in-eclipse-ini?q=FDT Quora]<br />
<br />
==Things Are Slow or I'm Getting Odd Errors==<br />
Try cleaning your workspace / projects and resetting the compiler.<br />
<br />
[[File:Clean.png | 200px]] [[File:Reset_compiler.png| 200px]]<br />
<br />
==I'm getting this '''ERROR 403'''...==<br />
Please check the settings of your firewall.<br />
#Preferences...<br />
#Select Install/Update<br />
#Select "Enable http proxy connection"<br />
#Insert proxy address and port<br />
#try again<br />
<br />
==When I Debug or Profile My Application, The Perspective Doesn't Change==<br />
Check out your ''Perspectives'' settings: [[File:Prespective_control.png|center|600px]] There's an option to: ''Open associated perspective when an application suspends''. Also take note that when you have ''FDT SWF Application'' selected within the ''Application Types/Launchers'' section you have the appropriate settings under ''Modes/Perspectives''.<br />
<br />
==How Do I Get FDT to Ignore Specific Files or Folders Such as .SVN==<br />
Within the Flash Explorer, there is a filter option for what types of files and folders are visible.<br />
[[File:Ignore_svn.png| 600px|center]]<br />
<br />
==Why is the ''flex.swc'' included in ''AS3'' projects==<br />
There are various reasons for this, but most notably it has to do with the use of the ''[Embed]'' metadata tag. With the use of such a tag the Flex compiler will pull in additional classes, from the ''mx'' package, to handle the asset embed.<br />
<br />
<br />
<syntaxhighlight lang="bash"><br />
[Embed(source="FDT.jpeg")]<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The use of code like the snippet above will result in the addition of classes such as ''BitmapAsset''. The tricky part is that if the classes are omitted, the compiler will not throw a compile time error. Rather it will throw a runtime error.<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16039843|width=600|height=400}}<br />
<br />
==How Can I Profile a SWF I Create Via Flash Authoring==<br />
<br />
The best way of doing this is to use one of FDT's Ant tasks. <br />
<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16632103|width=600|height=400}}<br />
<br />
==I can't Debug Android Mobile Projects==<br />
Make sure you have the <br />
<br />
'''<uses-permission android:name="android.permission.INTERNET" />''' <br />
<br />
node in your Android permissions.<br />
<br />
WIth FDT 5, this is not activated by default but will be in 5.1. See [http://bugs.powerflasher.com/jira/browse/FDT-2451 this JIRA ticket] for more info.<br />
<br />
[[File:Properties_for_Test.png|600px]]<br />
<br />
==How Do I Use The New Mobile Components In Flex 4.5 (Hero)?==<br />
# You'll first need to [http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+Hero download the new Hero SDK].<br />
# Add the Hero SDK using FDT's [[SDK Management]]<br />
# Add ''mobilecomponents.swc'' to your classpath<br />
<br />
Also see [http://www.beautifycode.com/using-flex-4-5-hero-with-fdt-4-1 this post by Marvin Blase] on using using Hero and FDT.<br />
<br />
[[File:Select_mobile.png | 600px | center]]<br />
<br />
==Can't package AIR==<br />
If you're having problems packaging your AIR applications, this error may be caused by a misconfiguration of your air release launcher. In order to package an .air file you will have to add at least the .SWF and the application discriptor to package successful. The following screenshot shows how to do so: http://screencast.com/t/T3AzRzJKn8Z<br />
<br />
==How Do I Get FDT To Ignore A File==<br />
There are various techniques to do this. Please check out this [http://bugs.powerflasher.com/jira/browse/FDT-2511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=19409#action_19409 JIRA ticket] where this issue is discussed.<br />
<br />
==How Do I Launch A haXe Project==<br />
FDT currently does not support any launchers for haXe. To run a haXe SWF or HTML, simply double the click on the file in the explorer or create your own custom launch process.<br />
<br />
==Do I need The Flex SDKs to use haXe==<br />
No. You can disable the warning asking you to install the Flex SDKs.<br />
[[File:FDT.png]]<br />
<br />
==How Do I Debug A haXe Flash Project==<br />
FDT's debugger currently does not support SWFs created in haXe.<br />
<br />
=Miscellaneous=<br />
<br />
==How Do I Know What Edition of FDT I Have installed==<br />
Go to 'Help>FDT License' and the FDT license box will appear. This will tell you the registered email, version and a preview of the key that is associated with your installation of FDT.<br />
[[File:Licence.png]]<br />
<br />
==When A Beta Is Released How Do I Download It?==<br />
<br />
Here are the URLs to download an FDT Beta:<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows64.exe<br />
<br />
Mac Cocoa 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa32.zip<br />
<br />
Mac Cocoa 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux64.tar.gz<br />
<br />
'''Important:''' please see the known issue for that release on [http://bugs.powerflasher.com/jira/browse/FDT-2006 bugs.powerflasher.com] You will have to restart FDT after setting the paths to Scala and Apparat in order to make sure the Apparat feature runs smooth.</div>Aklementhttp://fdt.powerflasher.com/docs/FAQFAQ2012-05-15T13:47:35Z<p>Aklement: /* How do I Download FDT 5? (Standalone) */</p>
<hr />
<div>=Installation And Setup=<br />
<br />
==How do I install FDT? (Standalone Version 5)==<br />
We recommend the latest standalone version.<br />
<br />
Visit this link [http://fdt.powerflasher.com/buy-download/ download] and install the latest FDT standalone version.<br />
<br />
*'''OSX:''' Download the .DMG, expand it and drag and drop it onto your desired folder.<br />
*'''Windows:''' FDT is distributed as a self extracting .ZIP file. Double click the provided archive to expand it.<br />
<br />
==How do I Download FDT 5? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win32.zip<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win64.zip<br />
<br />
Mac Carbon 32 Bit:<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx32.dmg<br />
<br />
Mac Carbon 64 Bit:<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx64.dmg<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux64.tar.gz<br />
<br />
==How do I Download FDT 4? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows64.exe<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux64.tar.gz<br />
<br />
==How do I install FDT? (Plugin Version 5)==<br />
The update url is: '''http://fdt.powerflasher.com/update/fdt5/'''. <br />
<br />
For detailed instructions and a video walkthrough, please [http://fdt.powerflasher.com/2011/11/fdt-plugin-released/ see this video].<br />
<br />
==How do I install FDT? (Plugin Version 4)==<br />
<br />
If you prefer to install FDT as part of your existing Eclipse 3.6+ instance, here the instructions:<br />
#Install [http://www.eclipse.org/ Eclipse]<br />
#Open Eclipse<br />
#Choose "Help->Software Updates..."<br />
#Select "Available Software" Tab and choose "Add Site..."<br />
#Insert "http://fdt.powerflasher.com/update" in Location field and confirm with OK<br />
#Please open "http://fdt.powerflasher.com/update" out of "Available Software" and select "FDT 4". The "FDT 4 Add-ons" category is optional. Depending features are only available if the corresponding plugins of third party contractors are pre-installed.<br />
#Click "Install..." to start the installation.<br />
<br />
==How do I install FDT? (Plugin Version 3.5)==<br />
<br />
Please [http://fdt.powerflasher.com/contact/ contact us] with your license information and we'll get you a link to download it.<br />
<br />
==How do I update FDT?==<br />
FDT will notify you of an update.<br />
<br />
==What are the minimal installation requirements for FDT?==<br />
FDT is officially supported under Windows, Mac OS X and Linux.<br />
To get started with FDT please also install and [http://www.fdt.powerflasher.com/download download] the FDT standalone version.<br />
<br />
==Does FDT run under Linux?==<br />
Yes ! Starting FDT4.1 release we have announced full support to Linux.<br />
<br />
Register [http://www.fdt.powerflasher.com/developer-tools/fdt/download-fdt/ here] to get your 30 days trial key and download your FDT Linux version.<br />
<br />
Please help us posting any feedback [http://bugs.powerflasher.com/jira/browse/FDT/component/10467 here] to make sure your FDT Linux development experience as confortable as possible.<br />
<br />
==Does FDT support 64bit Eclipse?==<br />
Yes, make sure to ...<br />
* [http://java.com/en/download/manual.jsp install 64 bit Java runtime] : Open this link with a 64 bit browser, download, install, restart browser and verify that the runtime is working.<br />
* [http://labs.adobe.com/downloads/flashplayer10_square.html Install 64 bit Flash Player]: On Windows you’ll need to install the one for IE only, other systems please install the “for all …” one.<br />
* Download and install [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ FDT4 64 bit version].<br />
<br />
==Can I install the standalone version of FDT identically on more than one system?==<br />
To install FDT to more than one system, there is the option to create a "Property File" of the configuration details. In that case, you would have to start your first installation of FDT with the following command:<br />
<br />
installername -f 'path to properties file'<br />
<br />
and the following with:<br />
<br />
installername -f 'properties file.'<br />
<br />
==FDT Installation fails (Unsupported major.minor version)==<br />
FDT needs at least Java 1.5 to run properly. Test your install of java [http://www.java.com/en/download/installed.jsp here].<br />
<br />
==I'm on Windows and the Plugin repository isn't working==<br />
This is a temporary issue that will be fixed soon. Until then the current workaround is:<br />
<br />
Paste the .jar files into the plugin directory of FDT, restart FDT and reset the perspective<br />
<br />
haXe Plugin: [http://www.fdt.powerflasher.com/fileadmin/plugin/haXe_FDT_plugin_alpha2.zip download]<br />
<br />
Pflection: [http://www.fdt.powerflasher.com/fileadmin/plugin/pflection_FDT_plugin.zip download]<br />
<br />
==My Startup (Splash) Screen Is The Default Eclipse Screen==<br />
When FDT is installed as a plugin, we could overwrite the default splash screen but we've decided not to. It's a best practice among the Eclipse community to not override the standalone Eclipse install in this way. This is because the user may have another Eclipse based product installed. For example, if you've downloaded the standalone version of Aptana and then install FDT as a plugin - we'd be overriding the Aptana screen with our own.<br />
<br />
== How can I Install FDT 5 As A Plugin? ==<br />
When FDT 5 was released, installation as a plugin was not supported. We recommend the stand alone version be used if possible.<br />
<br />
If it works out best for you to use the plugin version, we will soon provide a plugin option for everyone.<br />
<br />
==On First Run I only see only two menus (top bar)-"Edit" and "Window" (Linux)==<br />
Try going to Window>Customize Perspective and click 'Ok'. This may provide the proper menus scheme.<br />
<br />
For more info see these links:<br />
[http://askubuntu.com/questions/10481/how-do-i-disable-the-global-application-menu Ask Ubuntu]<br />
[http://ubuntuforums.org/showthread.php?t=1745436 Ubuntu Forums]<br />
<br />
=Upgrading And Using Licenses And FDT Discounts=<br />
<br />
==How can I upgrade my FDT 3.5 to FDT 4?==<br />
You cannot upgrade to FDT4 directly from FDT3.5. You need to [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ download] and install the FDT4 standalone version or install FDT 4 as a plugin to an Eclipse instance that doesn't had a FDT version installed before.<br />
<br />
==I'm a student. Do you offer special student licenses?==<br />
Students can buy all full versions and upgrades for 50 % of the retail price. Check out the [http://www.solutions.powerflasher.com/meta-menu/contact/ special application form].<br />
Please keep in mind that we need a copy of your student's ID which proves that you're actually enrolled at an university or school and that you are entitled to take this particularly favourable offer.<br />
<br />
==Do you support developers of open source projects?==<br />
We are very interested in encouraging projects everyone benefits from. So please let us know what you're doing and we encourage your work with the give-away of a free key for FDT 4 Max license.<br />
Follow [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/os-request/ this link] and fill out the application form. We will check out your project and get back to you as soon as possible.<br />
<br />
==Which versions should I get?==<br />
If you just started programming and want to structure your sources, you should go for '''FDT Pure'''. It provides you with a lot of cool features and will definitely shorten your development time. It's your entry into the world of professional coding.<br />
If you are already a professional and if you are used to working with professional development tools you should go for''' FDT Plus'''. A complete feature set supports you in handling your huge projects with bulky source codes and libraries. Your whole team can benefit from FDT Plus and how it simplifies your coding procedure.<br />
If you need solutions to tricky tasks and if you want to benefit from our latest achievements you should go for '''FDT Max'''. This version offers not only extended support, you can also team up with our experts to be part of well-priced training sessions, especially developed for our Professionals customers. FDT Max is for the experts among the experts!<br />
<br />
==I'm a software reseller. Are you working with resellers?==<br />
Yes we work with resellers.<br />
To get the special reseller rates please contact us via our [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/sales-contact/ Sales contact form] and provide us with all the necessary data about your company. With these information we will create your personal FDT reseller account which allows you to get the discount.<br />
<br />
=Contacting The Team For Support, Bugs, Feature Requests or Contributions=<br />
<br />
==What kind of support can I expect?==<br />
If you are a user of FDT 4 Max you can use our support form to get help within the next 24h. Please keep the following in mind: the more information we have, the easier it is for us to react quickly and satisfactory. So please give us a brief, but precise, description of your problem.<br />
<br />
http://www.fdt.powerflasher.com/developer-tools/fdt/support/<br />
<br />
==I have a feature request or I found a bug - where do I post it?==<br />
Please use our FDT Issue tracker on http://bugs.powerflasher.com<br />
<br />
Check out this [http://fdt.powerflasher.com/blog/how-to-use-jira/ tutorial] how to use JIRA.<br />
<br />
=Configuring FDT=<br />
<br />
==How can install the Flex SDKs?==<br />
When upgrading to or installing FDT 4.5, you'll need to make sure you have the appropriate Adobe Flex SDKs installed. Below is a video that will walk you through downloading and adding the SDKs to FDT.<br />
<br />
We also have a general [[SDK Management| SDK Management tutorial]] available as well. Check that out if you'd like to learn more about using SDKs with FDT.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=24623280|width=600|height=400}}<br />
<br />
==Can I Import or Export FDT Color Themes==<br />
FDT doesn't have official support for importing and exporting color themes. It can be done, but may require extra steps. The reason for this that color themes in Eclipse are saved within the workspace preferences - along with other preferences such as keystrokes. For now, the best is to Google 'Eclipse Color Themes'.<br />
<br />
[http://stackoverflow.com/questions/96981/color-themes-for-eclipse Here is a good link to start]<br />
<br />
==How Do I Customize Launching FDT==<br />
<br />
Check out this page to learn about [[Customizing How Projects Are Launched]]<br />
<br />
==Can I reset the default preference file in FDT==<br />
Eclipse would re-create the configuration folder with all the configuration files by deleting the configuration folder and forcing Eclipse to start up using the default settings. <br />
However, the FDTs settings are partly stored in the workspace as well as in FDTs directory. When deleting these configurations there is also a chance that the workspace will get messed up. Even if it works without problems the user will have to set up each project he had in his workspace once again. It is recommend to make a fresh installation of FDT instead, that way you are on the save side.<br />
<br />
=Using FDT=<br />
<br />
==Getting Started==<br />
We have devoted a section on our wiki to getting you running with FDT quickly.<br />
[http://fdt.powerflasher.com/docs/Main_Page#FDT_Getting_Started_Guide Check it out].<br />
<br />
== Is ActionScript 2 still supported?==<br />
While FDT4 has no longer support for AS2. You have the option to buy FDT 3.5 with AS2 support as a special bundle with FDT4 for US$99.<br />
<br />
==How can I reset the default Project Templates and Project Templates?==<br />
To reset the Project Types delete the folder projectTypes within the user-wide FDT configuration folder (/Users/username/Library/Application Support/FDT, C:\Users\username\FDT) and restart FDT.<br />
<br />
To reset the Project Templates delete the folder projectTemplates within the user-wide FDT configuration folder and restart the [http://www.fdt.powerflasher.com/developer-tools/fdt/fdt4-beta/milestone-2/fdt-4-tutorial-new-project-wizard/?L=122 New Project Wizard].<br />
<br />
==Where has the FDT Parser Preferences moved to?==<br />
Due to the new SDK Management we removed the parser settings and replaced the functionality with the FDT Compiler Preferences.<br />
<br />
==How can I define path variables for linked resources?==<br />
The preferences are now within the general workspace preferences (General - Workspace - Linked Resources). You can also click on the link within the FDT Welcome Screen to open them.<br />
<br />
==Why are there some wizards missing within Flash Explorer's '''New''' menu?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
==My profiler isn't working with FDT 4?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
<br />
==I'm having trouble using the debugger on Linux==<br />
[http://zoltanb.co.uk/how-to-set-up-flex-4-5-sdk-with-air-2-6-on-linux-using-fdt/ Please see this blog post] for more info about Adobe's SDK support for Linux and how to work with it.<br />
<br />
==I changed the project's SDK but nothing changed in my '''.as3_classpath''' file==<br />
We moved the classpath in FDT 4 Milestone 2.<br />
<br />
==How do I get rid of the FDT 3 Compatibility folder? I only want to use FDT 4!==<br />
If you don't need downward compatibility anymore you can just delete any of its files. The folder is only existing if your project contains any legacy file.<br />
<br />
==How can I use ''trace()'' with AS3?==<br />
The Flex SDK which is included in the FDT stand alone installation has to be installed.<br />
Furthermore you need the [http://www.adobe.com/support/flashplayer/downloads.html Flash Debug Player] to start your application. Please make sure that you're really using the DEBUG PLAYER.<br />
If you want to check which version of the Flash Player is installed on your system visit the [http://kb2.adobe.com/cps/155/tn_15507.html Adobe Version test].<br />
If everything is installed correctly open your main class and start your application with "Debug As... --> FDT AS3 Application" (instead of "Run As..."). Two consoles in eclipse will open one for the compiler and one for the debugger. The console for the debugger shows the output of your traces.<br />
<br />
==I'm trying to import the ''fl'' package and I get an error...==<br />
Use "compc.exe" from the FlexSDK to create an SWC library out of the following folder:<br />
<br />
'''<Adobe Flash CS3/4>\en\Configuration\Component Source\ActionScript 3.0\User Interface'''<br />
<br />
Use this SWC as linked library within your project afterwards. Alternativly you can use the folder directly as "linked library".<br />
<br />
==How can I improve FDT's performance?==<br />
To improve the FDT performance you can try the following suggestions:<br />
*Remove unused SDKs from FDT<br />
*Close unused project<br />
*Uncheck "build automatically"<br />
*Raise the memory value in eclipse.ini adding the following two lines:<br />
**Xms128m<br />
**Xmx768m<br />
<br />
Note: On a machine with only 1 gb of ram, lowering the value to 512mb will improve the performance<br />
<br />
We found also a good tip on <br />
[http://www.quora.com/FDT/If-I-have-8GB-of-RAM-whats-a-good-setting-for-the-Xms-in-eclipse-ini?q=FDT Quora]<br />
<br />
==Things Are Slow or I'm Getting Odd Errors==<br />
Try cleaning your workspace / projects and resetting the compiler.<br />
<br />
[[File:Clean.png | 200px]] [[File:Reset_compiler.png| 200px]]<br />
<br />
==I'm getting this '''ERROR 403'''...==<br />
Please check the settings of your firewall.<br />
#Preferences...<br />
#Select Install/Update<br />
#Select "Enable http proxy connection"<br />
#Insert proxy address and port<br />
#try again<br />
<br />
==When I Debug or Profile My Application, The Perspective Doesn't Change==<br />
Check out your ''Perspectives'' settings: [[File:Prespective_control.png|center|600px]] There's an option to: ''Open associated perspective when an application suspends''. Also take note that when you have ''FDT SWF Application'' selected within the ''Application Types/Launchers'' section you have the appropriate settings under ''Modes/Perspectives''.<br />
<br />
==How Do I Get FDT to Ignore Specific Files or Folders Such as .SVN==<br />
Within the Flash Explorer, there is a filter option for what types of files and folders are visible.<br />
[[File:Ignore_svn.png| 600px|center]]<br />
<br />
==Why is the ''flex.swc'' included in ''AS3'' projects==<br />
There are various reasons for this, but most notably it has to do with the use of the ''[Embed]'' metadata tag. With the use of such a tag the Flex compiler will pull in additional classes, from the ''mx'' package, to handle the asset embed.<br />
<br />
<br />
<syntaxhighlight lang="bash"><br />
[Embed(source="FDT.jpeg")]<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The use of code like the snippet above will result in the addition of classes such as ''BitmapAsset''. The tricky part is that if the classes are omitted, the compiler will not throw a compile time error. Rather it will throw a runtime error.<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16039843|width=600|height=400}}<br />
<br />
==How Can I Profile a SWF I Create Via Flash Authoring==<br />
<br />
The best way of doing this is to use one of FDT's Ant tasks. <br />
<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16632103|width=600|height=400}}<br />
<br />
==I can't Debug Android Mobile Projects==<br />
Make sure you have the <br />
<br />
'''<uses-permission android:name="android.permission.INTERNET" />''' <br />
<br />
node in your Android permissions.<br />
<br />
WIth FDT 5, this is not activated by default but will be in 5.1. See [http://bugs.powerflasher.com/jira/browse/FDT-2451 this JIRA ticket] for more info.<br />
<br />
[[File:Properties_for_Test.png|600px]]<br />
<br />
==How Do I Use The New Mobile Components In Flex 4.5 (Hero)?==<br />
# You'll first need to [http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+Hero download the new Hero SDK].<br />
# Add the Hero SDK using FDT's [[SDK Management]]<br />
# Add ''mobilecomponents.swc'' to your classpath<br />
<br />
Also see [http://www.beautifycode.com/using-flex-4-5-hero-with-fdt-4-1 this post by Marvin Blase] on using using Hero and FDT.<br />
<br />
[[File:Select_mobile.png | 600px | center]]<br />
<br />
==Can't package AIR==<br />
If you're having problems packaging your AIR applications, this error may be caused by a misconfiguration of your air release launcher. In order to package an .air file you will have to add at least the .SWF and the application discriptor to package successful. The following screenshot shows how to do so: http://screencast.com/t/T3AzRzJKn8Z<br />
<br />
==How Do I Get FDT To Ignore A File==<br />
There are various techniques to do this. Please check out this [http://bugs.powerflasher.com/jira/browse/FDT-2511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=19409#action_19409 JIRA ticket] where this issue is discussed.<br />
<br />
==How Do I Launch A haXe Project==<br />
FDT currently does not support any launchers for haXe. To run a haXe SWF or HTML, simply double the click on the file in the explorer or create your own custom launch process.<br />
<br />
==Do I need The Flex SDKs to use haXe==<br />
No. You can disable the warning asking you to install the Flex SDKs.<br />
[[File:FDT.png]]<br />
<br />
==How Do I Debug A haXe Flash Project==<br />
FDT's debugger currently does not support SWFs created in haXe.<br />
<br />
=Miscellaneous=<br />
<br />
==How Do I Know What Edition of FDT I Have installed==<br />
Go to 'Help>FDT License' and the FDT license box will appear. This will tell you the registered email, version and a preview of the key that is associated with your installation of FDT.<br />
[[File:Licence.png]]<br />
<br />
==When A Beta Is Released How Do I Download It?==<br />
<br />
Here are the URLs to download an FDT Beta:<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows64.exe<br />
<br />
Mac Cocoa 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa32.zip<br />
<br />
Mac Cocoa 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux64.tar.gz<br />
<br />
'''Important:''' please see the known issue for that release on [http://bugs.powerflasher.com/jira/browse/FDT-2006 bugs.powerflasher.com] You will have to restart FDT after setting the paths to Scala and Apparat in order to make sure the Apparat feature runs smooth.</div>Aklementhttp://fdt.powerflasher.com/docs/FAQFAQ2012-05-15T13:35:13Z<p>Aklement: /* How do I Download FDT 5? (Standalone) */</p>
<hr />
<div>=Installation And Setup=<br />
<br />
==How do I install FDT? (Standalone Version 5)==<br />
We recommend the latest standalone version.<br />
<br />
Visit this link [http://fdt.powerflasher.com/buy-download/ download] and install the latest FDT standalone version.<br />
<br />
*'''OSX:''' Download the .DMG, expand it and drag and drop it onto your desired folder.<br />
*'''Windows:''' FDT is distributed as a self extracting .ZIP file. Double click the provided archive to expand it.<br />
<br />
==How do I Download FDT 5? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win32.zip<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win64.zip<br />
<br />
Mac Carbon 32 Bit:<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx32.dmg<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx64.dmg<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux64.tar.gz<br />
<br />
==How do I Download FDT 4? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows64.exe<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux64.tar.gz<br />
<br />
==How do I install FDT? (Plugin Version 5)==<br />
The update url is: '''http://fdt.powerflasher.com/update/fdt5/'''. <br />
<br />
For detailed instructions and a video walkthrough, please [http://fdt.powerflasher.com/2011/11/fdt-plugin-released/ see this video].<br />
<br />
==How do I install FDT? (Plugin Version 4)==<br />
<br />
If you prefer to install FDT as part of your existing Eclipse 3.6+ instance, here the instructions:<br />
#Install [http://www.eclipse.org/ Eclipse]<br />
#Open Eclipse<br />
#Choose "Help->Software Updates..."<br />
#Select "Available Software" Tab and choose "Add Site..."<br />
#Insert "http://fdt.powerflasher.com/update" in Location field and confirm with OK<br />
#Please open "http://fdt.powerflasher.com/update" out of "Available Software" and select "FDT 4". The "FDT 4 Add-ons" category is optional. Depending features are only available if the corresponding plugins of third party contractors are pre-installed.<br />
#Click "Install..." to start the installation.<br />
<br />
==How do I install FDT? (Plugin Version 3.5)==<br />
<br />
Please [http://fdt.powerflasher.com/contact/ contact us] with your license information and we'll get you a link to download it.<br />
<br />
==How do I update FDT?==<br />
FDT will notify you of an update.<br />
<br />
==What are the minimal installation requirements for FDT?==<br />
FDT is officially supported under Windows, Mac OS X and Linux.<br />
To get started with FDT please also install and [http://www.fdt.powerflasher.com/download download] the FDT standalone version.<br />
<br />
==Does FDT run under Linux?==<br />
Yes ! Starting FDT4.1 release we have announced full support to Linux.<br />
<br />
Register [http://www.fdt.powerflasher.com/developer-tools/fdt/download-fdt/ here] to get your 30 days trial key and download your FDT Linux version.<br />
<br />
Please help us posting any feedback [http://bugs.powerflasher.com/jira/browse/FDT/component/10467 here] to make sure your FDT Linux development experience as confortable as possible.<br />
<br />
==Does FDT support 64bit Eclipse?==<br />
Yes, make sure to ...<br />
* [http://java.com/en/download/manual.jsp install 64 bit Java runtime] : Open this link with a 64 bit browser, download, install, restart browser and verify that the runtime is working.<br />
* [http://labs.adobe.com/downloads/flashplayer10_square.html Install 64 bit Flash Player]: On Windows you’ll need to install the one for IE only, other systems please install the “for all …” one.<br />
* Download and install [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ FDT4 64 bit version].<br />
<br />
==Can I install the standalone version of FDT identically on more than one system?==<br />
To install FDT to more than one system, there is the option to create a "Property File" of the configuration details. In that case, you would have to start your first installation of FDT with the following command:<br />
<br />
installername -f 'path to properties file'<br />
<br />
and the following with:<br />
<br />
installername -f 'properties file.'<br />
<br />
==FDT Installation fails (Unsupported major.minor version)==<br />
FDT needs at least Java 1.5 to run properly. Test your install of java [http://www.java.com/en/download/installed.jsp here].<br />
<br />
==I'm on Windows and the Plugin repository isn't working==<br />
This is a temporary issue that will be fixed soon. Until then the current workaround is:<br />
<br />
Paste the .jar files into the plugin directory of FDT, restart FDT and reset the perspective<br />
<br />
haXe Plugin: [http://www.fdt.powerflasher.com/fileadmin/plugin/haXe_FDT_plugin_alpha2.zip download]<br />
<br />
Pflection: [http://www.fdt.powerflasher.com/fileadmin/plugin/pflection_FDT_plugin.zip download]<br />
<br />
==My Startup (Splash) Screen Is The Default Eclipse Screen==<br />
When FDT is installed as a plugin, we could overwrite the default splash screen but we've decided not to. It's a best practice among the Eclipse community to not override the standalone Eclipse install in this way. This is because the user may have another Eclipse based product installed. For example, if you've downloaded the standalone version of Aptana and then install FDT as a plugin - we'd be overriding the Aptana screen with our own.<br />
<br />
== How can I Install FDT 5 As A Plugin? ==<br />
When FDT 5 was released, installation as a plugin was not supported. We recommend the stand alone version be used if possible.<br />
<br />
If it works out best for you to use the plugin version, we will soon provide a plugin option for everyone.<br />
<br />
==On First Run I only see only two menus (top bar)-"Edit" and "Window" (Linux)==<br />
Try going to Window>Customize Perspective and click 'Ok'. This may provide the proper menus scheme.<br />
<br />
For more info see these links:<br />
[http://askubuntu.com/questions/10481/how-do-i-disable-the-global-application-menu Ask Ubuntu]<br />
[http://ubuntuforums.org/showthread.php?t=1745436 Ubuntu Forums]<br />
<br />
=Upgrading And Using Licenses And FDT Discounts=<br />
<br />
==How can I upgrade my FDT 3.5 to FDT 4?==<br />
You cannot upgrade to FDT4 directly from FDT3.5. You need to [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ download] and install the FDT4 standalone version or install FDT 4 as a plugin to an Eclipse instance that doesn't had a FDT version installed before.<br />
<br />
==I'm a student. Do you offer special student licenses?==<br />
Students can buy all full versions and upgrades for 50 % of the retail price. Check out the [http://www.solutions.powerflasher.com/meta-menu/contact/ special application form].<br />
Please keep in mind that we need a copy of your student's ID which proves that you're actually enrolled at an university or school and that you are entitled to take this particularly favourable offer.<br />
<br />
==Do you support developers of open source projects?==<br />
We are very interested in encouraging projects everyone benefits from. So please let us know what you're doing and we encourage your work with the give-away of a free key for FDT 4 Max license.<br />
Follow [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/os-request/ this link] and fill out the application form. We will check out your project and get back to you as soon as possible.<br />
<br />
==Which versions should I get?==<br />
If you just started programming and want to structure your sources, you should go for '''FDT Pure'''. It provides you with a lot of cool features and will definitely shorten your development time. It's your entry into the world of professional coding.<br />
If you are already a professional and if you are used to working with professional development tools you should go for''' FDT Plus'''. A complete feature set supports you in handling your huge projects with bulky source codes and libraries. Your whole team can benefit from FDT Plus and how it simplifies your coding procedure.<br />
If you need solutions to tricky tasks and if you want to benefit from our latest achievements you should go for '''FDT Max'''. This version offers not only extended support, you can also team up with our experts to be part of well-priced training sessions, especially developed for our Professionals customers. FDT Max is for the experts among the experts!<br />
<br />
==I'm a software reseller. Are you working with resellers?==<br />
Yes we work with resellers.<br />
To get the special reseller rates please contact us via our [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/sales-contact/ Sales contact form] and provide us with all the necessary data about your company. With these information we will create your personal FDT reseller account which allows you to get the discount.<br />
<br />
=Contacting The Team For Support, Bugs, Feature Requests or Contributions=<br />
<br />
==What kind of support can I expect?==<br />
If you are a user of FDT 4 Max you can use our support form to get help within the next 24h. Please keep the following in mind: the more information we have, the easier it is for us to react quickly and satisfactory. So please give us a brief, but precise, description of your problem.<br />
<br />
http://www.fdt.powerflasher.com/developer-tools/fdt/support/<br />
<br />
==I have a feature request or I found a bug - where do I post it?==<br />
Please use our FDT Issue tracker on http://bugs.powerflasher.com<br />
<br />
Check out this [http://fdt.powerflasher.com/blog/how-to-use-jira/ tutorial] how to use JIRA.<br />
<br />
=Configuring FDT=<br />
<br />
==How can install the Flex SDKs?==<br />
When upgrading to or installing FDT 4.5, you'll need to make sure you have the appropriate Adobe Flex SDKs installed. Below is a video that will walk you through downloading and adding the SDKs to FDT.<br />
<br />
We also have a general [[SDK Management| SDK Management tutorial]] available as well. Check that out if you'd like to learn more about using SDKs with FDT.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=24623280|width=600|height=400}}<br />
<br />
==Can I Import or Export FDT Color Themes==<br />
FDT doesn't have official support for importing and exporting color themes. It can be done, but may require extra steps. The reason for this that color themes in Eclipse are saved within the workspace preferences - along with other preferences such as keystrokes. For now, the best is to Google 'Eclipse Color Themes'.<br />
<br />
[http://stackoverflow.com/questions/96981/color-themes-for-eclipse Here is a good link to start]<br />
<br />
==How Do I Customize Launching FDT==<br />
<br />
Check out this page to learn about [[Customizing How Projects Are Launched]]<br />
<br />
==Can I reset the default preference file in FDT==<br />
Eclipse would re-create the configuration folder with all the configuration files by deleting the configuration folder and forcing Eclipse to start up using the default settings. <br />
However, the FDTs settings are partly stored in the workspace as well as in FDTs directory. When deleting these configurations there is also a chance that the workspace will get messed up. Even if it works without problems the user will have to set up each project he had in his workspace once again. It is recommend to make a fresh installation of FDT instead, that way you are on the save side.<br />
<br />
=Using FDT=<br />
<br />
==Getting Started==<br />
We have devoted a section on our wiki to getting you running with FDT quickly.<br />
[http://fdt.powerflasher.com/docs/Main_Page#FDT_Getting_Started_Guide Check it out].<br />
<br />
== Is ActionScript 2 still supported?==<br />
While FDT4 has no longer support for AS2. You have the option to buy FDT 3.5 with AS2 support as a special bundle with FDT4 for US$99.<br />
<br />
==How can I reset the default Project Templates and Project Templates?==<br />
To reset the Project Types delete the folder projectTypes within the user-wide FDT configuration folder (/Users/username/Library/Application Support/FDT, C:\Users\username\FDT) and restart FDT.<br />
<br />
To reset the Project Templates delete the folder projectTemplates within the user-wide FDT configuration folder and restart the [http://www.fdt.powerflasher.com/developer-tools/fdt/fdt4-beta/milestone-2/fdt-4-tutorial-new-project-wizard/?L=122 New Project Wizard].<br />
<br />
==Where has the FDT Parser Preferences moved to?==<br />
Due to the new SDK Management we removed the parser settings and replaced the functionality with the FDT Compiler Preferences.<br />
<br />
==How can I define path variables for linked resources?==<br />
The preferences are now within the general workspace preferences (General - Workspace - Linked Resources). You can also click on the link within the FDT Welcome Screen to open them.<br />
<br />
==Why are there some wizards missing within Flash Explorer's '''New''' menu?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
==My profiler isn't working with FDT 4?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
<br />
==I'm having trouble using the debugger on Linux==<br />
[http://zoltanb.co.uk/how-to-set-up-flex-4-5-sdk-with-air-2-6-on-linux-using-fdt/ Please see this blog post] for more info about Adobe's SDK support for Linux and how to work with it.<br />
<br />
==I changed the project's SDK but nothing changed in my '''.as3_classpath''' file==<br />
We moved the classpath in FDT 4 Milestone 2.<br />
<br />
==How do I get rid of the FDT 3 Compatibility folder? I only want to use FDT 4!==<br />
If you don't need downward compatibility anymore you can just delete any of its files. The folder is only existing if your project contains any legacy file.<br />
<br />
==How can I use ''trace()'' with AS3?==<br />
The Flex SDK which is included in the FDT stand alone installation has to be installed.<br />
Furthermore you need the [http://www.adobe.com/support/flashplayer/downloads.html Flash Debug Player] to start your application. Please make sure that you're really using the DEBUG PLAYER.<br />
If you want to check which version of the Flash Player is installed on your system visit the [http://kb2.adobe.com/cps/155/tn_15507.html Adobe Version test].<br />
If everything is installed correctly open your main class and start your application with "Debug As... --> FDT AS3 Application" (instead of "Run As..."). Two consoles in eclipse will open one for the compiler and one for the debugger. The console for the debugger shows the output of your traces.<br />
<br />
==I'm trying to import the ''fl'' package and I get an error...==<br />
Use "compc.exe" from the FlexSDK to create an SWC library out of the following folder:<br />
<br />
'''<Adobe Flash CS3/4>\en\Configuration\Component Source\ActionScript 3.0\User Interface'''<br />
<br />
Use this SWC as linked library within your project afterwards. Alternativly you can use the folder directly as "linked library".<br />
<br />
==How can I improve FDT's performance?==<br />
To improve the FDT performance you can try the following suggestions:<br />
*Remove unused SDKs from FDT<br />
*Close unused project<br />
*Uncheck "build automatically"<br />
*Raise the memory value in eclipse.ini adding the following two lines:<br />
**Xms128m<br />
**Xmx768m<br />
<br />
Note: On a machine with only 1 gb of ram, lowering the value to 512mb will improve the performance<br />
<br />
We found also a good tip on <br />
[http://www.quora.com/FDT/If-I-have-8GB-of-RAM-whats-a-good-setting-for-the-Xms-in-eclipse-ini?q=FDT Quora]<br />
<br />
==Things Are Slow or I'm Getting Odd Errors==<br />
Try cleaning your workspace / projects and resetting the compiler.<br />
<br />
[[File:Clean.png | 200px]] [[File:Reset_compiler.png| 200px]]<br />
<br />
==I'm getting this '''ERROR 403'''...==<br />
Please check the settings of your firewall.<br />
#Preferences...<br />
#Select Install/Update<br />
#Select "Enable http proxy connection"<br />
#Insert proxy address and port<br />
#try again<br />
<br />
==When I Debug or Profile My Application, The Perspective Doesn't Change==<br />
Check out your ''Perspectives'' settings: [[File:Prespective_control.png|center|600px]] There's an option to: ''Open associated perspective when an application suspends''. Also take note that when you have ''FDT SWF Application'' selected within the ''Application Types/Launchers'' section you have the appropriate settings under ''Modes/Perspectives''.<br />
<br />
==How Do I Get FDT to Ignore Specific Files or Folders Such as .SVN==<br />
Within the Flash Explorer, there is a filter option for what types of files and folders are visible.<br />
[[File:Ignore_svn.png| 600px|center]]<br />
<br />
==Why is the ''flex.swc'' included in ''AS3'' projects==<br />
There are various reasons for this, but most notably it has to do with the use of the ''[Embed]'' metadata tag. With the use of such a tag the Flex compiler will pull in additional classes, from the ''mx'' package, to handle the asset embed.<br />
<br />
<br />
<syntaxhighlight lang="bash"><br />
[Embed(source="FDT.jpeg")]<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The use of code like the snippet above will result in the addition of classes such as ''BitmapAsset''. The tricky part is that if the classes are omitted, the compiler will not throw a compile time error. Rather it will throw a runtime error.<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16039843|width=600|height=400}}<br />
<br />
==How Can I Profile a SWF I Create Via Flash Authoring==<br />
<br />
The best way of doing this is to use one of FDT's Ant tasks. <br />
<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16632103|width=600|height=400}}<br />
<br />
==I can't Debug Android Mobile Projects==<br />
Make sure you have the <br />
<br />
'''<uses-permission android:name="android.permission.INTERNET" />''' <br />
<br />
node in your Android permissions.<br />
<br />
WIth FDT 5, this is not activated by default but will be in 5.1. See [http://bugs.powerflasher.com/jira/browse/FDT-2451 this JIRA ticket] for more info.<br />
<br />
[[File:Properties_for_Test.png|600px]]<br />
<br />
==How Do I Use The New Mobile Components In Flex 4.5 (Hero)?==<br />
# You'll first need to [http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+Hero download the new Hero SDK].<br />
# Add the Hero SDK using FDT's [[SDK Management]]<br />
# Add ''mobilecomponents.swc'' to your classpath<br />
<br />
Also see [http://www.beautifycode.com/using-flex-4-5-hero-with-fdt-4-1 this post by Marvin Blase] on using using Hero and FDT.<br />
<br />
[[File:Select_mobile.png | 600px | center]]<br />
<br />
==Can't package AIR==<br />
If you're having problems packaging your AIR applications, this error may be caused by a misconfiguration of your air release launcher. In order to package an .air file you will have to add at least the .SWF and the application discriptor to package successful. The following screenshot shows how to do so: http://screencast.com/t/T3AzRzJKn8Z<br />
<br />
==How Do I Get FDT To Ignore A File==<br />
There are various techniques to do this. Please check out this [http://bugs.powerflasher.com/jira/browse/FDT-2511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=19409#action_19409 JIRA ticket] where this issue is discussed.<br />
<br />
==How Do I Launch A haXe Project==<br />
FDT currently does not support any launchers for haXe. To run a haXe SWF or HTML, simply double the click on the file in the explorer or create your own custom launch process.<br />
<br />
==Do I need The Flex SDKs to use haXe==<br />
No. You can disable the warning asking you to install the Flex SDKs.<br />
[[File:FDT.png]]<br />
<br />
==How Do I Debug A haXe Flash Project==<br />
FDT's debugger currently does not support SWFs created in haXe.<br />
<br />
=Miscellaneous=<br />
<br />
==How Do I Know What Edition of FDT I Have installed==<br />
Go to 'Help>FDT License' and the FDT license box will appear. This will tell you the registered email, version and a preview of the key that is associated with your installation of FDT.<br />
[[File:Licence.png]]<br />
<br />
==When A Beta Is Released How Do I Download It?==<br />
<br />
Here are the URLs to download an FDT Beta:<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows64.exe<br />
<br />
Mac Cocoa 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa32.zip<br />
<br />
Mac Cocoa 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux64.tar.gz<br />
<br />
'''Important:''' please see the known issue for that release on [http://bugs.powerflasher.com/jira/browse/FDT-2006 bugs.powerflasher.com] You will have to restart FDT after setting the paths to Scala and Apparat in order to make sure the Apparat feature runs smooth.</div>Aklementhttp://fdt.powerflasher.com/docs/FAQFAQ2012-05-15T13:34:23Z<p>Aklement: /* How do I Download FDT 5? (Standalone) */</p>
<hr />
<div>=Installation And Setup=<br />
<br />
==How do I install FDT? (Standalone Version 5)==<br />
We recommend the latest standalone version.<br />
<br />
Visit this link [http://fdt.powerflasher.com/buy-download/ download] and install the latest FDT standalone version.<br />
<br />
*'''OSX:''' Download the .DMG, expand it and drag and drop it onto your desired folder.<br />
*'''Windows:''' FDT is distributed as a self extracting .ZIP file. Double click the provided archive to expand it.<br />
<br />
==How do I Download FDT 5? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win32.zip<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win64.zip<br />
<br />
Mac Carbon 32 Bit:<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx32.dmg<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx32..zip<br />
<br />
Mac Carbon 64 Bit:<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx64.dmg<br />
*http://fdt.powerflasher.com/archive/50/FDT5_osx64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux64.tar.gz<br />
<br />
==How do I Download FDT 4? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows64.exe<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux64.tar.gz<br />
<br />
==How do I install FDT? (Plugin Version 5)==<br />
The update url is: '''http://fdt.powerflasher.com/update/fdt5/'''. <br />
<br />
For detailed instructions and a video walkthrough, please [http://fdt.powerflasher.com/2011/11/fdt-plugin-released/ see this video].<br />
<br />
==How do I install FDT? (Plugin Version 4)==<br />
<br />
If you prefer to install FDT as part of your existing Eclipse 3.6+ instance, here the instructions:<br />
#Install [http://www.eclipse.org/ Eclipse]<br />
#Open Eclipse<br />
#Choose "Help->Software Updates..."<br />
#Select "Available Software" Tab and choose "Add Site..."<br />
#Insert "http://fdt.powerflasher.com/update" in Location field and confirm with OK<br />
#Please open "http://fdt.powerflasher.com/update" out of "Available Software" and select "FDT 4". The "FDT 4 Add-ons" category is optional. Depending features are only available if the corresponding plugins of third party contractors are pre-installed.<br />
#Click "Install..." to start the installation.<br />
<br />
==How do I install FDT? (Plugin Version 3.5)==<br />
<br />
Please [http://fdt.powerflasher.com/contact/ contact us] with your license information and we'll get you a link to download it.<br />
<br />
==How do I update FDT?==<br />
FDT will notify you of an update.<br />
<br />
==What are the minimal installation requirements for FDT?==<br />
FDT is officially supported under Windows, Mac OS X and Linux.<br />
To get started with FDT please also install and [http://www.fdt.powerflasher.com/download download] the FDT standalone version.<br />
<br />
==Does FDT run under Linux?==<br />
Yes ! Starting FDT4.1 release we have announced full support to Linux.<br />
<br />
Register [http://www.fdt.powerflasher.com/developer-tools/fdt/download-fdt/ here] to get your 30 days trial key and download your FDT Linux version.<br />
<br />
Please help us posting any feedback [http://bugs.powerflasher.com/jira/browse/FDT/component/10467 here] to make sure your FDT Linux development experience as confortable as possible.<br />
<br />
==Does FDT support 64bit Eclipse?==<br />
Yes, make sure to ...<br />
* [http://java.com/en/download/manual.jsp install 64 bit Java runtime] : Open this link with a 64 bit browser, download, install, restart browser and verify that the runtime is working.<br />
* [http://labs.adobe.com/downloads/flashplayer10_square.html Install 64 bit Flash Player]: On Windows you’ll need to install the one for IE only, other systems please install the “for all …” one.<br />
* Download and install [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ FDT4 64 bit version].<br />
<br />
==Can I install the standalone version of FDT identically on more than one system?==<br />
To install FDT to more than one system, there is the option to create a "Property File" of the configuration details. In that case, you would have to start your first installation of FDT with the following command:<br />
<br />
installername -f 'path to properties file'<br />
<br />
and the following with:<br />
<br />
installername -f 'properties file.'<br />
<br />
==FDT Installation fails (Unsupported major.minor version)==<br />
FDT needs at least Java 1.5 to run properly. Test your install of java [http://www.java.com/en/download/installed.jsp here].<br />
<br />
==I'm on Windows and the Plugin repository isn't working==<br />
This is a temporary issue that will be fixed soon. Until then the current workaround is:<br />
<br />
Paste the .jar files into the plugin directory of FDT, restart FDT and reset the perspective<br />
<br />
haXe Plugin: [http://www.fdt.powerflasher.com/fileadmin/plugin/haXe_FDT_plugin_alpha2.zip download]<br />
<br />
Pflection: [http://www.fdt.powerflasher.com/fileadmin/plugin/pflection_FDT_plugin.zip download]<br />
<br />
==My Startup (Splash) Screen Is The Default Eclipse Screen==<br />
When FDT is installed as a plugin, we could overwrite the default splash screen but we've decided not to. It's a best practice among the Eclipse community to not override the standalone Eclipse install in this way. This is because the user may have another Eclipse based product installed. For example, if you've downloaded the standalone version of Aptana and then install FDT as a plugin - we'd be overriding the Aptana screen with our own.<br />
<br />
== How can I Install FDT 5 As A Plugin? ==<br />
When FDT 5 was released, installation as a plugin was not supported. We recommend the stand alone version be used if possible.<br />
<br />
If it works out best for you to use the plugin version, we will soon provide a plugin option for everyone.<br />
<br />
==On First Run I only see only two menus (top bar)-"Edit" and "Window" (Linux)==<br />
Try going to Window>Customize Perspective and click 'Ok'. This may provide the proper menus scheme.<br />
<br />
For more info see these links:<br />
[http://askubuntu.com/questions/10481/how-do-i-disable-the-global-application-menu Ask Ubuntu]<br />
[http://ubuntuforums.org/showthread.php?t=1745436 Ubuntu Forums]<br />
<br />
=Upgrading And Using Licenses And FDT Discounts=<br />
<br />
==How can I upgrade my FDT 3.5 to FDT 4?==<br />
You cannot upgrade to FDT4 directly from FDT3.5. You need to [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ download] and install the FDT4 standalone version or install FDT 4 as a plugin to an Eclipse instance that doesn't had a FDT version installed before.<br />
<br />
==I'm a student. Do you offer special student licenses?==<br />
Students can buy all full versions and upgrades for 50 % of the retail price. Check out the [http://www.solutions.powerflasher.com/meta-menu/contact/ special application form].<br />
Please keep in mind that we need a copy of your student's ID which proves that you're actually enrolled at an university or school and that you are entitled to take this particularly favourable offer.<br />
<br />
==Do you support developers of open source projects?==<br />
We are very interested in encouraging projects everyone benefits from. So please let us know what you're doing and we encourage your work with the give-away of a free key for FDT 4 Max license.<br />
Follow [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/os-request/ this link] and fill out the application form. We will check out your project and get back to you as soon as possible.<br />
<br />
==Which versions should I get?==<br />
If you just started programming and want to structure your sources, you should go for '''FDT Pure'''. It provides you with a lot of cool features and will definitely shorten your development time. It's your entry into the world of professional coding.<br />
If you are already a professional and if you are used to working with professional development tools you should go for''' FDT Plus'''. A complete feature set supports you in handling your huge projects with bulky source codes and libraries. Your whole team can benefit from FDT Plus and how it simplifies your coding procedure.<br />
If you need solutions to tricky tasks and if you want to benefit from our latest achievements you should go for '''FDT Max'''. This version offers not only extended support, you can also team up with our experts to be part of well-priced training sessions, especially developed for our Professionals customers. FDT Max is for the experts among the experts!<br />
<br />
==I'm a software reseller. Are you working with resellers?==<br />
Yes we work with resellers.<br />
To get the special reseller rates please contact us via our [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/sales-contact/ Sales contact form] and provide us with all the necessary data about your company. With these information we will create your personal FDT reseller account which allows you to get the discount.<br />
<br />
=Contacting The Team For Support, Bugs, Feature Requests or Contributions=<br />
<br />
==What kind of support can I expect?==<br />
If you are a user of FDT 4 Max you can use our support form to get help within the next 24h. Please keep the following in mind: the more information we have, the easier it is for us to react quickly and satisfactory. So please give us a brief, but precise, description of your problem.<br />
<br />
http://www.fdt.powerflasher.com/developer-tools/fdt/support/<br />
<br />
==I have a feature request or I found a bug - where do I post it?==<br />
Please use our FDT Issue tracker on http://bugs.powerflasher.com<br />
<br />
Check out this [http://fdt.powerflasher.com/blog/how-to-use-jira/ tutorial] how to use JIRA.<br />
<br />
=Configuring FDT=<br />
<br />
==How can install the Flex SDKs?==<br />
When upgrading to or installing FDT 4.5, you'll need to make sure you have the appropriate Adobe Flex SDKs installed. Below is a video that will walk you through downloading and adding the SDKs to FDT.<br />
<br />
We also have a general [[SDK Management| SDK Management tutorial]] available as well. Check that out if you'd like to learn more about using SDKs with FDT.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=24623280|width=600|height=400}}<br />
<br />
==Can I Import or Export FDT Color Themes==<br />
FDT doesn't have official support for importing and exporting color themes. It can be done, but may require extra steps. The reason for this that color themes in Eclipse are saved within the workspace preferences - along with other preferences such as keystrokes. For now, the best is to Google 'Eclipse Color Themes'.<br />
<br />
[http://stackoverflow.com/questions/96981/color-themes-for-eclipse Here is a good link to start]<br />
<br />
==How Do I Customize Launching FDT==<br />
<br />
Check out this page to learn about [[Customizing How Projects Are Launched]]<br />
<br />
==Can I reset the default preference file in FDT==<br />
Eclipse would re-create the configuration folder with all the configuration files by deleting the configuration folder and forcing Eclipse to start up using the default settings. <br />
However, the FDTs settings are partly stored in the workspace as well as in FDTs directory. When deleting these configurations there is also a chance that the workspace will get messed up. Even if it works without problems the user will have to set up each project he had in his workspace once again. It is recommend to make a fresh installation of FDT instead, that way you are on the save side.<br />
<br />
=Using FDT=<br />
<br />
==Getting Started==<br />
We have devoted a section on our wiki to getting you running with FDT quickly.<br />
[http://fdt.powerflasher.com/docs/Main_Page#FDT_Getting_Started_Guide Check it out].<br />
<br />
== Is ActionScript 2 still supported?==<br />
While FDT4 has no longer support for AS2. You have the option to buy FDT 3.5 with AS2 support as a special bundle with FDT4 for US$99.<br />
<br />
==How can I reset the default Project Templates and Project Templates?==<br />
To reset the Project Types delete the folder projectTypes within the user-wide FDT configuration folder (/Users/username/Library/Application Support/FDT, C:\Users\username\FDT) and restart FDT.<br />
<br />
To reset the Project Templates delete the folder projectTemplates within the user-wide FDT configuration folder and restart the [http://www.fdt.powerflasher.com/developer-tools/fdt/fdt4-beta/milestone-2/fdt-4-tutorial-new-project-wizard/?L=122 New Project Wizard].<br />
<br />
==Where has the FDT Parser Preferences moved to?==<br />
Due to the new SDK Management we removed the parser settings and replaced the functionality with the FDT Compiler Preferences.<br />
<br />
==How can I define path variables for linked resources?==<br />
The preferences are now within the general workspace preferences (General - Workspace - Linked Resources). You can also click on the link within the FDT Welcome Screen to open them.<br />
<br />
==Why are there some wizards missing within Flash Explorer's '''New''' menu?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
==My profiler isn't working with FDT 4?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
<br />
==I'm having trouble using the debugger on Linux==<br />
[http://zoltanb.co.uk/how-to-set-up-flex-4-5-sdk-with-air-2-6-on-linux-using-fdt/ Please see this blog post] for more info about Adobe's SDK support for Linux and how to work with it.<br />
<br />
==I changed the project's SDK but nothing changed in my '''.as3_classpath''' file==<br />
We moved the classpath in FDT 4 Milestone 2.<br />
<br />
==How do I get rid of the FDT 3 Compatibility folder? I only want to use FDT 4!==<br />
If you don't need downward compatibility anymore you can just delete any of its files. The folder is only existing if your project contains any legacy file.<br />
<br />
==How can I use ''trace()'' with AS3?==<br />
The Flex SDK which is included in the FDT stand alone installation has to be installed.<br />
Furthermore you need the [http://www.adobe.com/support/flashplayer/downloads.html Flash Debug Player] to start your application. Please make sure that you're really using the DEBUG PLAYER.<br />
If you want to check which version of the Flash Player is installed on your system visit the [http://kb2.adobe.com/cps/155/tn_15507.html Adobe Version test].<br />
If everything is installed correctly open your main class and start your application with "Debug As... --> FDT AS3 Application" (instead of "Run As..."). Two consoles in eclipse will open one for the compiler and one for the debugger. The console for the debugger shows the output of your traces.<br />
<br />
==I'm trying to import the ''fl'' package and I get an error...==<br />
Use "compc.exe" from the FlexSDK to create an SWC library out of the following folder:<br />
<br />
'''<Adobe Flash CS3/4>\en\Configuration\Component Source\ActionScript 3.0\User Interface'''<br />
<br />
Use this SWC as linked library within your project afterwards. Alternativly you can use the folder directly as "linked library".<br />
<br />
==How can I improve FDT's performance?==<br />
To improve the FDT performance you can try the following suggestions:<br />
*Remove unused SDKs from FDT<br />
*Close unused project<br />
*Uncheck "build automatically"<br />
*Raise the memory value in eclipse.ini adding the following two lines:<br />
**Xms128m<br />
**Xmx768m<br />
<br />
Note: On a machine with only 1 gb of ram, lowering the value to 512mb will improve the performance<br />
<br />
We found also a good tip on <br />
[http://www.quora.com/FDT/If-I-have-8GB-of-RAM-whats-a-good-setting-for-the-Xms-in-eclipse-ini?q=FDT Quora]<br />
<br />
==Things Are Slow or I'm Getting Odd Errors==<br />
Try cleaning your workspace / projects and resetting the compiler.<br />
<br />
[[File:Clean.png | 200px]] [[File:Reset_compiler.png| 200px]]<br />
<br />
==I'm getting this '''ERROR 403'''...==<br />
Please check the settings of your firewall.<br />
#Preferences...<br />
#Select Install/Update<br />
#Select "Enable http proxy connection"<br />
#Insert proxy address and port<br />
#try again<br />
<br />
==When I Debug or Profile My Application, The Perspective Doesn't Change==<br />
Check out your ''Perspectives'' settings: [[File:Prespective_control.png|center|600px]] There's an option to: ''Open associated perspective when an application suspends''. Also take note that when you have ''FDT SWF Application'' selected within the ''Application Types/Launchers'' section you have the appropriate settings under ''Modes/Perspectives''.<br />
<br />
==How Do I Get FDT to Ignore Specific Files or Folders Such as .SVN==<br />
Within the Flash Explorer, there is a filter option for what types of files and folders are visible.<br />
[[File:Ignore_svn.png| 600px|center]]<br />
<br />
==Why is the ''flex.swc'' included in ''AS3'' projects==<br />
There are various reasons for this, but most notably it has to do with the use of the ''[Embed]'' metadata tag. With the use of such a tag the Flex compiler will pull in additional classes, from the ''mx'' package, to handle the asset embed.<br />
<br />
<br />
<syntaxhighlight lang="bash"><br />
[Embed(source="FDT.jpeg")]<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The use of code like the snippet above will result in the addition of classes such as ''BitmapAsset''. The tricky part is that if the classes are omitted, the compiler will not throw a compile time error. Rather it will throw a runtime error.<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16039843|width=600|height=400}}<br />
<br />
==How Can I Profile a SWF I Create Via Flash Authoring==<br />
<br />
The best way of doing this is to use one of FDT's Ant tasks. <br />
<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16632103|width=600|height=400}}<br />
<br />
==I can't Debug Android Mobile Projects==<br />
Make sure you have the <br />
<br />
'''<uses-permission android:name="android.permission.INTERNET" />''' <br />
<br />
node in your Android permissions.<br />
<br />
WIth FDT 5, this is not activated by default but will be in 5.1. See [http://bugs.powerflasher.com/jira/browse/FDT-2451 this JIRA ticket] for more info.<br />
<br />
[[File:Properties_for_Test.png|600px]]<br />
<br />
==How Do I Use The New Mobile Components In Flex 4.5 (Hero)?==<br />
# You'll first need to [http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+Hero download the new Hero SDK].<br />
# Add the Hero SDK using FDT's [[SDK Management]]<br />
# Add ''mobilecomponents.swc'' to your classpath<br />
<br />
Also see [http://www.beautifycode.com/using-flex-4-5-hero-with-fdt-4-1 this post by Marvin Blase] on using using Hero and FDT.<br />
<br />
[[File:Select_mobile.png | 600px | center]]<br />
<br />
==Can't package AIR==<br />
If you're having problems packaging your AIR applications, this error may be caused by a misconfiguration of your air release launcher. In order to package an .air file you will have to add at least the .SWF and the application discriptor to package successful. The following screenshot shows how to do so: http://screencast.com/t/T3AzRzJKn8Z<br />
<br />
==How Do I Get FDT To Ignore A File==<br />
There are various techniques to do this. Please check out this [http://bugs.powerflasher.com/jira/browse/FDT-2511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=19409#action_19409 JIRA ticket] where this issue is discussed.<br />
<br />
==How Do I Launch A haXe Project==<br />
FDT currently does not support any launchers for haXe. To run a haXe SWF or HTML, simply double the click on the file in the explorer or create your own custom launch process.<br />
<br />
==Do I need The Flex SDKs to use haXe==<br />
No. You can disable the warning asking you to install the Flex SDKs.<br />
[[File:FDT.png]]<br />
<br />
==How Do I Debug A haXe Flash Project==<br />
FDT's debugger currently does not support SWFs created in haXe.<br />
<br />
=Miscellaneous=<br />
<br />
==How Do I Know What Edition of FDT I Have installed==<br />
Go to 'Help>FDT License' and the FDT license box will appear. This will tell you the registered email, version and a preview of the key that is associated with your installation of FDT.<br />
[[File:Licence.png]]<br />
<br />
==When A Beta Is Released How Do I Download It?==<br />
<br />
Here are the URLs to download an FDT Beta:<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows64.exe<br />
<br />
Mac Cocoa 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa32.zip<br />
<br />
Mac Cocoa 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux64.tar.gz<br />
<br />
'''Important:''' please see the known issue for that release on [http://bugs.powerflasher.com/jira/browse/FDT-2006 bugs.powerflasher.com] You will have to restart FDT after setting the paths to Scala and Apparat in order to make sure the Apparat feature runs smooth.</div>Aklementhttp://fdt.powerflasher.com/docs/FAQFAQ2012-05-15T13:33:58Z<p>Aklement: /* How do I Download FDT 5? (Standalone) */</p>
<hr />
<div>=Installation And Setup=<br />
<br />
==How do I install FDT? (Standalone Version 5)==<br />
We recommend the latest standalone version.<br />
<br />
Visit this link [http://fdt.powerflasher.com/buy-download/ download] and install the latest FDT standalone version.<br />
<br />
*'''OSX:''' Download the .DMG, expand it and drag and drop it onto your desired folder.<br />
*'''Windows:''' FDT is distributed as a self extracting .ZIP file. Double click the provided archive to expand it.<br />
<br />
==How do I Download FDT 5? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win32.zip<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_win64.zip<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_osx32.dmg<br />
http://fdt.powerflasher.com/archive/50/FDT5_osx32..zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_osx64.dmg<br />
http://fdt.powerflasher.com/archive/50/FDT5_osx64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDT5_linux64.tar.gz<br />
<br />
==How do I Download FDT 4? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows64.exe<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux64.tar.gz<br />
<br />
==How do I install FDT? (Plugin Version 5)==<br />
The update url is: '''http://fdt.powerflasher.com/update/fdt5/'''. <br />
<br />
For detailed instructions and a video walkthrough, please [http://fdt.powerflasher.com/2011/11/fdt-plugin-released/ see this video].<br />
<br />
==How do I install FDT? (Plugin Version 4)==<br />
<br />
If you prefer to install FDT as part of your existing Eclipse 3.6+ instance, here the instructions:<br />
#Install [http://www.eclipse.org/ Eclipse]<br />
#Open Eclipse<br />
#Choose "Help->Software Updates..."<br />
#Select "Available Software" Tab and choose "Add Site..."<br />
#Insert "http://fdt.powerflasher.com/update" in Location field and confirm with OK<br />
#Please open "http://fdt.powerflasher.com/update" out of "Available Software" and select "FDT 4". The "FDT 4 Add-ons" category is optional. Depending features are only available if the corresponding plugins of third party contractors are pre-installed.<br />
#Click "Install..." to start the installation.<br />
<br />
==How do I install FDT? (Plugin Version 3.5)==<br />
<br />
Please [http://fdt.powerflasher.com/contact/ contact us] with your license information and we'll get you a link to download it.<br />
<br />
==How do I update FDT?==<br />
FDT will notify you of an update.<br />
<br />
==What are the minimal installation requirements for FDT?==<br />
FDT is officially supported under Windows, Mac OS X and Linux.<br />
To get started with FDT please also install and [http://www.fdt.powerflasher.com/download download] the FDT standalone version.<br />
<br />
==Does FDT run under Linux?==<br />
Yes ! Starting FDT4.1 release we have announced full support to Linux.<br />
<br />
Register [http://www.fdt.powerflasher.com/developer-tools/fdt/download-fdt/ here] to get your 30 days trial key and download your FDT Linux version.<br />
<br />
Please help us posting any feedback [http://bugs.powerflasher.com/jira/browse/FDT/component/10467 here] to make sure your FDT Linux development experience as confortable as possible.<br />
<br />
==Does FDT support 64bit Eclipse?==<br />
Yes, make sure to ...<br />
* [http://java.com/en/download/manual.jsp install 64 bit Java runtime] : Open this link with a 64 bit browser, download, install, restart browser and verify that the runtime is working.<br />
* [http://labs.adobe.com/downloads/flashplayer10_square.html Install 64 bit Flash Player]: On Windows you’ll need to install the one for IE only, other systems please install the “for all …” one.<br />
* Download and install [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ FDT4 64 bit version].<br />
<br />
==Can I install the standalone version of FDT identically on more than one system?==<br />
To install FDT to more than one system, there is the option to create a "Property File" of the configuration details. In that case, you would have to start your first installation of FDT with the following command:<br />
<br />
installername -f 'path to properties file'<br />
<br />
and the following with:<br />
<br />
installername -f 'properties file.'<br />
<br />
==FDT Installation fails (Unsupported major.minor version)==<br />
FDT needs at least Java 1.5 to run properly. Test your install of java [http://www.java.com/en/download/installed.jsp here].<br />
<br />
==I'm on Windows and the Plugin repository isn't working==<br />
This is a temporary issue that will be fixed soon. Until then the current workaround is:<br />
<br />
Paste the .jar files into the plugin directory of FDT, restart FDT and reset the perspective<br />
<br />
haXe Plugin: [http://www.fdt.powerflasher.com/fileadmin/plugin/haXe_FDT_plugin_alpha2.zip download]<br />
<br />
Pflection: [http://www.fdt.powerflasher.com/fileadmin/plugin/pflection_FDT_plugin.zip download]<br />
<br />
==My Startup (Splash) Screen Is The Default Eclipse Screen==<br />
When FDT is installed as a plugin, we could overwrite the default splash screen but we've decided not to. It's a best practice among the Eclipse community to not override the standalone Eclipse install in this way. This is because the user may have another Eclipse based product installed. For example, if you've downloaded the standalone version of Aptana and then install FDT as a plugin - we'd be overriding the Aptana screen with our own.<br />
<br />
== How can I Install FDT 5 As A Plugin? ==<br />
When FDT 5 was released, installation as a plugin was not supported. We recommend the stand alone version be used if possible.<br />
<br />
If it works out best for you to use the plugin version, we will soon provide a plugin option for everyone.<br />
<br />
==On First Run I only see only two menus (top bar)-"Edit" and "Window" (Linux)==<br />
Try going to Window>Customize Perspective and click 'Ok'. This may provide the proper menus scheme.<br />
<br />
For more info see these links:<br />
[http://askubuntu.com/questions/10481/how-do-i-disable-the-global-application-menu Ask Ubuntu]<br />
[http://ubuntuforums.org/showthread.php?t=1745436 Ubuntu Forums]<br />
<br />
=Upgrading And Using Licenses And FDT Discounts=<br />
<br />
==How can I upgrade my FDT 3.5 to FDT 4?==<br />
You cannot upgrade to FDT4 directly from FDT3.5. You need to [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ download] and install the FDT4 standalone version or install FDT 4 as a plugin to an Eclipse instance that doesn't had a FDT version installed before.<br />
<br />
==I'm a student. Do you offer special student licenses?==<br />
Students can buy all full versions and upgrades for 50 % of the retail price. Check out the [http://www.solutions.powerflasher.com/meta-menu/contact/ special application form].<br />
Please keep in mind that we need a copy of your student's ID which proves that you're actually enrolled at an university or school and that you are entitled to take this particularly favourable offer.<br />
<br />
==Do you support developers of open source projects?==<br />
We are very interested in encouraging projects everyone benefits from. So please let us know what you're doing and we encourage your work with the give-away of a free key for FDT 4 Max license.<br />
Follow [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/os-request/ this link] and fill out the application form. We will check out your project and get back to you as soon as possible.<br />
<br />
==Which versions should I get?==<br />
If you just started programming and want to structure your sources, you should go for '''FDT Pure'''. It provides you with a lot of cool features and will definitely shorten your development time. It's your entry into the world of professional coding.<br />
If you are already a professional and if you are used to working with professional development tools you should go for''' FDT Plus'''. A complete feature set supports you in handling your huge projects with bulky source codes and libraries. Your whole team can benefit from FDT Plus and how it simplifies your coding procedure.<br />
If you need solutions to tricky tasks and if you want to benefit from our latest achievements you should go for '''FDT Max'''. This version offers not only extended support, you can also team up with our experts to be part of well-priced training sessions, especially developed for our Professionals customers. FDT Max is for the experts among the experts!<br />
<br />
==I'm a software reseller. Are you working with resellers?==<br />
Yes we work with resellers.<br />
To get the special reseller rates please contact us via our [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/sales-contact/ Sales contact form] and provide us with all the necessary data about your company. With these information we will create your personal FDT reseller account which allows you to get the discount.<br />
<br />
=Contacting The Team For Support, Bugs, Feature Requests or Contributions=<br />
<br />
==What kind of support can I expect?==<br />
If you are a user of FDT 4 Max you can use our support form to get help within the next 24h. Please keep the following in mind: the more information we have, the easier it is for us to react quickly and satisfactory. So please give us a brief, but precise, description of your problem.<br />
<br />
http://www.fdt.powerflasher.com/developer-tools/fdt/support/<br />
<br />
==I have a feature request or I found a bug - where do I post it?==<br />
Please use our FDT Issue tracker on http://bugs.powerflasher.com<br />
<br />
Check out this [http://fdt.powerflasher.com/blog/how-to-use-jira/ tutorial] how to use JIRA.<br />
<br />
=Configuring FDT=<br />
<br />
==How can install the Flex SDKs?==<br />
When upgrading to or installing FDT 4.5, you'll need to make sure you have the appropriate Adobe Flex SDKs installed. Below is a video that will walk you through downloading and adding the SDKs to FDT.<br />
<br />
We also have a general [[SDK Management| SDK Management tutorial]] available as well. Check that out if you'd like to learn more about using SDKs with FDT.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=24623280|width=600|height=400}}<br />
<br />
==Can I Import or Export FDT Color Themes==<br />
FDT doesn't have official support for importing and exporting color themes. It can be done, but may require extra steps. The reason for this that color themes in Eclipse are saved within the workspace preferences - along with other preferences such as keystrokes. For now, the best is to Google 'Eclipse Color Themes'.<br />
<br />
[http://stackoverflow.com/questions/96981/color-themes-for-eclipse Here is a good link to start]<br />
<br />
==How Do I Customize Launching FDT==<br />
<br />
Check out this page to learn about [[Customizing How Projects Are Launched]]<br />
<br />
==Can I reset the default preference file in FDT==<br />
Eclipse would re-create the configuration folder with all the configuration files by deleting the configuration folder and forcing Eclipse to start up using the default settings. <br />
However, the FDTs settings are partly stored in the workspace as well as in FDTs directory. When deleting these configurations there is also a chance that the workspace will get messed up. Even if it works without problems the user will have to set up each project he had in his workspace once again. It is recommend to make a fresh installation of FDT instead, that way you are on the save side.<br />
<br />
=Using FDT=<br />
<br />
==Getting Started==<br />
We have devoted a section on our wiki to getting you running with FDT quickly.<br />
[http://fdt.powerflasher.com/docs/Main_Page#FDT_Getting_Started_Guide Check it out].<br />
<br />
== Is ActionScript 2 still supported?==<br />
While FDT4 has no longer support for AS2. You have the option to buy FDT 3.5 with AS2 support as a special bundle with FDT4 for US$99.<br />
<br />
==How can I reset the default Project Templates and Project Templates?==<br />
To reset the Project Types delete the folder projectTypes within the user-wide FDT configuration folder (/Users/username/Library/Application Support/FDT, C:\Users\username\FDT) and restart FDT.<br />
<br />
To reset the Project Templates delete the folder projectTemplates within the user-wide FDT configuration folder and restart the [http://www.fdt.powerflasher.com/developer-tools/fdt/fdt4-beta/milestone-2/fdt-4-tutorial-new-project-wizard/?L=122 New Project Wizard].<br />
<br />
==Where has the FDT Parser Preferences moved to?==<br />
Due to the new SDK Management we removed the parser settings and replaced the functionality with the FDT Compiler Preferences.<br />
<br />
==How can I define path variables for linked resources?==<br />
The preferences are now within the general workspace preferences (General - Workspace - Linked Resources). You can also click on the link within the FDT Welcome Screen to open them.<br />
<br />
==Why are there some wizards missing within Flash Explorer's '''New''' menu?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
==My profiler isn't working with FDT 4?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
<br />
==I'm having trouble using the debugger on Linux==<br />
[http://zoltanb.co.uk/how-to-set-up-flex-4-5-sdk-with-air-2-6-on-linux-using-fdt/ Please see this blog post] for more info about Adobe's SDK support for Linux and how to work with it.<br />
<br />
==I changed the project's SDK but nothing changed in my '''.as3_classpath''' file==<br />
We moved the classpath in FDT 4 Milestone 2.<br />
<br />
==How do I get rid of the FDT 3 Compatibility folder? I only want to use FDT 4!==<br />
If you don't need downward compatibility anymore you can just delete any of its files. The folder is only existing if your project contains any legacy file.<br />
<br />
==How can I use ''trace()'' with AS3?==<br />
The Flex SDK which is included in the FDT stand alone installation has to be installed.<br />
Furthermore you need the [http://www.adobe.com/support/flashplayer/downloads.html Flash Debug Player] to start your application. Please make sure that you're really using the DEBUG PLAYER.<br />
If you want to check which version of the Flash Player is installed on your system visit the [http://kb2.adobe.com/cps/155/tn_15507.html Adobe Version test].<br />
If everything is installed correctly open your main class and start your application with "Debug As... --> FDT AS3 Application" (instead of "Run As..."). Two consoles in eclipse will open one for the compiler and one for the debugger. The console for the debugger shows the output of your traces.<br />
<br />
==I'm trying to import the ''fl'' package and I get an error...==<br />
Use "compc.exe" from the FlexSDK to create an SWC library out of the following folder:<br />
<br />
'''<Adobe Flash CS3/4>\en\Configuration\Component Source\ActionScript 3.0\User Interface'''<br />
<br />
Use this SWC as linked library within your project afterwards. Alternativly you can use the folder directly as "linked library".<br />
<br />
==How can I improve FDT's performance?==<br />
To improve the FDT performance you can try the following suggestions:<br />
*Remove unused SDKs from FDT<br />
*Close unused project<br />
*Uncheck "build automatically"<br />
*Raise the memory value in eclipse.ini adding the following two lines:<br />
**Xms128m<br />
**Xmx768m<br />
<br />
Note: On a machine with only 1 gb of ram, lowering the value to 512mb will improve the performance<br />
<br />
We found also a good tip on <br />
[http://www.quora.com/FDT/If-I-have-8GB-of-RAM-whats-a-good-setting-for-the-Xms-in-eclipse-ini?q=FDT Quora]<br />
<br />
==Things Are Slow or I'm Getting Odd Errors==<br />
Try cleaning your workspace / projects and resetting the compiler.<br />
<br />
[[File:Clean.png | 200px]] [[File:Reset_compiler.png| 200px]]<br />
<br />
==I'm getting this '''ERROR 403'''...==<br />
Please check the settings of your firewall.<br />
#Preferences...<br />
#Select Install/Update<br />
#Select "Enable http proxy connection"<br />
#Insert proxy address and port<br />
#try again<br />
<br />
==When I Debug or Profile My Application, The Perspective Doesn't Change==<br />
Check out your ''Perspectives'' settings: [[File:Prespective_control.png|center|600px]] There's an option to: ''Open associated perspective when an application suspends''. Also take note that when you have ''FDT SWF Application'' selected within the ''Application Types/Launchers'' section you have the appropriate settings under ''Modes/Perspectives''.<br />
<br />
==How Do I Get FDT to Ignore Specific Files or Folders Such as .SVN==<br />
Within the Flash Explorer, there is a filter option for what types of files and folders are visible.<br />
[[File:Ignore_svn.png| 600px|center]]<br />
<br />
==Why is the ''flex.swc'' included in ''AS3'' projects==<br />
There are various reasons for this, but most notably it has to do with the use of the ''[Embed]'' metadata tag. With the use of such a tag the Flex compiler will pull in additional classes, from the ''mx'' package, to handle the asset embed.<br />
<br />
<br />
<syntaxhighlight lang="bash"><br />
[Embed(source="FDT.jpeg")]<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The use of code like the snippet above will result in the addition of classes such as ''BitmapAsset''. The tricky part is that if the classes are omitted, the compiler will not throw a compile time error. Rather it will throw a runtime error.<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16039843|width=600|height=400}}<br />
<br />
==How Can I Profile a SWF I Create Via Flash Authoring==<br />
<br />
The best way of doing this is to use one of FDT's Ant tasks. <br />
<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16632103|width=600|height=400}}<br />
<br />
==I can't Debug Android Mobile Projects==<br />
Make sure you have the <br />
<br />
'''<uses-permission android:name="android.permission.INTERNET" />''' <br />
<br />
node in your Android permissions.<br />
<br />
WIth FDT 5, this is not activated by default but will be in 5.1. See [http://bugs.powerflasher.com/jira/browse/FDT-2451 this JIRA ticket] for more info.<br />
<br />
[[File:Properties_for_Test.png|600px]]<br />
<br />
==How Do I Use The New Mobile Components In Flex 4.5 (Hero)?==<br />
# You'll first need to [http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+Hero download the new Hero SDK].<br />
# Add the Hero SDK using FDT's [[SDK Management]]<br />
# Add ''mobilecomponents.swc'' to your classpath<br />
<br />
Also see [http://www.beautifycode.com/using-flex-4-5-hero-with-fdt-4-1 this post by Marvin Blase] on using using Hero and FDT.<br />
<br />
[[File:Select_mobile.png | 600px | center]]<br />
<br />
==Can't package AIR==<br />
If you're having problems packaging your AIR applications, this error may be caused by a misconfiguration of your air release launcher. In order to package an .air file you will have to add at least the .SWF and the application discriptor to package successful. The following screenshot shows how to do so: http://screencast.com/t/T3AzRzJKn8Z<br />
<br />
==How Do I Get FDT To Ignore A File==<br />
There are various techniques to do this. Please check out this [http://bugs.powerflasher.com/jira/browse/FDT-2511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=19409#action_19409 JIRA ticket] where this issue is discussed.<br />
<br />
==How Do I Launch A haXe Project==<br />
FDT currently does not support any launchers for haXe. To run a haXe SWF or HTML, simply double the click on the file in the explorer or create your own custom launch process.<br />
<br />
==Do I need The Flex SDKs to use haXe==<br />
No. You can disable the warning asking you to install the Flex SDKs.<br />
[[File:FDT.png]]<br />
<br />
==How Do I Debug A haXe Flash Project==<br />
FDT's debugger currently does not support SWFs created in haXe.<br />
<br />
=Miscellaneous=<br />
<br />
==How Do I Know What Edition of FDT I Have installed==<br />
Go to 'Help>FDT License' and the FDT license box will appear. This will tell you the registered email, version and a preview of the key that is associated with your installation of FDT.<br />
[[File:Licence.png]]<br />
<br />
==When A Beta Is Released How Do I Download It?==<br />
<br />
Here are the URLs to download an FDT Beta:<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows64.exe<br />
<br />
Mac Cocoa 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa32.zip<br />
<br />
Mac Cocoa 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux64.tar.gz<br />
<br />
'''Important:''' please see the known issue for that release on [http://bugs.powerflasher.com/jira/browse/FDT-2006 bugs.powerflasher.com] You will have to restart FDT after setting the paths to Scala and Apparat in order to make sure the Apparat feature runs smooth.</div>Aklementhttp://fdt.powerflasher.com/docs/FAQFAQ2012-05-15T12:43:45Z<p>Aklement: /* How do I install FDT? (Standalone Version 5) */</p>
<hr />
<div>=Installation And Setup=<br />
<br />
==How do I install FDT? (Standalone Version 5)==<br />
We recommend the latest standalone version.<br />
<br />
Visit this link [http://fdt.powerflasher.com/buy-download/ download] and install the latest FDT standalone version.<br />
<br />
*'''OSX:''' Download the .DMG, expand it and drag and drop it onto your desired folder.<br />
*'''Windows:''' FDT is distributed as a self extracting .ZIP file. Double click the provided archive to expand it.<br />
<br />
==How do I Download FDT 5? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDTWindows64.exe<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDTMacCocoa32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/archive/50/FDTLinux64.tar.gz<br />
<br />
==How do I Download FDT 4? (Standalone)==<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTWindows64.exe<br />
<br />
Mac Carbon 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa32.zip<br />
<br />
Mac Carbon 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update/installer/FDTLinux64.tar.gz<br />
<br />
==How do I install FDT? (Plugin Version 5)==<br />
The update url is: '''http://fdt.powerflasher.com/update/fdt5/'''. <br />
<br />
For detailed instructions and a video walkthrough, please [http://fdt.powerflasher.com/2011/11/fdt-plugin-released/ see this video].<br />
<br />
==How do I install FDT? (Plugin Version 4)==<br />
<br />
If you prefer to install FDT as part of your existing Eclipse 3.6+ instance, here the instructions:<br />
#Install [http://www.eclipse.org/ Eclipse]<br />
#Open Eclipse<br />
#Choose "Help->Software Updates..."<br />
#Select "Available Software" Tab and choose "Add Site..."<br />
#Insert "http://fdt.powerflasher.com/update" in Location field and confirm with OK<br />
#Please open "http://fdt.powerflasher.com/update" out of "Available Software" and select "FDT 4". The "FDT 4 Add-ons" category is optional. Depending features are only available if the corresponding plugins of third party contractors are pre-installed.<br />
#Click "Install..." to start the installation.<br />
<br />
==How do I install FDT? (Plugin Version 3.5)==<br />
<br />
Please [http://fdt.powerflasher.com/contact/ contact us] with your license information and we'll get you a link to download it.<br />
<br />
==How do I update FDT?==<br />
FDT will notify you of an update.<br />
<br />
==What are the minimal installation requirements for FDT?==<br />
FDT is officially supported under Windows, Mac OS X and Linux.<br />
To get started with FDT please also install and [http://www.fdt.powerflasher.com/download download] the FDT standalone version.<br />
<br />
==Does FDT run under Linux?==<br />
Yes ! Starting FDT4.1 release we have announced full support to Linux.<br />
<br />
Register [http://www.fdt.powerflasher.com/developer-tools/fdt/download-fdt/ here] to get your 30 days trial key and download your FDT Linux version.<br />
<br />
Please help us posting any feedback [http://bugs.powerflasher.com/jira/browse/FDT/component/10467 here] to make sure your FDT Linux development experience as confortable as possible.<br />
<br />
==Does FDT support 64bit Eclipse?==<br />
Yes, make sure to ...<br />
* [http://java.com/en/download/manual.jsp install 64 bit Java runtime] : Open this link with a 64 bit browser, download, install, restart browser and verify that the runtime is working.<br />
* [http://labs.adobe.com/downloads/flashplayer10_square.html Install 64 bit Flash Player]: On Windows you’ll need to install the one for IE only, other systems please install the “for all …” one.<br />
* Download and install [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ FDT4 64 bit version].<br />
<br />
==Can I install the standalone version of FDT identically on more than one system?==<br />
To install FDT to more than one system, there is the option to create a "Property File" of the configuration details. In that case, you would have to start your first installation of FDT with the following command:<br />
<br />
installername -f 'path to properties file'<br />
<br />
and the following with:<br />
<br />
installername -f 'properties file.'<br />
<br />
==FDT Installation fails (Unsupported major.minor version)==<br />
FDT needs at least Java 1.5 to run properly. Test your install of java [http://www.java.com/en/download/installed.jsp here].<br />
<br />
==I'm on Windows and the Plugin repository isn't working==<br />
This is a temporary issue that will be fixed soon. Until then the current workaround is:<br />
<br />
Paste the .jar files into the plugin directory of FDT, restart FDT and reset the perspective<br />
<br />
haXe Plugin: [http://www.fdt.powerflasher.com/fileadmin/plugin/haXe_FDT_plugin_alpha2.zip download]<br />
<br />
Pflection: [http://www.fdt.powerflasher.com/fileadmin/plugin/pflection_FDT_plugin.zip download]<br />
<br />
==My Startup (Splash) Screen Is The Default Eclipse Screen==<br />
When FDT is installed as a plugin, we could overwrite the default splash screen but we've decided not to. It's a best practice among the Eclipse community to not override the standalone Eclipse install in this way. This is because the user may have another Eclipse based product installed. For example, if you've downloaded the standalone version of Aptana and then install FDT as a plugin - we'd be overriding the Aptana screen with our own.<br />
<br />
== How can I Install FDT 5 As A Plugin? ==<br />
When FDT 5 was released, installation as a plugin was not supported. We recommend the stand alone version be used if possible.<br />
<br />
If it works out best for you to use the plugin version, we will soon provide a plugin option for everyone.<br />
<br />
==On First Run I only see only two menus (top bar)-"Edit" and "Window" (Linux)==<br />
Try going to Window>Customize Perspective and click 'Ok'. This may provide the proper menus scheme.<br />
<br />
For more info see these links:<br />
[http://askubuntu.com/questions/10481/how-do-i-disable-the-global-application-menu Ask Ubuntu]<br />
[http://ubuntuforums.org/showthread.php?t=1745436 Ubuntu Forums]<br />
<br />
=Upgrading And Using Licenses And FDT Discounts=<br />
<br />
==How can I upgrade my FDT 3.5 to FDT 4?==<br />
You cannot upgrade to FDT4 directly from FDT3.5. You need to [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ download] and install the FDT4 standalone version or install FDT 4 as a plugin to an Eclipse instance that doesn't had a FDT version installed before.<br />
<br />
==I'm a student. Do you offer special student licenses?==<br />
Students can buy all full versions and upgrades for 50 % of the retail price. Check out the [http://www.solutions.powerflasher.com/meta-menu/contact/ special application form].<br />
Please keep in mind that we need a copy of your student's ID which proves that you're actually enrolled at an university or school and that you are entitled to take this particularly favourable offer.<br />
<br />
==Do you support developers of open source projects?==<br />
We are very interested in encouraging projects everyone benefits from. So please let us know what you're doing and we encourage your work with the give-away of a free key for FDT 4 Max license.<br />
Follow [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/os-request/ this link] and fill out the application form. We will check out your project and get back to you as soon as possible.<br />
<br />
==Which versions should I get?==<br />
If you just started programming and want to structure your sources, you should go for '''FDT Pure'''. It provides you with a lot of cool features and will definitely shorten your development time. It's your entry into the world of professional coding.<br />
If you are already a professional and if you are used to working with professional development tools you should go for''' FDT Plus'''. A complete feature set supports you in handling your huge projects with bulky source codes and libraries. Your whole team can benefit from FDT Plus and how it simplifies your coding procedure.<br />
If you need solutions to tricky tasks and if you want to benefit from our latest achievements you should go for '''FDT Max'''. This version offers not only extended support, you can also team up with our experts to be part of well-priced training sessions, especially developed for our Professionals customers. FDT Max is for the experts among the experts!<br />
<br />
==I'm a software reseller. Are you working with resellers?==<br />
Yes we work with resellers.<br />
To get the special reseller rates please contact us via our [http://www.fdt.powerflasher.com/developer-tools/fdt/meta-content/sales-contact/ Sales contact form] and provide us with all the necessary data about your company. With these information we will create your personal FDT reseller account which allows you to get the discount.<br />
<br />
=Contacting The Team For Support, Bugs, Feature Requests or Contributions=<br />
<br />
==What kind of support can I expect?==<br />
If you are a user of FDT 4 Max you can use our support form to get help within the next 24h. Please keep the following in mind: the more information we have, the easier it is for us to react quickly and satisfactory. So please give us a brief, but precise, description of your problem.<br />
<br />
http://www.fdt.powerflasher.com/developer-tools/fdt/support/<br />
<br />
==I have a feature request or I found a bug - where do I post it?==<br />
Please use our FDT Issue tracker on http://bugs.powerflasher.com<br />
<br />
Check out this [http://fdt.powerflasher.com/blog/how-to-use-jira/ tutorial] how to use JIRA.<br />
<br />
=Configuring FDT=<br />
<br />
==How can install the Flex SDKs?==<br />
When upgrading to or installing FDT 4.5, you'll need to make sure you have the appropriate Adobe Flex SDKs installed. Below is a video that will walk you through downloading and adding the SDKs to FDT.<br />
<br />
We also have a general [[SDK Management| SDK Management tutorial]] available as well. Check that out if you'd like to learn more about using SDKs with FDT.<br />
<br />
= <center>Video</center> =<br />
{{#widget:Vimeo|id=24623280|width=600|height=400}}<br />
<br />
==Can I Import or Export FDT Color Themes==<br />
FDT doesn't have official support for importing and exporting color themes. It can be done, but may require extra steps. The reason for this that color themes in Eclipse are saved within the workspace preferences - along with other preferences such as keystrokes. For now, the best is to Google 'Eclipse Color Themes'.<br />
<br />
[http://stackoverflow.com/questions/96981/color-themes-for-eclipse Here is a good link to start]<br />
<br />
==How Do I Customize Launching FDT==<br />
<br />
Check out this page to learn about [[Customizing How Projects Are Launched]]<br />
<br />
==Can I reset the default preference file in FDT==<br />
Eclipse would re-create the configuration folder with all the configuration files by deleting the configuration folder and forcing Eclipse to start up using the default settings. <br />
However, the FDTs settings are partly stored in the workspace as well as in FDTs directory. When deleting these configurations there is also a chance that the workspace will get messed up. Even if it works without problems the user will have to set up each project he had in his workspace once again. It is recommend to make a fresh installation of FDT instead, that way you are on the save side.<br />
<br />
=Using FDT=<br />
<br />
==Getting Started==<br />
We have devoted a section on our wiki to getting you running with FDT quickly.<br />
[http://fdt.powerflasher.com/docs/Main_Page#FDT_Getting_Started_Guide Check it out].<br />
<br />
== Is ActionScript 2 still supported?==<br />
While FDT4 has no longer support for AS2. You have the option to buy FDT 3.5 with AS2 support as a special bundle with FDT4 for US$99.<br />
<br />
==How can I reset the default Project Templates and Project Templates?==<br />
To reset the Project Types delete the folder projectTypes within the user-wide FDT configuration folder (/Users/username/Library/Application Support/FDT, C:\Users\username\FDT) and restart FDT.<br />
<br />
To reset the Project Templates delete the folder projectTemplates within the user-wide FDT configuration folder and restart the [http://www.fdt.powerflasher.com/developer-tools/fdt/fdt4-beta/milestone-2/fdt-4-tutorial-new-project-wizard/?L=122 New Project Wizard].<br />
<br />
==Where has the FDT Parser Preferences moved to?==<br />
Due to the new SDK Management we removed the parser settings and replaced the functionality with the FDT Compiler Preferences.<br />
<br />
==How can I define path variables for linked resources?==<br />
The preferences are now within the general workspace preferences (General - Workspace - Linked Resources). You can also click on the link within the FDT Welcome Screen to open them.<br />
<br />
==Why are there some wizards missing within Flash Explorer's '''New''' menu?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
==My profiler isn't working with FDT 4?==<br />
Please reset the FDT Perspective to refresh all entries. (Window - Reset Perspective...)<br />
<br />
<br />
==I'm having trouble using the debugger on Linux==<br />
[http://zoltanb.co.uk/how-to-set-up-flex-4-5-sdk-with-air-2-6-on-linux-using-fdt/ Please see this blog post] for more info about Adobe's SDK support for Linux and how to work with it.<br />
<br />
==I changed the project's SDK but nothing changed in my '''.as3_classpath''' file==<br />
We moved the classpath in FDT 4 Milestone 2.<br />
<br />
==How do I get rid of the FDT 3 Compatibility folder? I only want to use FDT 4!==<br />
If you don't need downward compatibility anymore you can just delete any of its files. The folder is only existing if your project contains any legacy file.<br />
<br />
==How can I use ''trace()'' with AS3?==<br />
The Flex SDK which is included in the FDT stand alone installation has to be installed.<br />
Furthermore you need the [http://www.adobe.com/support/flashplayer/downloads.html Flash Debug Player] to start your application. Please make sure that you're really using the DEBUG PLAYER.<br />
If you want to check which version of the Flash Player is installed on your system visit the [http://kb2.adobe.com/cps/155/tn_15507.html Adobe Version test].<br />
If everything is installed correctly open your main class and start your application with "Debug As... --> FDT AS3 Application" (instead of "Run As..."). Two consoles in eclipse will open one for the compiler and one for the debugger. The console for the debugger shows the output of your traces.<br />
<br />
==I'm trying to import the ''fl'' package and I get an error...==<br />
Use "compc.exe" from the FlexSDK to create an SWC library out of the following folder:<br />
<br />
'''<Adobe Flash CS3/4>\en\Configuration\Component Source\ActionScript 3.0\User Interface'''<br />
<br />
Use this SWC as linked library within your project afterwards. Alternativly you can use the folder directly as "linked library".<br />
<br />
==How can I improve FDT's performance?==<br />
To improve the FDT performance you can try the following suggestions:<br />
*Remove unused SDKs from FDT<br />
*Close unused project<br />
*Uncheck "build automatically"<br />
*Raise the memory value in eclipse.ini adding the following two lines:<br />
**Xms128m<br />
**Xmx768m<br />
<br />
Note: On a machine with only 1 gb of ram, lowering the value to 512mb will improve the performance<br />
<br />
We found also a good tip on <br />
[http://www.quora.com/FDT/If-I-have-8GB-of-RAM-whats-a-good-setting-for-the-Xms-in-eclipse-ini?q=FDT Quora]<br />
<br />
==Things Are Slow or I'm Getting Odd Errors==<br />
Try cleaning your workspace / projects and resetting the compiler.<br />
<br />
[[File:Clean.png | 200px]] [[File:Reset_compiler.png| 200px]]<br />
<br />
==I'm getting this '''ERROR 403'''...==<br />
Please check the settings of your firewall.<br />
#Preferences...<br />
#Select Install/Update<br />
#Select "Enable http proxy connection"<br />
#Insert proxy address and port<br />
#try again<br />
<br />
==When I Debug or Profile My Application, The Perspective Doesn't Change==<br />
Check out your ''Perspectives'' settings: [[File:Prespective_control.png|center|600px]] There's an option to: ''Open associated perspective when an application suspends''. Also take note that when you have ''FDT SWF Application'' selected within the ''Application Types/Launchers'' section you have the appropriate settings under ''Modes/Perspectives''.<br />
<br />
==How Do I Get FDT to Ignore Specific Files or Folders Such as .SVN==<br />
Within the Flash Explorer, there is a filter option for what types of files and folders are visible.<br />
[[File:Ignore_svn.png| 600px|center]]<br />
<br />
==Why is the ''flex.swc'' included in ''AS3'' projects==<br />
There are various reasons for this, but most notably it has to do with the use of the ''[Embed]'' metadata tag. With the use of such a tag the Flex compiler will pull in additional classes, from the ''mx'' package, to handle the asset embed.<br />
<br />
<br />
<syntaxhighlight lang="bash"><br />
[Embed(source="FDT.jpeg")]<br />
</syntaxhighlight><br />
<br />
<br />
<br />
The use of code like the snippet above will result in the addition of classes such as ''BitmapAsset''. The tricky part is that if the classes are omitted, the compiler will not throw a compile time error. Rather it will throw a runtime error.<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16039843|width=600|height=400}}<br />
<br />
==How Can I Profile a SWF I Create Via Flash Authoring==<br />
<br />
The best way of doing this is to use one of FDT's Ant tasks. <br />
<br />
<br />
Check this video tutorial:<br />
<br />
{{#widget:Vimeo|id=16632103|width=600|height=400}}<br />
<br />
==I can't Debug Android Mobile Projects==<br />
Make sure you have the <br />
<br />
'''<uses-permission android:name="android.permission.INTERNET" />''' <br />
<br />
node in your Android permissions.<br />
<br />
WIth FDT 5, this is not activated by default but will be in 5.1. See [http://bugs.powerflasher.com/jira/browse/FDT-2451 this JIRA ticket] for more info.<br />
<br />
[[File:Properties_for_Test.png|600px]]<br />
<br />
==How Do I Use The New Mobile Components In Flex 4.5 (Hero)?==<br />
# You'll first need to [http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+Hero download the new Hero SDK].<br />
# Add the Hero SDK using FDT's [[SDK Management]]<br />
# Add ''mobilecomponents.swc'' to your classpath<br />
<br />
Also see [http://www.beautifycode.com/using-flex-4-5-hero-with-fdt-4-1 this post by Marvin Blase] on using using Hero and FDT.<br />
<br />
[[File:Select_mobile.png | 600px | center]]<br />
<br />
==Can't package AIR==<br />
If you're having problems packaging your AIR applications, this error may be caused by a misconfiguration of your air release launcher. In order to package an .air file you will have to add at least the .SWF and the application discriptor to package successful. The following screenshot shows how to do so: http://screencast.com/t/T3AzRzJKn8Z<br />
<br />
==How Do I Get FDT To Ignore A File==<br />
There are various techniques to do this. Please check out this [http://bugs.powerflasher.com/jira/browse/FDT-2511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=19409#action_19409 JIRA ticket] where this issue is discussed.<br />
<br />
==How Do I Launch A haXe Project==<br />
FDT currently does not support any launchers for haXe. To run a haXe SWF or HTML, simply double the click on the file in the explorer or create your own custom launch process.<br />
<br />
==Do I need The Flex SDKs to use haXe==<br />
No. You can disable the warning asking you to install the Flex SDKs.<br />
[[File:FDT.png]]<br />
<br />
==How Do I Debug A haXe Flash Project==<br />
FDT's debugger currently does not support SWFs created in haXe.<br />
<br />
=Miscellaneous=<br />
<br />
==How Do I Know What Edition of FDT I Have installed==<br />
Go to 'Help>FDT License' and the FDT license box will appear. This will tell you the registered email, version and a preview of the key that is associated with your installation of FDT.<br />
[[File:Licence.png]]<br />
<br />
==When A Beta Is Released How Do I Download It?==<br />
<br />
Here are the URLs to download an FDT Beta:<br />
<br />
Windows 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows32.exe<br />
<br />
Windows 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTWindows64.exe<br />
<br />
Mac Cocoa 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa32.zip<br />
<br />
Mac Cocoa 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTMacCocoa64.zip<br />
<br />
Linux 32 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux32.tar.gz<br />
<br />
Linux 64 Bit:<br />
http://fdt.powerflasher.com/update_beta/installer/FDTLinux64.tar.gz<br />
<br />
'''Important:''' please see the known issue for that release on [http://bugs.powerflasher.com/jira/browse/FDT-2006 bugs.powerflasher.com] You will have to restart FDT after setting the paths to Scala and Apparat in order to make sure the Apparat feature runs smooth.</div>Aklementhttp://fdt.powerflasher.com/docs/Main_PageMain Page2012-05-09T17:36:17Z<p>Aklement: /* SWFBridge */</p>
<hr />
<div>[[File:Text_icon.png|30px|link=]] means the tutorial is written <br /><br />
[[File:Videoicon.png|30px|link=]] means the tutorial has video <br /><br />
[[File:Download_arrow.png|30px|link=]] means the tutorial has example files to download <br /><br />
<br />
= FDT Getting Started Guide =<br />
<br />
Michael Plank, from [http://www.pro3games.com/ pro3dgames], has written a great tutorial on activetuts. <br />
[http://active.tutsplus.com/tutorials/workflow/beginners-guide-to-powerflashers-fdt-4/ Check it out here].<br />
<br />
<br />
<br />
These short guides will lead you through the installation and will introduce you to some of the highly efficient and time-saving features and the basic structure of the FDT work environment.<br />
<br />
==Quick Fixes and Quick Assists==<br />
Our [http://fdt.powerflasher.com/blog/fdt-video-gallery/ Videos] page has all our Quick Fixes and Quick Assists in video format. A great place to learn about FDT's most popular and powerful features.<br />
<br />
==Tutorials==<br />
*[[Installing and Running FDT]]<br />
*[[Basic AS3 Tutorial]]<br />
*[[Writing Code With FDT]]<br />
*[[Navigating Your Code and FDT's Workspace]]<br />
<br />
==Shortcuts==<br />
Forget the mouse! The FDT shortcuts are one of the most important techniques to increase coding efficiency. Here is a cheat sheet of the most popular shortcuts for quick reference<br />
*[[FDT Shortcuts| Learn about FDT's shortcuts.]]<br />
<br />
==FAQ==<br />
If you're confused or having a problem getting yourself going. Check out our FAQ.<br />
<br />
*[[FAQ | Installing & Using FDT FAQ]]<br />
*[[FDT Marketing FAQ | FDT Marketing FAQ]]<br />
<br />
= Videos =<br />
We're always adding new videos of tutorials, FDT's features, workflows and new ways of using FDT.<br />
Check out our [http://fdt.powerflasher.com/blog/fdt-video-gallery Videos] page.<br />
<br />
= Flash Tutorials (FDT 4 & 5)=<br />
== Installing And Running FDT ==<br />
If you haven't installed FDT, or are having trouble getting FDT to install or launch, check out this tutorial. We'll make sure you have Java installed and walk you through downloading and installing FDT on Windows and OSX. <br />
<br />
*[[Installing and Running FDT| Continue to the Installing and Running FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Basic AS3 Tutorial ==<br />
Learn the basics of creating, building and compiling your first FDT project. You'll use the Project Wizard to create a project, then create your first Class and compile and view your application. <br />
<br />
*[[Basic AS3 Tutorial | Continue to the Basic AS3 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Flex / AIR Tutorial ==<br />
See how quickly you can code and run an AIR application with the Flex framework. Similar to the [[Basic AS3 Tutorial]], you'll go a little further by adjusting compiler options and being introduced to some of FDT's Smart Editor features. <br />
<br />
*[[Flex / Air Tutorial | Continue to the Flex / Air Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Writing Code With FDT ==<br />
FDT is packed with features designed to help developers write code efficiently and quickly. This walkthrough will go through many, but not all, of the most popular Smart Editor features. <br />
<br />
*[[Writing Code With FDT|Continue to the Writing Code With FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Navigating Your Code and FDT's Workspace ==<br />
With all the ins and outs of an IDE like FDT, a developer can get lost is seemingly endless windows and views. It's important to know how to get around the application and make sure you stay in control of what you're looking at. <br />
<br />
*[[Navigating Your Code and FDT's Workspace|Continue to the Navigating Your Code and FDT's Workspace tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
== Launch Configurations ==<br />
Eventually, you're going to want to make some tweaks to your .SWF's settings (name, background color, size, frame rate ) as well as start using some advanced features such as viewing your .SWF in a browser.<br />
<br />
This tutorial goes over these important topics, as well as introduces FDT's new Launcher Chain feature.<br />
<br />
*[[Launch Configuration Tutorial| Continue to the Launch Configuration Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== FDT and Ant Tutorial ==<br />
Ant is a build tool that developers can use to extend FDT. It's an XML based syntax and can be used to extend FDT's built in launcher or used instead of the launcher if developers want to have even more control over their build process. It also has many built in tasks such as uploading to FTP, checking out from .SVN and creating .ZIP files just to name a few.<br />
<br />
*[[FDT and Ant Tutorial|Continue to the FDT and Ant Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Intro To Profiling Applications ==<br />
The FDT Profiler helps developers to detect performance issues within a flash application by providing two different approaches for profiling:<br />
<br />
*[[Intro To Profiling Applications| Continue to the Intro To Profiling Applications tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]][[File:Videoicon.png|20px|link=]]<br />
<br />
== Creating Code Templates (snippets) ==<br />
FDT’s code templates, also referred to as code snippets, allow for quick generation of user defined code. Although FDT ships with many templates pre-installed, users can edit existing templates, create new ones and even share templates with other FDT developers. <br />
<br />
*[[Creating Code Templates|Continue to the Creating Code Templates tutorial]]<br />
[[File:Text_icon.png|20px|link=]]<br />
<br />
== Sharing and Archiving Projects ==<br />
Become familiar with how easy it is to share and distribute projects with others with FDT. This tutorial will show you how to import and export projects with FDT.<br />
<br />
*[[Sharing and Archiving Projects| Continue to the Sharing and Archiving Projects tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Setting Up and Using FDT & SVN ==<br />
Sharing FDT projects is very easy to do. Follow this tutorial to learn how to:<br />
* Activate a SVN plugin for FDT<br />
* Add a project to a repository <br />
* How to checkout an existing FDT project using a SVN repository.<br />
<br />
*[[Setting Up and Using FDT & SVN| Continue to the Setting Up and Using FDT & SVN tutorial]]<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
== SDK Management ==<br />
With the release of FDT 4, developers now have granular control over their SDKs. Not only is adding and removing SDKs to projects easy, you can also easily add and remove specific parts of the SDK you may or may not need. You can also easily manage custom SDKs.<br />
<br />
*[[SDK Management|Continue to the SDK Management tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
== Using FDT's Debugger ==<br />
FDT Max includes a powerful debugger. During the development process, a debugging tool is useful to help discover and fix bugs. Armed with FDT's debugger, you'll be prepared to crush any bugs that stand in your way.<br />
<br />
*[[Using FDT's Debugger|Continue to the Using FDT's Debugger tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==From Flash Builder To FDT==<br />
If the differences between FDT and Flash Builder were boiled down into one word, it would be Flexibility. Beside having powerful code editing features that are missing with Flash Builder, FDT is flexible with your project management whereas Flash Builder is going to harness you with constraints. While, at first, these concepts will seem foreign to the long term Flash Builder user - as you master them you'll quickly understand the power and flexibility they provide.<br />
<br />
*[[From Flash Builder To FDT|Continue to the From Flash Builder To FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Font Library Creator==<br />
FDT now includes a Font Library Creator. This is a very hand GUI tool that is designed to make font management much, much easier. Developers can use the Font Library Creator to not just add fonts but also control which glyphs and characters are used. <br />
<br />
In this tutorial you'll learn how to use fonts via:<br />
* Actionscript Embed<br />
* SWCs<br />
* SWFs - both at compile time and runtime<br />
<br />
* [[Font Library Creator|Continue to the Font Library Creator tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Project Templates==<br />
FDT developers can create sophisticated project setups that can be customized just before generation.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project templates with FDT<br />
* Where templates are located and their structure<br />
* How to create a simple project template<br />
* How to create complex templates<br />
<br />
*[[Project Templates|Continue to the Project Template tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Project References==<br />
This enables powerful ways for developers to share source code between multiple projects.<br />
<br />
In this tutorial you'll learn:<br />
* An overview of project references<br />
* How to share source code between projects<br />
<br />
*[[Project_References|Continue to the Project References Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Working With Linked Resources ==<br />
Some developers like to have source code, either via a folder or .AS files, added to their project that is saved on their workstation outside of their project. The solution for this is to use FDT's 'Linked Resource' feature.<br />
<br />
*[[Working With Linked Resources|Continue to the Working With Linked Resources Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Apparat & FDT==<br />
With FDT 4.4, we've began to support Apparat. Apparat is a powerful framework to optimize ABC, SWC and SWF files. It's open source and looks to push the boundaries of ways for Flash developers to enhance their workflows and applications.<br />
<br />
In this tutorial you'll learn:<br />
* How to enable Apparat for your projects<br />
<br />
*[[Apparat|Continue to the Apparat Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Download_arrow.png|20px|link=]]<br />
<br />
==Adding The Flex 4.5 & 3.6 SDKs To FDT==<br />
Learn how to add the latest SDKs to FDT.<br />
<br />
*[[Installing 3.6 & 4.5 SDKs|Continue the Installing 3.6 & 4.5 SDKs Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Migrating Projects & Using Project Types==<br />
Watch this simple video on how to move a project to a new SDK and Project Type.<br />
<br />
*[[Changing SDKs And Project Types|Continue the Changing SDKs And Project Types Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
<br />
==Setting Up and Using Mobile Templates==<br />
Watch these two videos on how to merge the Flex 4.5.1 and AIR 2.7 sdks.<br />
<br />
*[[Setting Up and Using Mobile Templates|Continue the Setting Up and Using Mobile Templates Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= Flash Tutorials (FDT 5)=<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Mobile Applications With FDT|Continue to the Building Mobile Applications With FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Advanced Refactoring==<br />
With FDT 5, the team has added powerful refactoring to your workflow. These refactorings have been integrated into our Quick Assist workflow, so you won't be slowed down at all - in fact you'll see how quickly you can restructure your code.<br />
<br />
*[[Advanced Refactoring & FDT 5|Continue to the Advanced Refactoring & FDT 5 Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==AIR SDK Merging==<br />
Until now, when developers wanted to merge an AIR & Flex SDK it had to be done by hand, often using the command line. With FDT 5, developers can have this process automated for them.<br />
<br />
*[[AIR SDK Merging|Continue to the AIR SDK Merging Tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==ASDoc==<br />
Whenever the code in your project has ASDoc notation, FDT will read it and display it both in the ASDoc View and in the editor. This is one of our most voted features.<br />
<br />
*[[ASDoc|Continue to the ASDoc Documentation]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Source Attachment For SWCs==<br />
With FDT, you can easily include the source files for your favorite SWC libraries. This enables you to get the speed and convenience of a SWC and the power of debugging and ASDocs.<br />
<br />
*[[Source Attachment For SWCs|Continue to the Source Attachment For SWCs tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Breakpoint Support in Flex SDK==<br />
When source code has been added to a SDK, FDT will then scan for ADocs and integrate the sources to use with breakpoints.<br />
<br />
*[[Breakpoint Support in Flex SDK|Continue to the Breakpoint Support in Flex SDK tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
==Building Mobile Applications==<br />
With FDT 5, a new mobile workflow has been introduced. This tutorial will give an overview of what it's like to create mobile applications with FDT.<br />
<br />
*[[Building Standalone Applications With FDT & Zinc 4.0 |Continue to the Building Standalone Applications With FDT & Zinc 4.0]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
= New Features (FDT 5.5)=<br />
==SWFBridge==<br />
At the core FDT has always been about comfort, customization and community. With FDT 5.5, the team delivers a new feature that is a powerful combination of all 3 – SWFBridge.<br />
<br />
*[http://fdt.powerflasher.com/swf-bridge/ See our microsite].<br />
<br />
==Blackberry Support==<br />
Easily create, debug and publish applications for Blackberry directly from FDT.<br />
<br />
*[http://fdt.powerflasher.com/blackberry-for-fdt/ See the microsite for more info].<br />
<br />
==ANE Support==<br />
With FDT 5.5, Native Extensions have been fully integrated into FDT. Add, remove and package you applications with ANEs with just a few clicks.<br />
<br />
*[[ANE Support|Continue to learn more about ANE Support]]<br />
<br />
==Setup Wizard==<br />
FDT's Setup Wizard helps you customize FDT to your needs and will get you coding quickly. This is helpful for those experienced or new to FDT.<br />
<br />
*[[Setup Wizard|Continue to learn more about the Setup Wizard]]<br />
<br />
==Debugger Enhancements==<br />
See some of FDT's newest additions to the debugger, including Exception Breakpoints and Watch Expressions.<br />
<br />
*[http://vimeo.com/41373498 See the new features in action].<br />
<br />
==Improved Quick Assists & Fixes==<br />
The FDT team has improved upon existing Quick Fixes and Quick Assists to provide more refactoring options.<br />
<br />
*[http://vimeo.com/41440516 See the new Quick Fixes in action].<br />
<br />
==New Ant Tasks==<br />
The new 'fdt.invoke.launchConfiguration' task enables the execution of any launch configuration directly from Ant.<br />
<br />
*[http://vimeo.com/41847484 See the new Ant Task in action].<br />
<br />
= haXe Tutorials (FDT 5)=<br />
== An Overview of haXe & FDT ==<br />
Developed in collaboration with Powerflasher and [http://www.influxis.com Influxis], the FDT haXe plugin provides developers a powerful tool for authoring the haXe multi-platform language. <br />
<br />
*[[An Overview of haXe & FDT| Continue to the An Overview of haXe & FDT tutorial]]<br />
[[File:Text_icon.png|20px|link=]] [[File:Videoicon.png|20px|link=]]<br />
<br />
== Adding a Linked Folder (Resource) ==<br />
If you have source code located outside of your workspace, FDT allows you to create a link to this folder and have access to any source code therein.<br />
<br />
*[[Adding a Linked Folder To A haXe Project| Continue to learn how to add a linked folder to A haXe project]]<br />
<br />
[[File:Videoicon.png|20px|link=]]<br />
<br />
= Community Resources =<br />
We really appreciate the of efforts the FDT community, it's a big part of what makes FDT so great. Check out our [[Community Resources]] page to learn about tutorials and tips that fans of FDT have created.<br />
<br />
= Online Workshops =<br />
Every Last Tuesday of the month at 9 to 10am (PST)<br />
<br />
Join our next Live Broadcast FDT4 workshop. [http://fdt4.eventbrite.com/ Register here] to keep you informed on the latest activities.<br />
<br />
The sessions will be contingent on the audience attending.<br />
Tell us what we should cover when you register.<br />
<br />
You will learn how to use FDT or help getting started, while covering some of latest new features.<br />
This is also an opportunity to discuss code and best practices developing multi-target applications in ActionScript, Flex or haXe for the Desktop, Mobile and Web.<br />
<br />
Most of all, this is also a great opportunity to ask any question directly to the FDT team and give us feedback.<br />
<br />
The session will be live on [http://www.ustream.tv/channel/fdt-live-previews ustream.tv]<br />
<br />
Here you can find the recordings of our past workshops:<br />
<br />
*[[FDT Workshops|Continue to the FDT Workshops video page]]<br />
<br />
= Reference =<br />
== Project Template Syntax==<br />
The new project template model introduced in 4.2 greatly extended the syntax of the description.xml including UI components and expressions.<br />
<br />
Learn more by reading about [[Project Template Syntax]]<br />
<br />
== Ant Tasks ==<br />
<br />
[http://en.wikipedia.org/wiki/Apache_Ant Ant] is a tool that allows developers to extend FDT and automate various tasks. It's XML based and easy to learn. Ant on it's own has many built in tasks, and even better, FDT has various Ant tasks of it's own for you to use.<br />
<br />
Learn more by reading [[FDT Ant Tasks]].<br />
<br />
= Features =<br />
<br />
== Smart Editor ==<br />
<br />
*[[Live Error Highlighting]]<br />
*[[Adjustable Error Settings]] <br />
*[[Auto Library Folder]] <br />
*[[Syntactic and Semantic Highlighting]] <br />
*[[Advanced Code Completion]] (context and convention based) <br />
*[[Code Templates]] <br />
*[[Quick Fixes]] <br />
*[[Quick Assist]] <br />
*[[Integrated Color Picker]]<br />
*[[Organize Imports]] <br />
*[[ Advanced code formatter (AS3 + MXML)]] <br />
*[[Project Tasks]] (TODO, FIXME, ...) <br />
*[[Customizable Hotkeys]] <br />
*[[Rename Refactoring]] (for files, types, variables, metadata and functions)<br />
*[[Quick Trace]] <br />
*[[Move Refactoring]]<br />
*[[Occurrence Marking]]<br />
*[[MXML Namespace Generation & Refactoring]]<br />
<br />
== Navigation ==<br />
<br />
*[[Quick Outline]] <br />
*[[Quick Open Type]] <br />
*[[Quick Type Hierarchy]] <br />
*[[Quick Type Dependency]] <br />
*[[Quick Explore]] <br />
*[[Outline View]] <br />
*[[Open Declaration]] <br />
*[[Open Resource]] <br />
*[[Open Type]] <br />
*[[Reference Search]]<br />
*[[FDT Search]]<br />
*[[Quick Access]]<br />
<br />
== Project Management ==<br />
* [[SWFBridge | SWFBridge (FDT 5.5 Beta)]]<br />
* [[Creation Wizards]]<br />
* [[SDK Management]]<br />
* Multiple [[Source Folders]]<br />
* [[Linked Libraries]] Linking of external source folders<br />
* [[SWC Support]] Linking of external SWCs<br />
* Version Control Support [SVN]<br />
* SWC browsing and source code representation<br />
* [[Refactoring]]<br />
<br />
== Testing and Deployment ==<br />
*[[Flash Authoring Support]]<br />
*[[Customizable Compilation]]<br />
*[[FDT and ANT]]<br />
*[[ANT Exporter]]<br />
*[[Launch Configuration]]<br />
*[[SWF Viewers]]<br />
*[[Profiler]]<br />
*[[Debugger]]<br />
<br />
= Downloads =<br />
==Example Projects==<br />
<br />
Visit our [[Downloads]] page for more.<br />
<br />
==Legacy FDT Downloads==<br />
<br />
If you need to download an earlier version of FDT, please [http://fdt.powerflasher.com/contact contact us]. Provide the name and email address that is associated with the version license.<br />
<br />
= Suggested Eclipse Plugins =<br />
<br />
Because FDT is part of the Eclipse community, there are many plugins that can be integrated with FDT. <br />
Visit our [[Suggested Eclipse Plugins]] page for some plugins we think you might find helpful.<br />
<br />
= FAQs =<br />
If you're confused, run into a problem getting started or looking for a place to download legacy versions of FDT. Check out our FAQ.<br />
<br />
Otherwise, [http://fdt.powerflasher.com/contact/ contact us.]<br />
<br />
==Downloading, Setting Up & Using FDT==<br />
[[FAQ | Continue to the Downloading, Setting Up & Using FDT FAQ]]<br />
<br />
==Sales & Marketing==<br />
[[ FDT Marketing FAQ | Continue to the Sales & Marketing FAQ]]<br />
<br />
==Subscriptions & License Management==<br />
[[ Subscriptions & License Management FAQ | Continue to the Subscriptions & License Management FAQ]]<br />
<br />
= Release Notes =<br />
<br />
To update to the latest FDT version follow the instructions in our [http://fdt.powerflasher.com/docs/FAQ#How_do_I_update_FDT.3F FAQ] otherwise you can download the latest FDT [http://www.fdt.powerflasher.com/developer-tools/fdt/download/ here].<br />
<br />
Latest version information:<br />
*[[FDT 5 Release Notes]]<br />
*[[FDT 4 Release Notes]]</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-09T15:44:44Z<p>Aklement: /* Notes */</p>
<hr />
<div>=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.<br />
<br />
===ANE===<br />
*When used as a linked resource, ANEs can be recognized as a .SWC and not compiled correctly. [http://bugs.powerflasher.com/jira/browse/FDT-2732 See the ticket here].</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-09T15:39:56Z<p>Aklement: /* Notes */</p>
<hr />
<div>=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==<br />
===SWFBridge===<br />
*Currently cannot add items to "refactor" and "run" menus.</div>Aklementhttp://fdt.powerflasher.com/docs/FDT_5_Release_NotesFDT 5 Release Notes2012-05-09T15:38:09Z<p>Aklement: Created page with "=FDT 5.5= Released: 2011/05/09 ==New Features== *SWFBridge *Blackberry Support *ANE Support *Setup Wizard *Debugger Enhancements *Improved Quick Assists & Fixes *New Ant Tasks ..."</p>
<hr />
<div>=FDT 5.5=<br />
Released: 2011/05/09<br />
<br />
==New Features==<br />
*SWFBridge<br />
*Blackberry Support<br />
*ANE Support<br />
*Setup Wizard<br />
*Debugger Enhancements<br />
*Improved Quick Assists & Fixes<br />
*New Ant Tasks<br />
<br />
[http://fdt.powerflasher.com/2012/05/fdt-5-5-now-released/ See release blog post for more info].<br />
<br />
==Bug Fixes==<br />
<br />
[http://bugs.powerflasher.com/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10000&resolution=1&fixfor=10491&status=6&sorter/field=priority&sorter/order=DESC&tempMax=1000 See JIRA]<br />
<br />
==Notes==</div>Aklement