home *** CD-ROM | disk | FTP | other *** search
/ PC World 1997 November / PCWorld_1997-11_cd.bin / software / programy / komix / DATA.Z / openlocdia.tcl < prev    next >
Text File  |  1996-05-29  |  4KB  |  169 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)openlocdia.tcl    1.6
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)openlocdia.tcl    1.6   04 Apr 1996 Copyright 1996 Cadre Technologies Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "locdialog.tcl"
  15.  
  16. Class OpenLocDialog : {LocDialog} {
  17.     constructor
  18.     method destructor
  19.     method createInterface
  20.     method clearInterface
  21.     method fromInterface
  22.     method toInterface
  23.     method objName
  24.     attribute itemDDL
  25.     attribute nameDDL
  26.     attribute editorArea
  27. }
  28.  
  29. constructor OpenLocDialog {class this name} {
  30.     set this [LocDialog::constructor $class $this $name]
  31.     # Start constructor user section
  32.  
  33.     $this helpPressed { .main helpOnName editOpenlocProperties }
  34.  
  35.     # End constructor user section
  36.     return $this
  37. }
  38.  
  39. method OpenLocDialog::destructor {this} {
  40.     # Start destructor user section
  41.     # End destructor user section
  42.     $this LocDialog::destructor
  43. }
  44.  
  45. method OpenLocDialog::createInterface {this} {
  46.     interface NoteBkPage $this.locationNBP {
  47.         label Location
  48.         DlgColumn DC {
  49.             NamedGroup nameNG {
  50.                 DlgRow DR {
  51.                     DlgColumn nameDC {
  52.                     Label nameL { text Strategy: }
  53.                     DropDwnList nameDDL {
  54.                         entrySet {}
  55.                         rowCount 5
  56.                     }
  57.                     }
  58.                     DlgColumn itemDC {
  59.                     Label itemL { text "Item Type:" }
  60.                     DropDwnList itemDDL {
  61.                         entrySet {}
  62.                         rowCount 5
  63.                     }
  64.                     }
  65.                 }
  66.             }
  67.             NamedGroup ctxtNG {
  68.                 label Context
  69.                 DlgColumn DC {
  70.                    DlgRow fileDR {
  71.                       DlgColumn phaseDC {
  72.                     Label phaseL { text Phase: }
  73.                     DropDwnList phaseDDL {
  74.                         entrySet {}
  75.                         rowCount 5
  76.                     }
  77.                       }
  78.                       DlgColumn fileDC {
  79.                     Label fileL { text "Diagram Type:" }
  80.                     DropDwnList fileDDL {
  81.                         entrySet {}
  82.                         rowCount 5
  83.                     }
  84.                       }
  85.                    }
  86.                    DlgRow compDR {
  87.                       DlgColumn compDC {
  88.                     Label compL { text "Component Type:" }
  89.                     DropDwnList compDDL {
  90.                         entrySet {}
  91.                         rowCount 5
  92.                     }
  93.                       }
  94.                       DlgColumn labelDC {
  95.                     Label labelL { text "Label Type:" }
  96.                     DropDwnList labelDDL {
  97.                         entrySet {}
  98.                         rowCount 5
  99.                     }
  100.                       }
  101.                       DlgColumn condDC {
  102.                     Label condL { text Condition: }
  103.                     DropDwnList condDDL {
  104.                         entrySet {}
  105.                         rowCount 5
  106.                     }
  107.                       }
  108.                    }
  109.                 }
  110.             }
  111.         }
  112.     }
  113.     $this lPage $this.locationNBP.DC
  114.  
  115.     $this nameDDL [$this lPage].nameNG.DR.nameDC.nameDDL
  116.     $this itemDDL [$this lPage].nameNG.DR.itemDC.itemDDL
  117.  
  118.     $this phaseDDL [$this lPage].ctxtNG.DC.fileDR.phaseDC.phaseDDL
  119.     $this fileDDL [$this lPage].ctxtNG.DC.fileDR.fileDC.fileDDL
  120.     $this compDDL [$this lPage].ctxtNG.DC.compDR.compDC.compDDL
  121.     $this labelDDL [$this lPage].ctxtNG.DC.compDR.labelDC.labelDDL
  122.     $this condDDL [$this lPage].ctxtNG.DC.compDR.condDC.condDDL
  123.  
  124.     [$this itemDDL] entrySet {{} cl de pe et st Clear}
  125.     $this init
  126.  
  127.     set phaselist {}
  128.     foreach phaseType [[$this phaseDDL] entrySet] {
  129.         if {"$phaseType" != "Implementation"} {
  130.             lappend phaseList $phaseType
  131.         }
  132.     }
  133.  
  134.     [$this phaseDDL] entrySet $phaseList
  135. }
  136.  
  137. method OpenLocDialog::clearInterface {this} {
  138.     [$this nameDDL] entrySet [lsort [[[$this editorArea] strategyType] \
  139.         names]]
  140.     [$this nameDDL] selected [lindex [[$this nameDDL] entrySet] 0]
  141.     [$this itemDDL] selected [lindex [[$this itemDDL] entrySet] 0]
  142.     $this LocDialog::clearInterface
  143. }
  144.  
  145. method OpenLocDialog::fromInterface {this} {
  146.     set type [[$this editorArea] getStrategyType [[$this nameDDL] selected]]
  147.     [$this curObject] type $type
  148.     [$this curObject] itemType [[$this itemDDL] selected]
  149.     $this LocDialog::fromInterface
  150. }
  151.  
  152. method OpenLocDialog::toInterface {this} {
  153.     set object [$this curObject]
  154.     [$this itemDDL] selected [$object itemType]
  155.     $this title "Usage of [$object type]Strategy '[$object name]'"
  156.     $this LocDialog::toInterface
  157. }
  158.  
  159. method OpenLocDialog::objName {this args} {
  160.     if {$args == ""} {
  161.         return [[$this lPage].nameNG.DR.nameDC.nameDDL selected]
  162.     } else {
  163.         [$this lPage].nameNG.DR.nameDC.nameDDL selected [join $args]
  164.     }
  165. }
  166.  
  167. # Do not delete this line -- regeneration end marker
  168.  
  169.