• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Custom Panel UI

New Here ,
Sep 04, 2008 Sep 04, 2008

Copy link to clipboard

Copied

I'm developing for AE CS3 on Windows.

Is it possible to create my own panel UI through the C++ interface?

I've found how to do it with the ScriptUI system, which is pretty slick, but the functionality I'm working on is a bit big, hairy, and scary to think of doing all in JavaScript.

Is the panel UI creation stuff only exposed to JavaScript and not to C++?

Thanks in advance for your insight.
TOPICS
SDK

Views

4.5K

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 Expert ,
Sep 06, 2008 Sep 06, 2008

Copy link to clipboard

Copied

yes, you can create panels using the sdk in c++ (there is at least one sample that does so that's included with the sdk),
but,
creating panels using java scripts and creating them using the sdk and c++ are two VERY different methods.
as far as i know, these two methods don't mix.
it seems that you'll have to choose either the one (uncompiled java script), or the other (compiled c++ code using the sdk).
sorry.
:-(

Votes

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
New Here ,
Sep 09, 2008 Sep 09, 2008

Copy link to clipboard

Copied

It's okay. I don't want to mix JavaScript and C++.

I'd like to build a panel of my own with the C++ SDK interface.

I can't decipher some of the samples, and I don't see anything in the SDK documentation about building panels with the C++ interface.

Could you possibly provide me with some more details on how to build a panel with the C++ SDK interface? Or can you direct me to some documentation describing how to build a panel with the C++ SDK interface?

Thanks for your reply.
-Harold

Votes

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 Expert ,
Sep 09, 2008 Sep 09, 2008

Copy link to clipboard

Copied

the sample that builds a panel is called: panelator.
it ships with the cs3 sdk. (AE8.0 sdk)

the reason you didn't find any information about it, is because it's undocumented.
it's not mentioned anywhere. but none the less, there it is.
if it doesn't load with the rest of the samples in the BuildAll.sln then look for it in the AEGP samples folder.

panelator creates a dockable panel (such as the info or tracker panels). it shows some info and has a custom built button.
once compiled, you'll find it in the window menu as "Panelator!".

for someone developing a panel based plug-in, what could be better?
:-)

Votes

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
New Here ,
Sep 10, 2008 Sep 10, 2008

Copy link to clipboard

Copied

Thanks for your help. The panelator does indeed build a panel in C++.

Since this is all, as you mention, undocumented... Perhaps you also know the answer to a couple of other questions:

1) The panelator seems to be drawing it's own controls. Is there a way to use the AE controls so that my panel will look like the rest of AE? For example, is there some way to get the nice AE drop-down menus with the rounded corners?

2) Can my panel respond to the user selecting different items in the AE UI? For example, I want to show 1 UI in my panel when footage is selected and another UI when a composition is selected. Is this possible? (Like, is there some 'selection' callback I can subscribe to?)

Thanks again!
-Harold

Votes

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 Expert ,
Sep 11, 2008 Sep 11, 2008

Copy link to clipboard

Copied

1) i looked into that and found a good way to generate migraines, and nothing else.
perhaps you should look at the ADM commands and see if they apply to panels as well (which i doubt).
I didn't do a thorough search, but it's possible that it's entirely up to you to draw the controls in the panel.
if you want your panel to look AE-ish, then the fonts and colors used by AE are mentioned somewhere in the documentation.

2) yes you can do that.
selections are referred to as "collections" in the sdk.
there's a collection suite that enables you to read/change the current selection.
when the user changes the selection AE sends an update command to all plug-ins who requested to to be notified (i can't remember that command's name). so given your plug-in gets called upon whenever the collection changes you can change the content of your panel accordingly.

another way to go about this problem is to use "idle hook".
idle hook is a command requesting AE to tell you when it's got some free CPU time.
that usually happens 10-20 times per second whenever AE doesn't render anything.
you can use that command for a quick check of the current collection as well.

Votes

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
New Here ,
Sep 11, 2008 Sep 11, 2008

Copy link to clipboard

Copied

Sir,

Thank you kindly for your help. You're by far the most helpful person I've run into on this forum and I wan't you to know I really appreciate it.

With regards,
-Harold

Votes

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 Expert ,
Sep 11, 2008 Sep 11, 2008

Copy link to clipboard

Copied

just trying to put my insomnia into good use...

Votes

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 Employee ,
Sep 23, 2008 Sep 23, 2008

Copy link to clipboard

Copied

Nice work, Shachar!

There's no API for drawing AE's own controls in your own panel.

Votes

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
Engaged ,
Jun 08, 2017 Jun 08, 2017

Copy link to clipboard

Copied

Sorry to revive the dead (And in the wrong SDK environment), but would any of you happen to know if this is possible in CS6?

Votes

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
Guest
Jun 12, 2017 Jun 12, 2017

Copy link to clipboard

Copied

As far as I know, still not possible to use native AE control elements in custom panels from the C++ side, even with the latest SDK. The most common/convenient way in my opinion is to build a Javascript panel that sends commands to the C++ effect/plugin.

Votes

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 Employee ,
Jun 12, 2017 Jun 12, 2017

Copy link to clipboard

Copied

HTML5 / JavaScript panels are the recommended way going forward.  They are supported in CC 2014 and later, but not in CS6.

Votes

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
Engaged ,
Jun 12, 2017 Jun 12, 2017

Copy link to clipboard

Copied

LATEST

Thanks Toby and Zac, yeah I am just going to be creating a QT UI moving forward.

Votes

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