diff options
author | Tom Rondeau <trondeau@vt.edu> | 2012-11-12 21:12:18 -0500 |
---|---|---|
committer | Tom Rondeau <trondeau@vt.edu> | 2012-11-12 21:12:18 -0500 |
commit | 8740eb0d9460060ae97f9d252cae81cdcf0e20e5 (patch) | |
tree | ac875fe0912b9e4132d0df2be0678ab45ceb8863 /gr-qtgui/lib/DisplayPlot.cc | |
parent | 1dbdd1511e8a05a1adb212a7b24750d500982462 (diff) |
qtgui: fixed a few bugs under qwt6. Made checks around the symbol pointers.
Diffstat (limited to 'gr-qtgui/lib/DisplayPlot.cc')
-rw-r--r-- | gr-qtgui/lib/DisplayPlot.cc | 41 |
1 files changed, 28 insertions, 13 deletions
diff --git a/gr-qtgui/lib/DisplayPlot.cc b/gr-qtgui/lib/DisplayPlot.cc index 1c7931accd..2b982b77d2 100644 --- a/gr-qtgui/lib/DisplayPlot.cc +++ b/gr-qtgui/lib/DisplayPlot.cc @@ -134,9 +134,11 @@ DisplayPlot::setColor(int which, QColor color) setLineMarker(which, sym.style()); #else QwtSymbol *sym = (QwtSymbol*)_plot_curve[which]->symbol(); - sym->setColor(color); - sym->setPen(pen); - _plot_curve[which]->setSymbol(sym); + if(sym) { + sym->setColor(color); + sym->setPen(pen); + _plot_curve[which]->setSymbol(sym); + } #endif } } @@ -261,8 +263,10 @@ DisplayPlot::setLineWidth(int which, int width) _plot_curve[which]->setSymbol(sym); #else QwtSymbol *sym = (QwtSymbol*)_plot_curve[which]->symbol(); - sym->setSize(7+10*log10(1.0*width), 7+10*log10(1.0*width)); - _plot_curve[which]->setSymbol(sym); + if(sym) { + sym->setSize(7+10*log10(1.0*width), 7+10*log10(1.0*width)); + _plot_curve[which]->setSymbol(sym); + } #endif } } @@ -310,8 +314,10 @@ DisplayPlot::setLineMarker(int which, QwtSymbol::Style marker) _plot_curve[which]->setSymbol(sym); #else QwtSymbol *sym = (QwtSymbol*)_plot_curve[which]->symbol(); - sym->setStyle(marker); - _plot_curve[which]->setSymbol(sym); + if(sym) { + sym->setStyle(marker); + _plot_curve[which]->setSymbol(sym); + } #endif } } @@ -319,9 +325,16 @@ DisplayPlot::setLineMarker(int which, QwtSymbol::Style marker) const QwtSymbol::Style DisplayPlot::getLineMarker(int which) const { - if (which < _nplots) { - return _plot_curve[which]->symbol().style(); - } else { + if(which < _nplots) { +#if QWT_VERSION < 0x060000 + QwtSymbol sym = (QwtSymbol)_plot_curve[which]->symbol(); + return sym.style(); +#else + QwtSymbol *sym = (QwtSymbol*)_plot_curve[which]->symbol(); + return sym->style(); +#endif + } + else { return QwtSymbol::NoSymbol; } } @@ -345,9 +358,11 @@ DisplayPlot::setMarkerAlpha(int which, int alpha) setLineMarker(which, sym.style()); #else QwtSymbol *sym = (QwtSymbol*)_plot_curve[which]->symbol(); - sym->setColor(color); - sym->setPen(pen); - _plot_curve[which]->setSymbol(sym); + if(sym) { + sym->setColor(color); + sym->setPen(pen); + _plot_curve[which]->setSymbol(sym); + } #endif } } |