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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)cadcdmcomp.tcl    1.8
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)cadcdmcomp.tcl    1.8   07 Mar 1996 Copyright 1996 Cadre Technologies Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14.  
  15. Class CADCDMComp : {GCObject} {
  16.     constructor
  17.     method destructor
  18.     method getLabel
  19.     method getWorkItem
  20.     method getItem
  21.     method getNameItemType
  22.     method getNameTypeLabel
  23.     method getNameItem
  24.     method getNameWorkItem
  25.     method name
  26.     method getTypeItem
  27.     method getTypeWorkItem
  28.     method type
  29.     attribute nameTypeLabel
  30.     attribute nameItem
  31.     attribute nameWorkItem
  32.     attribute typeItem
  33.     attribute typeWorkItem
  34. }
  35.  
  36. constructor CADCDMComp {class this} {
  37.     set this [GCObject::constructor $class $this]
  38.     # Start constructor user section
  39.     $this nameTypeLabel [ORB::nil]
  40.     $this nameItem [ORB::nil]
  41.     $this nameWorkItem [ORB::nil]
  42.     $this typeItem [ORB::nil]
  43.     $this typeWorkItem [ORB::nil]
  44.     # End constructor user section
  45.     return $this
  46. }
  47.  
  48. method CADCDMComp::destructor {this} {
  49.     # Start destructor user section
  50.     # End destructor user section
  51. }
  52.  
  53. method CADCDMComp::getLabel {this labelType} {
  54.     foreach label [[$this getMatrixComponent] labels] {
  55.         if {[$label type] == $labelType} {
  56.             return $label
  57.         }
  58.     }
  59.     return [ORB::nil]
  60. }
  61.  
  62. method CADCDMComp::getWorkItem {this itemType} {
  63.     set item [$this getItem $itemType]
  64.     if {[$item isNil]} {
  65.         return [ORB::nil]
  66.     }
  67.     set configV [[ClientContext::global] currentConfig]
  68.     return [[[$this getMatrixComponent] diagram] \
  69.         findDeclaration $item $configV]
  70. }
  71.  
  72. method CADCDMComp::getItem {this itemType} {
  73.     return [[$this getMatrixComponent] getItem $itemType]
  74. }
  75.  
  76. method CADCDMComp::getNameItemType {this} {
  77.     return $IT_DATA
  78. }
  79.  
  80. method CADCDMComp::getNameTypeLabel {this} {
  81.     if {![[$this nameTypeLabel] isNil]} {
  82.         return [$this nameTypeLabel]
  83.     }
  84.     $this nameTypeLabel [$this getLabel $LT_NAME_TYPE]
  85.     return [$this nameTypeLabel]
  86. }
  87.  
  88. method CADCDMComp::getNameItem {this} {
  89.     if {![[$this nameItem] isNil]} {
  90.         return [$this nameItem]
  91.     }
  92.     $this nameItem [$this getItem [$this getNameItemType]]
  93.     return [$this nameItem]
  94. }
  95.  
  96. method CADCDMComp::getNameWorkItem {this} {
  97.     if {![[$this nameWorkItem] isNil]} {
  98.         return [$this nameWorkItem]
  99.     }
  100.     $this nameWorkItem [$this getWorkItem [$this getNameItemType]]
  101.     return [$this nameWorkItem]
  102. }
  103.  
  104. method CADCDMComp::name {this} {
  105.     set item [$this getNameItem]
  106.     if {[$item isNil]} {
  107.         return ""
  108.     }
  109.     return [$item name]
  110. }
  111.  
  112. method CADCDMComp::getTypeItem {this} {
  113.     if {![[$this typeItem] isNil]} {
  114.         return [$this typeItem]
  115.     }
  116.     $this typeItem [$this getItem $IT_CLASS]
  117.     return [$this typeItem]
  118. }
  119.  
  120. method CADCDMComp::getTypeWorkItem {this} {
  121.     if {![[$this typeWorkItem] isNil]} {
  122.         return [$this typeWorkItem]
  123.     }
  124.     $this typeWorkItem [$this getWorkItem $IT_CLASS]
  125.     return [$this typeWorkItem]
  126. }
  127.  
  128. method CADCDMComp::type {this} {
  129.     set item [$this getTypeItem]
  130.     if {[$item isNil]} {
  131.         return ""
  132.     }
  133.     return [$item name]
  134. }
  135.  
  136. # Do not delete this line -- regeneration end marker
  137.  
  138.