Highlighted

Looking for JSAPI reference for making extensions

Community Beginner ,
Oct 20, 2019

Copy link to clipboard

Copied

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

Views

288

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

Looking for JSAPI reference for making extensions

Community Beginner ,
Oct 20, 2019

Copy link to clipboard

Copied

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

Views

289

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Oct 20, 2019 0
Participant ,
Oct 20, 2019

Copy link to clipboard

Copied

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 1998
Member of Flanimate Power Tools team - extensions for character animation

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 20, 2019 3
Explorer ,
Oct 21, 2019

Copy link to clipboard

Copied

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.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 21, 2019 0
Guide ,
Oct 21, 2019

Copy link to clipboard

Copied

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 Flanimate Power Tools team - extensions for character animation

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 21, 2019 0
Adobe Community Professional ,
Oct 21, 2019

Copy link to clipboard

Copied

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

__________________________________________
HTML5, JSFL, and AS3 samples: http://bit.ly/2mJgDoG

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 21, 2019 2
Community Beginner ,
Oct 21, 2019

Copy link to clipboard

Copied

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++;
            
        }
	}
}

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 21, 2019 1
Adobe Community Professional ,
Oct 21, 2019

Copy link to clipboard

Copied

Hi again.

 

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

__________________________________________
HTML5, JSFL, and AS3 samples: http://bit.ly/2mJgDoG

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 21, 2019 1
Zync LATEST
Community Beginner ,
Oct 21, 2019

Copy link to clipboard

Copied

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

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 21, 2019 0