summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Koslowski <koslowski@kit.edu>2013-10-26 21:42:51 +0200
committerSebastian Koslowski <koslowski@kit.edu>2013-10-26 21:42:51 +0200
commit68409ad2f3b0a0b19af4e8e580537f2e097c7020 (patch)
treefb2b4649e8f13ff6cd2d3ac31c89caeafc526b89
parentd5c7142fd0c4d76f1754fcbaf0a1ac0ae137ac77 (diff)
GRC: show categories from XML tree files in search
-rw-r--r--grc/base/Block.py1
-rw-r--r--grc/base/Platform.py12
2 files changed, 7 insertions, 6 deletions
diff --git a/grc/base/Block.py b/grc/base/Block.py
index 9736c0ac44..970cf516fe 100644
--- a/grc/base/Block.py
+++ b/grc/base/Block.py
@@ -192,6 +192,7 @@ class Block(Element):
def get_name(self): return self._name
def get_key(self): return self._key
def get_category(self): return self._category
+ def set_category(self, cat): self._category = cat
def get_doc(self): return ''
def get_ports(self): return self.get_sources() + self.get_sinks()
def get_ports_gui(self): return self.filter_bus_port(self.get_sources()) + self.filter_bus_port(self.get_sinks());
diff --git a/grc/base/Platform.py b/grc/base/Platform.py
index bb80e29552..88cbf32b89 100644
--- a/grc/base/Platform.py
+++ b/grc/base/Platform.py
@@ -143,15 +143,15 @@ class Platform(_Element):
print >> sys.stderr, 'Warning: Block key "%s" not found when loading category tree.'%(block_key)
continue
block = self.get_block(block_key)
- #if it exists, the block's category overrides the block tree
- if not block.get_category(): block_tree.add_block(parent, block)
- #load the block tree
+ #if it exists, the block's category shall not be overridden by the xml tree
+ if not block.get_category(): block.set_category(parent)
+ #load the block tree and update the categories for each block
for block_tree_file in self._block_tree_files:
- #recursivly add all blocks in the tree
+ #recursivly put categories in blocks
load_category(ParseXML.from_file(block_tree_file).find('cat'))
- #add all other blocks, use the catgory tag
+ #add blocks to block tree
for block in self.get_blocks():
- #blocks with empty categories are in the xml block tree or hidden
+ #blocks with empty categories are hidden
if not block.get_category(): continue
block_tree.add_block(block.get_category(), block)