Exemple #1
0
 def __getitem__(self,key):
     if isstring(key):
         key = self.element._interfaceCluster.cord2pos(key)
     if isiterable(key) and len(key) > 0:
         o = self
         for k in key:
             if k:
                 if o == self:
                     o = SequenceInterface.__getitem__(self,k)
                 else:
                     o = o[k]
         return o
     else:
         return SequenceInterface.__getitem__(self,key)
Exemple #2
0
 def insert(self,key,value):
     if isstring(key):
         key = self.element._interfaceCluster.cord2pos(key)[2]
     
     value._node.setAttributeNS(None,self.keyAttribute,self.element._interfaceCluster.stringFilter(key))
     inserted = 0
     for i,node in self.NodeItemIterator(self):
         if i >= key:
             if node.hasAttributeNS(self.keyNS,self.keyAttrName):
                 node.setAttributeNS(None,self.keyAttribute,self.element._interfaceCluster.stringFilter(i+1))
             if not inserted:
                 node.parentNode.insertBefore(value._node,node)
                 inserted = 1
     if not inserted:
         SequenceInterface.append(self,value)
Exemple #3
0
 def append(self,value):
     value._node.removeAttributeNS(self.keyNS,self.keyAttrName)
     SequenceInterface.append(self,value)