summaryrefslogtreecommitdiffstats
path: root/qt-ui/profile/divecartesianaxis.h
diff options
context:
space:
mode:
authorGravatar Tomaz Canabrava <tcanabrava@kde.org>2014-01-16 12:32:45 -0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-01-17 06:16:47 +0700
commit9cb5ea45d886c15b26b196bc292b7a4bbf359b20 (patch)
tree6b04a501325e065fad9364eb0be86ed7533f0874 /qt-ui/profile/divecartesianaxis.h
parent793879b6fab658c19bce92bebe0e193a900a2cc5 (diff)
downloadsubsurface-9cb5ea45d886c15b26b196bc292b7a4bbf359b20.tar.gz
Started the code for a grid that knows how to handle itself.
The code for this item is a bit too big to be just the grid of the dives and I know that, don't bully me. :) The main idea of this grid is that it knows when it should be updated. this is a bit different than the old code where all the painting happened on the same method. This is bad because it's more code, but it's better because if I break the grid, only the grid will be broken, and it's easyer to spot the breakage. in the old code if I did the wrong thing with the graphics context, the whole graph gots messed out. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/profile/divecartesianaxis.h')
-rw-r--r--qt-ui/profile/divecartesianaxis.h27
1 files changed, 26 insertions, 1 deletions
diff --git a/qt-ui/profile/divecartesianaxis.h b/qt-ui/profile/divecartesianaxis.h
index d6a60d3ce..eb50c1f92 100644
--- a/qt-ui/profile/divecartesianaxis.h
+++ b/qt-ui/profile/divecartesianaxis.h
@@ -29,7 +29,8 @@ public:
void setColor(const QColor& color);
void setTextColor(const QColor& color);
int unitSystem;
-
+signals:
+ void sizeChanged();
protected:
virtual QString textForValue(double value);
@@ -52,4 +53,28 @@ class TimeAxis : public DiveCartesianAxis {
protected:
QString textForValue(double value);
};
+
+// This is a try. Maybe the CartesianPlane should have the X and Y
+// axis and handle things internally?
+class DiveCartesianPlane :public QObject, public QGraphicsRectItem{
+ Q_OBJECT
+ Q_PROPERTY(QLineF verticalLine READ verticalLine WRITE setVerticalLine)
+ Q_PROPERTY(QLineF horizontalLine READ horizontalLine WRITE setHorizontalLine)
+public:
+ void setLeftAxis(DiveCartesianAxis *axis);
+ void setBottomAxis(DiveCartesianAxis *axis);
+ void setHorizontalLine(QLineF line);
+ void setVerticalLine(QLineF line);
+ QLineF horizontalLine() const;
+ QLineF verticalLine() const;
+public slots:
+ void setup();
+private:
+ DiveCartesianAxis *leftAxis;
+ DiveCartesianAxis *bottomAxis;
+ QList<DiveLineItem*> verticalLines;
+ QList<DiveLineItem*> horizontalLines;
+ qreal verticalSize;
+ qreal horizontalSize;
+};
#endif \ No newline at end of file