git-gui: Allow Tools request arguments from the user.
authorAlexander Gavrilov <angavrilov@gmail.com>
Sun, 16 Nov 2008 18:46:50 +0000 (21:46 +0300)
committerShawn O. Pearce <spearce@spearce.org>
Sun, 16 Nov 2008 21:33:09 +0000 (13:33 -0800)
commit67df911ceebb57596b0d3aea405e1d12137bc6f4
tree016c9216598774678d0a2081efc602bd88401245
parent0ce76ded1b207063a460f859fe7bfeb6d90b4eb6
git-gui: Allow Tools request arguments from the user.

While static commands are already useful, some tools need
additional parameters to reach maximum usability. This
commit adds support for passing them one revision name
parameter, and one arbitrary string. With this addition,
the tools menu becomes flexible enough to implement basic
rebase support:

[core]
        editor = kwrite
[guitool "Rebase/Abort"]
        cmd = git rebase --abort
        confirm = yes
[guitool "Rebase/Continue"]
        cmd = git rebase --continue
[guitool "Rebase/Skip Commit"]
        cmd = git rebase --skip
        confirm = yes
[guitool "Rebase/Start..."]
        cmd = git rebase $ARGS $REVISION $CUR_BRANCH
        title = Start Rebase
        prompt = Rebase Current Branch
        argprompt = Flags
        revprompt = New Base
        revunmerged = yes

Some of the options, like title or prompt, are intentionally
not included in the Add dialog to avoid clutter. Also, the
dialog handles argprompt and revprompt as boolean vars.

Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
lib/tools.tcl
lib/tools_dlg.tcl