Merge branch 'master' of git://repo.or.cz/git-gui
* 'master' of git://repo.or.cz/git-gui: git-gui: Save geometry before the window layout is damaged git-gui: Give amend precedence to HEAD over MERGE_MSG git-gui: Include 'war on whitespace' fixes from git.git
This commit is contained in:
@ -120,10 +120,21 @@ proc delete_this {{t {}}} {
|
||||
if {[namespace exists $t]} {namespace delete $t}
|
||||
}
|
||||
|
||||
proc make_toplevel {t w} {
|
||||
upvar $t top $w pfx
|
||||
proc make_toplevel {t w args} {
|
||||
upvar $t top $w pfx this this
|
||||
|
||||
if {[llength $args] % 2} {
|
||||
error "make_toplevel topvar winvar {options}"
|
||||
}
|
||||
set autodelete 1
|
||||
foreach {name value} $args {
|
||||
switch -exact -- $name {
|
||||
-autodelete {set autodelete $value}
|
||||
default {error "unsupported option $name"}
|
||||
}
|
||||
}
|
||||
|
||||
if {[winfo ismapped .]} {
|
||||
upvar this this
|
||||
regsub -all {::} $this {__} w
|
||||
set top .$w
|
||||
set pfx $top
|
||||
@ -132,6 +143,13 @@ proc make_toplevel {t w} {
|
||||
set top .
|
||||
set pfx {}
|
||||
}
|
||||
|
||||
if {$autodelete} {
|
||||
wm protocol $top WM_DELETE_WINDOW "
|
||||
[list delete_this $this]
|
||||
[list destroy $top]
|
||||
"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user