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

Method initDocks

src/frontend/MainWin.cpp:1370–1472  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1368}
1369
1370void MainWin::initDocks() {
1371 auto* toolbar = toolBar();
1372 if (toolbar)
1373 toolbar->setVisible(true);
1374
1375 // As per documentation the configuration Flags must be set prior a DockManager will be created!
1376 // https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System/blob/master/doc/user-guide.md#configuration-flags
1377 ads::CDockManager::setConfigFlag(ads::CDockManager::XmlCompressionEnabled, false);
1378 ads::CDockManager::setConfigFlag(ads::CDockManager::FocusHighlighting, true);
1379 ads::CDockManager::setConfigFlag(ads::CDockManager::MiddleMouseButtonClosesTab, true);
1380 ads::CDockManager::setConfigFlag(ads::CDockManager::AllTabsHaveCloseButton, true);
1381 ads::CDockManager::setConfigFlag(ads::CDockManager::RetainTabSizeWhenCloseButtonHidden, true);
1382 // must be after the config flags!
1383 ads::CDockManager::setAutoHideConfigFlags(ads::CDockManager::DefaultAutoHideConfig);
1384 ads::CDockManager::setAutoHideConfigFlag(ads::CDockManager::AutoHideShowOnMouseOver, true);
1385
1386 // main dock manager for the default docks of the application (project explorer, etc)
1387 m_dockManagerMain = new ads::CDockManager(this);
1388
1389 // project explorer
1390 m_projectExplorerDock = new ads::CDockWidget(i18nc("@title:window", "Project Explorer"));
1391 m_projectExplorerDock->setObjectName(QLatin1String("project-explorer"));
1392 m_projectExplorerDock->setWindowTitle(m_projectExplorerDock->windowTitle().replace(QLatin1String("&"), QString()));
1393 m_projectExplorerDock->toggleViewAction()->setText(QLatin1String(""));
1394
1395 m_projectExplorer = new ProjectExplorer(m_projectExplorerDock);
1396 m_projectExplorerDock->setWidget(m_projectExplorer);
1397
1398 connect(m_projectExplorer, &ProjectExplorer::currentAspectChanged, this, &MainWin::handleCurrentAspectChanged);
1399 connect(m_projectExplorer, &ProjectExplorer::activateView, this, &MainWin::activateSubWindowForAspect);
1400 connect(m_projectExplorerDock, &ads::CDockWidget::viewToggled, this, &MainWin::projectExplorerDockVisibilityChanged);
1401
1402 // properties explorer
1403 m_propertiesDock = new ads::CDockWidget(i18nc("@title:window", "Properties"));
1404 m_propertiesDock->setObjectName(QLatin1String("properties-explorer"));
1405 m_propertiesDock->setWindowTitle(m_propertiesDock->windowTitle().replace(QLatin1String("&"), QString()));
1406
1407 auto* scrollArea = new QScrollArea(m_propertiesDock);
1408 scrollArea->setWidgetResizable(true);
1409 stackedWidget = new QStackedWidget(scrollArea);
1410 scrollArea->setWidget(stackedWidget); // stacked widget inside scroll area
1411 m_propertiesDock->setWidget(scrollArea); // scroll area inside dock
1412 connect(m_propertiesDock, &ads::CDockWidget::viewToggled, this, &MainWin::propertiesDockVisibilityChanged);
1413
1414 // worksheet preview
1415 m_worksheetPreviewDock = new ads::CDockWidget(i18nc("@title:window", "Worksheet Preview"));
1416 m_worksheetPreviewDock->setObjectName(QLatin1String("worksheet-preview"));
1417 m_worksheetPreviewDock->setWindowTitle(m_worksheetPreviewDock->windowTitle().replace(QLatin1String("&"), QString()));
1418 m_worksheetPreviewDock->toggleViewAction()->setText(QLatin1String(""));
1419
1420 m_worksheetPreviewWidget = new WorksheetPreviewWidget(m_worksheetPreviewDock);
1421 m_worksheetPreviewDock->setWidget(m_worksheetPreviewWidget);
1422 connect(m_worksheetPreviewDock, &ads::CDockWidget::viewToggled, this, &MainWin::worksheetPreviewDockVisibilityChanged);
1423
1424 auto contentDock = new ads::CDockWidget(i18nc("@title:window", "Content"));
1425 contentDock->setObjectName(QLatin1String("content-dock"));
1426 m_dockManagerContent = new ads::CDockManager(contentDock);
1427 contentDock->setWidget(m_dockManagerContent);

Callers

nothing calls this directly

Calls 13

setWindowTitleMethod · 0.80
replaceMethod · 0.80
toggleViewActionMethod · 0.80
setWidgetMethod · 0.80
setCentralWidgetMethod · 0.80
dockWidgetsMapMethod · 0.80
QStringClass · 0.50
setVisibleMethod · 0.45
setTextMethod · 0.45
resizeMethod · 0.45
addDockWidgetMethod · 0.45
dockAreaWidgetMethod · 0.45

Tested by

no test coverage detected