1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
|
#
# help.tk
#
proc help_model(build) name {
global env COLOR help Model
build_Title $name "Help"
build_DismissButtonbar $name dbbar "window(dismiss) help_model"
set textw [build_Scrollingtext $name tw 80 24]
# empty text field
$textw configure -state normal
$textw delete 1.0 end
set msgtxt {}
# load helpfile
set n [pm GET Model.Load_Number]
if {$n == -1} {
set env_var_name DSTOOL
set dirname "src/parser"
} elseif {$n < $Model(N_Sys_Models)} {
set env_var_name DSTOOL
set dirname "src/models"
} else {
set env_var_name MY_DSTOOL
set dirname ""
}
if [info exists env($env_var_name)] {
if {[string length $Model(C_Source)] > 0} {
set fname $env($env_var_name)/$dirname/$Model(C_Source)
if {![loadfile_into_text $textw $fname]} {
$textw insert end "Help file: $fname not found."
} else {
set msgtxt $fname
}
} else {
# C source file not specified
if [info exists env(DSTOOL)] {
set fname $env(DSTOOL)/help/model.txt
if {![loadfile_into_text $textw $fname]} {
$textw insert end "Help file: $fname not found."
}
} else {
# need DSTOOL env set
$textw insert end "Environment variable DSTOOL not set;\nHelp requires files in directory \$DSTOOL/help"
}
}
} else {
$textw insert end \
"Environment variable $env_var_name not set;\n\
Help requires files in directory \$$env_var_name/src/models and \$DSTOOL/help"
}
$textw configure -state disabled
build_Label $name.dbbar msg $msgtxt
$name.dbbar.msg.label configure -fg $COLOR(info)
}
proc help_dstool(build) name {
global env COLOR help Model
build_Title $name "Help"
build_DismissButtonbar $name dbbar "window(dismiss) help_dstool"
set textw [build_Scrollingtext $name tw 80 24]
# empty text field
$textw configure -state normal
$textw delete 1.0 end
# load helpfile
if [info exists env(DSTOOL)] {
set fname $env(DSTOOL)/help/dstool.txt
if {![loadfile_into_text $textw $fname]} {
$textw insert end "Help file: $fname not found."
}
} else {
$textw insert end \
"Environment variable DSTOOL not set;\n\
Help requires files in directory \$DSTOOL/help"
}
$textw configure -state disabled
}
proc help_file(build) {} {
global File env Help
set Help(Filename) ""
set Help(Directory) $env(DSTOOL)
window(open) filesl
filesl(init) "Load" \
"*" \
$Help(Directory) \
$Help(Filename) \
"help_file(upfile)" \
"help_file(load)"
}
proc help_file(upfile) {} {
global File Help
set Help(Filename) $File(Filename)
set Help(Directory) $File(Directory)
}
proc help_file(load) {} {
global File env Help
set name [window(open) help_wfile]
puts $name
set textw .$name.tw.text
puts $textw
# load helpfile
set fname $Help(Directory)/$Help(Filename)
puts $fname
if {![loadfile_into_text $textw $fname]} {
$textw insert end "Help file: $fname not loaded correctly."
}
$textw configure -state disabled
}
proc help_wfile(build) name {
build_Title $name "Help with file"
build_DismissButtonbar $name dbbar "window(dismiss) help_wfile"
set textw [build_Scrollingtext $name tw 80 24]
# empty text field
$textw configure -state normal
$textw delete 1.0 end
}
|