summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolker Schroer <3470424+dl1ksv@users.noreply.github.com>2018-11-28 21:49:33 +0100
committerDerek Kozel <derek@bitstovolts.com>2019-03-13 00:27:38 +0000
commitfec7af0a3800c84d8005b7e8204d61d8619b2137 (patch)
tree5283762918186dc2098e752f3a593c1e54542865
parent88a1549f4e69fefd4f02eb826ada04cbd36b0849 (diff)
Modifying dummy block and error messages
-rw-r--r--grc/core/FlowGraph.py11
-rw-r--r--grc/core/blocks/dummy.py11
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