The description of what you're trying to do is a bit vague, but
couldn't you just create an NSToolbarItem with a custom view? You
might need to do a few tweaks if it needs to resize with the window,
but that sure seems easier than trying to circumvent the framework as
you are describing. You'd be able to do virtually anything you want in
that custom view and you wouldn't be necessarily fighting the
framework.

Alternatively, you could just create a custom view that is placed at
the top of your content view of the window and just ignore the
NSToolbar class completely.


On Thu, Aug 25, 2011 at 9:46 PM, Indragie Karunaratne
<cocoa...@indragie.com> wrote:
> Is there any other way to do this aside from what I'm doing right now? As far 
> as I know, I have two choices:
>
> a) Use this method and risk something breaking
> b) Write an NSToolbar clone
>
> I know the risks, but if I could get this to pass through Mac App Store 
> submission then I'd rather deal with possibility of something breaking later 
> on that than to rewrite NSToolbar. The one last thing I can think of is to 
> use the ObjC runtime to retain the original implementation, swizzle hitTest: 
> and check whether my view is under the cursor, and if not, just call the 
> original implementation. However, method swizzling always feels like a dirty 
> workaround so I'm not sure if it would be much better than this (and if it 
> would be acceptable in the MAS).
>
> On 2011-08-25, at 10:40 PM, Quincey Morris wrote:
>
>> Ah, well, yes, if IB doesn't expose the class you need, that makes 
>> subclassing impractical. But in that case, replacing the NSToolbarView 
>> method seems even more undesirable.
>>
>>
>> On Aug 25, 2011, at 20:55 , Indragie Karunaratne wrote:
>>
>>> I'm not sure how I would get NSToolbar to use my subclass of NSToolbarView. 
>>> I can't set the class of the toolbar *view* itself in IB (nor 
>>> programatically, as far as I know), because NSToolbarView is a private 
>>> class that NSToolbar uses to implement the UI. I can of course change the 
>>> class of the NSToolbar object itself to a subclass, but this wouldn't help 
>>> me much as there is no public NSToolbar method that allows me to change the 
>>> class of its view.
>>
>>
>
> _______________________________________________
>
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
>
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/unmarked%40gmail.com
>
> This email sent to unmar...@gmail.com
>



-- 
Mark Munz
unmarked software
http://www.unmarked.com/
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to