mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-06-28 03:00:59 +12:00
33 lines
927 B
Python
33 lines
927 B
Python
#!/usr/bin/env python
|
|
# --!-- coding: utf8 --!--
|
|
|
|
from manuskript.models.abstractModel import abstractModel
|
|
from manuskript.models.searchableModel import searchableModel
|
|
from manuskript.models.outlineItem import outlineItem
|
|
|
|
class outlineModel(abstractModel, searchableModel):
|
|
def __init__(self, parent):
|
|
abstractModel.__init__(self, parent)
|
|
self.rootItem = outlineItem(model=self, title="Root", ID="0")
|
|
|
|
|
|
def findItemsByPOV(self, POV):
|
|
"Returns a list of IDs of all items whose POV is ``POV``."
|
|
return self.rootItem.findItemsByPOV(POV)
|
|
|
|
def searchableItems(self):
|
|
result = []
|
|
|
|
for child in self.rootItem.children():
|
|
result += self._searchableItems(child)
|
|
|
|
return result
|
|
|
|
def _searchableItems(self, item):
|
|
result = [item]
|
|
|
|
for child in item.children():
|
|
result += self._searchableItems(child)
|
|
|
|
return result
|