Ejemplo n.º 1
0
 def __init__(self,
              parent=None,
              globalnode=None,
              globalmodel=None,
              edge_filter=EdgeFilter()):
     """Initialize the model to display the given global node in the
     detail tree. We also need a reference to the global model to
     resolve node references.
     """
     QtCore.QAbstractItemModel.__init__(self, parent)
     self.root_item = DetailTreeItem(
         data=DetailTreeItemData(node=globalnode), edge_filter=EdgeFilter())
     self.globalmodel = globalmodel
Ejemplo n.º 2
0
 def __init__(self,
              data=None,
              parent=None,
              row=0,
              edge_type=EdgeType(),
              edge_filter=EdgeFilter()):
     """Initialize the node tree hierarchy from the given data."""
     if not isinstance(data, GlobalTreeItemData):
         raise TypeError("data must be a GlobalTreeItemData instance")
     if not isinstance(parent, (type(None), GlobalTreeItem)):
         raise TypeError(
             "parent must be either None or a GlobalTreeItem instance")
     if not isinstance(edge_type, EdgeType):
         raise TypeError("edge_type must be EdgeType instance")
     self.data = data
     self.parent = parent
     self.row = row
     self.edge_type = edge_type
     self.children = [
         GlobalTreeItem(data=GlobalTreeItemData(node=child_node),
                        parent=self,
                        row=child_row,
                        edge_type=child_edge_type)
         for (child_row, (child_node, child_edge_type)) in enumerate(
             zip(
                 data.node.get_global_child_nodes(edge_filter=edge_filter),
                 data.node.get_global_child_edge_types(
                     edge_filter=edge_filter)))
     ]
Ejemplo n.º 3
0
 def __init__(self, parent=None, globalnode=None, edge_filter=EdgeFilter()):
     """Initialize the model to display the given data."""
     QtCore.QAbstractItemModel.__init__(self, parent)
     # set up the tree
     self.root_item = GlobalTreeItem(
         data=GlobalTreeItemData(node=globalnode),
         edge_filter=edge_filter)
     # set up the index dictionary
     self.index_dict = self.IndexDict()
     self.updateIndexDict(self.root_item)
Ejemplo n.º 4
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     if self.file_type == PskFormat.FileType.ACTRHEAD:
         yield self.points
         yield self.wedges
         yield self.faces
         yield self.materials
         yield self.bones
         yield self.influences
     elif self.file_type == PskFormat.FileType.ANIMHEAD:
         yield self.bones
         yield self.animations
         yield self.raw_keys
Ejemplo n.º 5
0
 def get_global_child_names(self, edge_filter=EdgeFilter()):
     yield "Header"
     yield "Image"
     if self.footer:
         yield "Footer"
Ejemplo n.º 6
0
 def get_detail_child_nodes(self, edge_filter=EdgeFilter()):
     """Yield children."""
     return (item for item in list.__iter__(self))
Ejemplo n.º 7
0
 def get_detail_child_nodes(self, edge_filter=EdgeFilter()):
     """Yield children of this structure."""
     return (item for item in self._items)
Ejemplo n.º 8
0
 def get_detail_child_nodes(self, edge_filter=EdgeFilter()):
     return self._header_value_.get_detail_child_nodes(
         edge_filter=edge_filter)
Ejemplo n.º 9
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     # TODO replace get_refs with a generator as well
     for branch in self.get_refs():
         yield branch
Ejemplo n.º 10
0
 def get_detail_child_names(self, edge_filter=EdgeFilter()):
     """Yield names of the children of this structure."""
     return (name for name in self._names)
Ejemplo n.º 11
0
 def get_detail_child_names(self, edge_filter=EdgeFilter()):
     return ("[%i]" % i for i in range(list.__len__(self)))
Ejemplo n.º 12
0
 def get_detail_child_nodes(self, edge_filter=EdgeFilter()):
     return list.__iter__(self)
Ejemplo n.º 13
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     return (anim for anim in self.animations)
Ejemplo n.º 14
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     return ([morph for morph in self.morphs]
             + [morph for morph in self.modifiers])
Ejemplo n.º 15
0
 def get_detail_child_names(self, edge_filter=EdgeFilter()):
     return self.tes4.get_detail_child_names(edge_filter=edge_filter)
Ejemplo n.º 16
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     return self.tes4.sub_records + self.records
Ejemplo n.º 17
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     for morph in self.sym_morphs:
         yield morph
     for morph in self.asym_morphs:
         yield morph
Ejemplo n.º 18
0
 def get_global_child_names(self, edge_filter=EdgeFilter()):
     for morph in self.sym_morphs:
         yield "Sym Morph"
     for morph in self.asym_morphs:
         yield "Asym Morph"
Ejemplo n.º 19
0
 def get_detail_child_nodes(self, edge_filter=EdgeFilter()):
     for child in self.children:
         yield child
Ejemplo n.º 20
0
 def get_detail_child_names(self, edge_filter=EdgeFilter()):
     """Yield name of each child."""
     return (name for name in self._names)
Ejemplo n.º 21
0
 def get_detail_child_names(self, edge_filter=EdgeFilter()):
     for i in range(len(self.children)):
         yield str(i)
Ejemplo n.º 22
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     return self.files
Ejemplo n.º 23
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     yield self.header
     yield self.image
     if self.footer:
         yield self.footer
Ejemplo n.º 24
0
 def get_detail_child_names(self, edge_filter=EdgeFilter()):
     """Yield child names."""
     return ("[%i]" % row for row in range(list.__len__(self)))
Ejemplo n.º 25
0
 def get_global_child_nodes(self, edge_filter=EdgeFilter()):
     return (texture for texture in self.textures)