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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)repdumpdia.tcl    /main/titanic/6
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)repdumpdia.tcl    /main/titanic/6   28 Nov 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "repdbdialo.tcl"
  15.  
  16. Class RepDumpDialog : {RepDbDialog} {
  17.     constructor
  18.     method destructor
  19.     method popUp
  20.     method checkOk
  21.     method pressedOk
  22.     method dumpFinished
  23.     attribute nameRow
  24.     attribute nameLabel
  25.     attribute nameField
  26.     attribute shutdownButton
  27.     attribute dumpDirectory
  28.     attribute dumpedObject
  29. }
  30.  
  31. constructor RepDumpDialog {class this name view} {
  32.     set this [RepDbDialog::constructor $class $this $name $view]
  33.     # Start constructor user section
  34.  
  35.         $this autoPopDown 0
  36.  
  37.     interface DlgColumn $this.c {
  38.         Label label { text "Name" }
  39.         DlgRow r {
  40.         spaceType NONE
  41.         DlgColumn n {
  42.             spaceType EVEN
  43.             horStretchFactor 100
  44.             SingleLineText name {
  45.             text ""
  46.             columnCount 30
  47.             horStretchFactor 100
  48.             }
  49.         }
  50.         }
  51.         CheckButton shut {
  52.         label "Shutdown dbservers before dumping."
  53.         state 1
  54.         }
  55.             NamedGroup db {
  56.                 label "Database"
  57.                 DlgColumn c { }
  58.             }
  59.     }
  60.  
  61.         $this nameLabel $this.c.label
  62.         $this nameField $this.c.r.n.name
  63.         $this nameRow   $this.c.r
  64.         $this shutdownButton $this.c.shut
  65.         $this dumpDirectory ""
  66.         $this dumpedObject [ORB::nil]
  67.  
  68.         $this okPressed "$this pressedOk"
  69.         [$this nameField] editable 0
  70.         [$this nameField] textModified "$this checkOk"
  71.  
  72.     $this createDbInterface $this.c.db.c 30
  73.     $this setDbFields
  74.     $this setupForPassword
  75.  
  76.     # End constructor user section
  77.     return $this
  78. }
  79.  
  80. method RepDumpDialog::destructor {this} {
  81.     # Start destructor user section
  82.     # End destructor user section
  83.     $this RepDbDialog::destructor
  84. }
  85.  
  86. method RepDumpDialog::popUp {this} {
  87.     $this checkOk
  88.     $this RepDbDialog::popUp
  89. }
  90.  
  91. method RepDumpDialog::checkOk {this} {
  92.     $this okSensitive [expr {
  93.         [[$this nameField] text] != "" && [$this passwordOk]
  94.     }]
  95. }
  96.  
  97. method RepDumpDialog::pressedOk {this} {
  98.     $this busy 1
  99.  
  100.     if ![$this getDbFields dbInfo] {
  101.         $this dumpFinished 1
  102.         return
  103.     }
  104.  
  105.     set rep [[$this view] rep]
  106.     if [[$this shutdownButton] state] {
  107.         set name [$rep currentName]
  108.     if {$name != "" && ![$rep shutdownDbServers $name]} {
  109.         $this busy 0
  110.             return
  111.         }
  112.     }    
  113.  
  114.     if ![$this dump dbInfo] {
  115.         $this busy 0
  116.     }
  117. }
  118.  
  119. method RepDumpDialog::dumpFinished {this exitCode} {
  120.     $this busy 0
  121.     if {$exitCode == 0} {
  122.         $this popDown
  123.         [$this view] message "Dumped [$this objDescription] successfully."
  124.     } else {
  125.         [$this view] message "Failed to dump [$this objDescription]."
  126.     }
  127. }
  128.  
  129. # Do not delete this line -- regeneration end marker
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.