You don't have to build a separate version. Just test for method availability at runtime:
if ([NSEvent respondsToSelector:@selector(pressedMouseButtons)]) return [NSEvent pressedMouseButtons]; else // do it the old way. Le 23 févr. 2010 à 23:18, Joel May a écrit : > Hey Eric, > > This is very helpful. I'll take a look at [NSEvent pressedMouseButtons]. I > still have to support tiger and leopard, but I'll build a separate snow > leopard version and #ifdef that call in there. > > I've had the heebie-jeebies about including the Carbon framework in my > application. But I'm cool with it now. > > Thanks, > Joel > > > > On Feb 23, 2010, at 1:15 AM, Eric Schlegel wrote: > >> >> On Feb 22, 2010, at 11:53 AM, Joel May wrote: >> >>> I would like to create a thread (NSThread) with a bumped-up priority and >>> poll the mouse and keyboard the same way I did in the carbon version. I'd >>> like to use the cocoa equivalents of GetButton() and GetKeys() but I can't >>> find them. >> >> GetButton() [by which I think you actually mean Button()] - the Cocoa >> equivalent is +[NSEvent pressedMouseButtons], available in 10.6 and later >> GetKeys() - I don't believe there is currently a Cocoa or CoreGraphics >> equivalent (but could be wrong!). It's perfectly fine to continue using >> GetKeys(). >> >>> Am I safe using these api's. Are we supposed to not use them? >> >> You are safe using these APIs. They are still supported. We recommend that >> you use Cocoa equivalents when available - so you could use +[NSEvent >> pressedMouseButtons] on 10.6 and later, and Button() on 10.5 and earlier. >> >>> Will they go away in 10.7? >> >> No, because that would break many existing applications, and we place a high >> priority on not breaking existing applications. >> >>> Why do I read everywhere that carbon is dead and high level toolkit is >>> dead? >> >> Because many people are misinformed. Apple no longer recommends Carbon for >> new application development - Cocoa is recommended for all new development - >> but Carbon is not being removed from the OS either, because that would break >> existing applications. The High Level Toolbox APIs will continue to be >> supported for 32-bit apps and some parts of HLTB will also still be >> supported for 64-bit in cases where there is no other 64-bit equivalent. >> >>> If High Level Toolkit is ok, then why doesn't it appear in the docs. If I >>> search the Mac OS X Reference Library, it does not get the same treatment >>> that the cocoa api gets. >> >> You'd have to ask Apple Developer Relations about that. I'm just a grunt >> engineer. :) >> >> -eric >> > > _______________________________________________ > > 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/devlists%40shadowlab.org > > This email sent to devli...@shadowlab.org -- Jean-Daniel _______________________________________________ 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