summaryrefslogtreecommitdiffstats
path: root/src/domain/abstractdomain.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/domain/abstractdomain.cpp')
-rw-r--r--src/domain/abstractdomain.cpp30
1 files changed, 29 insertions, 1 deletions
diff --git a/src/domain/abstractdomain.cpp b/src/domain/abstractdomain.cpp
index 277472d1..f5ec9f47 100644
--- a/src/domain/abstractdomain.cpp
+++ b/src/domain/abstractdomain.cpp
@@ -30,7 +30,13 @@ AbstractDomain::AbstractDomain(QObject *parent)
m_maxX(0),
m_minY(0),
m_maxY(0),
- m_signalsBlocked(false)
+ m_signalsBlocked(false),
+ m_zoomed(false),
+ m_zoomResetMinX(0),
+ m_zoomResetMaxX(0),
+ m_zoomResetMinY(0),
+ m_zoomResetMaxY(0)
+
{
}
@@ -131,6 +137,28 @@ void AbstractDomain::blockRangeSignals(bool block)
}
}
+void AbstractDomain::zoomReset()
+{
+ if (m_zoomed) {
+ setRange(m_zoomResetMinX,
+ m_zoomResetMaxX,
+ m_zoomResetMinY,
+ m_zoomResetMaxY);
+ m_zoomed = false;
+ }
+}
+
+void AbstractDomain::storeZoomReset()
+{
+ if (!m_zoomed) {
+ m_zoomed = true;
+ m_zoomResetMinX = m_minX;
+ m_zoomResetMaxX = m_maxX;
+ m_zoomResetMinY = m_minY;
+ m_zoomResetMaxY = m_maxY;
+ }
+}
+
//algorithm defined by Paul S.Heckbert GraphicalGems I
void AbstractDomain::looseNiceNumbers(qreal &min, qreal &max, int &ticksCount)