Automation Blocks - ScriptUI List/Treeview for selected shape layers

Community Beginner ,
Jul 01, 2022 Jul 01, 2022

Copy link to clipboard

Copied

Hi I was wandering if it is possible to create a dockable script using Automation blocks that will generate a treeview of shapes in a shape layer, and then allow me to perform certain operations on the ones that I can manually select in the treeview...

TOPICS
Scripting

Views

103

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
community guidelines
Adobe Community Professional ,
Jul 01, 2022 Jul 01, 2022

Copy link to clipboard

Copied

Hi,

 

so far, Automation Blocks does not support dockable UIs - although this is an interesting feature request!

Also, the Automation Blocks UI supports dropdown lists, but no tree views at the moment.

 

What kinds of operations would you like to perform on the shapes?

What you could do with Automation Blocks is to loop over all shapes and then do something with only the ones

- whose name contains a given search word

- which are selected

for example.

 

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
community guidelines
Adobe Community Professional ,
Jul 01, 2022 Jul 01, 2022

Copy link to clipboard

Copied

Here is an example, where I change various tapering options of the selected shape layer:

https://twitter.com/mamoworld/status/1498630597689892871?s=20&t=D7ffTJXFn3t7TIIBrlo3QQ

 

The block script simply loops over all properties of the shape layer and then changes the properties only, if they have a particular name.

 

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
community guidelines
Community Beginner ,
Jul 02, 2022 Jul 02, 2022

Copy link to clipboard

Copied

Essentially what I would like to do is have the ability reset position/anchor properties of the shapes that I select and see the nesting structure of the shapes. Additionally I would like to be able to reset the shapes origin to be centered as well that would involve adding an expression to the path property and then remove it leaving the post expression value... but these operations I would like to be able to perform only on the selected shapes/layers... 

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
community guidelines
Community Beginner ,
Jul 02, 2022 Jul 02, 2022

Copy link to clipboard

Copied

As for having a sociable script it's not that big a deal... I can export to jsx and add that later... I am more interested in the tree view... I guess a list but would also work... perhaps with some syntax to indicate nesting....

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
community guidelines
Adobe Community Professional ,
Jul 04, 2022 Jul 04, 2022

Copy link to clipboard

Copied

I see. For lists, all that Automation Blocks currently supports are dropdowns in a dialog. But even those don't support multiple selections. Treeviews or other more advanced UIs are not supported, yet, by Automation Blocks. I try to keep Automation Blocks easy to use, such that 90% of the automation jobs can be done much faster - but this also means that the remaining 10% cannot be done in Automation Blocks because it does not cover the full functionality of the scripting API.

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
community guidelines
Community Beginner ,
Jul 04, 2022 Jul 04, 2022

Copy link to clipboard

Copied

Understood... Are you planning to expand functionality to cover the full API or you intend to keep it as is? I am only asking because I recently found blockly and I had a thought about creating an implementation of extendscript/scriptUI in it - so that coding a script would be much easier (I posted about it on the AE discord in the scripting channel)... and it was pointed out to me that there exists a product like what I envisioned - Automation Blocks - and it is wonderful to have something like this - I was only hoping to have some more of the advanced functionality in it... so as a result I just wanted to know whether you are planning to expand it or to maintain it at this level! In any event - thanks for creating this wonderful product - I thoroughly enjoy it!

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
community guidelines
Adobe Community Professional ,
Jul 04, 2022 Jul 04, 2022

Copy link to clipboard

Copied

What I plan is to add a block which allows to wrap custom jsx code and execute it as part of the Automation Blocks script. That way, you can still use the missing 10% of the API in Automation Blocks by writing your own jsx code. I feel that makes much more sense than having a block for each API feature.
What makes Automation Blocks so convenient is not just the blocks instead of code paradigm. If you just create one block for each API call, your block scripts would become huge very quickly. And then it would not be more fun than writing code - it would rather be cumbersome.

 

The true advantage of Automation Blocks are all these high level blocks which perform much more than a single line of scripting code. For some blocks this is obvious, like the Add Row/Colum to Spreadsheet block, which deals with all the details of checking if the file is already opened and parsed, parsing the format, writing the data and closing the file (and doing the latter, for example, only if this is the last writing operation). For others it is more subtle like the Create Bin block, which first appears like a basic API call, but is much more than that:

Screenshot 2022-07-05 at 08.11.05.png

Having a combination of high level blocks which fit well together is the main contribution (and was my main challenge) for Automation Blocks in my perspective.

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
community guidelines
Adobe Community Professional ,
Jul 04, 2022 Jul 04, 2022

Copy link to clipboard

Copied

A custom code wrapper block would also have the advantage that other developers could offer their tools both as standalone tools and as code that can be executed inside of Automation Blocks (similar to how some of my tools offer scripting/kbar APIs)

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
community guidelines
Community Beginner ,
Jul 05, 2022 Jul 05, 2022

Copy link to clipboard

Copied

LATEST

This sounds excellent! thank you!

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
community guidelines