Kaze-Gumi

日記

2008-10-08-01(水)

xPopup.dll

ポップアップメニューを表示するモジュールである
画面を右クリックしたり、スタートボタン押したらポンと出るメニューの類のこと

現在使用しているのは、xPopup-2.0.3だが、
やはり、ややマシンパワーを必要と感じることがある
ただ、これは「!PopupFolder」系の動的読み込みをさせたとき
つまり、メニュー項目設定をフォルダ等から自動で読みにいかせるようなときに
負荷がかかってしまうだけのことであって(よく考えたら当然だろう)
あらかじめ、自分で表示項目をrcに書いていれば、そこまでたいして重くもない

「xPopupCachelevel」という設定項目が用意されているのだが
これは、キャッシュ化しておき、再表示したときに早く出すもので
ヘルプによると、

0: Nothing (Default)
1: *Popup "Folder" !Popup... Folders are cached
2: SubFolders of 1 are cached

こうなってるらしい(つまり、通常はキャッシュ使用なし)
ただ、これを使用するように設定すると、
LS起動時に下の階層のフォルダまで読みにいくことになるので
状況によっては、起動時間がかかってしまう
まあ、リソースもその分使うし、0のままでいんじゃねって感じがしないでもないw

xPopupもxPaintClassを利用して描画するので、基本的には設定の書き方は同じなのだが
その機能上から、いくつか表示タイプに分類されることになる

Entry: ノーマル表示行
ActiveEntry: Entryがマウスなどで選択状態になった行
Folder: フォルダ行(子のメニュー階層を持たせる)
ActiveFolder: Folderがマウスなどで選択状態になった行

通常は、この4つを設定すればよい
もっと絞ればFolderの設定もEntryのものを引き継ぐので書かなくてもよい

Title: タイトル行(最上部、あるいは最下部に表示できる)
Separator: 項目行間のセパレータ(分割線)

なんか他にもあるっぽいが(info行とか矢印表示とか)
あんま書くとわけわかんなくなるから
とりあえず、これらのタイプごとの設定は

xPopupEntryColors c9c9c9
xPopupActiveEntryColors ffffcc

このように「xPopup(タイプ)〜」の形で書く
もちろん、セパレータのように文字が存在しないものにFontとか指定しても無駄である

xPopupという部分も、厳密にいうと、これが固定ではないのだが
それに関しては別記する

Relay Keyword's Recent Title

Recent Images

img-03img-02img-01img-01img-01img-01img-02img-01img-02img-01

Next: 何はともあれxPopupの最低限の設定を書いてみる | 2008-10-08 | 2008-10 | 2008 | RSS | 最新の日記