diff options
author | Tomaz Canabrava <tcanabrava@kde.org> | 2014-01-16 12:32:45 -0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-01-17 06:16:47 +0700 |
commit | 9cb5ea45d886c15b26b196bc292b7a4bbf359b20 (patch) | |
tree | 6b04a501325e065fad9364eb0be86ed7533f0874 /qt-ui/profile/divecartesianaxis.h | |
parent | 793879b6fab658c19bce92bebe0e193a900a2cc5 (diff) | |
download | subsurface-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.h | 27 |
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 |