From 185257005931256a95307230026f187f1d3a8419 Mon Sep 17 00:00:00 2001 From: Gitea Date: Mon, 23 Sep 2019 21:52:06 +0200 Subject: [PATCH] Ensures 1:1 ratio while displaying --- osciwidget.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/osciwidget.cpp b/osciwidget.cpp index 9aa29f6..61b1f56 100644 --- a/osciwidget.cpp +++ b/osciwidget.cpp @@ -125,7 +125,10 @@ void OsciWidget::drawBuffer(SampleBuffer::iterator &bufferPos, const SampleBuffe QPainter painter(&m_pixmap); painter.setRenderHint(QPainter::Antialiasing); painter.translate(m_pixmap.width()/2, m_pixmap.height()/2); - painter.scale(m_factor * m_pixmap.width() / 2.0, m_factor * m_pixmap.height() / 2.0); + + // ensure 1:1 ratio + auto smallerSide = std::min(m_pixmap.width(), m_pixmap.height()); + painter.scale(m_factor * smallerSide/ 2.0, m_factor * smallerSide/ 2.0); QPen pen; pen.setCosmetic(true); // let pen be scale invariant