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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)drsfileobj.tcl    /main/titanic/4
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)drsfileobj.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 "drsgrouped.tcl"
  15. require "drssmmodel.tcl"
  16.  
  17. Class DrsFileObject : {DrsGroupedObject DrsSMModelObject} {
  18.     method destructor
  19.     constructor
  20.     method getEditorTypes
  21.     method getPhase
  22.     method levelName
  23.     method levelType
  24.     method show
  25.     method getClassIdInPrevPhase
  26. }
  27.  
  28. method DrsFileObject::destructor {this} {
  29.     # Start destructor user section
  30.     # End destructor user section
  31.     $this DrsGroupedObject::destructor
  32.     $this DrsSMModelObject::destructor
  33. }
  34.  
  35. constructor DrsFileObject {class this file fileV system systemV} {
  36.         set this [DrsGroupedObject::constructor $class $this $file $fileV $system $systemV]
  37.         set this [DrsSMModelObject::constructor $class $this [$file fileVersions]]
  38.     return $this
  39. }
  40.  
  41. method DrsFileObject::getEditorTypes {this} {
  42.     if ![[$this getLevelV] isA Diagram] {
  43.         return
  44.     }
  45.     return [[$this level] type]
  46. }
  47.  
  48. method DrsFileObject::getPhase {this} {
  49.         set conf [$this getConfigVersion]
  50.         set file [$this level]
  51.         set system [$file system]
  52.         return [$system phase]
  53. }
  54.  
  55. method DrsFileObject::levelName {this} {
  56.     set name  [[$this level] qualifiedName :]
  57.         set type [$this levelType]
  58.         return "$name.$type"
  59. }
  60.  
  61. method DrsFileObject::levelType {this} {
  62.     set type [[$this level] type]
  63.         return $type
  64. }
  65.  
  66. method DrsFileObject::show {this majorOper minorOper} {
  67.     if {$minorOper != "Objects" && $minorOper != "ClassFeatures"} {
  68.             $this DrsGroupedObject::show $majorOper $minorOper
  69.         }
  70. }
  71.  
  72. method DrsFileObject::getClassIdInPrevPhase {this imp_from} {
  73.     set conf [$this getConfigVersion]
  74.     set fileV [$this getLevelV]
  75.     set file [$fileV file]
  76.     set system [$file system]
  77.     set currPhase [$this getPhase]
  78.     set prevPhase [$currPhase previous]
  79.     if [$prevPhase isNil] {
  80.         return
  81.     }
  82.     set prevSystem [$prevPhase findSystem [$system name] [$system type]]
  83.     if [$prevSystem isNil] {
  84.         return
  85.     }
  86.     set prevSysV [$prevSystem selectedVersion $conf]
  87.     if [$prevSysV isNil] {
  88.         return
  89.     }
  90.     set classWorkItem [$prevSysV findDefinition [$file name] cl $conf]
  91.     if [$classWorkItem isNil] {
  92.         return
  93.     }
  94.     return [[$classWorkItem properties] getPropertyValue ${DrsDriver::FORMALMODULE}]
  95. }
  96.  
  97. # Do not delete this line -- regeneration end marker
  98.  
  99.