summaryrefslogtreecommitdiff
path: root/grc/python
diff options
context:
space:
mode:
authorjcorgan2009-07-08 06:32:08 +0000
committerjcorgan2009-07-08 06:32:08 +0000
commit54e02f64a15b3a2c679399575a53b69f65bc6514 (patch)
treefceef53b27aef1abe40a53d9f818f0acc47b79a6 /grc/python
parent103361f6898960e80f042e019369c59fef842c66 (diff)
downloadgnuradio-54e02f64a15b3a2c679399575a53b69f65bc6514.tar.gz
gnuradio-54e02f64a15b3a2c679399575a53b69f65bc6514.tar.bz2
gnuradio-54e02f64a15b3a2c679399575a53b69f65bc6514.zip
Adds short commandline parameter handling in GRC.
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@11376 221aa14e-8319-0410-a670-987f0aec2ac5
Diffstat (limited to 'grc/python')
-rw-r--r--grc/python/Param.py7
-rw-r--r--grc/python/flow_graph.tmpl2
2 files changed, 8 insertions, 1 deletions
diff --git a/grc/python/Param.py b/grc/python/Param.py
index f971d0c3f..15ccd323c 100644
--- a/grc/python/Param.py
+++ b/grc/python/Param.py
@@ -302,6 +302,13 @@ class Param(_Param):
elif t in ('string', 'file_open', 'file_save'):
#do not check if file/directory exists, that is a runtime issue
e = eval_string(v)
+ str_e = str(e)
+ if t == 'string' and self.get_name() == 'Short ID' and len(str_e) > 0:
+ try:
+ assert len(str_e) == 1
+ ord_e = ord(str_e)
+ assert ord_e >= ord('a') and ord_e <= ord('z') or ord_e >= ord('A') and ord_e <= ord('Z')
+ except AssertionError: raise Exception, 'Short ID "%s" must be a single letter'%v
return str(e)
#########################
# Unique ID Type
diff --git a/grc/python/flow_graph.tmpl b/grc/python/flow_graph.tmpl
index a94e45e8e..bc89fb1b5 100644
--- a/grc/python/flow_graph.tmpl
+++ b/grc/python/flow_graph.tmpl
@@ -189,7 +189,7 @@ if __name__ == '__main__':
#set $type = $param.get_param('type').get_value()
#if $type
#silent $params_eq_list.append('%s=options.%s'%($param.get_id(), $param.get_id()))
- parser.add_option("--$param.get_id()", dest="$param.get_id()", type="$type", default=$param.get_make(),
+ parser.add_option("-$param.get_param('short_id').get_value()", "--$param.get_id()", dest="$param.get_id()", type="$type", default=$param.get_make(),
help="Set $($param.get_param('label').evaluate() or $param.get_id()) [default=%default]")
#end if
#end for