1
0
Fork 0

GUI: Remove dead code in MHTabBar

This commit is contained in:
Nukem 2015-11-08 15:24:36 -05:00
parent 223c3ccdef
commit 09ccd88e8d
4 changed files with 2 additions and 168 deletions

View File

@ -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);
}
*/

View File

@ -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__

View File

@ -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);

View File

@ -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: