Files
ncpfs/contrib/tcl/about.tcl
ncpfs archive import 82706139bf Import ncpfs 2.2.1
2026-04-28 20:39:59 +02:00

184 lines
5.9 KiB
Tcl
Executable File

#!/usr/bin/tixwish
#############################################################################
# Visual Tcl v1.20 Project
#
#################################
# GLOBAL VARIABLES
#
global widget;
#################################
# USER DEFINED PROCEDURES
#
proc init {argc argv} {
global SCRIPT_DIR
catch {image delete logo }
image create photo logo -file [file join $SCRIPT_DIR img/nw.gif ]
}
init $argc $argv
proc {main} {argc argv} {
global SCRIPT_DIR
.about.fra41.tex56 delete 1.1 end
catch {exec cat [file join $SCRIPT_DIR ABOUT] } tmp
.about.fra41.tex56 insert end $tmp
# après l'avoir rempli. si on le met disabled dans WinProc
#ne le rempli pas !!!
.about.fra41.tex56 configure -state disabled
}
proc {Window} {args} {
global vTcl
set cmd [lindex $args 0]
set name [lindex $args 1]
set newname [lindex $args 2]
set rest [lrange $args 3 end]
if {$name == "" || $cmd == ""} {return}
if {$newname == ""} {
set newname $name
}
set exists [winfo exists $newname]
switch $cmd {
show {
if {$exists == "1" && $name != "."} {wm deiconify $name; return}
if {[info procs vTclWindow(pre)$name] != ""} {
eval "vTclWindow(pre)$name $newname $rest"
}
if {[info procs vTclWindow$name] != ""} {
eval "vTclWindow$name $newname $rest"
}
if {[info procs vTclWindow(post)$name] != ""} {
eval "vTclWindow(post)$name $newname $rest"
}
}
hide { if $exists {wm withdraw $newname; return} }
iconify { if $exists {wm iconify $newname; return} }
destroy { if $exists {destroy $newname; return} }
}
}
#################################
# VTCL GENERATED GUI PROCEDURES
#
proc vTclWindow. {base} {
if {$base == ""} {
set base .
}
###################
# CREATING WIDGETS
###################
wm focusmodel $base passive
wm geometry $base 1x1+0+0
wm maxsize $base 1265 1024
wm minsize $base 1 1
wm overrideredirect $base 0
wm resizable $base 1 1
wm withdraw $base
wm title $base "vt.tcl"
###################
# SETTING GEOMETRY
###################
}
proc vTclWindow.about {base} {
global STR
if {$base == ""} {
set base .about
}
if {[winfo exists $base]} {
wm deiconify $base; return
}
###################
# CREATING WIDGETS
###################
toplevel $base -class Toplevel
wm focusmodel $base passive
wm geometry $base 443x395+55+110
wm maxsize $base 785 570
wm minsize $base 1 1
wm overrideredirect $base 0
wm resizable $base 0 0
wm deiconify $base
wm title $base $STR(ndsabout)
label $base.lab40 \
-borderwidth 0 -image logo -relief raised
frame $base.fra41 \
-borderwidth 3 -height 324 -relief sunken -width 443
label $base.fra41.lab44 \
-anchor e -borderwidth 0 -font {Helvetica -12 normal} -text $STR(name)
label $base.fra41.lab47 \
-anchor e -borderwidth 0 -font {Helvetica -12 normal} -text $STR(author)
label $base.fra41.lab48 \
-anchor e -borderwidth 0 -font {Helvetica -12 normal} -text $STR(date)
label $base.fra41.lab49 \
-anchor e -borderwidth 0 -font {Helvetica -12 normal} -text $STR(license)
label $base.fra41.lab51 \
-font {Helvetica -12 normal} \
-anchor w -borderwidth 0 -text $STR(version)
label $base.fra41.lab52 \
-anchor w -borderwidth 0 \
-font {Helvetica -12 normal} \
-text {Patrick Pollet <patrick.pollet@insa-lyon.fr>}
label $base.fra41.lab53 \
-font {Helvetica -12 normal} \
-anchor w -borderwidth 0 -text $STR(date_version)
label $base.fra41.lab54 \
-font {Helvetica -12 normal} \
-anchor w -borderwidth 0 -text $STR(gpl)
text $base.fra41.tex56 \
-font {Helvetica -10 normal} \
-highlightthickness 0 \
-yscrollcommand {.about.fra41.scr59 set}
button $base.fra41.but58 \
-activeforeground blue -command { destroy .about } \
-font {Helvetica -12 normal} \
-highlightthickness 0 -padx 9 -pady 3 -text $STR(ok)
scrollbar $base.fra41.scr59 \
-command {.about.fra41.tex56 yview} -highlightthickness 0 \
-orient vert
button $base.fra41.gpl \
-font {Helvetica -12 normal} \
-command {global SCRIPT_DIR; source [file join $SCRIPT_DIR license.tcl]} -padx 9 -pady 3 \
-text $STR(see_gpl)
###################
# SETTING GEOMETRY
###################
pack $base.lab40 \
-in .about -anchor center -expand 0 -fill none -side top
pack $base.fra41 \
-in .about -anchor center -expand 0 -fill both -side top
place $base.fra41.lab44 \
-x 10 -y 10 -width 77 -height 16 -anchor nw -bordermode ignore
place $base.fra41.lab47 \
-x 10 -y 30 -width 77 -height 16 -anchor nw -bordermode ignore
place $base.fra41.lab48 \
-x 10 -y 50 -width 77 -height 16 -anchor nw -bordermode ignore
place $base.fra41.lab49 \
-x 10 -y 70 -width 77 -height 16 -anchor nw -bordermode ignore
place $base.fra41.lab51 \
-x 95 -y 10 -width 337 -height 16 -anchor nw -bordermode ignore
place $base.fra41.lab52 \
-x 95 -y 30 -width 337 -height 16 -anchor nw -bordermode ignore
place $base.fra41.lab53 \
-x 95 -y 50 -width 337 -height 16 -anchor nw -bordermode ignore
place $base.fra41.lab54 \
-x 95 -y 70 -width 112 -height 16 -anchor nw -bordermode ignore
place $base.fra41.tex56 \
-x 15 -y 105 -width 395 -height 182 -anchor nw -bordermode ignore
place $base.fra41.but58 \
-x 205 -y 290 -anchor nw -bordermode ignore
place $base.fra41.scr59 \
-x 415 -y 104 -width 13 -height 184 -anchor nw -bordermode ignore
place $base.fra41.gpl \
-x 290 -y 65 -anchor nw -bordermode ignore
}
Window show .
Window show .about
main $argc $argv