GUI: Remove dead code in MHTabBar
This commit is contained in:
parent
223c3ccdef
commit
09ccd88e8d
|
@ -53,125 +53,3 @@ void MHTabBar::contextMenuEvent(QContextMenuEvent* event)
|
|||
OnDeleteTab((int)tabAt(event->pos()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
void MHTabBar::mousePressEvent(QMouseEvent* event)
|
||||
{
|
||||
if (event->button() == Qt::LeftButton)
|
||||
m_dragStartPos = event->pos();
|
||||
|
||||
m_dragDroppedPos.setX(0);
|
||||
m_dragDroppedPos.setY(0);
|
||||
m_dragMovedPos.setX(0);
|
||||
m_dragMovedPos.setY(0);
|
||||
|
||||
m_dragInitiated = false;
|
||||
|
||||
QTabBar::mousePressEvent(event);
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
void MHTabBar::mouseMoveEvent(QMouseEvent* event)
|
||||
{
|
||||
// Distinguish a drag
|
||||
if ( !m_dragStartPos.isNull() &&
|
||||
((event->pos() - m_dragStartPos).manhattanLength() < QApplication::startDragDistance()) )
|
||||
{
|
||||
m_dragInitiated = true;
|
||||
}
|
||||
|
||||
// The left button is pressed
|
||||
// And the move could also be a drag
|
||||
// And the mouse moved outside the tab bar
|
||||
if ((event->buttons() & Qt::LeftButton) && m_dragInitiated && !geometry().contains(event->pos()))
|
||||
{
|
||||
// Stop the move to be able to convert to a drag
|
||||
{
|
||||
QMouseEvent finishMoveEvent(QEvent::MouseMove, event->pos(), Qt::NoButton, Qt::NoButton, Qt::NoModifier);
|
||||
QTabBar::mouseMoveEvent(&finishMoveEvent);
|
||||
}
|
||||
|
||||
// A crude way to distinguish tab-reordering drops from other ones
|
||||
QMimeData* mimeData = new QMimeData;
|
||||
mimeData->setData("action", "application/tab-detach");
|
||||
|
||||
// Initiate Drag
|
||||
QDrag* drag = new QDrag(this);
|
||||
drag->setMimeData(mimeData);
|
||||
|
||||
// Create transparent screen dump
|
||||
QPixmap pixmap = QPixmap::grabWindow(dynamic_cast<MHTabWidget*>(parentWidget())->currentWidget()->winId()).scaled(640, 480, Qt::KeepAspectRatio);
|
||||
QPixmap targetPixmap(pixmap.size());
|
||||
|
||||
QPainter painter(&targetPixmap);
|
||||
painter.setOpacity(0.5);
|
||||
painter.drawPixmap(0, 0, pixmap);
|
||||
painter.end();
|
||||
|
||||
drag->setPixmap(targetPixmap);
|
||||
|
||||
// Handle Detach and Move
|
||||
Qt::DropAction dragged = drag->exec(Qt::MoveAction | Qt::CopyAction);
|
||||
|
||||
if (dragged == Qt::IgnoreAction)
|
||||
{
|
||||
event->accept();
|
||||
OnDetachTab(tabAt(m_dragStartPos), QCursor::pos());
|
||||
}
|
||||
else if (dragged == Qt::MoveAction)
|
||||
{
|
||||
if (!m_dragDroppedPos.isNull())
|
||||
{
|
||||
event->accept();
|
||||
OnMoveTab(tabAt(m_dragStartPos), tabAt(m_dragDroppedPos));
|
||||
}
|
||||
}
|
||||
|
||||
delete drag;
|
||||
}
|
||||
else
|
||||
{
|
||||
QTabBar::mouseMoveEvent(event);
|
||||
}
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
void MHTabBar::dragEnterEvent(QDragEnterEvent* event)
|
||||
{
|
||||
// Only accept if it's an tab-reordering request (not a detach request)
|
||||
const QMimeData* m = event->mimeData();
|
||||
|
||||
if (m->formats().contains("action") && (m->data("action") != "application/tab-detach"))
|
||||
{
|
||||
event->acceptProposedAction();
|
||||
}
|
||||
|
||||
QTabBar::dragEnterEvent(event);
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
void MHTabBar::dragMoveEvent(QDragMoveEvent* event)
|
||||
{
|
||||
// Only accept if it's an tab-reordering request (not a detach request)
|
||||
const QMimeData* m = event->mimeData();
|
||||
|
||||
if (m->formats().contains("action") && (m->data("action") != "application/tab-detach"))
|
||||
{
|
||||
m_dragMovedPos = event->pos();
|
||||
event->acceptProposedAction();
|
||||
}
|
||||
|
||||
QTabBar::dragMoveEvent(event);
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
void MHTabBar::dropEvent(QDropEvent* event)
|
||||
{
|
||||
// If a dragged Event is dropped within this widget it is not a drag but a move.
|
||||
m_dragDroppedPos = event->pos();
|
||||
|
||||
QTabBar::dropEvent(event);
|
||||
}
|
||||
*/
|
||||
|
|
|
@ -12,7 +12,7 @@ class QMainWindow;
|
|||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
// Summary:
|
||||
// MHTabBar implements the a Tab Bar with tear-off functionality.
|
||||
// MHTabBar implements the a Tab Bar with detach functionality.
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
class MHTabBar: public QTabBar
|
||||
{
|
||||
|
@ -23,13 +23,6 @@ public:
|
|||
|
||||
protected:
|
||||
void contextMenuEvent(QContextMenuEvent* event);
|
||||
/*
|
||||
void mousePressEvent(QMouseEvent* event);
|
||||
void mouseMoveEvent(QMouseEvent* event);
|
||||
void dragEnterEvent(QDragEnterEvent* event);
|
||||
void dragMoveEvent(QDragMoveEvent* event);
|
||||
void dropEvent(QDropEvent* event);
|
||||
*/
|
||||
|
||||
signals:
|
||||
// Detach Tab
|
||||
|
@ -42,13 +35,6 @@ signals:
|
|||
private:
|
||||
bool mAllowDetach;
|
||||
bool mAllowDelete;
|
||||
/*
|
||||
QPoint m_dragStartPos;
|
||||
QPoint m_dragMovedPos;
|
||||
QPoint m_dragDroppedPos;
|
||||
bool m_dragInitiated;
|
||||
int m_dragCurrentIndex;
|
||||
*/
|
||||
};
|
||||
|
||||
#endif // __MHTABBAR_H__
|
||||
|
|
|
@ -156,44 +156,15 @@ void MHTabWidget::AttachTab(QWidget* parent)
|
|||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
MHDetachedWindow::MHDetachedWindow(QWidget* parent, MHTabWidget* tabwidget) : QMainWindow(parent)
|
||||
{
|
||||
m_TabWidget = tabwidget;
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
MHDetachedWindow::~MHDetachedWindow(void)
|
||||
{
|
||||
}
|
||||
|
||||
/*
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
void MHDetachedWindow::moveEvent(QMoveEvent *event)
|
||||
{
|
||||
QRect rect = m_TabWidget->geometry();
|
||||
QSize hint = m_TabWidget->tabBar()->sizeHint();
|
||||
|
||||
// Height of the actual top tab bar
|
||||
rect.setBottom(rect.top() + hint.height());
|
||||
QPoint pos1(rect.x(), rect.y());
|
||||
pos1=m_TabWidget->mapToGlobal(pos1);
|
||||
rect.setX(pos1.x());
|
||||
rect.setY(pos1.y());
|
||||
|
||||
if (rect.contains(event->pos()))
|
||||
{
|
||||
m_TabWidget->AttachTab(this);
|
||||
event->accept();
|
||||
}
|
||||
else
|
||||
{
|
||||
QMainWindow::moveEvent(event);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
void MHDetachedWindow::closeEvent(QCloseEvent* /*event*/)
|
||||
{
|
||||
emit OnClose(this);
|
||||
|
|
|
@ -15,7 +15,7 @@ class MHTabBar;
|
|||
//////////////////////////////////////////////////////////////////////////////
|
||||
// Summary:
|
||||
// MHTabWidget implements the a Tab Widget with detach and attach
|
||||
// functionality.
|
||||
// functionality for MHTabBar.
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
class MHTabWidget: public QTabWidget
|
||||
{
|
||||
|
@ -71,7 +71,6 @@ public:
|
|||
protected:
|
||||
MHTabWidget* m_TabWidget;
|
||||
|
||||
//virtual void moveEvent(QMoveEvent *event);
|
||||
void closeEvent(QCloseEvent* event);
|
||||
|
||||
signals:
|
||||
|
|
Loading…
Reference in New Issue