home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / komix / DATA.Z / helpdialog.tcl < prev    next >
Text File  |  1996-06-14  |  3KB  |  124 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)helpdialog.tcl    /main/2
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)helpdialog.tcl    /main/2   14 Jun 1996 Copyright 1996 Cadre Technologies Inc.
  10.  
  11. # Start user added include file section
  12.  
  13. require helptoc.tcl
  14. require helpindex.tcl
  15.  
  16. # End user added include file section
  17.  
  18.  
  19. Class HelpDialog : {NoteBkDialog} {
  20.     constructor
  21.     method destructor
  22.     method loadToc
  23.     method loadIndex
  24.     method showToc
  25.     method showIndex
  26.     method tool
  27.     method handleApplyOk
  28.     method _tool
  29.     attribute __tool
  30.     attribute toc
  31.     attribute current
  32.     attribute index
  33. }
  34.  
  35. constructor HelpDialog {class this name} {
  36.     set this [NoteBkDialog::constructor $class $this $name]
  37.     # Start constructor user section
  38.  
  39.     interface NoteBkPage $this.toc {
  40.         label Contents
  41.         HelpToc toc {}
  42.     }
  43.     set toc $this.toc.toc
  44.     $this config -toc $toc -current $toc -okPressed {%this handleApplyOk} \
  45.             -applyNowPressed {%this handleApplyOk} \
  46.             -helpPressed {showHelp GEN/db_hlp.html}
  47.     $this.toc raised "$this current $toc"
  48.  
  49.     interface NoteBkPage $this.index {
  50.         label Index
  51.         HelpIndex index {}
  52.     }
  53.     $this index $this.index.index
  54.     $this.index raised "$this current $this.index.index"
  55.  
  56.     # End constructor user section
  57.     return $this
  58. }
  59.  
  60. method HelpDialog::destructor {this} {
  61.     set ref [$this __tool]
  62.     if {$ref != ""} {
  63.         $ref _dialog ""
  64.     }
  65.     # Start destructor user section
  66.     # End destructor user section
  67. }
  68.  
  69. method HelpDialog::loadToc {this file} {
  70.     [$this toc] load $file
  71. }
  72.  
  73. method HelpDialog::loadIndex {this file} {
  74.     [$this index] load $file
  75. }
  76.  
  77. method HelpDialog::showToc {this} {
  78.     $this currentPage $this.toc
  79.     $this popUp
  80. }
  81.  
  82. method HelpDialog::showIndex {this} {
  83.     $this popUp
  84.     $this currentPage $this.index
  85. }
  86.  
  87. method HelpDialog::tool {this {newTool -}} {
  88.     if {$newTool == "-"} {
  89.         return [$this _tool]
  90.     }
  91.     $this _tool $newTool
  92.     [$this toc] tool $newTool
  93.     [$this index] tool $newTool
  94. }
  95.  
  96. method HelpDialog::handleApplyOk {this} {
  97.     if {[$this current] == [$this toc]} {
  98.         set selected [[$this toc] selected]
  99.         if {$selected != ""} {
  100.             $selected gotoReference
  101.         }
  102.     } else {
  103.         [$this index] gotoSelected
  104.     }
  105. }
  106.  
  107. # Do not delete this line -- regeneration end marker
  108.  
  109. method HelpDialog::_tool {this args} {
  110.     if {$args == ""} {
  111.         return [$this __tool]
  112.     }
  113.     set ref [$this __tool]
  114.     if {$ref != ""} {
  115.         $ref _dialog ""
  116.     }
  117.     set obj [lindex $args 0]
  118.     if {$obj != ""} {
  119.         $obj _dialog $this
  120.     }
  121.     $this __tool $obj
  122. }
  123.  
  124.