diff options
author | Tom Rondeau <trondeau@vt.edu> | 2013-02-27 18:23:57 -0500 |
---|---|---|
committer | Tom Rondeau <trondeau@vt.edu> | 2013-02-27 18:26:28 -0500 |
commit | ab64b2a5dddf61d2039ab9a36aff84a90a5a713b (patch) | |
tree | 13e5e0da7664803e53a2bc2becdb8b8a0fddf43b /gnuradio-core/src/python | |
parent | 0667088a25ce03847bab0f854d09c60c307dee40 (diff) |
ctrlport: adding minor protection for dropped data onto plot so we don't just try and plot random stuff.
Diffstat (limited to 'gnuradio-core/src/python')
-rw-r--r-- | gnuradio-core/src/python/gnuradio/ctrlport/GrDataPlotter.py | 22 | ||||
-rwxr-xr-x | gnuradio-core/src/python/gnuradio/ctrlport/gr-ctrlport-monitor | 13 |
2 files changed, 28 insertions, 7 deletions
diff --git a/gnuradio-core/src/python/gnuradio/ctrlport/GrDataPlotter.py b/gnuradio-core/src/python/gnuradio/ctrlport/GrDataPlotter.py index 1bcf6bf807..f797271970 100644 --- a/gnuradio-core/src/python/gnuradio/ctrlport/GrDataPlotter.py +++ b/gnuradio-core/src/python/gnuradio/ctrlport/GrDataPlotter.py @@ -107,15 +107,25 @@ class GrDataPlotParent(gr.top_block, QtGui.QWidget): e.acceptProposedAction() def dropEvent(self, e): - self.knobnames.append(str(e.mimeData().text())) + if(e.mimeData().hasFormat("text/plain")): + data = str(e.mimeData().text()) - # create a new qwidget plot with the new data stream. - self._setup(len(self.knobnames)) + #"PlotData:{0}:{1}".format(tag, iscomplex) + datalst = data.split(":::") + tag = datalst[0] + name = datalst[1] + cpx = datalst[2] != "0" - # emit that this plot has been updated with a new qwidget. - self.plotupdated.emit(self) + if(tag == "PlotData" and cpx == self._iscomplex): + self.knobnames.append(name) - e.acceptProposedAction() + # create a new qwidget plot with the new data stream. + self._setup(len(self.knobnames)) + + # emit that this plot has been updated with a new qwidget. + self.plotupdated.emit(self) + + e.acceptProposedAction() def data_to_complex(self, data): if(self._iscomplex): diff --git a/gnuradio-core/src/python/gnuradio/ctrlport/gr-ctrlport-monitor b/gnuradio-core/src/python/gnuradio/ctrlport/gr-ctrlport-monitor index d5d349a38a..e71cd92ab7 100755 --- a/gnuradio-core/src/python/gnuradio/ctrlport/gr-ctrlport-monitor +++ b/gnuradio-core/src/python/gnuradio/ctrlport/gr-ctrlport-monitor @@ -226,7 +226,18 @@ class MAINWindow(QtGui.QMainWindow): drag = QtGui.QDrag(self) mime_data = QtCore.QMimeData() - mime_data.setText(e.text(0)) + tag = str(e.text(0)) + tree = e.treeWidget().parent() + knobprop = self.knobprops[tree.uid][tag] + disp = knobprop.display + iscomplex = (disp & gr.DISPOPTCPLX) or (disp & gr.DISPXY) + + if(disp != gr.DISPNULL): + data = "PlotData:::{0}:::{1}".format(tag, iscomplex) + else: + data = "OtherData:::{0}:::{1}".format(tag, iscomplex) + + mime_data.setText(data) drag.setMimeData(mime_data) drop = drag.start() |