1 # git-gui about git-gui dialog
2 # Copyright (C) 2006, 2007 Shawn Pearce
4 proc do_about {} {
5 global appvers copyright oguilib
6 global tcl_patchLevel tk_patchLevel
7 global ui_comm_spell
9 set w .about_dialog
10 toplevel $w
11 wm geometry $w "+[winfo rootx .]+[winfo rooty .]"
13 pack [git_logo $w.git_logo] -side left -fill y -padx 10 -pady 10
14 label $w.header -text [mc "About %s" [appname]] \
15 -font font_uibold
16 pack $w.header -side top -fill x
18 frame $w.buttons
19 button $w.buttons.close -text {Close} \
20 -default active \
21 -command [list destroy $w]
22 pack $w.buttons.close -side right
23 pack $w.buttons -side bottom -fill x -pady 10 -padx 10
25 label $w.desc \
26 -text "[mc "git-gui - a graphical user interface for Git."]\n$copyright" \
27 -padx 5 -pady 5 \
28 -justify left \
29 -anchor w \
30 -borderwidth 1 \
31 -relief solid
32 pack $w.desc -side top -fill x -padx 5 -pady 5
34 set v {}
35 append v "git-gui version $appvers\n"
36 append v "[git version]\n"
37 append v "\n"
38 if {$tcl_patchLevel eq $tk_patchLevel} {
39 append v "Tcl/Tk version $tcl_patchLevel"
40 } else {
41 append v "Tcl version $tcl_patchLevel"
42 append v ", Tk version $tk_patchLevel"
43 }
44 if {[info exists ui_comm_spell]
45 && [$ui_comm_spell version] ne {}} {
46 append v "\n"
47 append v [$ui_comm_spell version]
48 }
50 set d {}
51 append d "git wrapper: $::_git\n"
52 append d "git exec dir: [gitexec]\n"
53 append d "git-gui lib: $oguilib"
55 label $w.vers \
56 -text $v \
57 -padx 5 -pady 5 \
58 -justify left \
59 -anchor w \
60 -borderwidth 1 \
61 -relief solid
62 pack $w.vers -side top -fill x -padx 5 -pady 5
64 label $w.dirs \
65 -text $d \
66 -padx 5 -pady 5 \
67 -justify left \
68 -anchor w \
69 -borderwidth 1 \
70 -relief solid
71 pack $w.dirs -side top -fill x -padx 5 -pady 5
73 menu $w.ctxm -tearoff 0
74 $w.ctxm add command \
75 -label {Copy} \
76 -command "
77 clipboard clear
78 clipboard append -format STRING -type STRING -- \[$w.vers cget -text\]
79 "
81 bind $w <Visibility> "grab $w; focus $w.buttons.close"
82 bind $w <Key-Escape> "destroy $w"
83 bind $w <Key-Return> "destroy $w"
84 bind_button3 $w.vers "tk_popup $w.ctxm %X %Y; grab $w; focus $w"
85 wm title $w "About [appname]"
86 tkwait window $w
87 }