[Kst] branches/work/kst/portto4/kst

Barth Netterfield netterfield at astro.utoronto.ca
Thu Jun 17 15:12:29 CEST 2010


SVN commit 1139143 by netterfield:

Fix bug with shared axis: changes to which axis were shared were not being
honored.



 M  +6 -0      devel-docs/Kst2Specs/Bugs  
 M  +0 -4      devel-docs/Kst2Specs/Wishlist  
 M  +0 -1      src/datasources/dirfilesource/dirfilesource.cpp  
 M  +7 -3      src/libkstapp/sharedaxisboxitem.cpp  
 M  +1 -0      src/libkstapp/sharedaxisboxitem.h  


--- branches/work/kst/portto4/kst/devel-docs/Kst2Specs/Bugs #1139142:1139143
@@ -27,4 +27,10 @@
 scalar will indicate a value strikingly similar to the "Min" (or perhaps
 "First") value on the plot rather than the Last value.
 
+-----------------------
 
+Create a bunch of plots with same X range but different Y range.
+Put them in a shared axis box.  X is shared as expected.
+rmb-> select share Y axis.  The Y zooms are now tied as expected, but the Y 
+axis are not shared.  They should be.
+
--- branches/work/kst/portto4/kst/devel-docs/Kst2Specs/Wishlist #1139142:1139143
@@ -60,10 +60,6 @@
 
 ---------
 
-The data manager doesn't have a purge button.
-
---------------------
-
 Thread kst2
 
 --------------------
--- branches/work/kst/portto4/kst/src/datasources/dirfilesource/dirfilesource.cpp #1139142:1139143
@@ -213,7 +213,6 @@
     _writable = true;
     _frameCount = _dirfile->NFrames();
   }
-
   _watcher = new QFileSystemWatcher();
   if (_fieldList.count() > 1) {
     QString filePath = _dirfile->ReferenceFilename();
--- branches/work/kst/portto4/kst/src/libkstapp/sharedaxisboxitem.cpp #1139142:1139143
@@ -40,7 +40,8 @@
       _shareX(true),
       _shareY(true),
       _xAxisZoomMode(PlotAxis::Auto),
-      _yAxisZoomMode(PlotAxis::Auto) {
+      _yAxisZoomMode(PlotAxis::Auto),
+      _sharedIsDirty(false) {
   setTypeName("Shared Axis Box");
   setBrush(Qt::transparent);
 
@@ -62,9 +63,10 @@
     if (_firstPaint && _loaded) {
       sharePlots(painter, true);
       _firstPaint = false;
-    //} else {
-      //sharePlots(painter, false);
+    } else if (_sharedIsDirty) {
+      sharePlots(painter, false);
     }
+    _sharedIsDirty = false;
     updatePlotTiedZoomSupport();
     _keyPlot = 0;
     foreach (PlotItem* plotItem, _sharedPlots) {
@@ -120,6 +122,7 @@
   } else {
     _xAxisZoomMode = PlotAxis::FixedExpression;
   }
+  _sharedIsDirty = true;
 }
 
 
@@ -130,6 +133,7 @@
   } else {
     _yAxisZoomMode = PlotAxis::FixedExpression;
   }
+  _sharedIsDirty = true;
 }
 
 
--- branches/work/kst/portto4/kst/src/libkstapp/sharedaxisboxitem.h #1139142:1139143
@@ -121,6 +121,7 @@
     qint64 _serialOfLastChange;
 
     PlotAxis::ZoomMode _xAxisZoomMode, _yAxisZoomMode;
+    bool _sharedIsDirty;
 };
 
 class CreateSharedAxisBoxCommand : public CreateCommand


More information about the Kst mailing list