tkgoodstuff/tcl/misc.tcl

69 lines
1.3 KiB
Tcl
Executable File

proc TKGStartClients {} {
global TKG
foreach client $TKG(clients) {
if ![Empty [info procs ${client}Start]] {${client}Start}
}
}
proc TKGSuspendClients {} {
global TKG
foreach client $TKG(clients) {
if ![Empty [info procs ${client}Suspend]] {${client}Suspend}
}
}
proc TKGPreferences {} {
if [Empty [info procs TKGPrefs]] {
uplevel \#0 {
source $TKG(libdir)/tcl/prefs.tcl
}
}
TKGPrefs
}
proc TKGIconify {} {
wm iconify .
}
proc TKGRestart {} {
global argv argv0 TKG
catch {close $TKG(logfileid)}
regexp {^[0-9]*x[0-9]*(.*$)} [wm geometry .main-panel] geo geo
eval [concat exec $argv0 -geometry $geo $argv &]
exit
}
proc TKGQuit {} {
TKGDoHook TKG_quithook
TKGReallyQuit
}
proc TKGReallyQuit {} {
exit
}
proc TKGExec {cmd args} {
eval exec $cmd &
}
proc TKGBrowse {url} {
global TKG
if {[info procs WWWGoto] != ""} {
WWWGoto $TKG(browser) $url
return
}
switch $TKG(browser) {
lynx "TKGExec {xterm -T lynx -e lynx $url} lynx"
netscape {
set cmd [list exec netscape -remote openURL($url, newwindow, noraise)]
if [ catch $cmd err ] {
if [string match "Couldn't find a netscape window" $err] {
exec netscape $url &
}
}
}
default "TKGExec {$TKG(browser) $url}"
}
}