diff options
author | Josh Morman <jmorman@perspectalabs.com> | 2019-08-30 09:47:42 -0400 |
---|---|---|
committer | devnulling <devnulling@users.noreply.github.com> | 2020-02-10 13:33:07 -0800 |
commit | 3232eeb534b5ac1ab503f7f36254227b1cfba1f9 (patch) | |
tree | c950d0e841644ed584737e905e315d778fe26f3e /grc/core/params/param.py | |
parent | 838d081918f8e5ee3f28273237d8b74a8c0b9d9b (diff) |
grc: add python snippets to GRC
This feature adds the ability to insert arbitrary code into the python
flowgraph. It gives a little more low-level flexibility for quickly
modifying flowgraphs and adding custom bits of code rather than having
to go and edit the generated py file
One example is synchronizing multiple USRP objects - sometimes you want
different sync than what is offered in the multi-usrp object, so you can
put a bit of code in the snippet block to do the custom synchronization
Diffstat (limited to 'grc/core/params/param.py')
-rw-r--r-- | grc/core/params/param.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/grc/core/params/param.py b/grc/core/params/param.py index 816588efe2..ef8d7df291 100644 --- a/grc/core/params/param.py +++ b/grc/core/params/param.py @@ -245,9 +245,13 @@ class Param(Element): elif dtype in ('string', 'file_open', 'file_save', '_multiline', '_multiline_python_external'): # Do not check if file/directory exists, that is a runtime issue try: - value = self.parent_flowgraph.evaluate(expr) - if not isinstance(value, str): - raise Exception() + # Do not evaluate multiline strings (code snippets or comments) + if dtype not in ['_multiline','_multiline_python_external']: + value = self.parent_flowgraph.evaluate(expr) + if not isinstance(value, str): + raise Exception() + else: + value = str(expr) except Exception: self._stringify_flag = True value = str(expr) |