?? 01zinc.win32.tcl
字號:
# Set up tool list for architecture set toolList {} foreach tool $zincToolAllList { foreach arch $zincToolDB($tool,ARCH) { if {$arch == $zincArchType} { lappend toolList $tool } } } if { [lsearch $toolList $zincConfigMisc(BUILD_TOOL)] == -1 } { set zincConfigMisc(BUILD_TOOL) [lindex $toolList 0] set zincConfigChange 1 } controlValuesSet ZincConfig.zincToolList $toolList controlSelectionSet ZincConfig.zincToolList -string $zincConfigMisc(BUILD_TOOL)}###################################################################### zincMiscCheck - check configuration for miscellaneous#proc zincMiscCheck {} { global zincConfigMisc global zincConfigChange if { $zincConfigMisc(DEBUG_BUILD) != [controlChecked ZincConfig.zincDebug] } { set zincConfigChange 1 } set tool [controlSelectionGet ZincConfig.zincToolList -string] if { [ string compare $zincConfigMisc(BUILD_TOOL) tool] } { set zincConfigChange 1 }}###################################################################### zincInit - call back for starting the Zinc config utility#proc zincInit {} { global env global zincHome # Check if dialog already created if {[controlExists ZincConfig.zincFileList] == 1} { windowShow ZincConfig -restore 1 return } # Establish the base address of the ZINC installation, assume that it is # installed within the VxWorks directory structure. regsub -all {\\} $env(WIND_BASE) {/} zincHome if {![file exists $zincHome\\host\\resource\\ugl\\uglDB.cfg]} { messageBox "Data Base files not found - Make sure Multimedia support is installed" return } # make sure the configuration directory is present file mkdir $zincHome\\target\\h\\zinc\\configTool beginWaitCursor # create the configuration dialog dialogCreate -name ZincConfig \ -init zincConfigPost \ -modeless -minibox -nocontexthelp \ -title "Zinc Configuration" \ -width 305 -height 230}###################################################################### zincConfigPost - set up main dialog window#proc zincConfigPost {} { global ZincConfigControls global ZincConfigPageName global ZincConfigPageList global zincConfigChange global zincConfigModify global zincArchList global zincOldArchType global zincArchType global zincHome global zincDBDir global zincConfigDir global env global zDebugFd # set up location of data files set zincDBDir $zincHome/host/resource/ugl set zincConfigDir $zincHome/target/h/zinc/configTool# set zDebugFd [open $zincConfigDir/debug w] # Build the controls for the window foreach control $ZincConfigControls { controlCreate ZincConfig $control } # Read the data base zincReadUglDB # Set the Browser title windowTitleSet ZincConfig "Zinc Configuration" # Fill in controls zincSetFileList controlValuesSet ZincConfig.zincArchList $zincArchList set configPageMenu {} foreach page $ZincConfigPageList { lappend configPageMenu $ZincConfigPageName($page) } controlValuesSet ZincConfig.zincConfigItem $configPageMenu # Create individual configuration screens zincControlInit # Set the state of the buttons (build, clean, save, etc.) zincSetButtonState 0 zincConfigClear set zincConfigChange 0 set zincConfigModify 1 # set build options as active screen zincBuildConfigScreen 0 controlSelectionSet ZincConfig.zincConfigItem 0 # set configuration zincCompileConfig zincMiscConfig endWaitCursor}################################################################################## zincControlInit - Create all control pages## proc zincControlInit {args} { global ZincConfigPage global ZincConfigItemName global ZincConfigPageList global zincCurrentPage foreach elem $ZincConfigPageList { set nItems [llength $ZincConfigPage($elem)] for {set ix 0} {$ix < $nItems} {incr ix} { set ctrl [lindex $ZincConfigPage($elem) $ix] set name [lindex $ZincConfigItemName($elem) $ix] controlCreate ZincConfig $ctrl controlHide ZincConfig.$name 1 } } set zincCurrentPage -1}###################################################################### zincConfigScreenHide - hide/show a control screen#proc zincConfigScreenHide {page hide} { global ZincConfigPage global ZincConfigItemName set nItems [llength $ZincConfigPage($page)] for {set ix 0} {$ix < $nItems} {incr ix} { set ctrl [lindex $ZincConfigPage($page) $ix] set name [lindex $ZincConfigItemName($page) $ix] controlHide ZincConfig.$name $hide }}###################################################################### zincBuildConfigScreen - generate the selected configuration screen#proc zincBuildConfigScreen {page} { global zincCurrentPage # Remove old screen if {$zincCurrentPage != -1} { zincConfigScreenHide $zincCurrentPage 1 } # Show new screen set zincCurrentPage $page zincConfigScreenHide $zincCurrentPage 0}###################################################################### zincSetButtonState - change the state of a button on the main# configuration window#proc zincSetButtonState {state} { controlEnable ZincConfig.zincSave $state controlEnable ZincConfig.zincDelete $state controlEnable ZincConfig.zincBuild $state controlEnable ZincConfig.zincBuildClean $state controlEnable ZincConfig.zincClean $state}###################################################################### zincSetButtonState - change the state of a button on the main# configuration window#proc zincDisableReadWrite {} { if {![controlChecked ZincConfig.zincPersist]} { controlEnable ZincConfig.zincRead 0 controlEnable ZincConfig.zincWrite 0 } else { controlEnable ZincConfig.zincRead 1 controlEnable ZincConfig.zincWrite 1 }}###################################################################### zincConfigClear - clear out any configuration#proc zincConfigClear {} { global zincOldArchType global zincArchType global zincConfigMisc global zincConfigCompile # Set to no architecture set zincOldArchType "" set zincArchType "" # Initialize compile configuration set zincConfigCompile(ZINC_UNICODE) 0 set zincConfigCompile(ZINC_CODE_SET) 1 set zincConfigCompile(ZINC_ERROR_SYS) 1 set zincConfigCompile(ZINC_HELP_TIPS) 1 set zincConfigCompile(ZINC_KEYBOARD) 1 set zincConfigCompile(ZINC_MOUSE) 1 set zincConfigCompile(ZINC_SEARCH_PATH) 1 set zincConfigCompile(ZINC_PERSIST) 1 set zincConfigCompile(ZINC_READ) 1 set zincConfigCompile(ZINC_WRITE) 1 # Initialize miscellaneous configuration set zincConfigMisc(DEBUG_BUILD) 0 set zincConfigMisc(BUILD_TOOL) "gnu"}###################################################################### zincExit - process the "quit" button to exit the ugl-Windows # configuration program#proc zincExit {} { global zincConfigChange global zDebugFd # check if miscellenous options changed zincCompileCheck # check if miscellenous options changed zincMiscCheck if { $zincConfigChange == 1 } { set answer [messageBox -yesnocancel "Zinc configuration has changed,\n save configuration?" ] if {[string match $answer cancel]} { return } if {[string match $answer yes]} { zincConfigSave } }# close $zDebugFd windowClose ZincConfig}###################################################################### zincConfigSelect - process a menu pull-down for selection of the# saved configuration of a new configuration#proc zincConfigSelect {args} { global zincLoadNewConfig global zincOldArchType global zincArchType global zincConfigMisc global zincConfigCompile global zincConfigDir global zincConfigChange global zincConfigModify # get event set event [controlEventGet ZincConfig.zincFileList] if {$event == "dropdown"} { return } set configuration [controlSelectionGet ZincConfig.zincFileList -string] set zincOldArchType "" if {$event == "editchange"} { set zincConfigChange 1 if {$zincArchType != ""} { zincSetButtonState 1 } zincConfigClear return } set zincLoadNewConfig 1 # Read in configuration values if {![file exists $zincConfigDir/$configuration.cfg]} { messageBox "No Such File" return } beginWaitCursor set fd [open $zincConfigDir/$configuration.cfg r] set line [gets $fd] while {![eof $fd]} { set index [lsearch $line :] if {$index >= 0} { set field [lrange $line 0 [expr $index - 1]] set arg [lrange $line [expr $index + 1] end] switch $field { "ARCHITECTURE" {set zincArchType $arg } "BUILD_DEBUG" {set zincConfigMisc(DEBUG_BUILD) $arg } "BUILD_TOOL" {set zincConfigMisc(BUILD_TOOL) $arg } "ZINC_UNICODE" {set zincConfigCompile(ZINC_UNICODE) $arg } "ZINC_CODE_SET" {set zincConfigCompile(ZINC_CODE_SET) $arg } "ZINC_ERROR_SYS" {set zincConfigCompile(ZINC_ERROR_SYS) $arg } "ZINC_HELP_TIPS" {set zincConfigCompile(ZINC_HELP_TIPS) $arg } "ZINC_KEYBOARD" {set zincConfigCompile(ZINC_KEYBOARD) $arg } "ZINC_MOUSE" {set zincConfigCompile(ZINC_MOUSE) $arg } "ZINC_SEARCH_PATH" {set zincConfigCompile(ZINC_SEARCH_PATH) $arg } "ZINC_PERSIST" {set zincConfigCompile(ZINC_PERSIST) $arg } "ZINC_READ" {set zincConfigCompile(ZINC_READ) $arg } "ZINC_WRITE" {set zincConfigCompile(ZINC_WRITE) $arg } }
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -