From cd8c4617a5ac380602b3886c249b09364810de32 Mon Sep 17 00:00:00 2001 From: Ivica Ico Bukvic <ico@vt.edu> Date: Mon, 8 Apr 2013 15:22:32 -0400 Subject: [PATCH] added update to the getscroll to ensure that after every getscroll, the widget is properly updated --- pd/src/pd.tk | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/pd/src/pd.tk b/pd/src/pd.tk index b531e935b..6283c8a67 100644 --- a/pd/src/pd.tk +++ b/pd/src/pd.tk @@ -3568,14 +3568,14 @@ proc pdtk_canvas_getscroll {name} { set canvaswidth [ expr {abs($xmaxval-$xminval)} ] set canvasheight [ expr {abs($ymaxval-$yminval)} ] - #puts stderr "BEFORE W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)" + puts stderr "BEFORE W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)" if {$::scroll($parentname) == 1} { if {($::xscrollable($parentname) && $::yscrollable($parentname) && [expr $winwidth + 14] >= $canvaswidth && [expr $winheight + 14] >= $canvasheight)} { - #puts stderr "TRYING TO ADJUST WIDTH & HEIGHT" + puts stderr "TRYING TO ADJUST WIDTH & HEIGHT" pack forget $parentname.scrollhort set ::xscrollable($parentname) 0 pack forget $parentname.scrollvert @@ -3585,36 +3585,36 @@ proc pdtk_canvas_getscroll {name} { } if {$winwidth >= $canvaswidth && $::xscrollable($parentname)} { - #puts stderr "NO HORIZONTAL NECESSARY" + puts stderr "NO HORIZONTAL NECESSARY" pack forget $parentname.scrollhort set ::xscrollable($parentname) 0 set winheight [expr {$winheight + 14}] } if {$winheight >= $canvasheight && $::yscrollable($parentname)} { - #puts stderr "NO VERTICAL NECESSARY" + puts stderr "NO VERTICAL NECESSARY" pack forget $parentname.scrollvert set ::yscrollable($parentname) 0 set winwidth [expr {$winwidth + 14}] } - #puts stderr "AFTER W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)" + puts stderr "AFTER W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)" if {$winwidth < $canvaswidth && $::xscrollable($parentname) == 0} { - #puts stderr "PUTTING HORIZONTAL" + puts stderr "PUTTING HORIZONTAL" pack $parentname.scrollhort -fill x \ -side bottom -before $parentname.c set ::xscrollable($parentname) 1 } if {$winheight < $canvasheight && $::yscrollable($parentname) == 0} { - #puts stderr "PUTTING VERTICAL" + puts stderr "PUTTING VERTICAL" pack $parentname.scrollvert -fill y \ -side right -before $parentname.c set ::yscrollable($parentname) 1 } } - #puts stderr "========================\n\n" + puts stderr "========================\n\n" if {$pdtk_canvas_mouseup_name != $name || \ $pdtk_canvas_mouseup_xminval != $xminval || \ @@ -3640,6 +3640,7 @@ proc pdtk_canvas_getscroll {name} { } set ::update_tick([winfo parent $name]) 1 pdtk_canvas_checkgeometry [canvastosym $name] + update } proc pdtk_canvas_sendkey {name state key iso shift focus} { -- GitLab