diff options
author | Johnathan Corgan <johnathan@corganlabs.com> | 2014-04-18 10:45:57 -0700 |
---|---|---|
committer | Johnathan Corgan <johnathan@corganlabs.com> | 2014-04-18 10:45:57 -0700 |
commit | 0bd6bf9a476a8447ca5dde2e899e532f4a946a6c (patch) | |
tree | 0c2e094bc8b459c882ab216667ce08ad0f725d51 | |
parent | 0dfb7bc4a4aa51654db08f6b35ecde2fa7da962e (diff) | |
parent | f6366941a4d369ec2afd1a7d69d13a402c5473cb (diff) |
Merge remote-tracking branch 'gnuradio-wg-grc/grc_tools_menu'
-rw-r--r-- | grc/gui/ActionHandler.py | 26 | ||||
-rw-r--r-- | grc/gui/Actions.py | 8 | ||||
-rw-r--r-- | grc/gui/Bars.py | 5 |
3 files changed, 30 insertions, 9 deletions
diff --git a/grc/gui/ActionHandler.py b/grc/gui/ActionHandler.py index aa692f5ca3..65969e0d6f 100644 --- a/grc/gui/ActionHandler.py +++ b/grc/gui/ActionHandler.py @@ -25,6 +25,7 @@ import pygtk pygtk.require('2.0') import gtk import gobject +import subprocess import Preferences from threading import Thread import Messages @@ -116,6 +117,7 @@ class ActionHandler: Actions.FLOW_GRAPH_SCREEN_CAPTURE, Actions.HELP_WINDOW_DISPLAY, Actions.TYPES_WINDOW_DISPLAY, Actions.TOGGLE_BLOCKS_WINDOW, Actions.TOGGLE_REPORTS_WINDOW, Actions.TOGGLE_HIDE_DISABLED_BLOCKS, + Actions.TOOLS_RUN_FDESIGN, ): action.set_sensitive(True) if ParseXML.xml_failures: Messages.send_xml_errors_if_any(ParseXML.xml_failures) @@ -485,23 +487,29 @@ class ActionHandler: bn = []; for b in self.get_flow_graph().get_selected_blocks(): if b._grc_source: - self.main_window.new_page(b._grc_source, show=True); + self.main_window.new_page(b._grc_source, show=True) elif action == Actions.BUSSIFY_SOURCES: n = {'name':'bus', 'type':'bus'} for b in self.get_flow_graph().get_selected_blocks(): - b.bussify(n, 'source'); - self.get_flow_graph()._old_selected_port = None; - self.get_flow_graph()._new_selected_port = None; - Actions.ELEMENT_CREATE(); + b.bussify(n, 'source') + self.get_flow_graph()._old_selected_port = None + self.get_flow_graph()._new_selected_port = None + Actions.ELEMENT_CREATE() elif action == Actions.BUSSIFY_SINKS: n = {'name':'bus', 'type':'bus'} for b in self.get_flow_graph().get_selected_blocks(): b.bussify(n, 'sink') - self.get_flow_graph()._old_selected_port = None; - self.get_flow_graph()._new_selected_port = None; - Actions.ELEMENT_CREATE(); - else: print '!!! Action "%s" not handled !!!'%action + self.get_flow_graph()._old_selected_port = None + self.get_flow_graph()._new_selected_port = None + Actions.ELEMENT_CREATE() + + elif action == Actions.TOOLS_RUN_FDESIGN: + subprocess.Popen('gr_filter_design', + shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) + + else: + print '!!! Action "%s" not handled !!!' % action ################################################## # Global Actions for all States ################################################## diff --git a/grc/gui/Actions.py b/grc/gui/Actions.py index afbeb97612..f633e7ced0 100644 --- a/grc/gui/Actions.py +++ b/grc/gui/Actions.py @@ -365,3 +365,11 @@ XML_PARSER_ERRORS_DISPLAY = Action( tooltip='View errors that occured while parsing XML files', stock_id=gtk.STOCK_DIALOG_ERROR, ) +TOOLS_RUN_FDESIGN = Action( + label='Filter design tool', + tooltip='Execute gr_filter_design', + stock_id=gtk.STOCK_EXECUTE, +) +TOOLS_MORE_TO_COME = Action( + label='More to come', +) diff --git a/grc/gui/Bars.py b/grc/gui/Bars.py index ef8feb0a0b..da1b1469e1 100644 --- a/grc/gui/Bars.py +++ b/grc/gui/Bars.py @@ -101,6 +101,11 @@ MENU_BAR_LIST = ( Actions.FLOW_GRAPH_EXEC, Actions.FLOW_GRAPH_KILL, ]), + (gtk.Action('Tools', '_Tools', None, None), [ + Actions.TOOLS_RUN_FDESIGN, + None, + Actions.TOOLS_MORE_TO_COME, + ]), (gtk.Action('Help', '_Help', None, None), [ Actions.HELP_WINDOW_DISPLAY, Actions.TYPES_WINDOW_DISPLAY, |