DiagramDesigner/diagramCavas/source/diagramEditor/diagramEditorTransPreviewDl...

55 lines
1.7 KiB
C++

#include "diagramEditor/diagramEditorTransPreviewDlg.h"
#include "diagramEditor/diagramEditorTransDetailSettingDlg.h"
#include "diagramEditor/editView.h"
#include "diagramEditor/editScene.h"
#include "graphicsDataModel/diagramEditorModel.h"
#include "global.h"
DiagramEditorTransPreviewDlg::DiagramEditorTransPreviewDlg(QWidget *parent)
: QDialog(parent)
,_pView(nullptr)
,_pScene(nullptr)
,_pMainLayout(nullptr)
,_pParent(nullptr)
{
QRect recParent = parent->geometry();
setGeometry(recParent.right(),recParent.y(),recParent.width(),recParent.height());
initial();
}
DiagramEditorTransPreviewDlg::~DiagramEditorTransPreviewDlg()
{
}
void DiagramEditorTransPreviewDlg::initial()
{
_pMainLayout = new QVBoxLayout(this);
_pView = new EditView(this);
_pMainLayout->addWidget(_pView);
_pScene = new EditPreviewScene(this);
_pScene->setSceneRect(-g_dGriaphicsScene_Width / 2, -g_dGriaphicsScene_Height / 2, g_dGriaphicsScene_Width, g_dGriaphicsScene_Height);
_pView->setScene(_pScene);
}
void DiagramEditorTransPreviewDlg::showDlg(int nType)
{
if(_pParent){
_pParent->getModel()->setCurPreviewScene(_pScene);
}
show();
updateModelData(nType);
}
void DiagramEditorTransPreviewDlg::updateModelData(int nType)
{
if(nType == 0 || nType == 1 || nType == 2){
_pParent->getModel()->updateTarget(_pParent->getRouteMaps()[nType],14,1); //1右2下
}
else if(nType == 3){ //整个变压器
_pParent->getModel()->updateTarget(_pParent->getRouteMaps()[0],18,1); //1右2上
_pParent->getModel()->updateTarget(_pParent->getRouteMaps()[1],14,1); //1右2下
_pParent->getModel()->updateTarget(_pParent->getRouteMaps()[2],24,1); //1左2下
}
}