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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)wd97docedi.tcl    /main/titanic/1
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)wd97docedi.tcl    /main/titanic/1   18 Jul 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require_module_file "doceditor.tcl" docwriter
  15.  
  16. Class Wd97DocEditor : {DocEditor} {
  17.     constructor
  18.     method destructor
  19.     method connect
  20.     method disconnect
  21.     method edit
  22.     method show
  23.     method print
  24.     method preview
  25.     attribute app
  26. }
  27.  
  28. constructor Wd97DocEditor {class this name_1} {
  29.     set this [DocEditor::constructor $class $this $name_1]
  30.     # Start constructor user section
  31.     # End constructor user section
  32.     $this printsIncluded y
  33.     $this name Wd97
  34.     $this version 80
  35.     $this localSectionTypes "[$this localSectionTypes] Doc"
  36.     # End constructor user section
  37.     return $this
  38. }
  39.  
  40. method Wd97DocEditor::destructor {this} {
  41.     # Start destructor user section
  42.     # End destructor user section
  43.     $this DocEditor::destructor
  44. }
  45.  
  46. method Wd97DocEditor::connect {this} {
  47.     uplevel #0 require wd97automa.tcl
  48.     $this app [Wd97AutomationObject new]
  49. }
  50.  
  51. method Wd97DocEditor::disconnect {this} {
  52.     [$this app] Quit
  53.     [$this app] delete
  54. }
  55.  
  56. method Wd97DocEditor::edit {this docSection} {
  57.     # look up winword in the registry
  58.     if [catch {
  59.         set wwCurVer [registry get HKEY_CLASSES_ROOT \
  60.                 "Word.Document\\CurVer" "(Default)"]
  61.         
  62.         set wwExe [registry get HKEY_CLASSES_ROOT \
  63.                 "$wwCurVer\\shell\\open\\command" "(Default)"]
  64.         }] {
  65.         wmtkerror "[$docSection uiName]: edit failed, Word not found"
  66.         return
  67.     }
  68.  
  69.     wmtkmessage "Starting edit for section '[$docSection uiName]'"
  70.     set cmd [list \
  71.         "$wwExe [$docSection docLocation] &" \
  72.         [$docSection uiName] \
  73.     ]
  74.     $docSection execute "$cmd"
  75. }
  76.  
  77. method Wd97DocEditor::show {this docSection} {
  78.     $this edit $docSection
  79. }
  80.  
  81. method Wd97DocEditor::print {this docSection} {
  82.     $this edit $docSection
  83. }
  84.  
  85. method Wd97DocEditor::preview {this docSection} {
  86.     $this edit $docSection
  87. }
  88.  
  89. # Do not delete this line -- regeneration end marker
  90.  
  91.