diff options
Diffstat (limited to 'grc')
-rw-r--r-- | grc/blocks/options.xml | 4 | ||||
-rw-r--r-- | grc/blocks/parameter.xml | 4 | ||||
-rw-r--r-- | grc/core/generator/flow_graph.tmpl | 12 | ||||
-rwxr-xr-x | grc/main.py | 12 |
4 files changed, 17 insertions, 15 deletions
diff --git a/grc/blocks/options.xml b/grc/blocks/options.xml index 937cfe82ea..bb96f29a60 100644 --- a/grc/blocks/options.xml +++ b/grc/blocks/options.xml @@ -20,8 +20,8 @@ from PyQt4 import Qt import sys #end if #if not $generate_options().startswith('hb') -from optparse import OptionParser -from gnuradio.eng_option import eng_option +from argparse import ArgumentParser +from gnuradio.eng_arg import eng_float, intx from gnuradio import eng_notation #end if</import> <make></make> diff --git a/grc/blocks/parameter.xml b/grc/blocks/parameter.xml index e35b8f4d1d..0c10da48cc 100644 --- a/grc/blocks/parameter.xml +++ b/grc/blocks/parameter.xml @@ -57,7 +57,9 @@ <name>String</name> <key>string</key> <opt>type:string</opt> - </option> + </option> + <!-- Do not forget to add option value type handler import into + grc/python/flow_graph.tmpl for each new type. --> <!-- not supported yet in tmpl <option> <name>Boolean</name> diff --git a/grc/core/generator/flow_graph.tmpl b/grc/core/generator/flow_graph.tmpl index 07c4169525..38b113fe90 100644 --- a/grc/core/generator/flow_graph.tmpl +++ b/grc/core/generator/flow_graph.tmpl @@ -336,18 +336,18 @@ $short_id#slurp def argument_parser(): - #set $desc_args = 'usage="%prog: [options]", option_class=eng_option' + #set $arg_parser_args = '' #if $flow_graph.get_option('description') - #set $desc_args += ', description=description' + #set $arg_parser_args = 'description=description' description = $repr($flow_graph.get_option('description')) #end if - parser = OptionParser($desc_args) + parser = ArgumentParser($arg_parser_args) #for $param in $parameters #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( - "$make_short_id($param)", "--$param.get_id().replace('_', '-')", dest="$param.get_id()", type="$type", default=$make_default($type, $param), + parser.add_argument( + "$make_short_id($param)", "--$param.get_id().replace('_', '-')", dest="$param.get_id()", type=$type, default=$make_default($type, $param), help="Set $($param.get_param('label').get_evaluated() or $param.get_id()) [default=%default]") #end if #end for @@ -358,7 +358,7 @@ def argument_parser(): def main(top_block_cls=$(class_name), options=None): #if $parameters if options is None: - options, _ = argument_parser().parse_args() + options = argument_parser().parse_args() #end if #if $flow_graph.get_option('realtime_scheduling') if gr.enable_realtime_scheduling() != gr.RT_OK: diff --git a/grc/main.py b/grc/main.py index ae7a0ce115..0edab40769 100755 --- a/grc/main.py +++ b/grc/main.py @@ -15,7 +15,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -import optparse +import argparse import gtk from gnuradio import gr @@ -34,10 +34,10 @@ This is free software, and you are welcome to redistribute it. def main(): - parser = optparse.OptionParser( - usage='usage: %prog [options] [saved flow graphs]', - version=VERSION_AND_DISCLAIMER_TEMPLATE % gr.version()) - options, args = parser.parse_args() + parser = argparse.ArgumentParser( + description=VERSION_AND_DISCLAIMER_TEMPLATE % gr.version()) + parser.add_argument('flow_graphs', nargs='*') + args = parser.parse_args() try: gtk.window_set_default_icon(gtk.IconTheme().load_icon('gnuradio-grc', 256, 0)) @@ -50,6 +50,6 @@ def main(): version_parts=(gr.major_version(), gr.api_version(), gr.minor_version()), install_prefix=gr.prefix() ) - ActionHandler(args, platform) + ActionHandler(args.flow_graphs, platform) gtk.main() |