diff --git a/src/chartpresenter.cpp b/src/chartpresenter.cpp index ba8abc8..8b789d9 100644 --- a/src/chartpresenter.cpp +++ b/src/chartpresenter.cpp @@ -484,6 +484,13 @@ void ChartPresenter::updateLayout() } } + if(m_rect.width()<2*(m_chartMargins.top()+m_chartMargins.bottom()) || m_rect.height()< 2*(m_chartMargins.top() + m_chartMargins.bottom())) + { + m_chart->setMinimumSize(2*(m_chartMargins.top()+m_chartMargins.bottom()),2*(m_chartMargins.top() + m_chartMargins.bottom())); + return; + } + + // recalculate title position if (m_titleItem) { QPointF center = m_rect.center() -m_titleItem->boundingRect().center(); @@ -495,6 +502,7 @@ void ChartPresenter::updateLayout() m_backgroundItem->setRect(m_rect.adjusted(m_marginTiny,m_marginTiny, -m_marginTiny, -m_marginTiny)); } + QRectF chartRect = m_rect.adjusted(m_chartMargins.left(),m_chartMargins.top(),-m_chartMargins.right(),-m_chartMargins.bottom()); legend->setGeometry(m_rect.adjusted(m_legendMargins.left(),m_legendMargins.top(),-m_legendMargins.right(),-m_legendMargins.bottom())); diff --git a/src/qchartview.cpp b/src/qchartview.cpp index e4e2bf0..fd539f5 100644 --- a/src/qchartview.cpp +++ b/src/qchartview.cpp @@ -224,6 +224,7 @@ void QChartView::resizeEvent(QResizeEvent *event) { QGraphicsView::resizeEvent(event); d_ptr->m_chart->resize(size()); + setMinimumSize(d_ptr->m_chart->minimumSize().toSize()); setSceneRect(d_ptr->m_chart->geometry()); }