[Kst] branches/work/kst/portto4/kst/src/libkstapp
Barth Netterfield
netterfield at astro.utoronto.ca
Tue Mar 30 01:45:05 CEST 2010
SVN commit 1108876 by netterfield:
Fix shared axis box crashes.
M +0 -1 plotitem.cpp
M +42 -13 sharedaxisboxitem.cpp
--- branches/work/kst/portto4/kst/src/libkstapp/plotitem.cpp #1108875:1108876
@@ -762,7 +762,6 @@
}
}
setLabelsDirty();
- //update();
return true;
}
--- branches/work/kst/portto4/kst/src/libkstapp/sharedaxisboxitem.cpp #1108875:1108876
@@ -412,7 +412,9 @@
#endif
_xAxisZoomMode = PlotAxis::FixedExpression;
_yAxisZoomMode = PlotAxis::FixedExpression;
- originPlotItem->zoomFixedExpression(projection, true);
+ if (originPlotItem) {
+ originPlotItem->zoomFixedExpression(projection, true);
+ }
applyZoom(projection, originPlotItem);
}
@@ -473,7 +475,9 @@
_xAxisZoomMode = PlotAxis::Auto;
_yAxisZoomMode = PlotAxis::AutoBorder;
- originPlotItem->zoomMaximum(true);
+ if (originPlotItem) {
+ originPlotItem->zoomMaximum(true);
+ }
applyZoom(computeRect(PlotAxis::Auto, PlotAxis::AutoBorder), originPlotItem);
}
@@ -484,7 +488,9 @@
#endif
_xAxisZoomMode = PlotAxis::Auto;
_yAxisZoomMode = PlotAxis::SpikeInsensitive;
- originPlotItem->zoomMaxSpikeInsensitive(true);
+ if (originPlotItem) {
+ originPlotItem->zoomMaxSpikeInsensitive(true);
+ }
applyZoom(computeRect(PlotAxis::Auto, PlotAxis::SpikeInsensitive), originPlotItem);
}
@@ -502,7 +508,9 @@
qDebug() << "zoomYMeanCentered" << endl;
#endif
_yAxisZoomMode = PlotAxis::MeanCentered;
- originPlotItem->zoomYMeanCentered(true);
+ if (originPlotItem) {
+ originPlotItem->zoomYMeanCentered(true);
+ }
applyZoom(computeRect(PlotAxis::Auto, PlotAxis::MeanCentered), originPlotItem, false, true);
}
@@ -511,7 +519,9 @@
qDebug() << "zoomXMeanCentered" << endl;
#endif
_xAxisZoomMode = PlotAxis::MeanCentered;
- originPlotItem->zoomXMeanCentered(true);
+ if (originPlotItem) {
+ originPlotItem->zoomXMeanCentered(true);
+ }
applyZoom(computeRect(PlotAxis::MeanCentered, PlotAxis::MeanCentered), originPlotItem, true, false);
}
@@ -520,7 +530,9 @@
qDebug() << "zoomXMaximum" << endl;
#endif
_xAxisZoomMode = PlotAxis::Auto;
- originPlotItem->zoomXMaximum(true);
+ if (originPlotItem) {
+ originPlotItem->zoomXMaximum(true);
+ }
applyZoom(computeRect(PlotAxis::Auto, PlotAxis::Auto), originPlotItem, true, false);
}
@@ -530,7 +542,9 @@
qDebug() << "zoomXNoSpike" << endl;
#endif
_xAxisZoomMode = PlotAxis::SpikeInsensitive;
- originPlotItem->zoomXNoSpike(true);
+ if (originPlotItem) {
+ originPlotItem->zoomXNoSpike(true);
+ }
applyZoom(computeRect(PlotAxis::SpikeInsensitive, PlotAxis::Auto), originPlotItem, true, false);
}
@@ -540,7 +554,9 @@
qDebug() << "zoomXAutoBorder" << endl;
#endif
_xAxisZoomMode = PlotAxis::AutoBorder;
- originPlotItem->zoomXAutoBorder(true);
+ if (originPlotItem) {
+ originPlotItem->zoomXAutoBorder(true);
+ }
applyZoom(computeRect(PlotAxis::AutoBorder, PlotAxis::Auto), originPlotItem, true, false);
}
@@ -681,7 +697,9 @@
}
}
_xAxisZoomMode = PlotAxis::FixedExpression;
- originPlotItem->zoomNormalizeXtoY(true);
+ if (originPlotItem) {
+ originPlotItem->zoomNormalizeXtoY(true);
+ }
applyZoom(computedRect, originPlotItem, true, false);
}
}
@@ -746,7 +764,9 @@
}
}
_yAxisZoomMode = PlotAxis::FixedExpression;
- originPlotItem->zoomYLocalMaximum(true);
+ if (originPlotItem) {
+ originPlotItem->zoomYLocalMaximum(true);
+ }
applyZoom(computedRect, originPlotItem, false, true);
}
}
@@ -757,7 +777,9 @@
qDebug() << "zoomYMaximum" << endl;
#endif
_yAxisZoomMode = PlotAxis::Auto;
- originPlotItem->zoomYMaximum(true);
+ if (originPlotItem) {
+ originPlotItem->zoomYMaximum(true);
+ }
applyZoom(computeRect(PlotAxis::Auto, PlotAxis::Auto), originPlotItem, false, true);
}
@@ -767,7 +789,9 @@
qDebug() << "zoomYNoSpike" << endl;
#endif
_yAxisZoomMode = PlotAxis::SpikeInsensitive;
- originPlotItem->zoomYNoSpike(true);
+ if (originPlotItem) {
+ originPlotItem->zoomYNoSpike(true);
+ }
applyZoom(computeRect(PlotAxis::Auto, PlotAxis::SpikeInsensitive), originPlotItem, false, true);
}
@@ -777,7 +801,9 @@
qDebug() << "zoomYAutoBorder" << endl;
#endif
_yAxisZoomMode = PlotAxis::AutoBorder;
- originPlotItem->zoomYAutoBorder(true);
+ if (originPlotItem) {
+ originPlotItem->zoomYAutoBorder(true);
+ }
applyZoom(computeRect(PlotAxis::Auto, PlotAxis::AutoBorder), originPlotItem, false, true);
}
@@ -891,6 +917,9 @@
void SharedAxisBoxItem::zoomNormalizeYtoX(PlotItem* originPlotItem) {
+ if (!originPlotItem) {
+ return;
+ }
#if DEBUG_ZOOM
qDebug() << "zoomNormalizeYtoX" << endl;
#endif
More information about the Kst
mailing list