Re: Grief with porting IB palettes to plugins
Re: Grief with porting IB palettes to plugins
- Subject: Re: Grief with porting IB palettes to plugins
- From: RICKY SHARP <email@hidden>
- Date: Fri, 02 Nov 2007 04:07:43 -0700
On Friday, November 02, 2007, at 05:51AM, "Rainer Brockerhoff" <email@hidden> wrote:
>At 21:29 -0500 01/11/2007, Ricky Sharp wrote:
>>I somehow got past the issue where the plugins refuse to install. Now I'm just back to crashing the Simulator. One thing I just noticed though in IB's list of installed plugins...
>>
>>If I highlight "Cocoa", the "Required Frameworks" section lists Cocoa.framework (and AppleScriptKit.framework) as required frameworks.
>>
>>When I highlight "ClockControl" or my own, the "Required Frameworks" section is empty. All other stock plugins all have at least one required framework listed.
>
>You have to implement this in your IBPlugin subclass:
>- (NSArray *)requiredFrameworks {
> return [NSArray arrayWithObject:[NSBundle bundleWithIdentifier:@"com.yourCompany.yourFramework"]];
>}
>
>So that should fix it.
>
>
>>Thus, perhaps the Simulator is giving me a keyed archiver exception since it cannot actually find the unarchiver class? And that if I somehow set up Cocoa.framework to be required by the plugin that all will be well?
>
>No, from the docs for that method:
>>If your plug-in requires any custom frameworks, such as those containing your custom view code, you must override this method and return those frameworks.
>>Your implementation of this method should return only those frameworks containing your custom object code. You do not need to return any system frameworks your objects depend on.
>
>All this takes some fiddling around, true.
Rainer,
Thanks again; this helps greatly. It's all starting to make sense now. I know when I get home I will definitely be filing bugs against several things to include the ClockControl sample and stock IB plugin template in Xcode. Both need to give you something working out-of-the-box.
I'll double-check the docs too for any mention of overriding requiredFrameworks. I've been only concentration on the "quick start" section so that's probably why I didn't see it before. Still, the quick start section should include such a step.
Finally, I did find IBFragmentView sample code, but it's half-baked at most. The biggest problem with that sample is that the plugin extension still uses ".bundle". Even after renaming to ".ibplugin", I think it also suffers the dependent frameworks issue.
If all goes well this weekend, I'll have some of my own samples that I can publish.
--
Rick Sharp
Instant Interactive(tm)
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden