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

Method startFloating

src/3rdparty/Qt-Advanced-Docking-System/src/AutoHideTab.cpp:177–219  ·  view source on GitHub ↗

============================================================================

Source from the content-addressed store, hash-verified

175
176//============================================================================
177bool AutoHideTabPrivate::startFloating(eDragState DraggingState)
178{
179 auto DockArea = DockWidget->dockAreaWidget();
180 ADS_PRINT("isFloating " << dockContainer()->isFloating());
181
182 ADS_PRINT("startFloating");
183 DragState = DraggingState;
184 IFloatingWidget* FloatingWidget = nullptr;
185 FloatingWidget = createFloatingWidget(DockArea);
186 auto Size = DockArea->size();
187 auto StartPos = DragStartMousePosition;
188 auto AutoHideContainer = DockWidget->autoHideDockContainer();
189 DragStartOrientation = AutoHideContainer->orientation();
190 switch (SideBar->sideBarLocation())
191 {
192 case SideBarLeft:
193 StartPos.rx() = AutoHideContainer->rect().left() + 10;
194 break;
195
196 case SideBarRight:
197 StartPos.rx() = AutoHideContainer->rect().right() - 10;
198 break;
199
200 case SideBarTop:
201 StartPos.ry() = AutoHideContainer->rect().top() + 10;
202 break;
203
204 case SideBarBottom:
205 StartPos.ry() = AutoHideContainer->rect().bottom() - 10;
206 break;
207
208 case SideBarNone:
209 return false;
210 }
211 FloatingWidget->startFloating(StartPos, Size, DraggingFloatingWidget, _this);
212 auto DockManager = DockWidget->dockManager();
213 auto Overlay = DockManager->containerOverlay();
214 Overlay->setAllowedAreas(OuterDockAreas);
215 this->FloatingWidget = FloatingWidget;
216 qApp->postEvent(DockWidget, new QEvent((QEvent::Type)internal::DockedWidgetDragStartEvent));
217
218 return true;
219}
220
221
222

Callers 1

mouseMoveEventMethod · 0.45

Calls 10

rectMethod · 0.80
containerOverlayMethod · 0.80
dockAreaWidgetMethod · 0.45
isFloatingMethod · 0.45
sizeMethod · 0.45
autoHideDockContainerMethod · 0.45
orientationMethod · 0.45
sideBarLocationMethod · 0.45
dockManagerMethod · 0.45
setAllowedAreasMethod · 0.45

Tested by

no test coverage detected