From 806530353c16034802fe60b922c3a9a64e16e729 Mon Sep 17 00:00:00 2001
From: Benjamin Jakimow <benjamin.jakimow@client193-234.wlan.hu-berlin.de>
Date: Tue, 21 Feb 2017 08:35:28 +0100
Subject: [PATCH] settingsdialog.ui replaced QDeclarative by ParameterTree
 widget

---
 timeseriesviewer/timeseries.py        |  41 +++++---------------------
 timeseriesviewer/ui/icons/system.png  | Bin 2122 -> 129 bytes
 timeseriesviewer/ui/settingsdialog.ui |  14 ++++++---
 3 files changed, 18 insertions(+), 37 deletions(-)

diff --git a/timeseriesviewer/timeseries.py b/timeseriesviewer/timeseries.py
index cffe9f21..d2f5d795 100644
--- a/timeseriesviewer/timeseries.py
+++ b/timeseriesviewer/timeseries.py
@@ -232,7 +232,7 @@ def verifyInputImage(path, vrtInspection=''):
         print('{}GDAL unable to open: '.format(vrtInspection, path))
         return False
     if ds.GetDriver().ShortName == 'VRT':
-        vrtInspection = 'Inspection {}\n'.format(path)
+        vrtInspection = 'VRT Inspection {}\n'.format(path)
         validSrc = [verifyInputImage(p, vrtInspection=vrtInspection) for p in set(ds.GetFileList()) - set([path])]
         return all(validSrc)
     else:
@@ -263,25 +263,22 @@ class TimeSeriesDatum(QObject):
 
 
 
-    def __init__(self, timeSeries, pathImg, pathMsk=None):
+    def __init__(self, timeSeries, lyr, pathMsk=None):
         super(TimeSeriesDatum,self).__init__()
-        assert os.path.exists(pathImg)
+        assert isinstance(lyr, QgsRasterLayer)
+        assert lyr.isValid()
+
+        self.lyrImg = lyr
         self.timeSeries = timeSeries
-        self.pathImg = pathImg
-        self.pathMsk = None
 
-        assert os.path.exists(pathImg)
-        self.lyrImg = QgsRasterLayer(pathImg, os.path.basename(pathImg), False)
-        assert self.lyrImg.isValid()
-        self.uriImg = self.lyrImg.dataProvider().dataSourceUri()
+        self.pathImg = self.lyrImg.dataProvider().dataSourceUri()
 
         self.crs = self.lyrImg.dataProvider().crs()
         self.sensor = SensorInstrument(self.lyrImg)
 
-        self.date = getImageDate(self.lyrImg)
+        self.date = getImageDate(self.lyr)
         self.doy = getDOYfromDate(self.date)
         assert self.date is not None, 'Unable to find acquisition date of {}'.format(pathImg)
-
         self.ns = self.lyrImg.width()
         self.nl = self.lyrImg.height()
         self.nb = self.lyrImg.bandCount()
@@ -289,9 +286,6 @@ class TimeSeriesDatum(QObject):
 
         self.mVisibility = True
 
-        if pathMsk:
-            self.setMask(pathMsk)
-
 
     def rank(self):
         return self.timeSeries.index(self)
@@ -568,25 +562,6 @@ def getImageDate(lyr):
     return date
 
 
-def PFunc_TimeSeries_getSpatialChip(TSD, bbWkt, srsWkt , bands=[4,5,3]):
-
-    chipdata = TSD.readSpatialChip(bbWkt, srs=srsWkt, bands=bands)
-
-    return TSD, chipdata
-
-def px2Coordinate(gt, pxX, pxY, upper_left=True):
-    cx = gt[0] + pxX*gt[1] + pxY*gt[2]
-    cy = gt[3] + pxX*gt[4] + pxY*gt[5]
-    if not upper_left:
-        cx += gt[1]*0.5
-        cy += gt[5]*0.5
-    return cx, cy
-
-def coordinate2px(gt, cx, cy):
-    px = int((cx - gt[0]) / gt[1])
-    py = int((cy - gt[3]) / gt[5])
-    return px, py
-
 
 regYYYYDOY = re.compile(r'(19|20)\d{5}')
 regYYYYMMDD = re.compile(r'(19|20)\d{2}-\d{2}-\d{2}')
diff --git a/timeseriesviewer/ui/icons/system.png b/timeseriesviewer/ui/icons/system.png
index a3d259ece803d499a53b5794d84753b53a767bb2..a9bac086db6b73c269eb5d3b0120806f0bba2e27 100644
GIT binary patch
literal 129
zcmWN?OA^8$3;@tQr{Dq>lJZM$Lun9ZR5}K`@bvmN@8Y-g@zQP1Q#NDnecm2bmjCUu
zFJ(N9oLtNWYV<=(%jm;qGeaVWH5>qG&prcib;*T9Im8$X5tVEm<7y!~2oVUa2aZfD
M6(#-48Ua!L0F`qk>i_@%

literal 2122
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
A#Q*>R

diff --git a/timeseriesviewer/ui/settingsdialog.ui b/timeseriesviewer/ui/settingsdialog.ui
index f2ba2b0b..d9930d6b 100644
--- a/timeseriesviewer/ui/settingsdialog.ui
+++ b/timeseriesviewer/ui/settingsdialog.ui
@@ -15,7 +15,13 @@
   </property>
   <layout class="QVBoxLayout" name="verticalLayout">
    <item>
-    <widget class="QDeclarativeView" name="declarativeView"/>
+    <widget class="ParameterTree" name="treeWidget">
+     <column>
+      <property name="text">
+       <string notr="true">1</string>
+      </property>
+     </column>
+    </widget>
    </item>
    <item>
     <widget class="QDialogButtonBox" name="buttonBox">
@@ -31,9 +37,9 @@
  </widget>
  <customwidgets>
   <customwidget>
-   <class>QDeclarativeView</class>
-   <extends>QGraphicsView</extends>
-   <header>QtDeclarative/QDeclarativeView</header>
+   <class>ParameterTree</class>
+   <extends>QTreeWidget</extends>
+   <header>pyqtgraph.parametertree</header>
   </customwidget>
  </customwidgets>
  <resources/>
-- 
GitLab