summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 60aa065)
raw | patch | inline | side by side (parent: 60aa065)
author | Shawn O. Pearce <spearce@spearce.org> | |
Wed, 2 May 2007 17:56:27 +0000 (13:56 -0400) | ||
committer | Shawn O. Pearce <spearce@spearce.org> | |
Tue, 8 May 2007 03:35:51 +0000 (23:35 -0400) |
Like the console procs I have moved the code related to merge
support into their own namespace, so that they are isolated
from the rest of the world.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
support into their own namespace, so that they are isolated
from the rest of the world.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
git-gui.sh | patch | blob | history | |
lib/merge.tcl | patch | blob | history |
diff --git a/git-gui.sh b/git-gui.sh
index dc6664c68e77539072f67722dfff16fdb00749f1..46358258bb65ceba68441c51fd69f212e9f817d3 100755 (executable)
--- a/git-gui.sh
+++ b/git-gui.sh
[.mbar.branch index last] -state]
.mbar.branch add command -label {Reset...} \
- -command do_reset_hard
+ -command merge::reset_hard
lappend disable_on_lock [list .mbar.branch entryconf \
[.mbar.branch index last] -state]
}
if {[is_enabled branch]} {
menu .mbar.merge
.mbar.merge add command -label {Local Merge...} \
- -command do_local_merge
+ -command merge::dialog
lappend disable_on_lock \
[list .mbar.merge entryconf [.mbar.merge index last] -state]
.mbar.merge add command -label {Abort Merge...} \
- -command do_reset_hard
+ -command merge::reset_hard
lappend disable_on_lock \
[list .mbar.merge entryconf [.mbar.merge index last] -state]
diff --git a/lib/merge.tcl b/lib/merge.tcl
index e0e84aeabebe2bf3ed35d1bc0d485254a6f168c3..21cd83d9c8eb1ae623dad5e65e794bde7b6cfab8 100644 (file)
--- a/lib/merge.tcl
+++ b/lib/merge.tcl
# git-gui branch merge support
# Copyright (C) 2006, 2007 Shawn Pearce
-proc can_merge {} {
+namespace eval merge {
+
+proc _can_merge {} {
global HEAD commit_type file_states
if {[string match amend* $commit_type]} {
return 1
}
-proc visualize_local_merge {w} {
+proc _visualize {w} {
set revs {}
foreach i [$w.source.l curselection] {
lappend revs [$w.source.l get $i]
do_gitk $revs
}
-proc start_local_merge_action {w} {
+proc _start {w} {
global HEAD ui_status_value current_branch
set cmd [list git merge]
@@ -121,12 +123,12 @@ Please select fewer branches. To merge more than 15 branches, merge the branche
set msg "Merging $current_branch, [join $names {, }]"
set ui_status_value "$msg..."
set cons [console::new "Merge" $msg]
- console::exec $cons $cmd [list finish_merge $revcnt]
+ console::exec $cons $cmd [namespace code [list _finish $revcnt]]
bind $w <Destroy> {}
destroy $w
}
-proc finish_merge {revcnt w ok} {
+proc _finish {revcnt w ok} {
console::done $w $ok
if {$ok} {
set msg {Merge completed successfully.}
set fd [open "| git read-tree --reset -u HEAD" r]
fconfigure $fd -blocking 0 -translation binary
- fileevent $fd readable [list reset_hard_wait $fd]
+ fileevent $fd readable \
+ [namespace code [list _reset_wait $fd]]
set ui_status_value {Aborting... please wait...}
return
}
rescan [list set ui_status_value $msg]
}
-proc do_local_merge {} {
+proc dialog {} {
global current_branch
- if {![can_merge]} return
+ if {![_can_merge]} return
set w .merge_setup
toplevel $w
frame $w.buttons
button $w.buttons.visualize -text Visualize \
- -command [list visualize_local_merge $w]
+ -command [namespace code [list _visualize $w]]
pack $w.buttons.visualize -side left
button $w.buttons.create -text Merge \
- -command [list start_local_merge_action $w]
+ -command [namespace code [list _start $w]]
pack $w.buttons.create -side right
button $w.buttons.cancel -text {Cancel} \
-command [list destroy $w]
tkwait window $w
}
-proc do_reset_hard {} {
+proc reset_hard {} {
global HEAD commit_type file_states
if {[string match amend* $commit_type]} {
Continue with aborting the current $op?"] eq {yes}} {
set fd [open "| git read-tree --reset -u HEAD" r]
fconfigure $fd -blocking 0 -translation binary
- fileevent $fd readable [list reset_hard_wait $fd]
+ fileevent $fd readable [namespace code [list _reset_wait $fd]]
set ui_status_value {Aborting... please wait...}
} else {
unlock_index
}
}
-proc reset_hard_wait {fd} {
+proc _reset_wait {fd} {
global ui_comm
read $fd
rescan {set ui_status_value {Abort completed. Ready.}}
}
}
+
+}