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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)extfvdbobj.tcl    /main/titanic/5
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)extfvdbobj.tcl    /main/titanic/5   16 Oct 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "filevobj.tcl"
  15.  
  16. Class ExtFVDbObj : {FileVObj ExternalFileVersion} {
  17.     method destructor
  18.     constructor
  19.     method promoter
  20.     method browserObjType
  21.     method editFile
  22.     method showFile
  23.     method pathName
  24. }
  25.  
  26. method ExtFVDbObj::destructor {this} {
  27.     # Start destructor user section
  28.     # End destructor user section
  29.     $this FileVObj::destructor
  30. }
  31.  
  32. constructor ExtFVDbObj {class this name} {
  33.     set this [ExternalFileVersion::constructor $class $this $name]
  34.     set this [FileVObj::constructor $class $this $name]
  35.     return $this
  36. }
  37.  
  38. selfPromoter ExternalFileVersion {this} {
  39.     ExtFVDbObj promote $this
  40. }
  41.  
  42. method ExtFVDbObj::promoter {this} {
  43.     $this FileVObj::promoter
  44.     module_promoter ExtFVDbObj $this
  45. }
  46.  
  47. proc ExtFVDbObj::associations {} {
  48.     return "[FileVObj::associations]"
  49. }
  50.  
  51. method ExtFVDbObj::browserObjType {this} {
  52.     return "ExtFVDbObj"
  53. }
  54.  
  55. proc ExtFVDbObj::childTypes {assoc} {
  56.     if {[lsearch -exact "[ExtFVDbObj::associations]" "$assoc"] == -1} {
  57.     return ""
  58.     }
  59.     return "[BrowserProcs::childTypes $assoc]"
  60. }
  61.  
  62. proc ExtFVDbObj::controlledLists {} {
  63.     return "[FileVObj::controlledLists]"
  64. }
  65.  
  66. proc ExtFVDbObj::infoProperties {} {
  67.     return [concat \
  68.     [FileVObj::infoProperties] \
  69.     {Path} \
  70.     ]
  71. }
  72.  
  73. method ExtFVDbObj::editFile {this} {
  74.     busy {
  75.     $this synchWithFileSystem
  76.     set file [$this file]
  77.     $this edit
  78.     $wmttoolObj startM4Command editor \
  79.         "[$this path]" \
  80.         "$this quit" \
  81.         "[$file qualifiedName :].[$file type]"
  82.     }
  83. }
  84.  
  85. method ExtFVDbObj::showFile {this} {
  86.     busy {
  87.     $this synchWithFileSystem
  88.     set file [$this file]
  89.     $wmttoolObj startM4Command viewer \
  90.         "[$this path]" "" "[$file qualifiedName :].[$file type]"
  91.     }
  92. }
  93.  
  94. method ExtFVDbObj::pathName {this} {
  95.     if [catch {set path [$this path]}] {
  96.     global errorInfo
  97.     set errorInfo ""
  98.     global errorCode
  99.     set errorCode ""
  100.     return ""
  101.     }
  102.     return $path
  103. }
  104.  
  105. # Do not delete this line -- regeneration end marker
  106.  
  107.