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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1996
  4. #
  5. #      File:           @(#)editselinv.tcl    /main/hindenburg/2
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)editselinv.tcl    /main/hindenburg/2   15 Oct 1996 Copyright 1996 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "undocomman.tcl"
  15.  
  16. Class EditSelInvCmd : {UndoCommand} {
  17.     constructor
  18.     method destructor
  19.     method do
  20.     method redo
  21.     method undo
  22. }
  23.  
  24. constructor EditSelInvCmd {class this name} {
  25.     set this [UndoCommand::constructor $class $this $name]
  26.     # Start constructor user section
  27.     # End constructor user section
  28.     return $this
  29. }
  30.  
  31. method EditSelInvCmd::destructor {this} {
  32.     # Start destructor user section
  33.     # End destructor user section
  34.     $this UndoCommand::destructor
  35. }
  36.  
  37. method EditSelInvCmd::do {this} {
  38.     [$this objectSet] contents [[.main flatView] selectedSet]
  39.     $this redo
  40.     $this busy 0
  41. }
  42.  
  43. method EditSelInvCmd::redo {this} {
  44.     busy {
  45.     set selectedSet ""
  46.     if {[[.main flatView] selectedSet] != [[$this objectSet] contents]} {
  47.         [$this objectSet] foreach flatObj {
  48.         if {! [$flatObj filteredOutState]} {
  49.             lappend selectedSet $flatObj
  50.         }
  51.         }
  52.         [.main flatView] selectedSet $selectedSet
  53.     }
  54.     foreach flatObj [[.main flatView] objectSet] {
  55.         if {(! [$flatObj filteredOutState]) &&
  56.         "[$flatObj browsUiObj]" != "" &&
  57.         (! [$flatObj selectState])} {
  58.         lappend selectedSet $flatObj
  59.         }
  60.     }
  61.     [.main flatView] selectedSet $selectedSet
  62.     .main selectionChanged
  63.     }
  64. }
  65.  
  66. method EditSelInvCmd::undo {this} {
  67.     if {[[.main flatView] selectedSet] == [[$this objectSet] contents]} {
  68.     return
  69.     }
  70.  
  71.     busy {
  72.     set selectedSet ""
  73.     [$this objectSet] foreach flatObj {
  74.         if {! [$flatObj filteredOutState]} {
  75.         lappend selectedSet $flatObj
  76.         }
  77.     }
  78.     [.main flatView] selectedSet $selectedSet
  79.     .main selectionChanged
  80.     }
  81. }
  82.  
  83. # Do not delete this line -- regeneration end marker
  84.  
  85.