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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Westmount Technology    1994
  4. #
  5. #      File:           @(#)custobjvie.tcl    1.2
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)custobjvie.tcl    1.2   07 Jul 1995 Copyright 1994 Westmount Technology
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "custfilter.tcl"
  15.  
  16. Class CustObjViewFilter : {CustFilter} {
  17.     constructor
  18.     method destructor
  19.     method rehash
  20.     method fileFilter
  21.     method isFilterActive
  22.     attribute file
  23. }
  24.  
  25. constructor CustObjViewFilter {class this name editorArea} {
  26.     set this [CustFilter::constructor $class $this $name $editorArea]
  27.     $this file 0
  28.     # Start constructor user section
  29.     # End constructor user section
  30.     return $this
  31. }
  32.  
  33. method CustObjViewFilter::destructor {this} {
  34.     # Start destructor user section
  35.     # End destructor user section
  36.     $this CustFilter::destructor
  37. }
  38.  
  39. method CustObjViewFilter::rehash {this} {
  40.  
  41.     $this CustFilter::rehash
  42.  
  43.     if {![$this file]} {
  44.         return
  45.     }
  46.  
  47.     foreach i [[$this editorArea] getObjects] {
  48.         if {[$i specLevel] != [[$this editorArea] _level]} {
  49.             $i filteredOutState 1
  50.         }
  51.     }
  52. }
  53.  
  54. method CustObjViewFilter::fileFilter {this state} {
  55.  
  56.     $this file $state
  57.     $this rehash
  58. }
  59.  
  60. method CustObjViewFilter::isFilterActive {this} {
  61.  
  62.     if {[$this CustFilter::isFilterActive] || [$this file]} {
  63.         return 1
  64.     }
  65.  
  66.     return 0
  67. }
  68.  
  69. # Do not delete this line -- regeneration end marker
  70.  
  71.