diff options
Diffstat (limited to 'src/domain/abstractdomain.cpp')
-rw-r--r-- | src/domain/abstractdomain.cpp | 30 |
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) |