home *** CD-ROM | disk | FTP | other *** search
/ PC World 1997 November / PCWorld_1997-11_cd.bin / software / programy / komix / DATA.Z / browsdbobj.tcl < prev    next >
Text File  |  1996-09-18  |  4KB  |  159 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)browsdbobj.tcl    /main/hindenburg/5
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)browsdbobj.tcl    /main/hindenburg/5   18 Sep 1996 Copyright 1996 Cadre Technologies Inc.
  10.  
  11. # Start user added include file section
  12. require "classmaker.tcl"
  13. require "rulesuiobj.tcl"
  14. # End user added include file section
  15.  
  16. require "browsuiobj.tcl"
  17.  
  18. Class BrowsDbObj : {BrowsUiObj} {
  19.     method destructor
  20.     constructor
  21.     method promoter
  22.     method controlledActions2String
  23.     method displayName
  24.     method getInfo
  25.     method initializeInfo
  26.     method removeObject
  27.     method uiClass
  28.     method uiIdentity
  29.     attribute controlledListSet
  30.     attribute customFileVersionSet
  31.     attribute accessRuleSet
  32. }
  33.  
  34. method BrowsDbObj::destructor {this} {
  35.     # Start destructor user section
  36.  
  37.     if [isCommand [$this accessRuleSet]] {
  38.         [$this accessRuleSet] delete
  39.     }
  40.  
  41.     # End destructor user section
  42.     $this BrowsUiObj::destructor
  43. }
  44.  
  45. constructor BrowsDbObj {class this name} {
  46.     set this [BrowsUiObj::constructor $class $this $name]
  47.     return $this
  48. }
  49.  
  50. method BrowsDbObj::promoter {this} {
  51.     $this BrowsUiObj::promoter
  52.  
  53.     set accessRuleSet $this.${RulesUiObj::uiClass}:0
  54.     if {! [isCommand $accessRuleSet]} {
  55.     RulesUiObj new $accessRuleSet -parent $this
  56.     }
  57.     $this accessRuleSet $accessRuleSet
  58. }
  59.  
  60. method BrowsDbObj::controlledActions2String {this} {
  61.     return [BrowserProcs::action2String [$this controlledActions]]
  62. }
  63.  
  64. method BrowsDbObj::displayName {this} {
  65.     return "[$this name]"
  66. }
  67.  
  68. method BrowsDbObj::getInfo {this header} {
  69.     set info [[$this info] set $header]
  70.     if {"$info" != ""} {
  71.     return $info
  72.     }
  73.  
  74.     global browsDbObjInfoDict
  75.     if {! [info exists browsDbObjInfoDict]} {
  76.     set browsDbObjInfoDict [Dictionary new \
  77.         -contents {
  78.         Comments comments
  79.         "Controlled Actions" controlledActions2String
  80.         Created createTime2String
  81.         "Created By" createdBy
  82.         "DB Host" databaseHost
  83.         "DB Name" databaseName
  84.         "DB Server" databaseServer
  85.         "Documented System" documentedSystemName
  86.         Editor editorType
  87.         Frozen freezeTime2String
  88.         Identity identity
  89.         "In Corporate" inCorporate2String
  90.         Link linkStatus
  91.         Name displayName
  92.         Path pathName
  93.         Phase phaseName
  94.         Project projectName
  95.         Release productRelease
  96.         Scope scope2String
  97.         Status status
  98.         System systemName
  99.         Text text
  100.         Type browserType
  101.         Updated updateTime2String
  102.         Version versionName
  103.         } \
  104.     ]
  105.     }
  106.  
  107.     if [catch {set info [$this [$browsDbObjInfoDict set $header]]}] {
  108.     global errorInfo
  109.     set errorInfo ""
  110.     global errorCode
  111.     set errorCode ""
  112.     set info ""
  113.     }
  114.     $this setInfo $header $info
  115.     return $info
  116. }
  117.  
  118. method BrowsDbObj::initializeInfo {this arg} {
  119.     [$this info] contents ""
  120. }
  121.  
  122. method BrowsDbObj::removeObject {this object} {
  123.     if [$object isA ConfigVersion] {
  124.     set flag "-configVersion"
  125.     } elseif [$object isA PhaseVersion] {
  126.     set flag "-phaseVersion"
  127.     } elseif [$object isA SystemVersion] {
  128.     set flag "-systemVersion"
  129.     if {[$object isA Document] &&
  130.         "[$object getInfo Status]" != "backGround"} {
  131.         $object removeDocDir
  132.     }
  133.     } elseif [$object isA ExternalLink] {
  134.     set flag "-externalLink"
  135.     } elseif [$object isA FileVersion] {
  136.     set flag "-fileVersion"
  137.     } elseif [$object isA GroupVersion] {
  138.     set flag "-groupVersion"
  139.     } elseif [$object isA PropertyReference] {
  140.     set flag "-propRef"
  141.     } elseif [$object isA SystemFileReference] {
  142.     set flag "-reference"
  143.     } else {
  144.     set flag ""
  145.     }
  146.     eval $this remove $flag $object
  147. }
  148.  
  149. method BrowsDbObj::uiClass {this} {
  150.     return [$this ORB_class]
  151. }
  152.  
  153. method BrowsDbObj::uiIdentity {this} {
  154.     return [$this identity]
  155. }
  156.  
  157. # Do not delete this line -- regeneration end marker
  158.  
  159.