OSDN Git Service

gitk: Disable the head context menu entries for the checked-out branch
authorPaul Mackerras <paulus@samba.org>
Sun, 17 Jun 2007 07:08:35 +0000 (17:08 +1000)
committerPaul Mackerras <paulus@samba.org>
Sat, 23 Jun 2007 10:55:47 +0000 (20:55 +1000)
Neither the "check out this branch" nor the "remove this branch"
menu item can be used on the currently-checked out branch, so disable
them.

Signed-off-by: Paul Mackerras <paulus@samba.org>
gitk

diff --git a/gitk b/gitk
index 0c2767d..6a45fca 100755 (executable)
--- a/gitk
+++ b/gitk
@@ -5502,10 +5502,16 @@ proc cherrypick {} {
 
 # context menu for a head
 proc headmenu {x y id head} {
-    global headmenuid headmenuhead headctxmenu
+    global headmenuid headmenuhead headctxmenu mainhead
 
     set headmenuid $id
     set headmenuhead $head
+    set state normal
+    if {$head eq $mainhead} {
+       set state disabled
+    }
+    $headctxmenu entryconfigure 0 -state $state
+    $headctxmenu entryconfigure 1 -state $state
     tk_popup $headctxmenu $x $y
 }
 
@@ -5537,6 +5543,7 @@ proc rmbranch {} {
 
     set head $headmenuhead
     set id $headmenuid
+    # this check shouldn't be needed any more...
     if {$head eq $mainhead} {
        error_popup "Cannot delete the currently checked-out branch"
        return