git-gui: Created very crude Tools menu, to support miga.
In one particular case I have a tool called 'miga' which users may need to invoke on their repository. This is a homegrown tool which is not (and should be) part of git-gui, but I still want to be able to run it from within the gui. Right now I'm taking a shortcut and adding it to the Tools menu if we are not on Mac OS X and the support script used to launch the tool exists in the local filesystem. This is nothing but a complete and utter hack. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
This commit is contained in:
parent
eae2ce6192
commit
557afe820b
29
git-gui
29
git-gui
@ -3210,6 +3210,35 @@ if {[is_MacOSX]} {
|
|||||||
-command do_options \
|
-command do_options \
|
||||||
-font font_ui
|
-font font_ui
|
||||||
|
|
||||||
|
# -- Tools Menu
|
||||||
|
#
|
||||||
|
if {[file exists /usr/local/miga/lib/gui-miga]} {
|
||||||
|
proc do_miga {} {
|
||||||
|
global gitdir ui_status_value
|
||||||
|
if {![lock_index update]} return
|
||||||
|
set cmd [list sh --login -c "/usr/local/miga/lib/gui-miga \"[pwd]\""]
|
||||||
|
set miga_fd [open "|$cmd" r]
|
||||||
|
fconfigure $miga_fd -blocking 0
|
||||||
|
fileevent $miga_fd readable [list miga_done $miga_fd]
|
||||||
|
set ui_status_value {Running miga...}
|
||||||
|
}
|
||||||
|
proc miga_done {fd} {
|
||||||
|
read $fd 512
|
||||||
|
if {[eof $fd]} {
|
||||||
|
close $fd
|
||||||
|
unlock_index
|
||||||
|
rescan [list set ui_status_value {Ready.}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.mbar add cascade -label Tools -menu .mbar.tools
|
||||||
|
menu .mbar.tools
|
||||||
|
.mbar.tools add command -label "Migrate" \
|
||||||
|
-command do_miga \
|
||||||
|
-font font_ui
|
||||||
|
lappend disable_on_lock \
|
||||||
|
[list .mbar.tools entryconf [.mbar.tools index last] -state]
|
||||||
|
}
|
||||||
|
|
||||||
# -- Help Menu
|
# -- Help Menu
|
||||||
#
|
#
|
||||||
.mbar add cascade -label Help -menu .mbar.help
|
.mbar add cascade -label Help -menu .mbar.help
|
||||||
|
Loading…
Reference in New Issue
Block a user