summaryrefslogtreecommitdiffstats
path: root/src/Authoring/Studio/Controls/WidgetControl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Authoring/Studio/Controls/WidgetControl.cpp')
-rw-r--r--src/Authoring/Studio/Controls/WidgetControl.cpp243
1 files changed, 0 insertions, 243 deletions
diff --git a/src/Authoring/Studio/Controls/WidgetControl.cpp b/src/Authoring/Studio/Controls/WidgetControl.cpp
deleted file mode 100644
index 207abed0..00000000
--- a/src/Authoring/Studio/Controls/WidgetControl.cpp
+++ /dev/null
@@ -1,243 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2017 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt 3D Studio.
-**
-** $QT_BEGIN_LICENSE:GPL-EXCEPT$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "WidgetControl.h"
-
-#include "Control.h"
-#include "DropSource.h"
-#include "IDragable.h"
-#include "OffscreenRenderer.h"
-#include "Pt.h"
-#include "Rct.h"
-#include "Qt3DSFile.h"
-
-#include <QtGui/qdrag.h>
-#include <QtGui/qevent.h>
-#include <QtGui/qpainter.h>
-#include <QtWidgets/qmenu.h>
-
-WidgetControl::WidgetControl(CControl *control, QWidget *parent)
- : QWidget(parent)
- , m_control(control)
-{
- Q_ASSERT(control);
- setControlSize(sizeHint());
-}
-
-WidgetControl::~WidgetControl()
-{
-}
-
-bool WidgetControl::event(QEvent *event)
-{
- if (event->type() == QEvent::ShortcutOverride) {
- QKeyEvent *ke = static_cast<QKeyEvent *>(event);
- if (ke->key() == Qt::Key_C && ke->modifiers() == Qt::ControlModifier)
- m_control->OnKeyDown(ke->key(), ke->modifiers());
- }
- return QWidget::event(event);
-}
-
-void WidgetControl::showEvent(QShowEvent *event)
-{
- QWidget::showEvent(event);
-}
-
-void WidgetControl::paintEvent(QPaintEvent *event)
-{
- QPainter painter(this);
- const auto boundRect = QRect(QPoint(0,0), size());
- CWinRenderer renderer(&painter, boundRect);
- CRct rect(event->rect());
- m_control->OnDraw(&renderer, rect, true);
-
- QWidget::paintEvent(event);
-}
-
-void WidgetControl::resizeEvent(QResizeEvent *event)
-{
- setControlSize(event->size());
- QWidget::resizeEvent(event);
-}
-
-void WidgetControl::keyPressEvent(QKeyEvent *event)
-{
- QWidget::keyPressEvent(event);
- m_control->OnKeyDown(event->key(), event->modifiers());
- m_control->OnChar(event->text(), event->modifiers());
-}
-
-void WidgetControl::keyReleaseEvent(QKeyEvent *event)
-{
- m_control->OnKeyUp(event->key(), event->modifiers());
- QWidget::keyReleaseEvent(event);
-}
-
-void WidgetControl::mousePressEvent(QMouseEvent *event)
-{
- const auto pos = CPt(event->pos());
- if (m_isLeftMouseDown)
- m_control->OnMouseUp(pos, event->modifiers());
-
- m_isLeftMouseDown = (event->button() == Qt::LeftButton);
- if (m_isLeftMouseDown)
- m_control->OnMouseDown(pos, event->modifiers());
- else
- m_control->OnMouseRDown(pos, event->modifiers());
-
- setFocus();
- QWidget::mousePressEvent(event);
-}
-
-void WidgetControl::mouseReleaseEvent(QMouseEvent *event)
-{
- const auto pos = CPt(event->pos());
- if (event->button() == Qt::LeftButton) {
- m_isLeftMouseDown = false;
- m_control->OnMouseUp(pos, event->modifiers());
- } else {
- m_control->OnMouseRUp(pos, event->modifiers());
- }
-
- QWidget::mouseReleaseEvent(event);
-}
-
-void WidgetControl::mouseMoveEvent(QMouseEvent *event)
-{
- m_control->OnMouseMove(event->pos(), event->modifiers());
- QWidget::mouseMoveEvent(event);
-}
-
-void WidgetControl::mouseDoubleClickEvent(QMouseEvent *event)
-{
- // call QWidget handler first to not deliver OnMouseDown after OnMouseDoubleClick
- QWidget::mouseDoubleClickEvent(event);
- m_control->OnMouseDoubleClick(event->pos(), event->modifiers());
-}
-
-void WidgetControl::wheelEvent(QWheelEvent *event)
-{
- m_control->OnMouseWheel(event->pos(), event->angleDelta().y(), event->modifiers());
- QWidget::wheelEvent(event);
-}
-
-void WidgetControl::enterEvent(QEvent *event)
-{
- setMouseTracking(true);
- m_control->OnMouseHover(mapFromGlobal(QCursor::pos()), {});
- QWidget::enterEvent(event);
-}
-
-void WidgetControl::leaveEvent(QEvent *event)
-{
- setMouseTracking(false);
- m_control->OnMouseOut(mapFromGlobal(QCursor::pos()), {});
- QWidget::leaveEvent(event);
-}
-
-void WidgetControl::focusInEvent(QFocusEvent *event)
-{
- m_control->OnGainFocus();
- QWidget::focusInEvent(event);
-}
-
-void WidgetControl::focusOutEvent(QFocusEvent *event)
-{
- if (!m_isContextMenuShown)
- m_control->OnLoseFocus();
- QWidget::focusOutEvent(event);
-}
-
-QSize WidgetControl::sizeHint() const
-{
- const auto preferredSize = m_control->GetPreferredSize();
- return QSize(preferredSize.x, preferredSize.y);
-}
-
-/*
- * CPaletteManager::GetTimelineControl() needs a way of accessing
- * the CControl inside the widget
- */
-CControl *WidgetControl::getControl() const
-{
- return m_control;
-}
-
-void WidgetControl::setControlSize(const QSize &size)
-{
- m_control->SetSize(size.width(), size.height());
-}
-
-bool WidgetControl::OnDragWithin(CDropSource &inSource)
-{
- bool theReturn = false;
- CPt thePoint = inSource.GetCurrentPoint();
- Qt::KeyboardModifiers theFlags = inSource.GetCurrentFlags();
- CDropTarget *theDropTarget = m_control->FindDropCandidate(
- thePoint, theFlags, static_cast<EStudioObjectType>(inSource.GetObjectType()),
- static_cast<Q3DStudio::DocumentEditorFileType::Enum>(inSource.getFileType()));
-
- if (theDropTarget) {
- theReturn = theDropTarget->Accept(inSource);
- delete theDropTarget;
- }
- return theReturn;
-}
-
-bool WidgetControl::OnDragReceive(CDropSource &inSource)
-{
- bool theReturn = false;
- CPt thePoint = inSource.GetCurrentPoint();
- Qt::KeyboardModifiers theFlags = inSource.GetCurrentFlags();
-
- CDropTarget *theDropTarget = m_control->FindDropCandidate(
- thePoint, theFlags, static_cast<EStudioObjectType>(inSource.GetObjectType()),
- static_cast<Q3DStudio::DocumentEditorFileType::Enum>(inSource.getFileType()));
-
- if (theDropTarget) {
- theReturn = theDropTarget->Drop(inSource);
- delete theDropTarget;
- }
- return theReturn;
-}
-
-void WidgetControl::OnDragLeave()
-{
- m_control->OnMouseMove(CPt(-1, -1), 0);
-}
-
-void WidgetControl::OnReflectMouse(CPt &inPoint, Qt::KeyboardModifiers inFlags)
-{
- // Notify the control that the mouse moved
- m_control->OnMouseMove(inPoint, inFlags /*CHotKeys::GetCurrentKeyModifiers( )*/);
-
- // If the control invalidated because of a mouse event then we want to do an immediate redraw.
- // this ensures consistent visible feedback.
- if (m_control->IsChildInvalidated())
- repaint();
-}