|
Technote 1091
Extensions Manager 4.0
新しいユーザ・インタフェース
機能拡張マネージャ 4.0 の最も大きな変更点は、まず何よりも、次のようなユーザ・インタフェースです。この形式のユーザ・インタフェースは、Apple
Grayscale Appearance と呼ばれます。
図 1 機能拡張マネージャ 4.0 の新しいユーザ・インタフェース

機能拡張マネージャが機能拡張を管理する方法
機能拡張マネージャ 4.0 は、以前のバージョンと同様に、機能拡張の使用と使用停止を切り替えます。使用停止した機能拡張は、現在のシステムフォルダ内にある、元のフォルダ名に「(使用停止)」という文字列が追加されたフォルダに移動されます。また、機能拡張を使用停止フォルダから適切なフォルダに移動して、再度使用できるようします。
このようにアクティブ・フォルダと使用停止フォルダの間で機能拡張を移動することから、機能拡張のデベロッパにとって注意すべき問題が出てきます。
警告:
デベロッパとしてあらかじめ確認しておく必要があるのは、正常にインストールされた、つまりブート時に実行された機能拡張やコントロールパネルが、その後、ブート時とは異なるフォルダに移動される場合があるということです。たとえば、ブート時には“コントロールパネル”フォルダにあったコントロールパネルが、その後、“コントロールパネル(使用停止)”フォルダに移動される場合があります。
逆に、ブート時には実行されなかった、つまりインストールされなかった機能拡張やコントロールパネルが、その後、“コントロールパネル”または“機能拡張”フォルダに移動される場合もあります。これは、そのコントロールパネルや機能拡張が次のブート時に実行されるということです。このような場合は、対象となるコントロールパネルを開こうとしたときに、設定の変更が
Macintosh を次に再起動するまで有効にならないことを知らせるメッセージを表示するのが望ましいといえます。
パッケージ処理
新しいユーザ・インタフェースに加えて、第 2 の大きな変更点として、「パッケージ」を取り扱う機能があげられます。パッケージとは、ひとまとまりで動作する機能拡張のグループのことです。これらの機能拡張は、同じ製造元で開発されたものである場合もあれば、それぞれが機能的に相互に依存している場合もあります。パッケージを基準にして機能拡張のリストを表示すると、ユーザは、マウスを一度クリックするだけ、関連するすべての機能拡張の使用と使用停止を簡単に切り替えることができるようになります。
機能拡張マネージャ 4.0では、次の3通りの方法で機能拡張のリストを表示できます。
- フォルダ単位 (図 1 を参照)
- パッケージ単位
- 個別の項目単位
“フォルダ単位”の表示は、これまでの機能拡張マネージャのリスト表示に似ています。つまり、この方法では、“機能拡張”フォルダや“コントロールパネル”フォルダなどに保存されている項目がそれぞれ別々にリスト表示されます。“項目単位”の表示とは、リストからフォルダ名を削除したものです。この表示方法を使うと、対象となる項目がコントロールパネルであるのか、機能拡張であるのかを考慮する必要がありません。
機能拡張マネージャ 4.0で新しく追加された最も強力な機能は、“パッケージ単位”で機能拡張をソートする機能です。機能拡張マネージャ
3.0.X には、ポップアップ・メニューに“標準システム”というオプションがありました。これは、漢字Talk
7.5 バージョン 7.5.X とともに出荷されている機能拡張の組み込みパッケージを使用するという意味です。機能拡張マネージャ
4.0 では、この考え方をさらに押し進め、それぞれのベンダが直感的かつ柔軟な方法で独自の機能拡張パッケージを定義できるようになりました。
機能拡張マネージャは、'vers' 2 リソースを見て、パッケージを構成します。Finder
では、このリソースを使って“情報を見る”ウインドウに情報を表示します。次に、“情報を見る”ウインドウの例を示します。
図 2 “情報を見る”ウィンドウの例

機能拡張マネージャでは、 'vers' リソースを使って、機能拡張に関する情報をユーザに知らせるだけでなく、同じ
'vers' 2 long version の情報を共有する機能拡張をグループ化します。
次に 'vers' リソースが ResEdit でどのように表示されるかを示します。
図 3 'vers' 情報を表示する ResEdit ウインドウ

機能拡張マネージャ 4.0 は、'vers' 1 リソースの
short version の情報からバージョン番号を取得します。また、'vers'
1 リソースがない場合は、'vers' 2 リソースの
short version の情報からバージョン番号を取得しようとします。
機能拡張マネージャ 4.0では、short version string を使って、機能拡張ファイルのバージョンをウインドウ内に表示しますが、さらに
long version の情報を各機能拡張のパッケージ識別子として使います。short version の情報は、バージョン番号だけに限定されるわけではありませんが、いずれにせよ十分な情報とはいえません。機能拡張マネージャ
4.0のパッケージ機能を利用するには、同じパッケージに属するすべての機能拡張の long
version の情報が完全に一致している必要があります。
システムフォルダ (または、そのサブフォルダ) にインストールされる機能拡張またはその他の項目のベンダが、グループとして動作する複数の機能拡張を開発するときは、対象となるすべての機能拡張の
'vers' 2 リソースにまったく同じ long version の情報を割り当てるだけで、それらを 1
つのパッケージにまとめることができます。機能拡張マネージャ 4.0 では、図 4 に示すように、これらの機能拡張は同じパッケージに属するものとして取り扱われます。
機能拡張のグループを開発するときは、対象となる機能拡張が実際にはグループとして動作するものでなくても、できるかぎりそれらの機能拡張を
1 つのパッケージにまとめるようにしてください。こうすることで、機能拡張マネージャ
4.0 の表示をパッケージ・モードにしたときに、開発した機能拡張が 1 つのソフトウェア・パッケージであることをアピールでき、ユーザから見て非常にわかりやすい形式でそれらの機能拡張を組織化することができます。
図 4 さまざまなパッケージの例

図 4 に示すように、1 つのパッケージに複数の項目が含まれていると、チェックボックスと特殊なパッケージ・アイコンが表示され、さらにパッケージ名
('vers' 2 リソースの long version の情報から取得した情報)
がボールドで表示されます。ユーザは、三角形のアイコンを使って、表示の折りたたみと展開を行い、メイン・パッケージのチェックボックスをクリックするだけで、パッケージ全体の使用と使用停止を切り替えることができます
(図 4 の QuickDraw 3D v1.0.6 パッケージのように)。また、パッケージに含まれる一部の項目だけを使用停止することもできます
(図 4 の Cyberdog 1.1 パッケージのように)。
機能拡張マネージャ 4.0 には、3 通りのステータスを示すチェックボックスが組み込まれています。これを使うと、グループ内の一部の項目が使用されているかどうかが簡単にわかります。これは、インストーラでカスタム・インストールを選んだときに表示されるチェックボックスと同じです。
次のように、チェックボックスに横棒が表示されているときは、グループに属する一部の項目が使用停止になっていることを意味します。たとえば、図
4 の Cyberdog 1.1 パッケージを参照してください。
図 5 パッケージ内の一部の項目だけが使用停止になっているときのチェックボックス
“項目情報”ウインドウ
図 6 に示すように“項目情報”ウインドウは、機能拡張の機能を説明する文字情報の表示場所を提供します。ベンダは、機能拡張ファイルの中に必要な情報を埋め込むことによって、こうした情報を表示できます。機能拡張マネージャ
4.0 では、4 つの場所のいずれかから、このウィンドウに表示する文字情報を取得します。この情報を検索する順序は、次のとおりです。
- まず、リソース
'CCIェ' 128 が検索されます。*1
- このリソースがないときは、システム内部の機能拡張情報データベースが検索されます。
- データベース内で一致する項目が見つからないときは、機能拡張ファイル内でリソース
'hfdr' -5696 が検索されます。これは、Finder
のバルーンヘルプのリソースです。
- 最後に、Finder のヘルプ・ファイルの中で、対象となる機能拡張ファイルに関する情報が検索されます。
次に、MacsBug の 'hfdr' -5696 リソースの例を示します。
図 6 “項目情報”ウインドウ

これら 4 つの場所で情報を見つけることができないときは、デフォルトの情報 ('hfdr' -5696 がないときに、Finder がバルーンヘルプに表示するのと同じ情報)
が表示されます。これは、次のようなジェネリックなメッセージです。
図 7 ジェネリックな項目情報

'CCIェ' (ェ は、option-2
文字、hex AA です) リソースのフォーマットは、'TEXT'
リソース、つまり固有の情報だけを含む純粋なテキスト・ストリームとまったく同じものです。次に、このリソースが
ResEdit でどのように表示されるかを示します。
図 8 ResEdit での 'CCIェ' リソースの表示

'hfdr' リソースのフォーマットは、 Inside
Macintosh:More Macintosh Toolboxで詳しく説明されています。
'CCIェ' リソースを使うと、機能拡張マネージャにユーザにとって有益な情報を表示することができます
(たとえば、対象となる機能拡張の働きや、他に必要となる機能拡張の名前など)。一方、'hfdr' -5696 リソースを使っても、「コンピュータで機能拡張を使用するためには“機能拡張”フォルダに入れておく必要があります」など、機能拡張マネージャのコンテキストでは何の意味もない情報しか表示されません。
更新日 1997 年 1 月 17 日
|