サブウィンドウの設定方法

uLilithフェイスは、特定のコマンドを使用することにより
別のフェイスをサブウィンドウとして表示・使用することができます。
これによりサブウィンドウでのプレイリストやイコライザなどを作成することができます。


サブウィンドウに使用するフェイスの作成

サブウィンドウを作成する場合は、
まずサブウィンドウとなるフェイスをメインのフェイスとは別に作っておいてください。
基本的には通常のフェイスと同じように作ってください。
メインとサブで同じ機能のアイテムがあっても問題ありません。
BackImageアイテムで背景を作ったフェイスも同時に複数表示することができます。

ただし、「プレイリストを表示しているウィンドウ」は1つしか表示できません。
Category = Playlistのアイテムは全ウィンドウ合わせて同時に1つしか表示できません。)

サブウィンドウとして使用するフェイスが用意できたら、
サブウィンドウ側の定義ファイルの拡張子を*.txtなど
 *.ini以外に書き換えておきます。
iniのままだとフェイスセレクタ上に表示されてしまうので、それを防止するためです。


サブウィンドウを呼び出すコマンドの設定

サブウィンドウを呼び出すコマンド - CreateSubFaceコマンド

メインウィンドウ側の、「サブウィンドウを呼び出す」アイテムに
CreateSubFaceコマンドを記述します。
CreateSubFaceに指定するパラメータは以下のように、
「サブウィンドウ名」「使用する定義ファイル」「表示位置(x, y)」の順で指定します。
Command = CreateSubFace
CommandParamType = String
CommandParam = PlaylistWindow, .\subwindow\playlist.txt, 10, 200

※「サブウィンドウ名」はフェイス内部で使用するウィンドウの名前で、
   サブウィンドウに使用する定義ファイルのファイル名やFaceNameとは別のものです。
   ウィンドウの開閉時などに対象のサブウィンドウを示す名前として使用されます。
   メインウィンドウ内のアイテムのフィールド名と同じような扱いのものと考えてください。
   「表示位置(x, y)」はメインウィンドウの左上位置から数えて
   横方向(x)・縦方向(y)の位置をピクセル単位で指定します。
   メインウィンドウの左上からみたPosX・PosYのようなものと考えてください。

上の例では
「PlaylistWindow」というサブウィンドウを、
「subwindowフォルダの中のplaylist.txt」を使用して
メインウィンドウの左上位置から「右に10px」、「下に200px」の位置に表示する
ということを示しています。

このCreateSubFaceコマンドを記述したアイテムをクリックすると、
指定した定義ファイルのフェイスが
コマンドパラメータに指定した設定でサブウィンドウとして表示されます。
なお、最後の座標を0,0とすると、サブウィンドウはメインウィンドウに重なって表示されます。

表示されたサブウィンドウはメインウィンドウと同じように移動・操作ができます。


サブウィンドウを閉じるコマンド - DeleteSubFaceコマンド

サブウィンドウを閉じる場合はDeleteSubFaceコマンドを使用します。
開く場合と違い、このコマンドは対象のサブウィンドウ名を指定するだけで動作します。
Command = DeleteSubFace
CommandParamType = String
CommandParam = PlaylistWindow

DeleteSubFaceコマンドはメインウィンドウ内のアイテムに指定するだけでなく、
サブウィンドウの定義ファイル内にも使用し、サブウィンドウ自身で閉じることもできます。
「閉じる」ボタンに相当するサブウィンドウ内のアイテムには
DeleteSubFaceコマンドを指定しておいてください。


サブウィンドウを開閉するコマンド - ToggleSubFaceコマンド

また、CreateSubFaceDeleteSubFaceを兼ねたToggleSubFaceというコマンドもあります。
このコマンドでは指定したサブウィンドウが無いときは表示、
指定したサブウィンドウがあるときは閉じるという動作をすることができます。
パラメータの指定はCreateSubFaceと同じように、
「表示する/閉じるサブウィンドウ名」「使用する定義ファイル」
「ウィンドウを表示する場合の表示位置(x, y)」の順で指定します。
Command = ToggleSubFace
CommandParamType = String
CommandParam = PlaylistWindow, .\subwindow\playlist.txt, 10, 200

メインウィンドウ側に配置するサブウィンドウ開閉スイッチは
ToggleSubFaceコマンドにすると便利です。


サブウィンドウ使用上の注意

サブウィンドウを使用した場合、どのウィンドウをクリックしても
uLilithはアクティブになり操作可能になりますが、
ActiveTypeキーによるアイテムの表示制御に関しては
ウィンドウごとにアクティブ状態が個別に設定されているので、
例えばメインウィンドウがアクティブの場合、
サブウィンドウでは同じActiveTypeで表示はされず、
ActiveTypeキー設定があるアイテムのうち、メインウィンドウではActiveOnlyのアイテムが、
それ以外の全てのサブウィンドウではInactiveOnlyのアイテムが表示されることになります。

プレイリストに関しても単一ウィンドウのときと同じで、
プレイリストがアクティブ(リスト内をクリックしてリスト操作中)のときは
プレイリストを表示しているウィンドウ内のActiveTypeキー設定があるアイテムと
それ以外のウィンドウ(メイン・サブ全て)のActiveTypeキー設定があるアイテムは
InactiveOnlyのアイテムのみが表示されます。

プレイリストつきのウィンドウを表示した場合、
メインウィンドウにドッキングプレイリストをつけたときと同じく
右クリックメニューで開くuLilithデフォルトのプレイリストは開けなくなります。
(デフォルトプレイリストを開いている状態でプレイリストのサブウィンドウを開くと
 デフォルトプレイリストが自動的に消えます)

イコライザの場合はプレイリストと違い
右クリックメニューで開くデフォルトのイコライザと同時に表示できます。
(イコライザのサブウィンドウは単にイコライザ操作ができるスライダや
 スイッチが配置されているだけの普通のフェイスと認識されるので、
 サブウィンドウもデフォルトのイコライザのどちらも同時に表示できます。)
最終更新:2013年02月13日 14:30