📄 insttk.tcl
字号:
$detailButt config -state disabled } { $detailButt config -state normal } }proc currSelProdIndexGet {} { global currSelProdIndex return $currSelProdIndex}proc onClickProdCheckButt {w prodIndex} { global objGuiMap pickList global selection ctrlVals set guiIndex $objGuiMap(prod2gui,$prodIndex) productInfoSet instFlag $prodIndex $pickList(prod,$prodIndex) productInfoSet stateCommit $prodIndex productInfoSet childStateCommit $prodIndex productGuiSizeUpdate $w set sizeWig $w.pick.canvas.lineItem$guiIndex.size set mbSize [byteToMbyte [productInfoGet size $prodIndex]] $sizeWig config -text $mbSize # change the button description color if [info exist selection] { $selection config -bg $ctrlVals(mainBg) } set buttDescWig $w.pick.canvas.lineItem$guiIndex.butDesc $buttDescWig config -bg $ctrlVals(secondBg) set selection $buttDescWig currSelProdIndexSet $w.infoFrm.detail $prodIndex}proc onProductDetailButt {} { global partListDlg ctrlVals objGuiMap pickList set w [toplevel .partListDlg -bd 15 -width 350 -height 290] wm title $w "Select Part" wm maxsize $w 350 290 wm minsize $w 350 290 catch {grab $w} labelCreate $w.msg "[strTableGet 1140_COMP_SELECT]" place $w.msg -in $w frame $w.req labelCreate $w.req.text "Space Required: " labelCreate $w.req.size " 0.0 MB" pack $w.req.text $w.req.size -side left -fill x place $w.req -in $w -y 190 frame $w.pick place $w.pick -in $w -y 60 set cv $w.pick.cv canvas $cv -width 300 -height 118 -relief sunken -borderwidth 1 \ -yscrollcommand "$w.pick.vscroll set" -highlightthickness 0 scrollbar $w.pick.vscroll -command "$cv yview" -highlightthickness 0 pack $w.pick.vscroll -side right -fill y pack $cv -in $w.pick -expand yes -fill both frame $w.separator -bd 1 -relief sunken -width 320 -height 2 place $w.separator -in $w -y 220 button $w.ok -text "OK" \ -command "onPartOkButt" \ -font $ctrlVals(bldFont) \ -padx 14 -pady 2 place $w.ok -in $w -y 235 -x 170 button $w.cancel -text "Cancel" \ -command "onPartCancelButt" \ -font $ctrlVals(bldFont) \ -padx 14 -pady 2 place $w.cancel -in $w -y 235 -x 240 update set i 0 foreach partIndex [productInfoGet partIndexList [currSelProdIndexGet]] { set objGuiMap(gui2part,$i) $partIndex set objGuiMap(part2gui,$partIndex) $i if ![info exists pickList(part,$partIndex)] { set pickList(part,$partIndex) [partInfoGet instFlag $partIndex] } set mbSize [byteToMbyte [partInfoGet size $partIndex]] if ![winfo exists $cv.lineItem$i] { frame $cv.lineItem$i checkbutton $cv.lineItem$i.cb \ -highlightthickness 0 \ -relief flat -pady 0 \ -variable pickList(part,$partIndex) button $cv.lineItem$i.butDesc \ -text [partInfoGet desc $partIndex] \ -font $ctrlVals(smallFont) \ -command {} \ -highlightthickness 0 \ -relief flat -pady 0 label $cv.lineItem$i.size \ -justify right \ -font $ctrlVals(smallFont) \ -text $mbSize pack $cv.lineItem$i.cb $cv.lineItem$i.butDesc -side left pack $cv.lineItem$i.size -side right $cv create window 5 [expr $i * 20 + 2] \ -window $cv.lineItem$i \ -anchor nw -tags item \ -width 290 -height 16 bind $cv.lineItem$i.cb <ButtonRelease-1> \ "onClickPartCheckButt $w.req.size $partIndex" } { $cv.lineItem$i.size configure -text $mbSize } incr i update } $cv config -scrollregion "0 2 0 [expr ($i * 20) - 2]" $cv config -yscrollincrement 20 partGuiSizeUpdate $w.req.size set partListDlg(done) 0 tkwait variable partListDlg(done) catch {grab release $w} destroy $w}proc onClickPartCheckButt {w partIndex} { global pickList partInfoSet instFlag $partIndex $pickList(part,$partIndex) partGuiSizeUpdate $w}proc partGuiSizeUpdate {w} { set prodIndex [currSelProdIndexGet] set totalSize [byteToMbyte [productInfoGet size $prodIndex]] $w config -text "$totalSize MB"}proc onPartOkButt {} { global partListDlg objGuiMap ctrlVals pickList set partListDlg(done) 1 set prodIndex [currSelProdIndexGet] switch [productInfoGet stateInfo $prodIndex] { changedIncr { productInfoSet instFlag \ [partInfoGet parent $objGuiMap(gui2part,0)] 1 set pickList(prod,$prodIndex) 1 } changedToNone { productInfoSet instFlag \ [partInfoGet parent $objGuiMap(gui2part,0)] 0 set pickList(prod,$prodIndex) 0 } } productGuiUpdate $ctrlVals(volatileFrm) productInfoSet stateCommit $prodIndex productInfoSet childStateCommit $prodIndex}proc onPartCancelButt {} { global partListDlg ctrlVals set partListDlg(done) 1 productInfoSet childStateRestore [currSelProdIndexGet]}proc pageProcess(compSelect) {w} { beginWaitCursor set retVal 1 set avail [lindex [$w.infoFrm.avail.size cget -text] 0] set require [lindex [$w.infoFrm.req.size cget -text] 0] if {$avail < $require} { set i [tk_dialog .setup "Setup" [strTableGet 1150_COMP_SELECT_WARN] \ question 0 Yes No] if {$i == 0} { set retVal 0 } { set retVal 1 } } endWaitCursor return $retVal}proc pageCreate(permission) {} { global ctrlVals global setupVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1460_TITLE_PERMISSION]] $w.msg config -text [strTableGet 1160_PERMISSION] if {[catch {setupId effective group} gprName]} { set gprName "group" } if {[catch {setupId effective user} usrName]} { set usrName "user" } if ![info exists setupVals(umask)] umaskGet set cf $w.cbFrm frame $cf place $cf -in $w -y 170 frame $cf.r frame $cf.w pack $cf.r $cf.w -side left -anchor nw -pady 2 checkbutton $cf.r.u -text "$usrName read" -variable setupVals(ur) \ -font $ctrlVals(textFont) -highlightthickness 0 checkbutton $cf.r.g -text "$gprName read" -variable setupVals(gr) \ -font $ctrlVals(textFont) -highlightthickness 0 checkbutton $cf.r.o -text "other read" -variable setupVals(or) \ -font $ctrlVals(textFont) -highlightthickness 0 checkbutton $cf.w.u -text "$usrName write" -variable setupVals(uw) \ -font $ctrlVals(textFont) -highlightthickness 0 checkbutton $cf.w.g -text "$gprName write" -variable setupVals(gw) \ -font $ctrlVals(textFont) -highlightthickness 0 checkbutton $cf.w.o -text "other write" -variable setupVals(ow) \ -font $ctrlVals(textFont) -highlightthickness 0 $cf.r.u config -state disabled $cf.w.u config -state disabled pack $cf.r.u $cf.r.g $cf.r.o -side top -padx 25 -anchor nw pack $cf.w.u $cf.w.g $cf.w.o -side top -padx 25 -anchor nw endWaitCursor}proc pageProcess(permission) {w} { beginWaitCursor umaskSet endWaitCursor return 1}proc pageCreate(filesCopy) {} { global ctrlVals global setupVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1470_TITLE_FILECOPY]] .buts.back config -state disabled .buts.next config -state disabled set ctrlVals(bbrdList) [bbrdListGet .PPM] if {[llength $ctrlVals(bbrdList)] == 0} { set ctrlVals(numBbrd) 0 set ctrlVals(displayInt) 0 set ctrlVals(bbrdElapse) 101 $w.msg config -text [strTableGet 1170_FILE_COPY] } { set ctrlVals(numBbrd) [llength $ctrlVals(bbrdList)] set ctrlVals(displayInt) [expr 100 / $ctrlVals(numBbrd)] set ctrlVals(bbrdElapse) -1 place forget .bitmap toplevel .meter wm transient .meter . wm title .meter "Progress" wm geometry .meter $ctrlVals(mtrPos) place $w -in . -x 0 -y 0 -width [winfo width .] -height 325 set w .meter } meterCreate $w endWaitCursor filesCopy meterDestroy $w .buts.next config -state normal nextCallback}proc pageProcess(filesCopy) {w} { global ctrlVals global setupVals global objects # This global variable is set in the tornado/postInstall.tcl global tornadoInstalled beginWaitCursor if ![info exists tornadoInstalled] { pageRemove "remoteRegistryHost" } set binDir "[destDirGet]/host/[windHostTypeGet]/bin" if {[array names objects] == ""} { pageRemove "libUpdate" } endWaitCursor return 1}proc pageCreate(libUpdate) {} { global ctrlVals global setupVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1480_TITLE_LIBUPDATE]] $w.msg config -text [strTableGet 1180_LIB_UPDATE] .buts.back config -state disabled .buts.next config -state disabled meterCreate $w endWaitCursor librariesUpdate meterDestroy $w .buts.next config -state normal nextCallback}proc pageProcess(libUpdate) {w} { return 1}proc pageCreate(remoteRegistryHost) {} { global ctrlVals global setupVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1490_TITLE_REGISTRY_HOST]] $w.msg config -text [strTableGet 1190_REGISTRY_HOST] labelCreate $w.regLabel "Host name:" place $w.regLabel -in $w -y 190 entry $w.regText -relief sunken -width 30 -font $ctrlVals(textFont) \ -textvariable setupVals(regHost) place $w.regText -in $w -x 90 -y 190 focus $w.regText endWaitCursor}proc pageProcess(remoteRegistryHost) {w} { return 1}proc pageCreate(remoteLicenseHost) {} { global ctrlVals global setupVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1561_TITLE_LICENSE_REMOTE]] $w.msg config -text [strTableGet 1353_LICENSE_REMOTE] if ![catch {open $setupVals(windLmHostHome)/WIND_LMHOST "r"} fLmHost] { set setupVals(licenseHost) [lindex [split [read $fLmHost] "\n"] 0] close $fLmHost } labelCreate $w.licLabel "Host name:" place $w.licLabel -in $w -y 190 entry $w.licText -relief sunken -width 30 -font $ctrlVals(textFont) \ -textvariable setupVals(licenseHost) place $w.licText -in $w -x 90 -y 190 focus $w.licText endWaitCursor}proc pageProcess(remoteLicenseHost) {w} { global ctrlVals global setupVals beginWaitCursor set retVal 1 if {![file isdir $setupVals(windLmHostHome)] && [catch {file mkdir $setupVals(windLmHostHome)} error]} { messageBox "$error" endWaitCursor return 0 } if {![regexp {^[ ]*$} "$setupVals(licenseHost)"]} { if ![catch {open $setupVals(windLmHostHome)/WIND_LMHOST "w"} fLmHost] { puts $fLmHost $setupVals(licenseHost) close $fLmHost exitMsgSet [strTableGet 1354_LICENSE_REMOTE] } } { messageBox [strTableGet 1072_WARN_1] set retVal 0 } endWaitCursor return $retVal}proc pageCreate(finish) {} { beginWaitCursor set w [dlgFrmCreate [strTableGet 1500_TITLE_FINISH]] # Normal exit message exitMsgSet [strTableGet 1210_FINISH] # Remind the user that they may need to install license if {[llength [cdInfoGet installedFeatureIdList]] > 0} { exitMsgSet "[exitMsgGet] [strTableGet 1205_FINISH]" } # Warn the user in case of error during the setup if {[errorCountGet] > 0} { exitMsgSet "[exitMsgGet] [strTableGet 1200_FINISH_WARN]" } $w.msg config -text [exitMsgGet] .buts.next config -text "Finish" .buts.cancel config -state disabled .buts.back config -state disabled endWaitCursor}proc pageProcess(finish) {w} { global setupVals global tornadoInstalled beginWaitCursor
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -