OK, time for another update before I get lost in ApacheCon:

I¹ve added the FalconJS stuff to the FlexJSOverlay.zip.  You can now use
Flash Builder to create non-Flash "apps".

We have prototypes of a List, Button, Label, TextArea, and TextInput
We have a prototype of a HTTPService and a LazyCollection
The FlexJSSDKTest example is updated so you can choose a stock symbol from
the List, hit a Button and see the stock price in the Label

If you want to play with the this stuff and are too lazy to build from the
sources, I have hacked together a way for you to try it in Flash Builder.

Setup instructions are:

1) Get Apache Flex 4.9 working in FB.  (I tried it with FB 4.7, but not FB
4.6) 
2) Shut down FB 
3) Make a copy of your Apache Flex 4.9 folder.  The zip file contains a
shell script that will neuter the Flex aspects of this folder and replace it
with FlexJS stuff.
4) Unzip FlexJSOverlay into a some other folder.
5) Change to that folder and run deploy.sh or deploy.bat <path to copy of
Apache Flex 4.9 folder>
6) Run Flash Builder
7) In the Flash Builder Preferences menu add this new folder as a Flex SDK.
8) Choose from the File menu, Import, Run/Debug, Launch Configurations
9) Choose the ide/flashbuilder folder from this copy of Apache Flex 4.9 we
are mucking with. 
10) There should now be four new configs in the Run menu under External
Tools 
11) Go to External Tools Configuration
12) Select one of the configs
13) Hit the variables button
14) Hit the Edit Variables button
15) Change FLEX_HOME to point to the modified Apache Flex SDK.
16) Install Google Closure library
17) For each of the two FalconJS configs, edit the launch configurations
environment variables to set FLEXJS_HOME to the js/src of your overlaid SDK
18) For each of the two FalconJS configs, edit the launch configurations
environment variables to set GOOG_HOME to the goog folder of your
GoogleClosure install.
19) For each of the four launch configurations, ensure that the location
field points to the Java runtime.

Now for each project:

1) Create a new Flex Project
2) Choose this modified Apache Flex SDK
3) Do not change the output folder from bin-debug
4) Flash Builder will generate a totally messed up Application tag so
replace it with this template:

<?xml version="1.0" encoding="utf-8"?>
<basic:Application xmlns:fx="http://ns.adobe.com/mxml/2009";
                   xmlns:basic="library://ns.apache.org/flexjs/basic"
                   >
</basic:Application>

Source Code

Right now, Application doesn¹t contain any UI, it takes another MXML file as
the initialView property and a model and a controller.  You can reference
the example in FlexJSSDKTest.

Building and Running/Debugging

As you edit the code, the regular Flex compiler is compiling and reporting
errors, but it only knows how to build Flex SWFs so the output SWF probably
won¹t run.  So, before you debug, choose from the Run menu the new External
Tool: ³FlexJS (Debug Build)².  This will run the Falcon compiler with the
right options to generate a SWF in the bin-debug folder that overwrites the
one that is there.  Then you should be able to set breakpoints and debug.

Once you have your app working as a SWF, try one of the FalconJS tools.  It
will output by default to the binjs-debug or binjs-release folder.  If you
run the FalconJS debug configuration, see the console output for
instructions on how to copy the goog and FlexJS source folders into your
binjs-debug folder.

I¹m sure there¹ll be lots of issues, but feel free to comment or contribute.
Remember, this is in its infancy so it will likely fall down easily and poop
unexpectedly.

-- 
Alex Harui
Flex SDK Team
Adobe Systems, Inc.
http://blogs.adobe.com/aharui

Reply via email to