summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnathan Corgan <johnathan@corganlabs.com>2014-04-18 10:45:57 -0700
committerJohnathan Corgan <johnathan@corganlabs.com>2014-04-18 10:45:57 -0700
commit0bd6bf9a476a8447ca5dde2e899e532f4a946a6c (patch)
tree0c2e094bc8b459c882ab216667ce08ad0f725d51
parent0dfb7bc4a4aa51654db08f6b35ecde2fa7da962e (diff)
parentf6366941a4d369ec2afd1a7d69d13a402c5473cb (diff)
Merge remote-tracking branch 'gnuradio-wg-grc/grc_tools_menu'
-rw-r--r--grc/gui/ActionHandler.py26
-rw-r--r--grc/gui/Actions.py8
-rw-r--r--grc/gui/Bars.py5
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,