summaryrefslogtreecommitdiff
path: root/grc/data
diff options
context:
space:
mode:
Diffstat (limited to 'grc/data')
-rw-r--r--grc/data/platforms/python/blocks/parameter.xml48
-rw-r--r--grc/data/platforms/python/flow_graph.tmpl11
2 files changed, 57 insertions, 2 deletions
diff --git a/grc/data/platforms/python/blocks/parameter.xml b/grc/data/platforms/python/blocks/parameter.xml
index b9dcce424..de2085011 100644
--- a/grc/data/platforms/python/blocks/parameter.xml
+++ b/grc/data/platforms/python/blocks/parameter.xml
@@ -7,6 +7,7 @@
<block>
<name>Parameter</name>
<key>parameter</key>
+ <import>from optparse import OptionParser</import>
<make>$value</make>
<param>
<name>Label</name>
@@ -18,7 +19,50 @@
<name>Value</name>
<key>value</key>
<value>0</value>
- <type>raw</type>
+ <type>$type.type</type>
+ </param>
+ <param>
+ <name>Type</name>
+ <key>type</key>
+ <value></value>
+ <type>enum</type>
+ <hide>$type.hide</hide>
+ <option>
+ <name>None</name>
+ <key></key>
+ <opt>type:raw</opt>
+ <opt>hide:part</opt>
+ </option>
+ <option>
+ <name>Complex</name>
+ <key>complex</key>
+ <opt>type:complex</opt>
+ <opt>hide:none</opt>
+ </option>
+ <option>
+ <name>Float</name>
+ <key>float</key>
+ <opt>type:real</opt>
+ <opt>hide:none</opt>
+ </option>
+ <option>
+ <name>Int</name>
+ <key>int</key>
+ <opt>type:int</opt>
+ <opt>hide:none</opt>
+ </option>
+ <option>
+ <name>Long</name>
+ <key>long</key>
+ <opt>type:int</opt>
+ <opt>hide:none</opt>
+ </option>
+ <option>
+ <name>String</name>
+ <key>string</key>
+ <opt>type:string</opt>
+ <opt>hide:none</opt>
+ </option>
</param>
<doc>
This block represents a parameter to the flow graph, \
@@ -27,5 +71,7 @@ used when the flow graph is instantiated as a hier block.
The paramater value cannot depend on any variables.
Leave the label blank to use the parameter id as the label.
+
+When type is not None, this parameter also becomes a command line option of the form --[id] [value].
</doc>
</block>
diff --git a/grc/data/platforms/python/flow_graph.tmpl b/grc/data/platforms/python/flow_graph.tmpl
index a5fbc64b4..a9256574c 100644
--- a/grc/data/platforms/python/flow_graph.tmpl
+++ b/grc/data/platforms/python/flow_graph.tmpl
@@ -179,7 +179,16 @@ class $(class_name)(gr.hier_block2):
########################################################
#if $generate_options != 'hb'
if __name__ == '__main__':
- tb = $(class_name)()
+ parser = OptionParser()
+ #set $args = list()
+ #for $param in $parameters
+ #if $param.get_param('type').get_value()
+ parser.add_option("--$param.get_id()", dest="$param.get_id()", type="$param.get_param('type').get_value()", default=$param.get_make())
+ #silent $args.append('%s=options.%s'%($param.get_id(), $param.get_id()))
+ #end if
+ #end for
+ (options, args) = parser.parse_args()
+ tb = $(class_name)($(', '.join($args)))
#if $generate_options == 'wx_gui'
tb.Run()
#elif $generate_options == 'no_gui'