def __init__(self, memberName, object, tree, treeItemId, container = None, index = None):
        """Subclasses must calls this constructor.
        Pass a string giving the member name for this node (member should be either App.Proxys.Member.Object or App.Proxys.Member.ObjectList.          
        Pass the object to observe, the member information for this object (from App.Proxys.Member).
        Also pass the tree and the treeItemId where this object is found.
        In container, pass the object that contains this node (in an HAS_A or HAS_MANY relationship)
        In index, pass the index of this node within its container (in an HAS_MANY relationship)        
        """
        super( NodeData, self ).__init__()
        self._memberName = memberName
        self._object = object
        self._tree = tree
        self._treeItemId = treeItemId
        self._container = container
        self._index = index
        if object is None :
            self._proxyClass = None
            iconIndex = getIconIndex( '../data/ui/noneIcon.png' )
        else:
            object.addObserver( self )
            self._proxyClass = PyUtils.getProxyClass(object)
            iconIndex = getIconIndex( self._proxyClass.getIcon() )
        self._tree.SetItemImage( self._treeItemId, iconIndex )

        self._subMemberNodes = []
        if self._proxyClass is not None :
            for subMember in self._proxyClass.getObjectMembers():
                self._subMemberNodes.append( _createSubMemberNode(subMember, self._tree, self._treeItemId, object) )

        tree.SetItemPyData( treeItemId, self )
        
        # Initial update
        self.update()
 def __init__(self, subMember, tree, container, parentTreeItemId):
     """Create a new node inside the tree that wraps the specified submember"""
     super(subMemberObjectListNode,self).__init__(subMember, tree, container)
     self._listNodeTreeItemId = tree.AppendItem( parentTreeItemId, subMember.fancyName )
     tree.SetItemPyData( self._listNodeTreeItemId, (subMember, container) )
     iconIndex = getIconIndex( subMember.groupIcon )
     tree.SetItemImage( self._listNodeTreeItemId, iconIndex )
     if tree.isAutoVisible():
         tree.EnsureVisible(self._listNodeTreeItemId)
示例#3
0
 def __init__(self, subMember, tree, container, parentTreeItemId):
     """Create a new node inside the tree that wraps the specified submember"""
     super(subMemberObjectListNode, self).__init__(subMember, tree,
                                                   container)
     self._listNodeTreeItemId = tree.AppendItem(parentTreeItemId,
                                                subMember.fancyName)
     tree.SetItemPyData(self._listNodeTreeItemId, (subMember, container))
     iconIndex = getIconIndex(subMember.groupIcon)
     tree.SetItemImage(self._listNodeTreeItemId, iconIndex)
     if tree.isAutoVisible():
         tree.EnsureVisible(self._listNodeTreeItemId)
示例#4
0
    def __init__(self,
                 memberName,
                 object,
                 tree,
                 treeItemId,
                 container=None,
                 index=None):
        """Subclasses must calls this constructor.
        Pass a string giving the member name for this node (member should be either App.Proxys.Member.Object or App.Proxys.Member.ObjectList.          
        Pass the object to observe, the member information for this object (from App.Proxys.Member).
        Also pass the tree and the treeItemId where this object is found.
        In container, pass the object that contains this node (in an HAS_A or HAS_MANY relationship)
        In index, pass the index of this node within its container (in an HAS_MANY relationship)        
        """
        super(NodeData, self).__init__()
        self._memberName = memberName
        self._object = object
        self._tree = tree
        self._treeItemId = treeItemId
        self._container = container
        self._index = index
        if object is None:
            self._proxyClass = None
            iconIndex = getIconIndex('../data/ui/noneIcon.png')
        else:
            object.addObserver(self)
            self._proxyClass = PyUtils.getProxyClass(object)
            iconIndex = getIconIndex(self._proxyClass.getIcon())
        self._tree.SetItemImage(self._treeItemId, iconIndex)

        self._subMemberNodes = []
        if self._proxyClass is not None:
            for subMember in self._proxyClass.getObjectMembers():
                self._subMemberNodes.append(
                    _createSubMemberNode(subMember, self._tree,
                                         self._treeItemId, object))

        tree.SetItemPyData(treeItemId, self)

        # Initial update
        self.update()