home *** CD-ROM | disk | FTP | other *** search
/ PC World 1997 November / PCWorld_1997-11_cd.bin / software / programy / komix / DATA.Z / copygroupv.tcl < prev    next >
Text File  |  1996-10-18  |  3KB  |  107 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cadre Technologies Inc.    1996
  4. #
  5. #      File:           @(#)copygroupv.tcl    /main/hindenburg/3
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)copygroupv.tcl    /main/hindenburg/3   18 Oct 1996 Copyright 1996 Cadre Technologies Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14.  
  15. Class CopyGroupVDlg : {TemplateDialog} {
  16.     constructor
  17.     method destructor
  18.     method handleOk
  19.     method popUp
  20.     attribute editPasteCmdBusy
  21.     attribute groupV
  22.     attribute fromSysV
  23.     attribute fromConfV
  24.     attribute toConfV
  25.     attribute dbObj
  26. }
  27.  
  28. constructor CopyGroupVDlg {class this name} {
  29.     set this [TemplateDialog::constructor $class $this $name]
  30.     # Start constructor user section
  31.  
  32.     interface DlgColumn $this.top {
  33.         Label groupVLab {}
  34.         CheckButton copyDefinition {
  35.         label "Copy Definition"
  36.         state 1
  37.         }
  38.         CheckButton copyContents {
  39.         label "Copy Contents"
  40.         state 0
  41.         }
  42.     }
  43.  
  44.     $this config \
  45.         -modal yes \
  46.         -title "Copy GroupVersion" \
  47.         -editPasteCmdBusy [.main undoCommandBusy EditPasteCmd] \
  48.         -helpPressed {.main helpOnName copyGroupVersion} \
  49.         -cancelPressed {%this delete} \
  50.         -okPressed {%this handleOk}
  51.  
  52.     # End constructor user section
  53.     return $this
  54. }
  55.  
  56. method CopyGroupVDlg::destructor {this} {
  57.     # Start destructor user section
  58.     # End destructor user section
  59. }
  60.  
  61. method CopyGroupVDlg::handleOk {this} {
  62.     set dbObj [$this dbObj]
  63.     set copyDefinition [$this.top.copyDefinition state]
  64.     set copyContents [$this.top.copyContents state]
  65.     set mask [expr ($copyDefinition << 1) | $copyContents]
  66.     case $mask in {
  67.     1 {set mode "contents"}
  68.     2 {set mode "definition"}
  69.     3 {set mode "all"}
  70.     default {set mode ""}
  71.     }
  72.     if {"$mode" != ""} {
  73.     set groupV [$this groupV]
  74.     set fromConfV [$this fromConfV]
  75.     set fromSysV [$this fromSysV]
  76.     set toConfV [$this toConfV]
  77.  
  78.     # Remove imported object in case of a cut operation
  79.     set editPasteCmdBusy [$this editPasteCmdBusy]
  80.     if {$editPasteCmdBusy &&
  81.         "[[.main undoCommand] operation]" == "cut"} {
  82.         $fromSysV cutVersion $groupV
  83.     }
  84.  
  85.     set script " $dbObj copy -groupVersion \
  86.         $groupV $fromSysV $fromConfV $toConfV $mode $editPasteCmdBusy"
  87.     if {$dbObj == [[.main currentObj] browsUiObj]} {
  88.         set update 1
  89.     } else {
  90.         set update 0
  91.     }
  92.     .main startCommand tcl \
  93.         "$script" "" \
  94.         "Copying [$groupV getInfo Text]" \
  95.         [list $update 0] 1
  96.     }
  97.     $this delete
  98. }
  99.  
  100. method CopyGroupVDlg::popUp {this} {
  101.     $this.top.groupVLab text "[[$this groupV] getInfo Text]:"
  102.     $this TemplateDialog::popUp
  103. }
  104.  
  105. # Do not delete this line -- regeneration end marker
  106.  
  107.