core/trunk/XMLv2__DOM3Inspector__DOM3NodeItem.st
changeset 3 7909b6680107
equal deleted inserted replaced
2:06f508a6f55c 3:7909b6680107
       
     1 HierarchicalItem subclass:#DOM3NodeItem
       
     2 	instanceVariableNames:'node'
       
     3 	classVariableNames:''
       
     4 	poolDictionaries:''
       
     5 	privateIn:XMLv2::DOM3Inspector
       
     6 !
       
     7 
       
     8 !DOM3Inspector::DOM3NodeItem class methodsFor:'instance creation'!
       
     9 
       
    10 for: node 
       
    11 
       
    12     ^self new setNode: node; yourself
       
    13 
       
    14     "Created: / 12-12-2006 / 00:32:53 / janfrog"
       
    15 !
       
    16 
       
    17 for: node parent: parent
       
    18 
       
    19     ^self new setNode: node; parent: parent; yourself
       
    20 
       
    21     "Created: / 12-12-2006 / 00:30:51 / janfrog"
       
    22 ! !
       
    23 
       
    24 !DOM3Inspector::DOM3NodeItem methodsFor:'accessing'!
       
    25 
       
    26 children
       
    27 
       
    28     children ifNil:
       
    29         [children := node childNodes 
       
    30                         select:[:childNode| (childNode isText not) or:[childNode isIgnorableText not]]
       
    31                         thenCollect:[:childNode|self class for:childNode parent: self.]].
       
    32     ^children
       
    33 
       
    34     "Created: / 12-12-2006 / 00:21:50 / janfrog"
       
    35     "Modified: / 12-12-2006 / 10:32:05 / janfrog"
       
    36 !
       
    37 
       
    38 label
       
    39 
       
    40     node isElement ifTrue:[^'<',node nodeName,'>'].
       
    41     ^node nodeName
       
    42 
       
    43     "Created: / 12-12-2006 / 00:19:56 / janfrog"
       
    44 !
       
    45 
       
    46 node
       
    47     ^ node
       
    48 
       
    49     "Created: / 12-12-2006 / 09:46:03 / janfrog"
       
    50 ! !
       
    51 
       
    52 !DOM3Inspector::DOM3NodeItem methodsFor:'initialization'!
       
    53 
       
    54 setNode: aNode
       
    55 
       
    56     node := aNode
       
    57 
       
    58     "Created: / 12-12-2006 / 00:22:34 / janfrog"
       
    59 ! !
       
    60 
       
    61 !DOM3Inspector::DOM3NodeItem methodsFor:'message delegation'!
       
    62 
       
    63 doesNotUnderstand: aMessage
       
    64 
       
    65     ^(node respondsTo: aMessage selector)
       
    66         ifTrue:[aMessage reinvokeFor: node]
       
    67         ifFalse:[super doesNotUnderstand: aMessage]
       
    68 
       
    69     "Created: / 12-12-2006 / 09:04:49 / janfrog"
       
    70 ! !
       
    71