NSTrackingAreaクラス

NSViewでカーソルのトラッキングを行うとき、NSViewクラスのaddTrackingRect:owner:userData:assumeInside:メソッドを使っていましたが、Mac OS X 10.5のときにNSTrackingAreaクラスが追加されて、もうちょっとオブジェクト指向的になっていたことに気がつきました。
機能的にはaddTrackingRect:owner:userData:assumeInside:と違いはないように思いますが、updateTrackingAreasという気になるメソッドがあります。
ドキュメントによるとNSViewのサブクラスを作ったときにオーバーライドして、トラッキングエリアの更新を行えるという位置づけのメソッドです。
NSViewのトラッキングエリアの指定は、ビューのサイズが変わったときや移動したときなどに自動的には追従してくれないので、そのことを意識したメソッドのようです。
動作環境が10.5以降のときはこっちを使った方がスマートですね。

関連記事

  1. 自動アップデート機能のためのフレームワーク

  2. 通販サイトの配達の箱、小さくなって欲しい

  3. Mac OS X 10.5 Leopard ServerでのSubve…

  4. [紹介] あっという間に月25万PVをかせぐ 人気ブログのつくり方

  5. Mac OS Xで環境変数を設定する

  6. iPhoneやiPadでのフォルダはジャンルより作業で区切った方が良さ…

最近の著書

最近の記事