General Sun, 05 Dec 21 11:35:28 +0000 General en-CA xJSFL in Canvas and future. Wed, 03 Jan 2018 10:29:27 +0000 Nardo 65@/forum/discussions HI everybody

I'm still using xJSFL in CS4/CC old projects, in fla files, and sometime in AnimateCC with html5 canvas Exports.
But with the HTML5 canvas some scripts are conflicting. (API JS 'SymbolItem.scalingGrid' , sequences in context etc...  )

This forum is very quiet since 2 years, and I wonder if xJSFL is still alive, and for the future, if I should rewrite all my scripts in pure jsfl.
What would be really bad. Because xJSFL is really, really a good and a smart tool. 

If true, thanks to Dave for this great job.

Latest version of xJSFL not works after install on Mac Wed, 08 May 2013 01:52:54 +0100 andy_one 55@/forum/discussions Hi Dave,

I'm try use xJSFL on my Mac, but after install when I'm restart Flash xJSFL doesn't start initialization. Maybe problem with Creative Cloud version of Flash?

This is screenshot what I captured after install. And this is install log.

Very strange what installed commands is doesn't appears in command menu after restart.


Flash CC working ( ... not) Wed, 19 Jun 2013 04:35:25 +0100 madmatt 58@/forum/discussions Hi, just wanted to confirm (not that Dave would need it since he partecipated in the Flash CC beta) that xJSFL installs and works in Adobe Flash CC (OSX).

Unfortunately, I can't say the same is true for some of the standard jsfl functions I used to use (like, :( 

That is, they work, but they either execute before the output panel is filled with text, or they execute with an old instance of it ... the result is that if I have a jsfl file that does stuff (compile a fla, for example) and outputs stuff to the output panel, when the save method is called I get an empty file. If at that point I run a execute a separate jsfl file that saves the output panel I get the text in the file ... weird and really annoying

Passing a JSON or XML object from JSFL to an AS3 panel... Thu, 30 May 2013 18:53:26 +0100 Lucas_ludia 57@/forum/discussions Hi, 

i've build a custom panel using the xjSFL modules, everything work fine. I'm calling functions from my AS3 panel to the JSFL fine. Today i had to implement a method call from the JSFL to the AS3. After struggling a bit, i made it work with a simple callback, just passing a String to my as3 function. But now i need to pass a real object, and after trying to encode my object as both a JSON string or an XML, it always crash when the object is received by the AS3, and i got a very "explicit" ;) error popup saying that there's been an error somewhere...

After doing many tests, i can tell that the problem is coming from the nested quotes in the JSON (or XML) object, here is the JSON string i'm trying to pass to the AS code:


If i pass '{this_is_some_random_text}' , no problem...

I've seen a lot of post where people are saying that you just need to use JSON or XML to pass object from JSFL to AS3, so i must be missing something quite obvious here...



xJSFL is free software or not? Mon, 13 May 2013 09:56:19 +0100 andy_one 56@/forum/discussions Hi Dave,

I'm can't found any information about license. What license used for xJSFL? It's proprietary or free software?

Mouse Click Mon, 31 Oct 2011 10:31:55 +0000 JeromeErasmus 16@/forum/discussions Hi, excellent work on the xJSFL code guys!. loving it...

Just a thought.  I have noticed that a mouse down and mouse up event would be the best tool you could have for WindowSWF's many JSFL programmers have to use nasty enterframe loops and other things to get feedback into the WindowSWF.

This does not have to include the elment that was clicked etc... Just an Event dispached so that the WindowSWF can call JSFL to get what element is selected.

When do you think you would add this feature to the event classes you already have.


keep it up. well done

Can't really install on CS6 Mon, 25 Feb 2013 08:54:29 +0000 jaimedominguez 54@/forum/discussions I place my xJSFL folder in the harddrive, execute the install.jsfl file and i get this output:


           ██  █████ ██████ ██
           ██ ██     ██     ██
  ██ ██    ██  ████  █████  ██
   ███     ██     ██ ██     ██
  ██ ██ ████  █████  ██     █████


  The Rapid-Development Framework for Extending Adobe Flash

> xjsfl: INSTALLING xJSFL... > xjsfl: loading proxy classes... > xjsfl: loading xjsfl... The following JavaScript error(s) occurred: > xjsfl: LOADING CORE CLASSES... The following JavaScript error(s) occurred:

Thats it, nothing else. I look for the panel in CS6 after restarting, but. as expected, is not working...

Can you help?

I have version CS6 (12.0.2)

Many thanks!



Install error Fri, 20 Apr 2012 03:52:22 +0100 Rytis 34@/forum/discussions Hi Dave,

I was trying to install xJSFL framework from commit (872de94c70) on Flash CS5.5 on Windows 7 x64 but it failed with empty error in output panel.

I have tried running Flash as Administrator but it gave no results either. 

Is there anything I can do with that (taking earlear version or something)?

Feature is not available at this time Sun, 13 Jan 2013 23:15:05 +0000 rahulkamra 53@/forum/discussions When i try to execute MMExecute("fl;"); from action script ,  then the above mentioned error occurs. Any idea why it happens ?Its a blank project with one line on creation complete of Flex. I am using CS6 Trail.


User libraries initialization bug Tue, 08 Jan 2013 16:34:58 +0000 andy_one 52@/forum/discussions Hi Dave!

I found bug with user libraries initialization. After Flash IDE start in output panel shows what all my libraries is loaded. But is not true. For solving this problem I must manualy execute reloading in commands panel.

I check on Win7 and Win8 with Flash CS6, in both cases this bug apears.

Video with bug reproduction. Test snippet code:

(function() {
function testIt() {


Is there a reason to use CONST? Wed, 02 Jan 2013 15:52:43 +0000 Saveremreve 51@/forum/discussions I'm working alongside a gameplay programmer that did some moonlighting on export scripts.  Their code makes extensive use of CONST for various URI and filename elements.  The problem I'm encountering is that every 4 - 5 save/load loops to test Flash will throw an error about redeclaring a CONST and I have to restart flash to get the script to run again.  Error Text:

TypeError: redeclaration of const IFL_FILE_EXT 

This same script also will throw errors running through the snippets panel (with flash gobbling the error message) but when I run it through commands>run it usually will run without errors.  Right now it's just a hunch that CONST is causing trouble - since I don't use it and it runs fine.  Searches elsewhere on the web say that CONST implementation in Javascript is spotty so if there's reasons not to do it I'd just as well pull it out.

edit: added error text

XUL custom layout Fri, 21 Dec 2012 16:19:51 +0000 andy_one 50@/forum/discussions Hi Dave! Many many thanks for this awesome project. 

I have question about XUL interface layouts. At this moment default layout have 2 columns. One for labels and second for elements like textarea and dropdown. How I can customize layout using basic API methods (addButton, addDropdown and etc).

And small second question. How I can select some element in Listbox?

expandFolder not working Wed, 20 Jun 2012 08:57:41 +0100 Rytis 39@/forum/discussions Hi,

I tried to use #reveal() method in ItemsCollection but it didn't work (function #exapandFolder() executes and returns "true" but folder is still collapsed). I have found in forums that library.expandFolder doesn't work at all on CS versions >3. Does it work for you?


New Module Wed, 22 Aug 2012 16:30:16 +0100 heyben 45@/forum/discussions What's the minimum I need to do to get a module showing in Window->Other Panels? I copied Modules/Sample Module and changed the name and the panel values in manifest.xml. The log showed it initialising but nothing appeared in the menu to enable to panel.


library fonts selector Mon, 24 Sep 2012 13:40:27 +0100 sstark 46@/forum/discussions Hello,

I couldn't get the selector $$ to work with library fonts, I had to instead iterate through the entire library and look for all instances that are fonts.

I feel like I am doing this the hard way, or I am missing something?



but instead, need to use:

var libraryItems = dom.library.items;
var i = libraryItems.length;
while (i--) {
var item = libraryItems[i];
if (item.itemType == "font") {


appending as3 Mon, 24 Sep 2012 18:25:17 +0100 sstark 47@/forum/discussions Hello,

I am looking for a user-friendly way to append as3 code into a timeline. I have it working ( see below ), but it's not elegant.

In english:

  • select first layer on stage root timeline.
  • test if the name is "ACTIONS", if not make it.
  • clear all as code in the clip
  • write new code into the clip
if( timeline.getLayerProperty("name") != "ACTIONS" ){
var trgt = timeline.layers[0].frames[0];
trgt.actionScript = "";
trgt.actionScript +='\n // ADD as3 Code line by line';



how to set the language in the String Panel Tue, 25 Sep 2012 13:55:53 +0100 sstark 48@/forum/discussions Does anyone know how to use JSFL to set the language in the Strings Panel? I have it working with ActionScript, but it would be nice to set this property for the artists so that the design is reflected also.

Module paths Tue, 31 Jul 2012 12:25:37 +0100 Aranda 44@/forum/discussions Hi Dave,

I'm just starting out converting our exporter to a xJSFL module and I'm not sure whether the custom module needs to be in the xJSFL/modules folder? If they do, it seems a little messy, although I suppose I could make it a git submodule (even though they suck :)).

Also, assuming it's OK to do so, you should update your docs to remove the absolute paths from your Sample Module code here:




No file loaded after installation Tue, 21 Feb 2012 04:35:49 +0000 jayatubi 23@/forum/discussions

           ██  █████ ██████ ██
           ██ ██     ██     ██
  ██ ██    ██  ████  █████  ██
   ███     ██     ██ ██     ██
  ██ ██ ████  █████  ██     █████


  The Rapid-Development Framework for Extending Adobe Flash

  @see licence at

> xjsfl: install path: "C:/xJSFL/"
> xjsfl: ready!


I got this output just after I run the "install.jsfl". It seems no xjsfl script has been loaded and when I try to execute code such as "xjsfl.init()" I got an error: xjsfl.init is not a function.

I'm using Flash CS5 with Simplified Chinese environment. How can I fix this?

AS3 JSFL Serialization Mon, 09 Jul 2012 09:49:05 +0100 ThaNarie 43@/forum/discussions Hi,

At the moment, you can't pass native DataTypes from AS3 to JSFL:

throw new Error('Objects of type ' + type + ' cannot be passed to JSFL');

Is there a reason for not using the JSON encoder/decoder to pass values around, so you could encode any object (to native object).
And you could also pass the type as an extra field (like amfphp does) so you can reconstruct the same object on the other side.

Reloading Flash while developing a panel Mon, 09 Jul 2012 07:43:17 +0100 ThaNarie 42@/forum/discussions Hi,

I'm developing a panel, and while there is a nice snippet for uploading the swf to the WindowSWF folder, it seems I have to restart Flash every time I have changed my JSFL module code. The 'Reload xJSFL' doesn't work either.

I've tested it with altering traces, and the changes only show up after I've restarted Flash.

Is this normal behavior? Can there be done anything to make this process easier?

Install/Uninstall problem with version 1.0 Sun, 24 Jun 2012 10:09:41 +0100 Max 40@/forum/discussions

I ran into a specific problem while trying to update xJSFL to version 1.0, I thought you might want to know about it. Context: Flash CS5.5 *and* CS6, OSX 10.7.4 - with existing installation of the previous xJSFL release in /Developer/xJSFL

First thing that happened is the installer complained about needing a document open before proceeding - not sure where that call was from exactly (see log at the bottom). My (frustrating) experience with jsfl would point to something along the lines of a document check (dom != null) in a context where it's not necessary. Searching for "REMOVING OLD COMMANDS..." brought me to install.jsfl, which I modified to trace values. I found it seems to go belly-up here (line 148)

var uris = Utils.getURIs(fl.configURI + 'Commands/xJSFL/');

What I think happened is the "xJSFL" folder was successfully deleted the first time around, before I was asked to open a document. Then when trying to find the same folder to clean up an existing installation which was already cleaned up (at least in part), an error is returned. I added an empty xJSFL folder in Configuration/Commands, and the next time I ran the installer, it successfully completed (without having a document open -- although the installer creates an empty one and leaves it there)

A note: my first update on a separate computer (same OS and Flash version) was successful on the first try. I can't remember if I had a document open or not, but I'm assuming I did. 

Here's how I was able to reproduce the bug at least three times:

- run /Developer/xJSFL/core/jsfl/install/uninstall.jsfl

- restart Flash CS5.5/CS6

- run /Developer/xJSFL/install.jsfl (without a FLA open)

Additional info: I noticed that uninstall.jsfl sometimes leaves the Commands/xJSFL folder and its contents in the file system.

 Congrats on the tremendous amount of work you put into this project. I'm very impressed, especially by the efforts that went into the Komodo integration/plugins.




> xjsfl: INSTALLING xJSFL...

> xjsfl: loading proxy classes...

> xjsfl: loading xjsfl...



> xjsfl: loading library: Globals

> xjsfl: loading library: Utils

> xjsfl: loading library: URI

> xjsfl: loading library: URIList



> xjsfl: added 25 search paths for "{core}jsfl/libraries/Macintosh HD/Developer/xJSFL/core/"

> xjsfl: loading library: JSFLInterface

> xjsfl: loading library: XUL

> xjsfl: loading library: File

> xjsfl: loading library: Class

> xjsfl: loading library: FileSystemObject

> xjsfl: loading library: Folder

> xjsfl: loading library: XML

> xjsfl: loading library: String

> xjsfl: loading library: SimpleTemplate

> xjsfl: loading library: XULControl

> xjsfl: loading library: XULEvent

> xjsfl: loading library: Output

> xjsfl: loading library: Table

> xjsfl: loading library: PropertyResolver



The following JavaScript error(s) occurred:


Open a Flash document (FLA) before running this script.



> xjsfl: INSTALLING xJSFL...

> xjsfl: loading proxy classes...

> xjsfl: loading xjsfl...

The following JavaScript error(s) occurred:



The following JavaScript error(s) occurred:


How do I uninstall? Fri, 20 Apr 2012 15:47:28 +0100 alexanvl 35@/forum/discussions I have installed the JSON library and my for .. in loops are broken!  How do I uninstall or revert these changes?

Installation problems with Flash CS5 Tue, 08 May 2012 21:19:48 +0100 jokigenki 37@/forum/discussions Hi,

I've been trying to install with CS5 and I get an error (helpfully no output). I did some tracing and tracked the error down to for each loops, which don't seem to work. The first error I get is in xsfl.load around line 679 (I can't be sure because I've been adding traces everywhere) which is "for each(var uri in uris)". If I replace this with a normal for loop, it works.

I wrote a simple test case:

var arr = [1,2,3,4];

for each (var n in arr)




which outputs:





function (keya, keyb) {

 var comparisonFunction = (function (a, b) {var ta = a[keya];var tb = b[keya];if (ta < tb) {return -1;}if (ta > tb) {return 1;}var tc = a[keyb];var td = b[keyb];if (tc < td) {return -1;}if (tc > td) {return 1;}return 0;});




pretty sure this last entry is not right! Not sure what can be done about this other than to replace all the for eachs, will try a test on CS5.5 and see if it's any different.



xJSFL (or jsfl) write to the errors panel Thu, 05 Apr 2012 04:44:39 +0100 madmatt 33@/forum/discussions Hi, I guess this is more a jsfl question than xJSFL but ... is there any way of outputting text to the errors panel instead of the Output panel ?

Looking at the docs it doesn't look like it, but for build automation purposes it would be really great ;)


reinstalling Tue, 03 Apr 2012 04:23:42 +0100 melslenoble 32@/forum/discussions hi

I installed xJSFL. All worked fine (in Flash),  but i want to remove it and reinstall it in from a different location (folder). Removing it with the xJSFL command gave me an error (without any text). So i removed it manualy and tried to reinstall it. Somehow the snippets window has the wrong (old) links in it. So i removed and reinstalled it again. Didn't work. 


How do i remove all ? Or how do i reinstall ? I use windows 7 & Flash CS4.  


Thanks for any tips

xjsfl Utils class Sun, 01 Apr 2012 22:12:14 +0100 HughC 31@/forum/discussions

xjsfl.utils appears to have been refactored at some point, and not all functions moved over?

The core/utils.jsfl implementation has some string functions that the one in libraries/utils.Utils.jsfl does not.

This breaks snippets like 'Propogate element names across frames" as they are looking for these functions in the latter implementation of the class. ( toCamelCase() and toUndederscore() ). Copy / pasting the relevant functions over  gets the snippet working again, but you'd be a better judge of what exactly is going on here (and what else might need to be refactored?).



project paths? Sat, 31 Mar 2012 09:15:02 +0100 HughC 30@/forum/discussions This is not so much a xJSFL thing as a JSFL one. I've written a snippet, and I want to hand it over to an animator friend, so that he can run it. The script uses the Template class and generates XML and class files from templates, which are tucked away in a /src/templates/ dir within our project. They in turn write out files to /src/classes and /bin/xml directories.

The Template docs ( ) cite this example for saving a template: + 'src/' + package + '.as', true);

There's a ref above to 'projectURI ' but I can't find any reference to it (or indeed projects, as objects at all) in the Extending CS5 docs. Then I turned up an Adobe note, that says they were dumped under CS4. Handy.

Currently I'm using a path relative to the current open file, but I want the snippet to work regardless of which fla within our project he and I are in. Can anyone suggest a simple way to set / get a path to a 'project folder' under which all paths are then relative? 

dll? Thu, 29 Mar 2012 22:31:18 +0100 HughC 29@/forum/discussions Hi,

just wondering what the dll file in  the core install is used for? Couldn't see it documented, but note that it's copied to:

\AppData\Local\Adobe\Flash CS5\en_US\Configuration\External Libraries

on install.

Seems like  my flex panel <> jsfl comms are working correctly now in Beta 2 - nice one!