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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)drsqitemob.tcl    /main/titanic/4
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)drsqitemob.tcl    /main/titanic/4   29 Aug 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "drsitemobj.tcl"
  15. require "drsqobject.tcl"
  16.  
  17. Class DrsQItemObject : {DrsQObject DrsItemObject} {
  18.     constructor
  19.     method destructor
  20.     method levelName
  21.     method levelType
  22.     method getEditorTypes
  23.     method saveReference
  24.     method show
  25. }
  26.  
  27. constructor DrsQItemObject {class this workItem system systemV} {
  28.     set this [DrsQObject::constructor $class $this]
  29.     set this [DrsItemObject::constructor $class $this $workItem $system $systemV]
  30.     # Start constructor user section
  31.     # End constructor user section
  32.     return $this
  33. }
  34.  
  35. method DrsQItemObject::destructor {this} {
  36.     # Start destructor user section
  37.     # End destructor user section
  38.     $this DrsQObject::destructor
  39.     $this DrsItemObject::destructor
  40. }
  41.  
  42. method DrsQItemObject::levelName {this} {
  43.         set workItem [$this level]
  44.     set item [$this item]
  45.     set itemName [$item name]
  46.     if {[$item type] == "de"} {
  47.         return "$itemName.Attribute"
  48.     } else {
  49.         return "$itemName.Operation"
  50.     }
  51. }
  52.  
  53. method DrsQItemObject::levelType {this} {
  54.     set item [$this item]
  55.     set itemType [$item type]
  56.     if {$itemType == "de"} {
  57.         return "Attribute"
  58.     } else {
  59.         return "Operation"
  60.     }
  61. }
  62.  
  63. method DrsQItemObject::getEditorTypes {this} {
  64.     return "cad"
  65. }
  66.  
  67. method DrsQItemObject::saveReference {this fLevel drsRefs parOTVers selIts} {
  68.         set ownDrsRef [$this DrsQObject::saveReference $fLevel $drsRefs $parOTVers $selIts]
  69.         $this DrsLinkableObject::saveReference $fLevel $ownDrsRef $parOTVers $selIts
  70.     set workItem [$fLevel workItem]
  71.     set systemV [$workItem owner]
  72.     set qualifierItem [$this qualifier]
  73.     set conf [$this getConfigVersion]
  74.     set workItemOfQualifier [$systemV findDefinition $qualifierItem $conf]
  75.     set propObjOfQualfier [$workItemOfQualifier properties]
  76.     
  77.     # by definition parent item (class item) is up to date
  78.     # to prevent from getting into an update of the class next time
  79.     # it is time stampped.
  80.     $propObjOfQualfier setProperty ${DrsDriver::FORMALMODULE}_TIMESTAMP [$workItem updateTime]
  81. }
  82.  
  83. method DrsQItemObject::show {this majorOper minorOper} {
  84.     $this DrsQObject::show $majorOper $minorOper
  85.     $this DrsGroupedObject::show $majorOper $minorOper
  86. }
  87.  
  88. # Do not delete this line -- regeneration end marker
  89.  
  90.