MCPcopy Create free account
hub / github.com/KDE/labplot / updateFit

Method updateFit

src/frontend/worksheet/WorksheetView.cpp:1196–1224  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1194}
1195
1196void WorksheetView::updateFit() {
1197 switch (m_worksheet->zoomFit()) {
1198 case Worksheet::ZoomFit::None:
1199 break;
1200 case Worksheet::ZoomFit::FitToWidth: {
1201 const float scaleFactor = viewport()->width() / scene()->sceneRect().width();
1202 setTransform(QTransform::fromScale(scaleFactor, scaleFactor));
1203 break;
1204 }
1205 case Worksheet::ZoomFit::FitToHeight: {
1206 const float scaleFactor = viewport()->height() / scene()->sceneRect().height();
1207 setTransform(QTransform::fromScale(scaleFactor, scaleFactor));
1208 break;
1209 }
1210 case Worksheet::ZoomFit::FitToSelection: {
1211 fitInView(scene()->selectionArea().boundingRect(), Qt::KeepAspectRatio);
1212 break;
1213 }
1214 case Worksheet::ZoomFit::Fit: {
1215 const float scaleFactorVertical = viewport()->height() / scene()->sceneRect().height();
1216 const float scaleFactorHorizontal = viewport()->width() / scene()->sceneRect().width();
1217 if (scaleFactorVertical * scene()->sceneRect().width() < viewport()->width())
1218 setTransform(QTransform::fromScale(scaleFactorVertical, scaleFactorVertical));
1219 else
1220 setTransform(QTransform::fromScale(scaleFactorHorizontal, scaleFactorHorizontal));
1221 break;
1222 }
1223 }
1224}
1225
1226void WorksheetView::updateScrollBarPolicy() {
1227 if (m_worksheet->useViewSize() || m_worksheet->zoomFit() != Worksheet::ZoomFit::None) {

Callers

nothing calls this directly

Calls 3

heightMethod · 0.80
widthMethod · 0.45
boundingRectMethod · 0.45

Tested by

no test coverage detected