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

Method activatePreviousDock

src/frontend/MainWin.cpp:535–571  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

533}
534
535void MainWin::activatePreviousDock() {
536 const auto* focusedDock = m_dockManagerContent->focusedDockWidget();
537
538 auto itrForward = QMapIterator<QString, ads::CDockWidget*>(m_dockManagerContent->dockWidgetsMap());
539 itrForward.toBack();
540
541 bool focusedFound = false;
542 while (itrForward.hasPrevious()) {
543 itrForward.previous();
544 auto* dock = itrForward.value();
545 if (focusedFound) {
546 dock->toggleView(true);
547 m_dockManagerContent->setDockWidgetFocused(dock);
548 return;
549 }
550
551 if (dock == focusedDock) {
552 focusedFound = true;
553 }
554 }
555
556 if (!focusedFound) {
557 if (!m_dockManagerContent->dockWidgetsMap().count())
558 return;
559 auto* dock = m_dockManagerContent->dockWidgetsMap().first();
560 dock->toggleView(true);
561 m_dockManagerContent->setDockWidgetFocused(dock);
562 return;
563 }
564
565 // select the last dock otherwise
566 auto* dock = m_dockManagerContent->dockWidgetsMap().last();
567 if (dock) {
568 dock->toggleView(true);
569 m_dockManagerContent->setDockWidgetFocused(dock);
570 }
571}
572
573void MainWin::dockWidgetRemoved(ads::CDockWidget* w) {
574 if (w == m_currentAspectDock) {

Callers

nothing calls this directly

Calls 6

dockWidgetsMapMethod · 0.80
focusedDockWidgetMethod · 0.45
valueMethod · 0.45
toggleViewMethod · 0.45
setDockWidgetFocusedMethod · 0.45
countMethod · 0.45

Tested by

no test coverage detected