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

  1. #---------------------------------------------------------------------------
  2. #
  3. #      (c)     Cayenne Software Inc.    1997
  4. #
  5. #      File:           @(#)cadnassocc.tcl    /main/titanic/1
  6. #      Author:         <generated>
  7. #      Description:
  8. #---------------------------------------------------------------------------
  9. # SccsId = @(#)cadnassocc.tcl    /main/titanic/1   3 Sep 1997 Copyright 1997 Cayenne Software Inc.
  10.  
  11. # Start user added include file section
  12. # End user added include file section
  13.  
  14. require "cadassocia.tcl"
  15.  
  16. Class CADNAssocConn : {CADAssociation} {
  17.     constructor
  18.     method destructor
  19.     method load
  20.     method getRoleLabel
  21.     method getRoleItem
  22.     method getRoleWorkItem
  23.     method role
  24.     method getConstraintLabel
  25.     method constraint
  26.     method getPartnerNAssocConns
  27.     attribute class
  28.     attribute nAssocNode
  29. }
  30.  
  31. constructor CADNAssocConn {class this inModel} {
  32.     set this [CADAssociation::constructor $class $this $inModel]
  33.     # Start constructor user section
  34.     # End constructor user section
  35.     return $this
  36. }
  37.  
  38. method CADNAssocConn::destructor {this} {
  39.     # Start destructor user section
  40.     # End destructor user section
  41.     $this CADAssociation::destructor
  42. }
  43.  
  44. method CADNAssocConn::load {this} {
  45.     if {[$this loaded] == 1} {
  46.         return
  47.     }
  48.     $this loaded 1
  49.  
  50.     set fromNode [$this getFrom $OMT_CAD_CB_Class]
  51.     if {$fromNode == ""} {
  52.         $this nAssocNode [$this getFrom $OMT_CAD_NAssoc]
  53.         $this class [$this getTo $OMT_CAD_CB_Class]
  54.     } else {
  55.         $this nAssocNode [$this getTo $OMT_CAD_NAssoc]
  56.         $this class $fromNode
  57.     }
  58.     [$this nAssocNode] load
  59. }
  60.  
  61. method CADNAssocConn::getRoleLabel {this} {
  62.     return [$this getLabel 0 $LT_ROLE]
  63. }
  64.  
  65. method CADNAssocConn::getRoleItem {this} {
  66.     return [$this getItem 0 $LT_ROLE $IT_DATA]
  67. }
  68.  
  69. method CADNAssocConn::getRoleWorkItem {this} {
  70.     return [$this getWorkItem 0 $LT_ROLE $IT_DATA]
  71. }
  72.  
  73. method CADNAssocConn::role {this} {
  74.     set roleItem [$this getRoleItem]
  75.     if {[$roleItem isNil]} {
  76.         return ""
  77.     }
  78.     return [$roleItem name]
  79. }
  80.  
  81. method CADNAssocConn::getConstraintLabel {this} {
  82.     return [$this getLabel 0 $LT_CONSTRAINT]
  83. }
  84.  
  85. method CADNAssocConn::constraint {this} {
  86.     set label [$this getConstraintLabel]
  87.     if [$label isNil] {
  88.         return ""
  89.     }
  90.     return [$label value]
  91. }
  92.  
  93. method CADNAssocConn::getPartnerNAssocConns {this} {
  94.     set nAssocConns [[[$this nAssocNode] nAssocConnSet] contents]
  95.     set idx [lsearch -exact $nAssocConns $this]
  96.     set nAssocConns [lreplace $nAssocConns $idx $idx]
  97.     return $nAssocConns
  98. }
  99.  
  100. # Do not delete this line -- regeneration end marker
  101.  
  102.