#include #include "projectDiagramNameInput.h" #include "dataBase.h" #include "ui_projectDiagramNameInput.h" #include "titleBar.h" #include ProjectDiagramNameInput::ProjectDiagramNameInput(QWidget *parent) : QDialog(parent) ,ui(new Ui::projectDiagramNameInput) ,_model(nullptr) ,_pSizeGrip(nullptr) { ui->setupUi(this); this->setWindowFlags(Qt::FramelessWindowHint | windowFlags()); initial(); } ProjectDiagramNameInput::~ProjectDiagramNameInput() { } void ProjectDiagramNameInput::initial() { m_titleBar = new TitleBar(this); m_titleBar->setTitle("组态名称设置"); ui->verticalLayout->insertWidget(0,m_titleBar); _pSizeGrip = new QSizeGrip(this); _pSizeGrip->setFixedSize(12, 12); connect(ui->btn_ok,&QPushButton::clicked,this,&ProjectDiagramNameInput::onOkClicked); connect(ui->btn_cancel,&QPushButton::clicked,this,&ProjectDiagramNameInput::onCancelClicked); connect(ui->le_name,&QLineEdit::textEdited,this,&ProjectDiagramNameInput::onNameEdited); } void ProjectDiagramNameInput::onOkClicked() { if(DataBase::GetInstance()->getPageIdByName(ui->le_name->text()) == -1) { emit onGenerateClicked(ui->le_name->text()); hide(); } } void ProjectDiagramNameInput::onCancelClicked() { hide(); } void ProjectDiagramNameInput::onNameEdited(const QString& text) { if(_model) { if(DataBase::GetInstance()->getPageIdByName(text) == -1){ //不存在,可以创建 ui->label_info->setText("名称可用"); }else{ ui->label_info->setText("名称重复!"); } } } void ProjectDiagramNameInput::resizeEvent(QResizeEvent *) { _pSizeGrip->move(width() - _pSizeGrip->width(), height() - _pSizeGrip->height()); }