home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / komix / DATA.Z / mtsystem.tcl < prev    next >
Text File  |  1997-11-20  |  2KB  |  93 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)mtsystem.tcl    /main/titanic/8
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)mtsystem.tcl    /main/titanic/8   20 Nov 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "mtcontaine.tcl"
  15. require "mtitemkeep.tcl"
  16.  
  17. Class MTSystem : {MTItemKeeper MTContainer} {
  18.     constructor
  19.     method destructor
  20.     method associations
  21.     method createConflictingObjects
  22.     method getOwners
  23.     method import
  24. }
  25.  
  26. constructor MTSystem {class this name fromRepObj toRepObj} {
  27.     set this [MTItemKeeper::constructor $class $this $name]
  28.     set this [MTContainer::constructor $class $this $name $fromRepObj $toRepObj]
  29.     # Start constructor user section
  30.     $this setVersionableClass localFileOnlyVersions MTFile
  31.     $this setVersionableClass groupVersions MTGroup
  32.     $this setVersionableClass reused MTCorpGroup
  33.     $this selectFlag systemVersion
  34.     $this copyCommand "copy -systemVersion"
  35.     $this level System
  36.     $this createConflictingObjects
  37.     # End constructor user section
  38.     return $this
  39. }
  40.  
  41. method MTSystem::destructor {this} {
  42.     # Start destructor user section
  43.     # End destructor user section
  44.     $this MTItemKeeper::destructor
  45.     $this MTContainer::destructor
  46. }
  47.  
  48. method MTSystem::associations {this} {
  49.     return {localFileOnlyVersions customFileVersions groupVersions reused}
  50. }
  51.  
  52. method MTSystem::createConflictingObjects {this} {
  53.  
  54.     MTVersion::createConflictingObjects $this
  55.     $this createConflictingItemObjects
  56. }
  57.  
  58. method MTSystem::getOwners {this} {
  59.  
  60.     set owners ""
  61.     lappend owners [[$this fromRepObj] phaseVersions]
  62.     if {[$this toRepObj] != ""} {
  63.         lappend owners [[$this toRepObj] phaseVersions]
  64.     } else {
  65.         lappend owners {}
  66.     }
  67.     return $owners
  68. }
  69.  
  70. method MTSystem::import {this} {
  71.  
  72.     if {[$this toRepObj] == ""} {
  73.         return [$this MTVersion::import]
  74.     }
  75.  
  76.     # import the children of the systems with 'to' object
  77.     set success 1
  78.     [$this childSet] foreach child {
  79.         if ![$child import] {
  80.             set success 0
  81.         }
  82.     }
  83.     if {$success == 1} {
  84.         # create mergelink
  85.         MTProcs::createMergeLink $this [.main mergeLinkComment]
  86.     }
  87.  
  88.     return $success
  89. }
  90.  
  91. # Do not delete this line -- regeneration end marker
  92.  
  93.