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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Westmount Technology    1994
  4. #
  5. #      File:           @(#)cbattrfilt.tcl    1.7
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)cbattrfilt.tcl    1.7   04 Apr 1996 Copyright 1994 Westmount Technology
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "cbfilter.tcl"
  15.  
  16. Class CBAttrFilter : {CBFilter} {
  17.     constructor
  18.     method destructor
  19. }
  20.  
  21. constructor CBAttrFilter {class this name propKnowledgeDB} {
  22.     set this [CBFilter::constructor $class $this $name $propKnowledgeDB]
  23.     # Start constructor user section
  24.  
  25.     PropLocation new .propLocation \
  26.         -phaseType [[[[ClientContext::global] currentPhase] phase] type] \
  27.         -diagramType $CAD_TYPE \
  28.         -componentType $CDM_ATTR
  29.  
  30.     # Component (NameType label) properties
  31.     .propLocation labelType $LT_NAME_TYPE
  32.     .propLocation containerKind Component
  33.     .propLocation containerType $CDM_ATTR
  34.     set propHolder {$feature getMatrixComponent}
  35.     $this addFilterElements [$propKnowledgeDB \
  36.         definitions .propLocation] $propHolder
  37.         
  38.     # Name item properties
  39.     .propLocation containerKind Item
  40.     .propLocation containerType $IT_DATA
  41.     set propHolder {set wrk [$feature getNameWorkItem]; \
  42.         if {[$wrk isNil]} {set propObject $wrk} \
  43.         else {set propObject [$wrk properties]}}
  44.     $this addFilterElements [$propKnowledgeDB \
  45.         definitions .propLocation] $propHolder
  46.  
  47.     # Type item properties
  48.     .propLocation containerKind Item
  49.     .propLocation containerType $IT_CLASS
  50.     set propHolder {set wrk [$feature getTypeWorkItem]; \
  51.         if {[$wrk isNil]} {set propObject $wrk} \
  52.         else {set propObject [$wrk properties]}}
  53.     $this addFilterElements [$propKnowledgeDB \
  54.         definitions .propLocation] $propHolder
  55.  
  56.     # Implicit properties
  57.     $this addImplicitPropFilterElement $COMP_KEY "Key" \
  58.         "CheckButton" "-state 0"
  59.     $this addImplicitPropFilterElement $COMP_CLASS_ATTR "Is Class Feature" \
  60.         "CheckButton" "-state 0"
  61.     $this addImplicitPropFilterElement $COMP_INITIAL_VALUE "Initial Value" \
  62.         "SingleLineText" "-columnCount 30"
  63.     $this addImplicitPropFilterElement $COMP_DERIVED_ATTR "Is Derived" \
  64.         "CheckButton" "-state 0"
  65.  
  66.     .propLocation delete
  67.  
  68.     $this loadFromString [m4_var get M4_attribute_filter]
  69.     $this keepChanges
  70.  
  71.     # End constructor user section
  72.     return $this
  73. }
  74.  
  75. method CBAttrFilter::destructor {this} {
  76.     # Start destructor user section
  77.     # End destructor user section
  78.     $this CBFilter::destructor
  79. }
  80.  
  81. # Do not delete this line -- regeneration end marker
  82.  
  83.