|
endselの反対ということならば、つまり、カーソル移動しても範囲選択を解除
しない、beginselした状態にするような命令があればいいって話ですかね。
それなら出来そうな気はしますけども、別にそういう命令が無くても、一回範
囲選択を解除してから自由にカーソル移動して、また元の範囲選択状態に戻せば
いいってことのような気がします。
#x = x; #y = y;
#selecting = selecting;
#rectselecting = rectselecting;
#seltopx = seltopx;
#seltopy = seltopy;
#selendx = selendx;
#selendy = selendy;
#selectionlock = selectionlock;
$direction = "";
if( x == seltopx && y == seltopy ) {
$direction = "topleft";
} else if( x == selendx && y == selendy ) {
$direction = "bottomright";
} else if( x == seltopx && y == selendy ) {
$direction = "bottomleft";
} else {
$direction = "topright";
}
if( selecting ) {
escape;
}
... カーソルを好きなように移動...
if( #selecting ) {
if( $direction == "topleft" ) {
moveto #selendx, #selendy;
} else if( $direction == "bottomright" ) {
moveto #seltopx, #seltopy;
} else if( $direction == "bottomleft" ) {
moveto #selendx, #seltopy;
} else {
moveto #seltopx, #selendy;
}
if( #rectselecting ) {
beginrect;
} else {
beginsel;
}
moveto #x, #y;
if( #selectionlock == 0 ) {
endsel;
}
} else {
moveto #x, #y;
}
ってマクロを作ってテストしてみたら、矩形範囲選択で右上から開始して左下
方向に選択してる場合はマクロが期待通り動いてくれないようでした。こんな作
戦でどうでしょうか。
|
|