ページ

2009年2月19日木曜日

ドラッグ&ドロップ(4)マウスカーソルにプラスマークを

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

ファインダへのドロップ時にマウスカーソルにプラスマーク(+)をつけたい。これは draggingSourceOperationMaskForLocal: を使うと簡単にできる。

- (NSDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal
{
return NSDragOperationCopy;
}


このメソッドはドラッグ&ドロップ開始で使った dragImage:at:offset:event:pasteboard:source:slideBack: を呼出したビューに対してコールバックされる。ドラッグ中、ドラッグ先が変化するたびに呼出される。戻り値は NSDragOperation で定義されていて、今回は NSDragOperationCopy を返すようにした。

さて実行してみよう。以前はマウスカーソルにプラスマークが付いていなかった。


それがこうなる。