home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / komix / DATA.Z / vbwmtarea.tcl < prev    next >
Text File  |  1997-08-07  |  3KB  |  119 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)vbwmtarea.tcl    /main/titanic/2
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)vbwmtarea.tcl    /main/titanic/2   7 Aug 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14.  
  15. Class VBWmtArea : {WmtArea} {
  16.     constructor
  17.     method destructor
  18.     method update
  19.     attribute projectInfo
  20.     attribute configInfo
  21.     attribute phaseInfo
  22.     attribute systemInfo
  23.     attribute ccSubscriber
  24. }
  25.  
  26. constructor VBWmtArea {class this name} {
  27.     set this [WmtArea::constructor $class $this $name]
  28.     # Start constructor user section
  29.     interface WaColumn $this.WC0 {
  30.         WaEntry projWE {
  31.             labelText "Project:"
  32.         }
  33.         WaEntry confWE {
  34.             labelText "Configuration Version:"
  35.         }
  36.     }
  37.     interface WaColumn $this.WC1 {
  38.         WaEntry phasWE {
  39.             labelText "Phase:"
  40.         }
  41.         WaEntry systWE {
  42.             labelText "System:"
  43.         }
  44.     }
  45.  
  46.     foreach column [$this columnSet] {
  47.         foreach entry [$column entrySet] {
  48.         $entry labelFont \
  49.             [m4_var get M4_contextarea_labelfont -context vb]
  50.         $entry valueFont \
  51.             [m4_var get M4_contextarea_valuefont -context vb]
  52.         }
  53.     }
  54.  
  55.     $this projectInfo $this.WC0.projWE
  56.     $this configInfo  $this.WC0.confWE
  57.     $this phaseInfo   $this.WC1.phasWE
  58.     $this systemInfo  $this.WC1.systWE
  59.  
  60.     set ccSub [ClContextSubscriber new -notify "$this update"]
  61.     [ClientContext::global] addSubscriber $ccSub
  62.     $this ccSubscriber $ccSub
  63.  
  64.     # End constructor user section
  65.     return $this
  66. }
  67.  
  68. method VBWmtArea::destructor {this} {
  69.     # Start destructor user section
  70.     [ClientContext::global] removeSubscriber [$this ccSubscriber]
  71.     [$this ccSubscriber] delete
  72.     # End destructor user section
  73. }
  74.  
  75. method VBWmtArea::update {this} {
  76.  
  77.     [$this projectInfo] valueText ""
  78.     [$this configInfo] valueText ""
  79.     [$this phaseInfo] valueText ""
  80.     [$this systemInfo] valueText ""
  81.  
  82.     set objV [.main currentVersion]
  83.     if {$objV == "" || [$objV isNil]} {
  84.         return
  85.     }
  86.  
  87.     set cc [ClientContext::global]
  88.     set project [$cc currentProject]
  89.     if [$project isNil] {
  90.         return
  91.     }
  92.     [$this projectInfo] valueText [$project name]
  93.  
  94.     set configV [$cc currentConfig]
  95.     if [$configV isNil] {
  96.         return
  97.     }
  98.  
  99.     set configName "[[$configV ConfigVersion::config] name]"
  100.     set configName "$configName (V[$configV versionNumber])"
  101.     [$this configInfo] valueText $configName
  102.  
  103.     set phaseV [$cc currentPhase]
  104.     if [$phaseV isNil] {
  105.         return
  106.     }
  107.     [$this phaseInfo] valueText [[$phaseV phase] name]
  108.  
  109.     set systemV [$cc currentSystem]
  110.     if [$systemV isNil] {
  111.         return
  112.     }
  113.     [$this systemInfo] valueText [[$systemV system] name]
  114.  
  115. }
  116.  
  117. # Do not delete this line -- regeneration end marker
  118.  
  119.