DiagramDesigner/diagramCavas/source/diagramEditor/editScene.cpp

59 lines
1.4 KiB
C++

#include "diagramEditor/editScene.h"
#include <QGraphicsSceneContextMenuEvent>
#include <QMenu>
#include <QAction>
#include "graphicsDataModel/diagramEditorModel.h"
#include "diagramEditor/editPanel.h"
EditBaseScene::EditBaseScene(QObject *parent)
: QGraphicsScene(parent)
{
}
EditBaseScene::~EditBaseScene()
{
}
/************************editor主界面*********************/
EditScene::EditScene(QObject *parent)
: EditBaseScene(parent)
{
}
EditScene::~EditScene()
{
}
void EditScene::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)
{
QMenu menu;
QAction *previewAction = menu.addAction("预览");
QAction *generateAction = menu.addAction("生成");
QAction *setting = menu.addAction("打开设置");
QAction *selectedAction = menu.exec(event->screenPos());
if (selectedAction == previewAction) {
if(_pModel){
//_pModel->setCurPreviewScene(this);
_pModel->generatePreview();
_pModel->calculateBlockPos();
_pModel->setItemInBlockPos();
_pModel->refreshConnection();
}
} else if (selectedAction == generateAction) {
_pModel->getPanel()->generate();
}else if (selectedAction == setting) {
_pModel->getPanel()->showWizard();
}
}
/************************预览*********************/
EditPreviewScene::EditPreviewScene(QObject *parent)
: EditBaseScene(parent)
{
}
EditPreviewScene::~EditPreviewScene()
{
}