10#ifndef DETACHABLE_TABWIDGET_H
11#define DETACHABLE_TABWIDGET_H
57 virtual void moveTab(
int from,
int to);
64 virtual void detachTab(
int tabIdx, QPoint pos);
71 virtual void attachTab(QWidget * content, QString name);
92 explicit ToolDialog(QWidget * _contentWidget, QWidget * parent =
nullptr, Qt::WindowFlags f = Qt::WindowFlags());
119 QWidget * _contentWidget;
179 virtual void dropEvent(QDropEvent *event);
183 QPoint _dragStartPos;
189 QCursor _mouseCursor;
A customized QTabBar supporting drag and drop operations to reorder or detach tabs.
Definition detachable_tabwidget.h:126
void onMoveTab(int oldIdx, int newIdx)
Signal emitted to indicate a tab has been moved via drag and drop.
virtual void dragEnterEvent(QDragEnterEvent *event)
Handles drag enter events to accept drops.
Definition detachable_tabwidget.cpp:195
virtual void mouseMoveEvent(QMouseEvent *event)
Handles mouse move events to trigger the actual drag operation.
Definition detachable_tabwidget.cpp:151
virtual void dropEvent(QDropEvent *event)
Handles drop events to finalize reordering.
Definition detachable_tabwidget.cpp:204
virtual void mousePressEvent(QMouseEvent *event)
Handles mouse press events to initiate drag tracking.
Definition detachable_tabwidget.cpp:140
virtual void mouseDoubleClickEvent(QMouseEvent *event)
Handles mouse double-click events.
Definition detachable_tabwidget.cpp:134
void onDetachTab(int tabIdx, QPoint pos)
Signal emitted to request a tab detachment.