From 6cfec22578d39e2d0a6373afcfb9cdfc57e1e14b Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 2 Jan 2011 13:47:58 +0000 Subject: [PATCH] gui: support manual adjustment of movpos button locations --- hostside/gui | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/hostside/gui b/hostside/gui index 2c4c7c2..790d168 100755 --- a/hostside/gui +++ b/hostside/gui @@ -225,10 +225,12 @@ register-event ?movpos_*_feat {seg feat posn_new} \ movpos-button-setdisplay $mid } -proc movpos-bindkey-1 {cpage key seg feat} { +proc movpos-bindkey-1 {cpage key adjx adjy seg feat} { global posdeviation picturepadx picturepady manyset [subseg-end-get-centroid $cpage $seg $feat {}] mx my set mid $seg/$feat + addexpr mx $adjx + addexpr my $adjy foreach posn {0 1} { manyset [subseg-end-get-centroid $cpage $seg $feat $posn] x y set dx [expr {$x-$mx}]; set dy [expr {$y-$my}] @@ -296,8 +298,9 @@ proc layout-data {} { return } foreach binding $bindings { - if {[regexp {^([A-Z])\=(\w+)/([A-Z]+)$} $binding dummy key seg feat]} { - movpos-bindkey-1 $cpage $key $seg $feat + if {[regexp {^([A-Z])([-+]\d*)?([-+]\d+)?\=(\w+)/([A-Z]+)$} \ + $binding dummy key adjx adjy seg feat]} { + movpos-bindkey-1 $cpage $key $adjx.0 $adjy.0 $seg $feat } elseif {[regexp {^[A-Z]$} $binding] || [regexp {~} $binding]} { } else { error "incomprehensible binding $binding on page $cpage" -- 2.30.2