Refactoring VPuzzleGraphicsLayout
This commit is contained in:
parent
9e532edc1a
commit
e43f970ea8
|
@ -11,8 +11,8 @@ SOURCES += \
|
||||||
$$PWD/vpcarrouselpiecepreview.cpp \
|
$$PWD/vpcarrouselpiecepreview.cpp \
|
||||||
$$PWD/vpcommandline.cpp \
|
$$PWD/vpcommandline.cpp \
|
||||||
$$PWD/vpcommands.cpp \
|
$$PWD/vpcommands.cpp \
|
||||||
|
$$PWD/vpgraphicssheet.cpp \
|
||||||
$$PWD/vpmainwindow.cpp \
|
$$PWD/vpmainwindow.cpp \
|
||||||
$$PWD/vpuzzlegraphicslayout.cpp \
|
|
||||||
$$PWD/vpuzzlegraphicspiece.cpp \
|
$$PWD/vpuzzlegraphicspiece.cpp \
|
||||||
$$PWD/vpuzzlelayout.cpp \
|
$$PWD/vpuzzlelayout.cpp \
|
||||||
$$PWD/vpuzzlelayer.cpp \
|
$$PWD/vpuzzlelayer.cpp \
|
||||||
|
@ -35,9 +35,9 @@ HEADERS += \
|
||||||
$$PWD/vpcarrouselpiecepreview.h \
|
$$PWD/vpcarrouselpiecepreview.h \
|
||||||
$$PWD/vpcommandline.h \
|
$$PWD/vpcommandline.h \
|
||||||
$$PWD/vpcommands.h \
|
$$PWD/vpcommands.h \
|
||||||
|
$$PWD/vpgraphicssheet.h \
|
||||||
$$PWD/vpmainwindow.h \
|
$$PWD/vpmainwindow.h \
|
||||||
$$PWD/vpstable.h \
|
$$PWD/vpstable.h \
|
||||||
$$PWD/vpuzzlegraphicslayout.h \
|
|
||||||
$$PWD/vpuzzlegraphicspiece.h \
|
$$PWD/vpuzzlegraphicspiece.h \
|
||||||
$$PWD/vpuzzlelayout.h \
|
$$PWD/vpuzzlelayout.h \
|
||||||
$$PWD/vpuzzlelayer.h \
|
$$PWD/vpuzzlelayer.h \
|
||||||
|
|
|
@ -256,7 +256,7 @@ void VPCarrouselPiece::contextMenuEvent(QContextMenuEvent *event)
|
||||||
QVariant data = QVariant::fromValue(layer);
|
QVariant data = QVariant::fromValue(layer);
|
||||||
moveToLayer->setData(data);
|
moveToLayer->setData(data);
|
||||||
|
|
||||||
connect(moveToLayer, &QAction::triggered, this, &VPCarrouselPiece::on_ActionPieceMovedToLayer);
|
connect(moveToLayer, &QAction::triggered, this, &VPCarrouselPiece::on_ActionPieceMovedToPieceList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -266,14 +266,14 @@ void VPCarrouselPiece::contextMenuEvent(QContextMenuEvent *event)
|
||||||
QAction *removeAction = contextMenu.addAction(tr("Remove from Layout"));
|
QAction *removeAction = contextMenu.addAction(tr("Remove from Layout"));
|
||||||
QVariant data = QVariant::fromValue(m_piece->GetLayer()->GetLayout()->GetUnplacedPiecesLayer());
|
QVariant data = QVariant::fromValue(m_piece->GetLayer()->GetLayout()->GetUnplacedPiecesLayer());
|
||||||
removeAction->setData(data);
|
removeAction->setData(data);
|
||||||
connect(removeAction, &QAction::triggered, this, &VPCarrouselPiece::on_ActionPieceMovedToLayer);
|
connect(removeAction, &QAction::triggered, this, &VPCarrouselPiece::on_ActionPieceMovedToPieceList);
|
||||||
}
|
}
|
||||||
|
|
||||||
contextMenu.exec(event->globalPos());
|
contextMenu.exec(event->globalPos());
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
void VPCarrouselPiece::on_ActionPieceMovedToLayer()
|
void VPCarrouselPiece::on_ActionPieceMovedToPieceList()
|
||||||
{
|
{
|
||||||
QAction *act = qobject_cast<QAction *>(sender());
|
QAction *act = qobject_cast<QAction *>(sender());
|
||||||
QVariant v = act->data();
|
QVariant v = act->data();
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/************************************************************************
|
/************************************************************************
|
||||||
**
|
**
|
||||||
** @file vpuzzlegraphicslayout.cpp
|
** @file vpgraphicssheet.cpp
|
||||||
** @author Ronan Le Tiec
|
** @author Ronan Le Tiec
|
||||||
** @date 3 5, 2020
|
** @date 3 5, 2020
|
||||||
**
|
**
|
||||||
|
@ -26,10 +26,10 @@
|
||||||
**
|
**
|
||||||
*************************************************************************/
|
*************************************************************************/
|
||||||
|
|
||||||
#include "vpuzzlegraphicslayout.h"
|
#include "vpgraphicssheet.h"
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
VPuzzleGraphicsLayout::VPuzzleGraphicsLayout(VPuzzleLayout *layout, QGraphicsItem *parent):
|
VPGraphicsSheet::VPGraphicsSheet(VPuzzleLayout *layout, QGraphicsItem *parent):
|
||||||
QGraphicsItem(parent),
|
QGraphicsItem(parent),
|
||||||
m_layout(layout),
|
m_layout(layout),
|
||||||
m_boundingRect(GetLayoutRect())
|
m_boundingRect(GetLayoutRect())
|
||||||
|
@ -38,13 +38,13 @@ VPuzzleGraphicsLayout::VPuzzleGraphicsLayout(VPuzzleLayout *layout, QGraphicsIte
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
VPuzzleGraphicsLayout::~VPuzzleGraphicsLayout()
|
VPGraphicsSheet::~VPGraphicsSheet()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
void VPuzzleGraphicsLayout::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
|
void VPGraphicsSheet::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
|
||||||
{
|
{
|
||||||
Q_UNUSED(widget);
|
Q_UNUSED(widget);
|
||||||
Q_UNUSED(option);
|
Q_UNUSED(option);
|
||||||
|
@ -66,14 +66,14 @@ void VPuzzleGraphicsLayout::paint(QPainter *painter, const QStyleOptionGraphicsI
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
QRectF VPuzzleGraphicsLayout::GetLayoutRect() const
|
QRectF VPGraphicsSheet::GetLayoutRect() const
|
||||||
{
|
{
|
||||||
QRectF rect = QRectF(QPointF(0,0), m_layout->GetLayoutSize());
|
QRectF rect = QRectF(QPointF(0,0), m_layout->GetLayoutSize());
|
||||||
return rect;
|
return rect;
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
QRectF VPuzzleGraphicsLayout::GetMarginsRect() const
|
QRectF VPGraphicsSheet::GetMarginsRect() const
|
||||||
{
|
{
|
||||||
QMarginsF margins = m_layout->GetLayoutMargins();
|
QMarginsF margins = m_layout->GetLayoutMargins();
|
||||||
QSizeF size = m_layout->GetLayoutSize();
|
QSizeF size = m_layout->GetLayoutSize();
|
||||||
|
@ -86,7 +86,7 @@ QRectF VPuzzleGraphicsLayout::GetMarginsRect() const
|
||||||
|
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
QRectF VPuzzleGraphicsLayout::boundingRect() const
|
QRectF VPGraphicsSheet::boundingRect() const
|
||||||
{
|
{
|
||||||
return m_boundingRect;
|
return m_boundingRect;
|
||||||
}
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
/************************************************************************
|
/************************************************************************
|
||||||
**
|
**
|
||||||
** @file vpuzzlegraphicslayout.h
|
** @file vpgraphicssheet.h
|
||||||
** @author Ronan Le Tiec
|
** @author Ronan Le Tiec
|
||||||
** @date 3 5, 2020
|
** @date 3 5, 2020
|
||||||
**
|
**
|
||||||
|
@ -26,19 +26,19 @@
|
||||||
**
|
**
|
||||||
*************************************************************************/
|
*************************************************************************/
|
||||||
|
|
||||||
#ifndef VPUZZLEGRAPHICSLAYOUT_H
|
#ifndef VPGRAPHICSSHEET_H
|
||||||
#define VPUZZLEGRAPHICSLAYOUT_H
|
#define VPGRAPHICSSHEET_H
|
||||||
|
|
||||||
#include <QGraphicsItem>
|
#include <QGraphicsItem>
|
||||||
#include <QPainter>
|
#include <QPainter>
|
||||||
|
|
||||||
#include "vpuzzlelayout.h"
|
#include "vpuzzlelayout.h"
|
||||||
|
|
||||||
class VPuzzleGraphicsLayout : public QGraphicsItem
|
class VPGraphicsSheet : public QGraphicsItem
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit VPuzzleGraphicsLayout(VPuzzleLayout *layout, QGraphicsItem *parent = nullptr);
|
explicit VPGraphicsSheet(VPuzzleLayout *layout, QGraphicsItem *parent = nullptr);
|
||||||
~VPuzzleGraphicsLayout();
|
~VPGraphicsSheet();
|
||||||
|
|
||||||
QRectF boundingRect() const override;
|
QRectF boundingRect() const override;
|
||||||
void paint(QPainter *painter, const QStyleOptionGraphicsItem *item, QWidget *widget) override;
|
void paint(QPainter *painter, const QStyleOptionGraphicsItem *item, QWidget *widget) override;
|
||||||
|
@ -49,10 +49,10 @@ public:
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Q_DISABLE_COPY(VPuzzleGraphicsLayout)
|
Q_DISABLE_COPY(VPGraphicsSheet)
|
||||||
|
|
||||||
VPuzzleLayout *m_layout{nullptr};
|
VPuzzleLayout *m_layout{nullptr};
|
||||||
QRectF m_boundingRect;
|
QRectF m_boundingRect;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // VPUZZLEGRAPHICSLAYOUT_H
|
#endif // VPGRAPHICSSHEET_H
|
|
@ -52,7 +52,7 @@ Q_LOGGING_CATEGORY(pWindow, "p.window")
|
||||||
QT_WARNING_POP
|
QT_WARNING_POP
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
VPMainWindow::VPMainWindow(const VPuzzleCommandLinePtr &cmd, QWidget *parent) :
|
VPMainWindow::VPMainWindow(const VPCommandLinePtr &cmd, QWidget *parent) :
|
||||||
QMainWindow(parent),
|
QMainWindow(parent),
|
||||||
ui(new Ui::VPMainWindow),
|
ui(new Ui::VPMainWindow),
|
||||||
m_cmd(cmd)
|
m_cmd(cmd)
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
#include "vpuzzlelayout.h"
|
#include "vpuzzlelayout.h"
|
||||||
#include "vpuzzlepiece.h"
|
#include "vpuzzlepiece.h"
|
||||||
#include "../vlayout/vlayoutpiece.h"
|
#include "../vlayout/vlayoutpiece.h"
|
||||||
#include "vpuzzlecommandline.h"
|
#include "vpcommandline.h"
|
||||||
|
|
||||||
namespace Ui
|
namespace Ui
|
||||||
{
|
{
|
||||||
|
@ -50,7 +50,7 @@ class VPMainWindow : public QMainWindow
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit VPMainWindow(const VPuzzleCommandLinePtr &cmd, QWidget *parent = nullptr);
|
explicit VPMainWindow(const VPCommandLinePtr &cmd, QWidget *parent = nullptr);
|
||||||
virtual ~VPMainWindow();
|
virtual ~VPMainWindow();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -93,7 +93,7 @@ private:
|
||||||
VPCarrousel *m_carrousel{nullptr};
|
VPCarrousel *m_carrousel{nullptr};
|
||||||
VPuzzleMainGraphicsView *m_graphicsView{nullptr};
|
VPuzzleMainGraphicsView *m_graphicsView{nullptr};
|
||||||
|
|
||||||
VPuzzleCommandLinePtr m_cmd;
|
VPCommandLinePtr m_cmd;
|
||||||
|
|
||||||
VPuzzleLayout *m_layout{nullptr};
|
VPuzzleLayout *m_layout{nullptr};
|
||||||
QList<VPuzzlePiece *>m_selectedPieces{QList<VPuzzlePiece *>()};
|
QList<VPuzzlePiece *>m_selectedPieces{QList<VPuzzlePiece *>()};
|
||||||
|
|
|
@ -49,9 +49,9 @@ VPuzzleMainGraphicsView::VPuzzleMainGraphicsView(VPuzzleLayout *layout, QWidget
|
||||||
m_scene = new VMainGraphicsScene(this);
|
m_scene = new VMainGraphicsScene(this);
|
||||||
setScene(m_scene);
|
setScene(m_scene);
|
||||||
|
|
||||||
m_graphicsLayout = new VPuzzleGraphicsLayout(layout);
|
m_graphicsSheet = new VPGraphicsSheet(layout);
|
||||||
m_graphicsLayout->setPos(0, 0);
|
m_graphicsSheet->setPos(0, 0);
|
||||||
m_scene->addItem(m_graphicsLayout);
|
m_scene->addItem(m_graphicsSheet);
|
||||||
|
|
||||||
setAcceptDrops(true);
|
setAcceptDrops(true);
|
||||||
|
|
||||||
|
@ -66,7 +66,7 @@ void VPuzzleMainGraphicsView::RefreshLayout()
|
||||||
{
|
{
|
||||||
// FIXME: Is that the way to go?
|
// FIXME: Is that the way to go?
|
||||||
|
|
||||||
m_graphicsLayout->update();
|
m_graphicsSheet->update();
|
||||||
|
|
||||||
m_scene->update();
|
m_scene->update();
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
#ifndef VPUZZLEMAINGRAPHICSVIEW_H
|
#ifndef VPUZZLEMAINGRAPHICSVIEW_H
|
||||||
#define VPUZZLEMAINGRAPHICSVIEW_H
|
#define VPUZZLEMAINGRAPHICSVIEW_H
|
||||||
|
|
||||||
#include "vpuzzlegraphicslayout.h"
|
#include "vpgraphicssheet.h"
|
||||||
#include "vpuzzlegraphicspiece.h"
|
#include "vpuzzlegraphicspiece.h"
|
||||||
#include "../vwidgets/vmaingraphicsview.h"
|
#include "../vwidgets/vmaingraphicsview.h"
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ private:
|
||||||
|
|
||||||
VMainGraphicsScene *m_scene{nullptr};
|
VMainGraphicsScene *m_scene{nullptr};
|
||||||
|
|
||||||
VPuzzleGraphicsLayout *m_graphicsLayout{nullptr};
|
VPGraphicsSheet *m_graphicsSheet{nullptr};
|
||||||
VPuzzleLayout *m_layout{nullptr};
|
VPuzzleLayout *m_layout{nullptr};
|
||||||
|
|
||||||
QList<VPuzzleGraphicsPiece*> m_graphicsPieces{};
|
QList<VPuzzleGraphicsPiece*> m_graphicsPieces{};
|
||||||
|
|
Loading…
Reference in New Issue
Block a user