NSToolbar

NSToolbar

Application Kit - NSToolbar

ツールバーを使って、タブを選択する

Keywords: Preferences, NSTabView

最近のアプリケーションでは、ツールバーを使って、その下にあるタブを選択するタイプのパネルが多いよね。環境設定とかでよく使われる。たとえば、Safari の環境設定パネルは次のような感じだ。

safariPref.jpg

このパネルは、上部に NSToolbar があって、下に NSTabView があるっていう構成になっている。これを作ってみよう。

作り方は、まず Interface Builder で nib を編集する。メインとなる NSTabView を貼付ける。そのときに、Attributes パネルで Tabless を選択しておこう。タブレスのタブを編集するには、Instances パネルで階層表示するのが便利。そして、NSToolbar のデリゲートとなるクラスを作る。このデリゲートには、アウトレットとしてウィンドウとタブへの参照を持たせておく。

実装では、まず初期化時に、デリゲートクラスで NSToolbar のインスタンスを作る。そして、ウィンドウに設定してやるんだ。NSToolbar のデリゲートとして、自分自身を設定しておこう。

そして、NSToolbar のデリゲートメソッドを実装する。NSToolbarItem の識別子を返して、NSToolbarItem の実体を作成して返すようにする。そのときに、NSToolbarItem のアクションとして、showTab: というような、セレクタを設定しておこう。showTab: メソッドでは、sender として送られてくる NSToolbarItem の識別子をもとにして、タブを選択すればいいんだ。

実行画面は、こんな感じ。Safari のアイコンを借りてみた。

tabViewWithToolbar.jpg

ソースコードは、こちら。

■サンプルダウンロード:
tabViewWithToolbar.jpg

Application Kit