Re: question on refreshing parameter data between instances.
Re: question on refreshing parameter data between instances.
- Subject: Re: question on refreshing parameter data between instances.
- From: Paul Schneider <email@hidden>
- Date: Mon, 17 Aug 2009 12:36:19 -0500
Hi Jay,
A long-standing and frustrating issue with Final Cut is that, when we
open a saved project, we don't check with the plugin to see if its
parameter list has changed. So if you have added or removed
parameters, the project won't be updated. If one of your parameters
has changed its name, the project won't be updated. If one of your
parameters has changed its min or max value, the project won't be
updated. If the user adds a new instance of the plugin, they'll get
the new parameter list, but existing instances from saved projects
aren't updated.
Font menus are a specific symptom of this problem which are
particularly troublesome. You don't have to change your parameter list
to hit this problem; you only need to move the project to a second
machine with a different font setup.
The best way to handle this is to not use a popup parameter for your
font parameter. Instead, use a custom parameter. Your parameter's
custom UI can be a simple popup menu listing the fonts, but since you
are managing the UI, we will ask you to recreate it every time the
project is opened, so it will always be up to date. And the parameter
data can be the name of the font, which will remain valid even if the
font list changes, unlike an index into the font list.
I've been meaning to write a sample plugin that uses this technique,
since it is a pretty common problem. Making such a custom parameter is
not a ton of work, but more than you should have to do for such a
common operation.
- Paul
On Aug 11, 2009, at 12:53 PM, Jay Boyer wrote:
The FxPlug I am working on generates several lists in the drop down
UI.
These are lists of things that can be changed by user Input between
instances of our plug-in being launched. For example, one of these
is the
user font list.
Here is the scenario:
Run FCP
Apply the plug-in
Save and Exit
Install some fonts on the system
Reopen FCP
The font list in our plug-in is not up to date.
At some point in time during our launch process I would like to be
able to
check the plug-in's UI for the font drop-down that was previously
created,
delete that list in the drop-down and rebuild the list from the
current
system font table. I did a quick test where I tried to get a
parameter in
-initWithAPIManager but the parameters do not seem to be available
at that
time.
A related issue: At shutdown time I would prefer only to save the
user's
choice of font, possibly by reducing the font dropdown list to 1
item or by
saving the font in a hidden string parameter.
These things can be worked around by having the user delete our plug-
in out
of the sequence and reapply it along with their settings, but I
would prefer
not to burden the user with this if at all possible.
Is there a way to replace drop down list contents in the UI after
they have
been added with -addParameters?
Is there a point in the boot sequence that I can detect that the
plug-in is
from a prior instance so that I can update these lists?
Jay Boyer
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Pro-apps-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Pro-apps-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden