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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)dirbrowser.tcl    /main/titanic/2
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)dirbrowser.tcl    /main/titanic/2   2 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 "dirselectd.tcl"
  15.  
  16. Class DirBrowser : {DirSelectDialog} {
  17.     method destructor
  18.     constructor
  19.     method selected
  20.     method createDir
  21.     attribute createButton
  22.     attribute current
  23. }
  24.  
  25. method DirBrowser::destructor {this} {
  26.     # Start destructor user section
  27.     # End destructor user section
  28.     $this DirSelectDialog::destructor
  29. }
  30.  
  31.  
  32. # Create a director browser.  If createButton
  33. # is true, a "Create" button will be added, which
  34. # allows the entered directory to be created.
  35. #
  36. constructor DirBrowser {class this name {createButton 0}} {
  37.     set this [DirSelectDialog::constructor $class $this $name]
  38.  
  39.     $this config \
  40.     -okDefault 0 \
  41.     -cancelDefault 0 \
  42.     -current [pwd] \
  43.     -createButton $createButton
  44.  
  45.     if $createButton {
  46.     PushButton new $this.create \
  47.         -label "Create" \
  48.         -activated "$this createDir"
  49.     }
  50.  
  51.     return $this
  52. }
  53.  
  54.  
  55. # Returns or sets the selected directory.
  56. #
  57. method DirBrowser::selected {this {dir ""}} {
  58.     if {$dir == ""} {
  59.         return [$this directory]
  60.     }
  61.  
  62.     $this directory $dir
  63. }
  64.  
  65. method DirBrowser::createDir {this} {
  66.     $this handleOk
  67.     BasicFS::makeDir [$this directory]
  68.     $this updateTree
  69.  
  70.     # MOTIF BUG: makeVisible scrolls the dialog
  71.     if [$this windows] {
  72.     $this makeVisible
  73.     }
  74. }
  75.  
  76. # Do not delete this line -- regeneration end marker
  77.  
  78.