Skip to main content
Participating Frequently
October 20, 2019
Question

Looking for JSAPI reference for making extensions

  • October 20, 2019
  • 5 replies
  • 1160 views

Hi All,

 

Been looking around for a while now but can't seem to find any current documentation on how to create extensions for Adobe animate. Only think I could find was a DPF from way back in 2013 but surely a lot of things have been updated by now. Spent a few hours googling and searching but can't find anything.

 

In a nutshell, I juad want to make a simple UI panel for Animate with commonly used things I do in my workflow. I know javascript reasonably well but just looking for a reference on how to make the UI (XML?) panels and then tie it into JSFL code.

 

Thanks

    This topic has been closed for replies.

    5 replies

    JoãoCésar17023019
    Community Expert
    Community Expert
    October 21, 2019

    Hi again.

     

    I've updated my previous comment with another reference to get you started.

    ZyncAuthor
    Participating Frequently
    October 21, 2019

    Absolutely brilliant JoãoCésar - thanks heaps for that

    JoãoCésar17023019
    Community Expert
    Community Expert
    October 21, 2019

    Hi.

     

    Just wanna to point out that you can create the UI of your panels with AS3 or HTML5 documents.

     

    But if you really want do build a XUL based extension, I have one here with the code available:
    https://community.adobe.com/t5/Animate/Exporting-Selected-Scene-as-Video/td-p/9254446

     

    Anyway, the official reference for Animate extensions these days is this one:
    https://www.adobe.io/apis/creativecloud/animate.html

     

    Getting started with HTML5 extensions: https://github.com/Adobe-CEP/Getting-Started-guides.

    Cookbook for HTML5 extensions: here.

     

    Regards,

    JC

    ZyncAuthor
    Participating Frequently
    October 21, 2019

    Thanks heaps guys for the great resources all.

     

    @ Vladin_M__Mitov - still trying to track down that book. But it's fairly pricey for how old it is.

    @n__tillchef - thanks for that link too. The layer depth was something that I was looking for.

     

    @jo - I didn't know you could create panels with HTML, would deifnintely prefer to go down that route if thats the more standardized way. I'm been through to that page you linked but couldn't find much into on making UI's with HTML, Don't suppose you have any examples?

     

    Will have a look at your XUL for now too.

     

    Side note for anyone that can help. I've writting a small JSFL script to basically help reorder a lot of movieclips on the stage. For a simple example. Say I sift and click select 5 different movieclips on the stage and then run this script. It will prompt the user to enter a prefix and then starting number. So it could be mc1, mc2, mc3, mc4, mc5. And it should order them in the order I clicked on the clips.

     

    For the most part it works, example sometimes when I have multiple clips on the same layer (as I'm script animating, so they dont need to be on seperate layers) the ordering will go out of order even though I selected them in the correct order. I think this has something to do with the zdepth of each movieclip. Wondering if there was a programitc way to get around this bug. here is the script too.

     

    var doc = fl.getDocumentDOM();
    var mcseq = doc.xmlPanel(fl.configURI+"Commands/MC Sequencer.xml");
    
    if (mcseq.dismiss == "accept") {
    	var mcPrefix = mcseq.mcPrefix;
        var startNum = Number(mcseq.startNum);
        
    	if (mcPrefix == null || mcPrefix == undefined) {
    		alert("Error: Invalid parameter.\nPlease select at least 2 movieclips");
    	} else {
            var selection = doc.selection;
            selection.reverse();
            for (var i = 0; i < selection.length; i++) {
                var mc = selection[i];
                
                mc.name = ""+mcPrefix+""+startNum;
                fl.trace(mc.name + " "+mc.depth+ " " +mc.layer.name);
                startNum++;
                
            }
    	}
    }
    n. tilcheff
    Legend
    October 21, 2019

    Just to add to what Vlad and Chris have said, here is a document with some info about the newer features: Animate2019-NewfeaturesAPIs.pdf

    We have found that not everything works as expected. Will have to wait and see what will be fixed in AnCC 20.0

     

    Nick - Character Designer and Animator, Flash user since 1998 | Member of the Flanimate Power Tools team - extensions for character animation
    Inspiring
    October 21, 2019

    I have the PDF from 2013 you are referring to, as far as I know that was the last time documentation for the JSFL language was made. I've made several extensions for Animate by referencing it, so for the most part it is still valid, and may actually be your only source of information.

    Vladin M. Mitov
    Inspiring
    October 21, 2019

    Hi,

     

    Try to find this book:
    Extending Flash MX 2004: Complete Guide and Reference to JavaScript Flash

    There is a chapter, dedicated to XUL dialogues: Chapter 5: XML to UI

    If you have any specific questions, I think I can help you.

     

     

    - Vlad: UX and graphic design, Flash user since 1998Member of Flanimate Power Tools team - extensions for character animation