Thanks Christopher !
(think) i understand my ignorance :)
Better to run it only when the instance of the plugin is created :
- (BOOL) execute:(id<QCPlugInContext>)context atTime:(NSTimeInterval)time
withArguments:(NSDictionary*)arguments
{
if (self.inputOpenPanel==YES)
{
NSOpenPanel *myDearWindow =[NSOpenPanel openPanel];
if ([myDearWindow runModal] == NSOKButton)
{
NSArray *fileToOpen = [myDearWindow filenames];
self.outputPath=[fileToOpen objectAtIndex:0];
}
}
return YES;
}
In this case it's magically working as expected (hour-a !)
JeanMArc
Le 21 août 2010 à 06:09, Christopher Wright a écrit :
>> I'am trying to write a simple QCPlugin that open an OpenPanel and return the
>> path to an output port.
>
> JeanMarc, you are already too talented! :)
>
>> - (BOOL) startExecution:(id<QCPlugInContext>)context
>> {
>>
>> if (self.inputOpenPanel==YES)
>> {
>> NSOpenPanel *myDearWindow =[NSOpenPanel openPanel];
>> if ([myDearWindow runModal] == NSOKButton)
>> {
>> NSArray *fileToOpen = [myDearWindow filenames];
>> self.outputPath=[fileToOpen objectAtIndex:0];
>> }
>>
>> }
>> return YES;
>> }
>>
>> i'am not very successful with this code, the plugin compile fine but the
>> openPanel doesn't open when the input port is set to TRUE.
>> Any Idea ?
>
>
> -startExecution:(id)context is called _before_ the composition is executing
> -- at that point in time, the input ports are usually undefined (their
> default values, or 0 / nil).
>
> Opening a panel automatically probably isn't a good idea (generating
> thumbnails and other mundane operations will be confusing to the user), but
> for a special case it might be ok. In that case, you might want to skip the
> if(self.inputOpenPanel == YES) check (but then it will always open).
>
> --
> Christopher Wright
> [email protected]
>
>
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com
This email sent to [email protected]