diff options
author | Volker Schroer <3470424+dl1ksv@users.noreply.github.com> | 2018-11-28 21:49:33 +0100 |
---|---|---|
committer | Derek Kozel <derek@bitstovolts.com> | 2019-03-13 00:27:38 +0000 |
commit | fec7af0a3800c84d8005b7e8204d61d8619b2137 (patch) | |
tree | 5283762918186dc2098e752f3a593c1e54542865 | |
parent | 88a1549f4e69fefd4f02eb826ada04cbd36b0849 (diff) |
Modifying dummy block and error messages
-rw-r--r-- | grc/core/FlowGraph.py | 11 | ||||
-rw-r--r-- | grc/core/blocks/dummy.py | 11 |
2 files changed, 12 insertions, 10 deletions
diff --git a/grc/core/FlowGraph.py b/grc/core/FlowGraph.py index 7be39159e0..83a63a2484 100644 --- a/grc/core/FlowGraph.py +++ b/grc/core/FlowGraph.py @@ -375,9 +375,6 @@ class FlowGraph(Element): self.new_block(block_id='_dummy', missing_block_id=block_id, **block_data) ) - if isinstance(block, blocks.DummyBlock): - block.add_error_message('Block id "{}" not found.'.format(block_id)) - block.import_data(**block_data) self.rewrite() # evaluate stuff like nports before adding connections @@ -423,6 +420,14 @@ class FlowGraph(Element): src_blk_id, src_port_id, snk_blk_id, snk_port_id, e)) had_connect_errors = True + for block in self.blocks: + if block.is_dummy_block : + block.rewrite() # Make ports visible + # Flowgraph errors depending on disabled blocks are not displayed + # in the error dialog box + # So put a messsage into the Property window of the dummy block + block.add_error_message('Block id "{}" not found.'.format(block.key)) + self.rewrite() # global rewrite return had_connect_errors diff --git a/grc/core/blocks/dummy.py b/grc/core/blocks/dummy.py index ccdc5a5b04..4339885197 100644 --- a/grc/core/blocks/dummy.py +++ b/grc/core/blocks/dummy.py @@ -19,7 +19,7 @@ from __future__ import absolute_import from . import Block, register_build_in -from ._build import _build_params, _build_ports +from ._build import _build_params as build_core_params @register_build_in class DummyBlock(Block): @@ -29,12 +29,11 @@ class DummyBlock(Block): label = 'Missing Block' key = '_dummy' - def __init__(self, parent, missing_block_id, parameters,**kwargs): + def __init__(self, parent, missing_block_id, parameters,**_): self.key = missing_block_id - self.parameters_data = _build_params([kwargs],False, False,self.flags, self.key) + self.parameters_data = build_core_params([],False, False,self.flags, self.key) super(DummyBlock, self).__init__(parent=parent) - del self.params[self.key] # Remove missing keys from parameter list param_factory = self.parent_platform.make_param for param_id in parameters: @@ -46,7 +45,7 @@ class DummyBlock(Block): @property def enabled(self): return False - + def add_missing_port(self, port_id, direction): port = self.parent_platform.make_port( parent=self, direction=direction, id=port_id, name='?', dtype='', @@ -55,6 +54,4 @@ class DummyBlock(Block): self.sources.append(port) else: self.sinks.append(port) - self.rewrite() # Make port visible - self.validate() # Generate appropriate error messages return port |