ページ

2008年5月18日日曜日

ThinButton(その5)ボタンの部品化

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

前回からの続き。

最初の実装はボタン1つ1つが NSViewのサブクラスだった。描画からイベントのハンドリングをそれぞれのボタンが行っていた事になる。この方法は個々のクラスの実装は簡単になるが、ボタンが多くなるとリソースを多く使う事になる。また個々の並びを結局利用側で制御することになって面倒だ。


そこで NSViewは一つにして複数のボタンの描画とイベントハンドリングを自前で行なうことにした。


実装はやや複雑になるがこの方法のメリットはボタンの増加にともなうリソース増加を(ちょっぴり)抑えられるのと、レイアウトの責務も持たせることができる。