Control drag hidden constant

I’m blogging this so it will be indexed by the great search engine in the sky, and perhaps save some Mac programmer out there a little time. The new control drag-and-drop Carbon Events are only partially documented. In addition to returning noErr from your kEventControlDragEnter Carbon Event, you need to set the kEventParamControlLikesDrag parameter to true if you want to receive the drag. Unfortunately this constant is missing from the headers. The correct value is: ‘cldg’.

Your code should look something like this:

Boolean t = true;

SetEventParameter (inEvent, ‘cldg’ /kEventParamControlLikesDrag/, typeBoolean, sizeof(Boolean), &t);

These new events were introduced in Mac OS X 10.2, and they are quite convenient. Happy coding.

Manton Reece @manton