180 lines
5.8 KiB
C++
180 lines
5.8 KiB
C++
|
#include "frmProcessSetUp.h"
|
|||
|
#include <QMessageBox>
|
|||
|
#include <QTableWidgetItem>
|
|||
|
#include <QComboBox>
|
|||
|
#include <QDesktopWidget>
|
|||
|
#include "datavar.h"
|
|||
|
using namespace std;
|
|||
|
|
|||
|
frmProcessSetUp::frmProcessSetUp(QWidget*parent)
|
|||
|
: QDialog(parent)
|
|||
|
{
|
|||
|
ui.setupUi(this);
|
|||
|
this->setWindowIcon(QIcon(":/res/ico/process.png"));
|
|||
|
//FramelessWindowHint<6E><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD>߿<EFBFBD>
|
|||
|
//WindowMinimizeButtonHint <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD>
|
|||
|
this->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowMinimizeButtonHint);
|
|||
|
//<2F><><EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>м<EFBFBD>λ<EFBFBD><CEBB>
|
|||
|
QDesktopWidget* desktop = QApplication::desktop();
|
|||
|
move((desktop->width() - this->width()) / 2, (desktop->height() - this->height()) / 2);
|
|||
|
//<2F><><EFBFBD>ô<EFBFBD><C3B4>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><CDB8>
|
|||
|
setAttribute(Qt::WA_TranslucentBackground);
|
|||
|
//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
initTitleBar();
|
|||
|
form_load();
|
|||
|
}
|
|||
|
|
|||
|
frmProcessSetUp::~frmProcessSetUp()
|
|||
|
{
|
|||
|
this->deleteLater();
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::initTitleBar()
|
|||
|
{
|
|||
|
MyTitleBar* m_titleBar = new MyTitleBar(this);
|
|||
|
m_titleBar->move(0, 0);
|
|||
|
connect(m_titleBar, SIGNAL(signalButtonCloseClicked()), this, SLOT(onButtonCloseClicked()));
|
|||
|
m_titleBar->setBackgroundColor(3, 110, 95);
|
|||
|
m_titleBar->setStyleSheet("background-color: rgba(0, 0, 0,0);color:white;font-size:16px");
|
|||
|
m_titleBar->setTitleIcon(":/res/ico/process.png");
|
|||
|
m_titleBar->setTitleContent("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|||
|
m_titleBar->setButtonType(ONLY_CLOSE_BUTTON);
|
|||
|
m_titleBar->setTitleWidth(this->width());
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::paintEvent(QPaintEvent* event)
|
|||
|
{
|
|||
|
//<2F><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>ɫ
|
|||
|
QPainter painter(this);
|
|||
|
QPainterPath pathBack;
|
|||
|
pathBack.setFillRule(Qt::WindingFill);
|
|||
|
pathBack.addRoundedRect(QRect(0, 0, this->width(), this->height()), 3, 3);
|
|||
|
painter.setRenderHint(QPainter::SmoothPixmapTransform, true);
|
|||
|
painter.fillPath(pathBack, QBrush(QColor("#bcc2bc")));
|
|||
|
return QWidget::paintEvent(event);
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::form_load()
|
|||
|
{
|
|||
|
ui.txtProject->setFocus();
|
|||
|
//<2F><><EFBFBD><EFBFBD>List
|
|||
|
ItemModel = new QStandardItemModel(this);
|
|||
|
ui.listProcess->setEditTriggers(QAbstractItemView::NoEditTriggers); //<2F><>ֹ<EFBFBD>༭
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::onButtonCloseClicked()
|
|||
|
{
|
|||
|
//<2F>ź<EFBFBD><C5BA><EFBFBD><EFBFBD>۽<EFBFBD><DBBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
disconnect(ui.listProcess, SIGNAL(clicked(QModelIndex)), this, SLOT(slot_ListClick(QModelIndex)));
|
|||
|
this->close();
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::slot_CreateList()
|
|||
|
{
|
|||
|
//<2F><>ȡ<EFBFBD>ӿؼ<D3BF>
|
|||
|
objTabName = dataVar::fProItemTab->findChild<QTabWidget*>("ProItemTabWidget");
|
|||
|
int count = objTabName->count();
|
|||
|
//<2F><><EFBFBD><EFBFBD>List
|
|||
|
ItemModel->removeRows(0, ItemModel->rowCount());
|
|||
|
for (int i = 0; i < count; i++)
|
|||
|
{
|
|||
|
QStandardItem* item = new QStandardItem(objTabName->tabText(i));
|
|||
|
ItemModel->appendRow(item);
|
|||
|
}
|
|||
|
ui.listProcess->setModel(ItemModel);
|
|||
|
connect(ui.listProcess, SIGNAL(clicked(QModelIndex)), this, SLOT(slot_ListClick(QModelIndex)));
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::slot_ListClick(QModelIndex index)
|
|||
|
{
|
|||
|
index_process_modify = index.row();
|
|||
|
ui.txtProcess->setText(index.data().toString());
|
|||
|
str_name = index.data().toString();
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::slot_SetProject(QString str_name)
|
|||
|
{
|
|||
|
ui.txtProject->setText(str_name);
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::on_btnProjectModify_clicked()
|
|||
|
{
|
|||
|
if (ui.txtProject->text() == QString())
|
|||
|
{
|
|||
|
emit dataVar::fProItemTab->sig_WarnClick();
|
|||
|
emit dataVar::fProItemTab->sig_Log("<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>");
|
|||
|
QMessageBox msgBox(QMessageBox::Icon::NoIcon, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>");
|
|||
|
msgBox.setWindowIcon(QIcon(":/res/ico/warn.png"));
|
|||
|
msgBox.exec();
|
|||
|
return;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
emit dataVar::fProItemTab->sig_InfoClick();
|
|||
|
emit dataVar::fProItemTab->sig_Log("<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD>");
|
|||
|
dataVar::projectName = ui.txtProject->text();
|
|||
|
QMessageBox msgBox(QMessageBox::Icon::NoIcon, "<EFBFBD><EFBFBD>ʾ", "<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD>");
|
|||
|
msgBox.setWindowIcon(QIcon(":/res/ico/info.png"));
|
|||
|
msgBox.exec();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
void frmProcessSetUp::on_btnProcessModify_clicked()
|
|||
|
{
|
|||
|
//<2F><>ȡ<EFBFBD>ӿؼ<D3BF>
|
|||
|
objTabName = dataVar::fProItemTab->findChild<QTabWidget*>("ProItemTabWidget");
|
|||
|
int count = objTabName->count();
|
|||
|
for (int i = 0; i < count; i++)
|
|||
|
{
|
|||
|
if (ui.txtProcess->text() == objTabName->tabText(i))
|
|||
|
{
|
|||
|
emit dataVar::fProItemTab->sig_WarnClick();
|
|||
|
emit dataVar::fProItemTab->sig_Log("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>");
|
|||
|
QMessageBox msgBox(QMessageBox::Icon::NoIcon, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>");
|
|||
|
msgBox.setWindowIcon(QIcon(":/res/ico/warn.png"));
|
|||
|
msgBox.exec();
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
if (ui.txtProcess->text() == QString() || ui.txtProcess->text() == str_name)
|
|||
|
{
|
|||
|
emit dataVar::fProItemTab->sig_WarnClick();
|
|||
|
emit dataVar::fProItemTab->sig_Log("δѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>");
|
|||
|
QMessageBox msgBox(QMessageBox::Icon::NoIcon, "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "δѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>");
|
|||
|
msgBox.setWindowIcon(QIcon(":/res/ico/warn.png"));
|
|||
|
msgBox.exec();
|
|||
|
return;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
QString str_modify = ui.txtProcess->text();
|
|||
|
//<2F><EFBFBD>QListView<65><77><EFBFBD><EFBFBD>
|
|||
|
ItemModel->setItem(index_process_modify, new QStandardItem(str_modify));
|
|||
|
//<2F><EFBFBD>QTabWidget<65><74><EFBFBD><EFBFBD>
|
|||
|
objTabName = dataVar::fProItemTab->findChild<QTabWidget*>("ProItemTabWidget"); //<2F><>ȡ<EFBFBD>ӿؼ<D3BF>
|
|||
|
objTabName->setTabText(index_process_modify, str_modify);
|
|||
|
//<2F><EFBFBD>QTreeWidget<65><74><EFBFBD><EFBFBD>
|
|||
|
objTreeName = dataVar::fProItemTab->findChild<QTreeWidget*>("ProItemTreeWidget"); //<2F><>ȡ<EFBFBD>ӿؼ<D3BF>
|
|||
|
//<2F><><EFBFBD><EFBFBD>treeWidget
|
|||
|
QTreeWidgetItemIterator it(objTreeName);
|
|||
|
QString key_old_name;
|
|||
|
while (*it)
|
|||
|
{
|
|||
|
if ((*it)->child(index_process_modify))
|
|||
|
{
|
|||
|
key_old_name = (*it)->child(index_process_modify)->text(0);
|
|||
|
(*it)->child(index_process_modify)->setText(0, str_modify);
|
|||
|
connect(this, &frmProcessSetUp::sig_UpdateQTreeWidget, dataVar::fProItemTab, &frmProItemTab::slot_UpdateQTreeWidget);
|
|||
|
emit sig_UpdateQTreeWidget(key_old_name, str_modify);
|
|||
|
}
|
|||
|
++it;
|
|||
|
}
|
|||
|
disconnect(this, &frmProcessSetUp::sig_UpdateQTreeWidget, dataVar::fProItemTab, &frmProItemTab::slot_UpdateQTreeWidget);
|
|||
|
emit dataVar::fProItemTab->sig_InfoClick();
|
|||
|
emit dataVar::fProItemTab->sig_Log(key_old_name + " <20><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>" + str_modify);
|
|||
|
QMessageBox msgBox(QMessageBox::Icon::NoIcon, "<EFBFBD><EFBFBD>ʾ", "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD>");
|
|||
|
msgBox.setWindowIcon(QIcon(":/res/ico/info.png"));
|
|||
|
msgBox.exec();
|
|||
|
}
|
|||
|
}
|