From c1b0a281aa6ab1f13f009d3bdd83c99b7df4aea9 Mon Sep 17 00:00:00 2001 From: hobbs Date: Mon, 3 May 2004 19:36:56 +0000 Subject: * library/panedwindow.tcl (MarkSash): call DragSash to stop sash jump when B1 is pressed and released without moving. [Bug #932155] Make the panedwindow -opaqueresize option work as per the docs. [Bug #778893] --- ChangeLog | 5 +++++ library/panedwindow.tcl | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 4d4aa12..b913b81 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2004-05-03 Jeff Hobbs + * library/panedwindow.tcl (MarkSash): call DragSash to stop sash + jump when B1 is pressed and released without moving. [Bug #932155] + Make the panedwindow -opaqueresize option work as per the docs. + [Bug #778893] + * tests/panedwindow.test: panedwindow-25.1 * generic/tkPanedWindow.c (Unlink): clean up -before/-after refs to a slave when removing it. [Bug #928413] (griffin) diff --git a/library/panedwindow.tcl b/library/panedwindow.tcl index 3298aba..d4abd73 100644 --- a/library/panedwindow.tcl +++ b/library/panedwindow.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk panedwindow widgets and # provides procedures that help in implementing those bindings. # -# RCS: @(#) $Id: panedwindow.tcl,v 1.6.2.1 2003/07/19 01:22:15 hobbs Exp $ +# RCS: @(#) $Id: panedwindow.tcl,v 1.6.2.2 2004/05/03 19:36:56 hobbs Exp $ # bind Panedwindow { ::tk::panedwindow::MarkSash %W %x %y 1 } @@ -35,6 +35,7 @@ namespace eval ::tk::panedwindow {} # None # proc ::tk::panedwindow::MarkSash {w x y proxy} { + if {[$w cget -opaqueresize]} { set proxy 0 } set what [$w identify $x $y] if { [llength $what] == 2 } { foreach {index which} $what break @@ -44,6 +45,8 @@ proc ::tk::panedwindow::MarkSash {w x y proxy} { foreach {sx sy} [$w sash coord $index] break set ::tk::Priv(dx) [expr {$sx-$x}] set ::tk::Priv(dy) [expr {$sy-$y}] + # Do this to init the proxy location + DragSash $w $x $y $proxy } } } @@ -61,6 +64,7 @@ proc ::tk::panedwindow::MarkSash {w x y proxy} { # Moves sash # proc ::tk::panedwindow::DragSash {w x y proxy} { + if {[$w cget -opaqueresize]} { set proxy 0 } if { [info exists ::tk::Priv(sash)] } { if {$proxy} { $w proxy place \ @@ -83,6 +87,7 @@ proc ::tk::panedwindow::DragSash {w x y proxy} { # Returns ... # proc ::tk::panedwindow::ReleaseSash {w proxy} { + if {[$w cget -opaqueresize]} { set proxy 0 } if { [info exists ::tk::Priv(sash)] } { if {$proxy} { foreach {x y} [$w proxy coord] break -- cgit v0.12