Add tags get function to index class
This commit is contained in:
@@ -621,6 +621,10 @@ class NWIndex:
|
||||
sTitle = self._tagsIndex.tagHeading(tagKey)
|
||||
return tHandle, sTitle
|
||||
|
||||
def getTags(self, itemClass: nwItemClass) -> list[str]:
|
||||
"""Return all tags based on itemClass."""
|
||||
return self._tagsIndex.filterTagNames(itemClass.name)
|
||||
|
||||
# END Class NWIndex
|
||||
|
||||
|
||||
@@ -684,6 +688,12 @@ class TagsIndex:
|
||||
"""Get the class of a given tag."""
|
||||
return self._tags.get(tagKey.lower(), {}).get("class", None)
|
||||
|
||||
def filterTagNames(self, className: str) -> list[str]:
|
||||
"""Get a list of tag names for a given class."""
|
||||
return [
|
||||
x.get("name", "") for x in self._tags.values() if x.get("class", "") == className
|
||||
]
|
||||
|
||||
##
|
||||
# Pack/Unpack
|
||||
##
|
||||
|
||||
@@ -196,6 +196,16 @@ def testCoreIndex_ScanThis(mockGUI):
|
||||
assert theBits == ["@tag", "this", "and this"]
|
||||
assert thePos == [0, 6, 12]
|
||||
|
||||
isValid, theBits, thePos = index.scanThis("@tag: this,, and this")
|
||||
assert isValid is True
|
||||
assert theBits == ["@tag", "this", "", "and this"]
|
||||
assert thePos == [0, 6, 11, 13]
|
||||
|
||||
isValid, theBits, thePos = index.scanThis("@tag: this, , and this")
|
||||
assert isValid is True
|
||||
assert theBits == ["@tag", "this", "", "and this"]
|
||||
assert thePos == [0, 6, 12, 14]
|
||||
|
||||
project.closeProject()
|
||||
|
||||
# END Test testCoreIndex_ScanThis
|
||||
|
||||
Reference in New Issue
Block a user