summaryrefslogtreecommitdiff
path: root/gr-utils/src/python/modtool/modtool_makexml.py
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@kit.edu>2013-01-28 15:26:05 +0100
committerMartin Braun <martin.braun@kit.edu>2013-01-28 15:26:05 +0100
commit2d695b3c4c86b5c206f95dcc1d71f97d808d98b8 (patch)
treecf52a650d74ada32663cc9bc04ee5e64bd1e0f83 /gr-utils/src/python/modtool/modtool_makexml.py
parentede34060de27184eb6f6df6b5fd03ae8a643bf91 (diff)
modtool: cleanup, bugfixes
Diffstat (limited to 'gr-utils/src/python/modtool/modtool_makexml.py')
-rw-r--r--gr-utils/src/python/modtool/modtool_makexml.py26
1 files changed, 7 insertions, 19 deletions
diff --git a/gr-utils/src/python/modtool/modtool_makexml.py b/gr-utils/src/python/modtool/modtool_makexml.py
index 104a0fdbde..777cc09e1f 100644
--- a/gr-utils/src/python/modtool/modtool_makexml.py
+++ b/gr-utils/src/python/modtool/modtool_makexml.py
@@ -30,6 +30,7 @@ from modtool_base import ModTool
from parser_cc_block import ParserCCBlock
from grc_xml_generator import GRCXMLGenerator
from cmakefile_editor import CMakeFileEditor
+from util_functions import ask_yes_no
class ModToolMakeXML(ModTool):
""" Make XML file for GRC block bindings """
@@ -38,24 +39,10 @@ class ModToolMakeXML(ModTool):
def __init__(self):
ModTool.__init__(self)
- def setup_parser(self):
- " Initialise the option parser for 'gr_modtool.py makexml' "
- parser = ModTool.setup_parser(self)
- parser.usage = '%prog makexml [options]. \n Call %prog without any options to run it interactively.'
- ogroup = OptionGroup(parser, "Make XML module options")
- ogroup.add_option("-p", "--pattern", type="string", default=None,
- help="Filter possible choices for blocks to be parsed.")
- ogroup.add_option("-y", "--yes", action="store_true", default=False,
- help="Answer all questions with 'yes'. This can overwrite existing files!")
- parser.add_option_group(ogroup)
- return parser
-
def setup(self):
ModTool.setup(self)
options = self.options
- if options.pattern is not None:
- self._info['pattern'] = options.pattern
- elif options.block_name is not None:
+ if options.block_name is not None:
self._info['pattern'] = options.block_name
elif len(self.args) >= 2:
self._info['pattern'] = self.args[1]
@@ -63,7 +50,6 @@ class ModToolMakeXML(ModTool):
self._info['pattern'] = raw_input('Which blocks do you want to parse? (Regex): ')
if len(self._info['pattern']) == 0:
self._info['pattern'] = '.'
- self._info['yes'] = options.yes
def run(self):
""" Go, go, go! """
@@ -109,8 +95,11 @@ class ModToolMakeXML(ModTool):
'default': '2',
'in_constructor': False})
if os.path.isfile(os.path.join('grc', fname_xml)):
- # TODO add an option to keep
- print "Warning: Overwriting existing GRC file."
+ if not self._info['yes']:
+ if not ask_yes_no('Overwrite existing GRC file?', False):
+ return
+ else:
+ print "Warning: Overwriting existing GRC file."
grc_generator = GRCXMLGenerator(
modname=self._info['modname'],
blockname=blockname,
@@ -167,4 +156,3 @@ class ModToolMakeXML(ModTool):
sys.exit(1)
return (parser.read_params(), parser.read_io_signature(), blockname)
-