[リストへもどる]
一括表示

タイトルMIEL風のPPc・PPvドッキング+連動ビュー
記事No4685
投稿日: 2024/10/19(Sat) 22:45
投稿者やま
PPxのWindow Moduleを入れた状態で

*dock add,b, /once /size:%*windowrect(,w)*%*calc("%*windowrect(,h)*2/3") "%0PPVW.EXE" -bootid:X

として、PPcの下にPPv[X]をドッキングさせます。
この後、PPcの窓透明度設定を変えるとドッキングが必ず
外れるのですが、これを外れないようにする方法はないでしょうか?

また、この状態でファイルを選択した後
*dock drop,b,PPV としたら、ドッキングしたPPvに内容を
表示出来るのですが、アニメーションgifファイルみたいに
読み込んだ時linemessageが出るファイルについては
一度表示されたら、*dock drop,b,PPVで他のファイルを
表示させてもずっとメッセージが消えません。
他のファイルを読み込んだときにメッセージを消すか
読み込んだファイルに合ったメッセージを出す方法は
ないでしょうか?



今回やりたいことは、PPc・PPvの連動ビューを、WinFDのMIELモード
(ttps://www.starseed.ne.jp/winfd/sample.html)みたいな
見た目にしたいと思ってまして、Window ModuleとText Moduleを入れて
以下のカスタマイズでそれらしいことができるのですが
上記2点が気になりまして、良い方法がありましたらアドバイス
お願いいたします。

KC_main = {
\Y ,*rotateexecute mielmode,*mielsyncon X %%:*ppvoption sync on,*mielsyncoff %%:*ppvoption sync off
}

_command = {
mielsyncon = *ppvoption sync off %:*closeppx V%*arg(1) %:*dock add,b, /once /size:%*windowrect(,w)*%*calc("%*windowrect(,h)*2/3") "%0PPVW.EXE" -bootid:%*arg(1) %:*dock drop,b, PPV
mielsyncoff = *dock delete,b,PPV
}

_others = {
SyncViewID = X
}


タイトルRe: MIEL風のPPc・PPvドッキング+連動ビュー
記事No4688
投稿日: 2024/10/20(Sun) 22:10
投稿者TORO
> この後、PPcの窓透明度設定を変えるとドッキングが必ず
> 外れるのですが、これを外れないようにする方法はないでしょうか?

設定変更による再カスタマイズ時にdockも初期化されるためですね。
対処できるか検討しますが、ひとまず再カスタマイズ時に
*dock add /once を再実行してください。


> 読み込んだ時linemessageが出るファイルについては

*linemessage は、キーを押すか、マウス操作をするか、「*linemessage」で消去するかをしないと表示を消しません。
*dock sendkey,b,PPV,home home を実行するなど、予め消して
おくのはどうでしょうか。


タイトルRe^2: MIEL風のPPc・PPvドッキング+連動ビュー
記事No4691
投稿日: 2024/10/21(Mon) 03:38
投稿者やま
> 設定変更による再カスタマイズ時にdockも初期化される

是非とも対処ご検討よろしくお願いいたします。

> *dock sendkey,b,PPV,home home を実行するなど、予め消しておくのはどうでしょうか。

ご教示ありがとうございます。KC_mainのSELECTEVENTに
*ifmatch *V_X*,%*ppxlist(-V) %: *dock sendkey,b,PPV,home home
として、ひとまず解決しそうです。


タイトルRe^3: MIEL風のPPc・PPvドッキング+連動ビュー
記事No4692
投稿日: 2024/10/23(Wed) 23:20
投稿者やま
*string o,num =1
%mloop
echo %so"num"
*if %so"num" == 5 %:*goto loopout
*string o,num=%*calc("%so"num"+1")
*goto loop
%mloopout
echo end

これを実行すると
出力:1 end
となり、*goto loopから%mloopoutにジャンプしているようです。
これは仕様でしょうか?


loopout → lopoutと改名して

*string o,num =1
%mloop
echo %so"num"
*if %so"num" == 5 %:*goto lopout
*string o,num=%*calc("%so"num"+1")
*goto loop
%mlopout
echo end

これを実行すると
出力:1 2 3 4 5 end
となり、期待通りになります。



複数IDのPPcに対してPPvをドッキング+連動ビューさせるカスタマイズができたので書いておきます。
PPvのIDはXから順番に未使用のものを降順に調べて割り当てますので、PPv[A]~は今まで通りの設定で使えます。
PPcを再起動したらドッキングと連動ビュー設定は両方ともリセットされます。
X_stipの第9パラメータを8(PPv上)にすると、E_tipviewのプレビューをドッキングしたPPvに重ねて表示出来ます。

S_IDNo = { ;** 番号をIDに変換 **
1 = A
2 = B
3 = C
4 = D
5 = E
6 = F
7 = G
8 = H
9 = I
10 = J
11 = K
12 = L
13 = M
14 = N
15 = O
16 = P
17 = Q
18 = R
19 = S
20 = T
21 = U
22 = V
23 = W
24 = X
25 = Y
26 = Z
}

KC_main = {
FIRSTEVENT ,*ppvoption sync off
SELECTEVENT ,*ifmatch *V_X*,%*ppxlist(-V) %: *dock sendkey,b,PPV,home home %m"PPv[X]が起動していたら少なくとも1つはMIELモードとして使用中と判断する"
\Y ,*string o,PPvidNo=24 %m"アルファベット24番目(X)のIDからMIELモードに割り当てられるPPvを調査する"
       %mloop
       *ifmatch !*V_%*getcust(S_IDNo:%so"PPvidNo")*,%*ppxlist(-V) %:*goto lopout %m"未使用IDならMIELモードに割り当てる"
       *string o,PPvidNo=%*calc("%so"PPvidNo"-1") %m"アルファベット降順にIDを順番に調べる"
       *if %so"PPvidNo" == 10 %:%I"MIELモードにPPvをこれ以上割り当てられません。"%:*stop %m"アルファベット10番目のID(PPv[J])より前はMIELモードに割り当てない"
       *goto loop
       %mlopout
       *rotateexecute mielmode%n, *mielviewon %%*getcust(S_IDNo:%so"PPvidNo") %%:*ppvoption sync %%*getcust(S_IDNo:%so"PPvidNo") ,*mielviewoff %%:*ppvoption sync off
}

_command = {
mielviewon = *dock add,b, /once /size:%*windowrect(,w)*%*calc("%*windowrect(,h)*3/5") "%0PPVW.EXE" -bootid:%*arg(1) %:*dock drop,b,PPV
mielviewoff = *dock delete,b,PPV
}


タイトルRe^4: MIEL風のPPc・PPvドッキング+連動ビュー
記事No4693
投稿日: 2024/10/25(Fri) 22:45
投稿者TORO
> となり、*goto loopから%mloopoutにジャンプしているようです。

現在は単語検索ではなく、ヘルプに記載しているように文字列検索で
ラベルを探しているため、前方一致で見つかったラベルにジャンプ
してしまいます。
これ位は区別できるようにした方が良さそうですね。


タイトルRe^5: MIEL風のPPc・PPvドッキング+連動ビュー
記事No4698
投稿日: 2024/11/07(Thu) 06:31
投稿者やま
> 設定変更による再カスタマイズ時にdockも初期化される

> となり、*goto loopから%mloopoutにジャンプしているようです。

上記2件について、1.99+3にて修正されていることを確認いたしました。
ありがとうございました。