⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lminst.tcl

📁 windml3.0.3
💻 TCL
📖 第 1 页 / 共 2 页
字号:
# LMINST.TCL - Setup procedures for implementing LM installation-choice 
#              wizard page
#
# Copyright 1999-2003 Wind River Systems, Inc
#
# modification history
# --------------------
# 02d,29apr03,bjl  do not reset values for manual if successful db query
#                  for elm user (spr 88068).  
# 02c,14feb03,bjl  added controls for manual page sequence, differentiate
#                  between license server and manual/nodelocked sequences.  
# 02b,25apr02,j_w  fixed a typo 
# 02a,12jun01,j_w  Modified for Tornado 2.2
# 02c,08jan01,bwd  SPR 63370: added additional header for alternative host id.
# 02b,01nov00,j_w  Fixed page list for autoInst in proc onNoOutsideAccess
# 02a,12sep00,j_w  fixed URL for web form
# 01z,26may00,bwd  Enable Back button if the previous page is currLicInfo
# 01y,23may00,bwd  Fixed message
# 01x,19may00,bwd  SPR 31032 - do not skip lmInstOption page on reload to fix
#                  errors
# 01w,18may00,bwd  SPR 31030 - design change: lmInstOptions page before
#                  DBQUERY and added a check to add nodelock page list
# 01v,15may00,bwd  SPR 31030 - enable Back button to go back to DBQUERY page
#                  for Node Locked licensing
# 01u,12may00,bwd  SPR 31204 - added URL for contact information and fax
#                  number for LICPHONE page
# 01t,25apr00,j_w  Replaced the value of strTable(1220_MAIL_TO) to
#                  license@windriver.com
# 01s,20mar00,bwd  Fixed TEXT mode to prevent going back to previous page
# 01r,20mar00,bwd  Fixed TEXT mode to default a choice to Automatic License
#                  Installation
# 01q,17mar00,j_w  Renamed WRS to Wind River
# 01p,09feb00,j_w  Called onPhone if no outside network access is selected
# 01o,24jan00,bwd  Fixed codes for "RELOAD" option to skip this page properly
# 01n,21jan00,bwd  Removed code that resets lmVals(reload) to 0 for TEXT MODE
# 01m,20jan00,j_w  Remove the line that reset lmVals(reload) to 0
# 01l,14jan00,bwd  Added codes to display this page for TEXT MODE
# 01k,11jan00,j_w  Fixed radio button selection
# 01j,10dec99,j_w  Unset lmVals(reload) to 0
# 01i,30nov99,j_w  Added a check box for no outside access
# 01h,23nov99,j_w  Fixed typo
# 01g,17nov99,j_w  Skip the page if lmVals(reload) is set to 1
# 01f,15nov99,j_w  Fixed indent spacing
# 01e,15nov99,wmd  Add line to unhide the setup bitmap incase it is hidden on
#                  subsequent pages.
# 01d,12nov99,bwd  Added sections for automatic setup installation
# 01c,05nov99,wmd  Add code to make sure back and next buttons are enabled.
# 01b,04oct99,j_w  Fix radio buttons
# 01a,15Sep99,j_w  written
#

#############################################################################
#
# pageCreate(lmInstOptions) - displays choices of LM installation
#
# This procedure will display choices of LM installation such as:
# Auto Install  - license file auto installation
# Email - email wrs for license file
# phone or fax - contact wrs for license file by phone or fax
#
# SYNOPSIS
# .tS
# pageCreate(lmInstOptions)
# .tE
#
# PARAMETERS: N/A
#
# RETURNS: N/A
#
# ERRORS: N/A
#


proc pageCreate(lmInstOptions) {} {
    global ctrlVals env setupVals lmVals

    if { [isGUImode] } {
        # unhide the setup bitmap
        controlHide $ctrlVals(mainWindow).bitmap 0

        if {[instTypeGet] == "license"} {
            set ctrlVals(volatileFrm) [list \
                [list label -name message1 \
                            -title [strTableGet LM_INSTALLOPTIONS_MSG_1] \
                            -x 99 -y 10 -w 190 -h 20] \
                [list choice -name autoInstChoice -newgroup -auto \
                          -title [strTableGet LM_INSTALLOPTIONS_AUTO_INSTALL] \
                          -x 99 -y 35 -w 190 -h 15 \
                          -callback onAutoInst] \
                [list label -name autoInstLabel \
                            -title \
                             [strTableGet LM_INSTALLOPTIONS_AUTO_INSTALL_DESC] \
                            -x 111 -y 50 -w 198 -h 15] \
                [list choice -name emailChoice -auto \
                             -title [strTableGet LM_INSTALLOPTIONS_EMAIL] \
                             -x 99 -y 65 -w 100 -h 15 \
                             -callback onEmail] \
                [list label -name emailLabel \
                            -title \
                             [strTableGet LM_INSTALLOPTIONS_EMAIL_DESC] \
                            -x 111 -y 80 -w 198 -h 15 ] \
                [list choice -name phoneChoice -auto \
                            -title [strTableGet LM_INSTALLOPTIONS_PHONE] \
                            -x 99 -y 95 -w 190 -h 15 \
                            -callback onPhone] \
                [list label -name phoneLabel \
                            -title \
                             [strTableGet LM_INSTALLOPTIONS_PHONE_DESC] \
                            -x 111 -y 110 -w 198 -h 15] \
                [list boolean -name noOutsideAccessCkbox -newgroup -auto \
                              -title [strTableGet LM_CKBOX_1] \
                              -x 99 -y 140 -w 170 -h 15 \
                              -callback onNoOutsideAccess]]
        } else {
            # controls for manual node-locked page
            
            set ctrlVals(volatileFrm) [list \
                [list choice -name emailChoice -auto \
                             -title [strTableGet LM_INSTALLOPTIONS_EMAIL] \
                             -x 99 -y 29 -w 100 -h 15 \
                             -callback onEmail] \
                [list label -name emailLabel \
                            -title \
                             [strTableGet LM_INSTALLOPTIONS_EMAIL_DESC] \
                            -x 111 -y 44 -w 198 -h 15 ] \
                [list choice -name phoneChoice -auto \
                            -title [strTableGet LM_INSTALLOPTIONS_PHONE] \
                            -x 99 -y 67 -w 190 -h 15 \
                            -callback onPhone] \
                [list label -name phoneLabel \
                            -title \
                             [strTableGet LM_INSTALLOPTIONS_PHONE_DESC] \
                            -x 111 -y 82 -w 198 -h 15] ]
        }
        set w [dlgFrmCreate [strTableGet LM_INSTALLOPTIONS_TITLE]]

        # rename the next button to "Send" (in case of UNIX)
        controlValuesSet $w.nextButt "&Next >"

        # set default setting
        controlEnable $w.nextButt 1
        controlEnable $w.cancelButt 1

        if { $setupVals(lmInstType) == "nodeLocked" } {
            controlEnable $w.backButt 1
        } else { 
            set currPageIndex [lsearch $ctrlVals(pageList) $ctrlVals(currPage)]
            set prevPageIndex [expr $currPageIndex - 1]
            set prevPage [lindex $ctrlVals(pageList) $prevPageIndex]

            if { $prevPage == "currLicInfo" } {
                controlEnable $w.backButt 1
            } else {
                controlEnable $w.backButt 0
            }
        }

        if { $setupVals(lmInstOptions) == "" } {
            if {[instTypeGet] == "license" } {    
                controlCheckSet $w.autoInstChoice 1
            } else {
                # manual, node-locked 

                controlCheckSet $w.emailChoice 1
            }        
        } else {
            switch $setupVals(lmInstOptions) {
                onAutoInst { controlCheckSet $w.autoInstChoice 1 }
                onEmail    { controlCheckSet $w.emailChoice 1 }
                onPhone    { controlCheckSet $w.phoneChoice 1 }
                default    { controlCheckSet $w.autoInstChoice 1 }
            }
        }

        # test automation
	
        if { $ctrlVals(useInputScript) } {
            autoSetupLog "LM Installation Option Page: skipped"
            autoSetupLog "\tInstallation Option: $setupVals(lmInstOptions)" 
            nextCallback
        }
    } else { # TEXT mode

        printPageTitle [strTableGet LM_INSTALLOPTIONS_TITLE]
        puts "[strTableGet LM_INSTALLOPTIONS_MSG_1_TEXT]\n"

        puts "1 - [strTableGet LM_INSTALLOPTIONS_AUTO_INSTALL]"
        puts "    [strTableGet LM_INSTALLOPTIONS_AUTO_INSTALL_DESC]"
        puts "2 - [strTableGet LM_INSTALLOPTIONS_EMAIL]"
        puts "    [strTableGet LM_INSTALLOPTIONS_EMAIL_DESC]"
        puts "3 - [strTableGet LM_INSTALLOPTIONS_PHONE]"
        puts "    [strTableGet LM_INSTALLOPTIONS_PHONE_DESC]"
        puts "4 - Have no access to the outside network.\n\n"
 
        while (1) {
            puts "Please enter your selection. \[1\]\n"
            set ret [prompt]
            switch -regexp -- $ret {
                "^$" -
                "^1$" {  onAutoInst ; nextCallback ; return 0  }
                "^2$" {  onEmail    ; nextCallback ; return 0  }
                "^3$" {  onPhone    ; nextCallback ; return 0  }
                "^4$" {  
                    set setupVals(noOutsideAccess) 1
                    onNoOutsideAccess
                    return [pageCreate(lmInstOptions)]
                }
                "^-$" {  
                    if { $setupVals(lmInstType) == "nodeLocked" } {
                        backCallback
                        return 0
                    } else {
                        set currPageIndex [lsearch $ctrlVals(pageList) $ctrlVals(currPage)]
                        set prevPageIndex [expr $currPageIndex - 1]
                        set prevPage [lindex $ctrlVals(pageList) $prevPageIndex]

                        if { $prevPage == "currLicInfo" } {
                            backCallback
                            return 0
                        } else {
                            puts "Error: Cannot go back any further"
                            while { [prompt "Press <Enter> to continue."] != "" } {
                            }
                            return [pageCreate(lmInstOptions)]
                        }
                    }
                }
                "^[eE][xX][iI][tT]$" {
                    return 0
                }
                default {
                    puts "Error: Invalid input."
                }
            }
        }
    }
}

#############################################################################
#
# pageProcess(lmInstOptions) - process inputs from lmInstOptions page if any
#
# This procedure will process inputs from lmInstOptions page if any
#
# SYNOPSIS
# .tS
# pageProcess(lmInstOptions)
# .tE
#
# PARAMETERS: N/A
#
# RETURNS: 1 when successful
#
# ERRORS: N/A
#

proc pageProcess(lmInstOptions) {} {
    global setupVals ctrlVals lmVals
    global valuesReset

    # valuesReset is a global variable used in LICMANUAL
    # to see if lmVals needs to be initialized

    set choice $setupVals(lmInstOptions)

    switch $choice {
        onAutoInst {  
            if { $setupVals(lmInstType) == "nodeLocked" } {
                pageListAdd nodeLock
            } else {
                pageListAdd autoInst  
            }
        }
        onEmail {
            pageListAdd email
            if {$lmVals(successfulDbQuery) && $setupVals(ELMUser) &&
                [instTypeGet] == "license"} {
                set valuesReset 0
            } else {      
                set valuesReset 1            
            }
        }
        onPhone {  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -