Menu Enhancer
<download MenuEnhancer>(Mac OS X 10.3.x 専用)
| MenuItemDivider Caps > img#2 - Left,Right Blue : 128, Graphite : 153, Clear : 152 |
| MenuItemDivider Fill > img#1 Blue : 129, Graphite : 155, Clear : 154 |
| Root Menu Item Caps > img#3-N,P,D Blue : 130, Graphite : 157, Clear : 156 |
| Root Menu Item Fill > img#3-N,P,D Blue : 131, Graphite : 159, Clear : 158 |
| Text Menu Item Caps > img#6-NL,PL,DL,NR,PR,DR Blue : 132, Graphite : 161, Clear : 160 |
| Text Menu Item Fill > img#3-N,P,D Blue : 133, Graphite : 163, Clear : 162 |
このリソース群はpadma colors及び旧www.desktopper.netで作成したもので、メニューのカスタマイズを拡張するものであり、ThemeParkに採用されたものです。
このエントリーではExtras.rsrc上でのカスタマイズについて書かれますが、tparkファイルでのカスタマイズについてはguiKitカテゴリー内のエントリーを参照して下さい(参考リンク1、参考リンク2)
先ず、Extras.rsrcファイルを2つコピーしておきます(バックアップ用)。 ダウンロードしたアーカイブを展開すると、中にMenuEnhancer.rsrcというリソースファイルがありますので、バックアップを作成してあるExtras.rsrcに、MenuEnhancer.rsrc内のリソースを全て上書きペーストすればインストールは完了です。
追加されたpxm#リソースには全て新規IDを割り振ってありますが、これは変更しないで下さい。 また、新規にIDを割り振ってありますので、従来のリソース(画像)データは温存されます。 移植の際の目安にして下さい。
Template resourcesフォルダー内のリソースファイルは全てResEdit用テンプレートです。 これらはlayoリソースの編集に使われますので、必要があればその都度tmpl ID 128でExtras.rsrcにペーストし、ResEditで該当layoリソースを開き、以下の説明に従ってカスタマイズを進めて下さい。
★--
MenuEnhancerは次のカスタマイズを行えます。
■Caps-Fill形式のMenuDivider (pxm# 128,129 - layo 263)
ThemeParkでは***** Menu Divider (Caps or Fill)です。
Mac OS X 10.3より、メニューの仕切り線が導入されました。 しかしながらこれは1リソースで、それをタイル状に描画するのみです。 MenuEnhancerのリソースはCaps-Fill形式ですので、もう少し複雑なデザインを可能にします。
サンプルデザインでは、Capsの左右がそれぞれ赤と緑、Fillは上下がそれぞれ黄とピンク、そして中央部分が青で描画されます。 この青のラインがデフォルトの位置です。 単に線を引くだけであればCaps上の位置をこれに合わせます。
高さは描画制限となる12pxとなってます。 描画する部分だけイメージを構築し、非描画部分はマスクを外して下さい。 アプリケーションによっては描画不具合を生じるかも知れません。 その場合は背景と同じパターンで描画させます。
テンプレート(layo263tmpl.rsrc)を用いて設定を変更する場合には以下の仕様で行います。
・Height:高さです。 ストレッチ描画の際の描画不具合発生に値を13にする他は、出来るだけ変更しないで下さい。
・Alignment:デフォルトは-1です。 ストレッチ描画の際、描画不具合が発生しましたらこれを-3に設定して下さい。
・Left:Capsの左側の描画領域です。 pxm#リソースではなく、ここで描画領域を設定します。 非描画とする場合は0で設定します。
・Right:Capsの右側の描画領域です。 描画の基点は右端となりますので、マイナスで入力します。 例えば3pxだけ描画させたいのであれば、「-3」と設定します。
・Stretch:4箇所あります。 デフォルトは全て1であり、変更の際は4箇所全てを同じ値にします。 0とするとタイル描画となります。 1はストレッチ描画です。
■ルートメニューアイテム (pxm# 130,131 - layo 260)
ThemeParkでは***** Root Menu Item (Caps or Fill)です。
デフォルトの仕様では、ルートメニューは背景全体をCaps-Fill形式で描画するのみで、Selectedの仕様も簡潔です。
MenuEnhancerは、ルートメニュー上のアイテムの背景をCaps-Fill形式で描画させます。 イメージカウントはNormal/Pressed (Selected)/Disabledと、他のコントロールと同程度のカスタマイズを可能とします。
テンプレート(layo260tmpl.rsrc)を用いて設定を変更する場合は
・Interval:左Capからの間隔です。 アイテム間の幅を狭める事も広げる事も可能です。
・Stretch:描画方法です。 0だとタイル状に、1でストレッチ描画となります。 4箇所全て統一させなければなりません。
このカスタマイズはステータスメニュー(拡張子:menu)には適用されません。 pxm# 2063は必ずカスタマイズしておきましょう。
■ルートメニューの描画方法
これはテンプレート(layo256tmpl.rsrc)を使って設定します。
Left Cap: 左側のCapの描画領域。 pxm#リソースではなくここで指定します。 非描画にするには「0」で設定して下さい。
Right Cap: 右側の描画領域。 描画の基点は右端となりますので、マイナスで入力します。 例えば3pxだけ描画させたいのであれば、「-3」と設定します。
1line Stretch (for Panther) // 4-Default , 3-Stretch:
下の描画設定でストレッチ(「1」)を指定した場合、ここを「3」に変更する事が可能となります(尚デフォルトは4です)。 4のままですと、メニューテキスト部分の背景が天地逆となります。 3に変更すると全ての領域をストレッチしますが、用いられるのはpxm# 2029の上部1ラインのみとなってしまいます(下部の残り21px分は非描画)。
Stretch:0でタイル状、1でストレッチ描画(メタルアピアランスの様に描画出来ます)。 修正個所を4つ設けましたが、設定するのは最初の部分だけで構いません。
■プルダウンメニューアイテム (pxm# 132,133 - layo 261)
ThemeParkでは**** Menu Item (Caps or Fill)です。
コンテクストメニューを含むプルダウンメニューの項目の背景をCaps-Fill形式で描画させます。 これは背景(pxm# 2061)の上に描画されます。
Capsのイメージカウントは6で、Normal/Pressed (Selected)/Disabledのデザインを左右一組で構築します。
テンプレート(layo261tmpl.rsrc)を使っての設定変更は
・Left Cap:Caps左側の描画領域です。 非描画の場合は0と設定します。
・Right Cap:Caps右側の描画領域です。 値にマイナスをつけます。 例えば5pxでしたら「-5」と設定します。
・Stretch:描画方法で4箇所あります。 デフォルトが1(ストレッチ描画)ですので、これをタイル状に描画させるのであれば4箇所とも0と設定します。





