增加返回确认界面以及相关操作,修改创建时处理逻辑

This commit is contained in:
KevinDuan 2023-09-07 15:52:10 +08:00
parent 3b849c38cc
commit 919a0afcc4
8 changed files with 99 additions and 3 deletions

View File

@ -17,6 +17,7 @@ DEFINES += QT_DEPRECATED_WARNINGS
SOURCES += \
src/bridge.cpp \
src/cacheconfirmedwidget.cpp \
src/cursorthemefeature.cpp \
src/cursorthemewidget.cpp \
src/fileprocess.cpp \
@ -33,6 +34,7 @@ SOURCES += \
HEADERS += \
src/bridge.h \
src/cacheconfirmedwidget.h \
src/cursorthemefeature.h \
src/cursorthemewidget.h \
src/fileprocess.h \

View File

@ -0,0 +1,35 @@
#include "cacheconfirmedwidget.h"
cacheConfirmedWidget::cacheConfirmedWidget(QWidget *parent)
: QWidget(parent)
{
this->setFixedSize(424,172);
this->setWindowModality(Qt::ApplicationModal);
m_cacheConfirmedWidget = new QVBoxLayout;
m_questionMessage = new QLabel();
m_questionMessage->setText("是否保存?");
m_saveCache = new QPushButton();
m_cleanCache = new QPushButton();
m_saveCache->setText("保存");
m_cleanCache->setText("清除");
m_cacheConfirmedBtn = new QHBoxLayout();
m_cacheConfirmedBtn->addWidget(m_saveCache);
m_cacheConfirmedBtn->addWidget(m_cleanCache);
m_cacheConfirmedWidget->addWidget(m_questionMessage);
m_cacheConfirmedWidget->addLayout(m_cacheConfirmedBtn);
this->setLayout(m_cacheConfirmedWidget);
QObject::connect(m_saveCache,&QPushButton::clicked,this,[=](){
emit cacheSave();
this->close();
});
QObject::connect(m_cleanCache,&QPushButton::clicked,this,[=](){
FileProcess m_fileClean;
m_fileClean.FileClean(FileProcess::g_date);
emit cacheClean();
this->close();
});
}

View File

@ -0,0 +1,31 @@
#ifndef CACHECONFIRMEDWIDGET_H
#define CACHECONFIRMEDWIDGET_H
#include <QObject>
#include <QWidget>
#include <QLabel>
#include <QPushButton>
#include <QHBoxLayout>
#include <QVBoxLayout>
#include "fileprocess.h"
class cacheConfirmedWidget : public QWidget
{
Q_OBJECT
public:
explicit cacheConfirmedWidget(QWidget *parent = nullptr);
signals:
void cacheSave();
void cacheClean();
private:
QVBoxLayout *m_cacheConfirmedWidget;
QLabel *m_questionMessage;
QHBoxLayout *m_cacheConfirmedBtn;
QPushButton *m_saveCache;
QPushButton *m_cleanCache;
};
#endif // CACHECONFIRMEDWIDGET_H

View File

@ -68,3 +68,8 @@ QString FileProcess::FileCreate(const QString &m_themeType){
return g_date;
}
void FileProcess::FileClean(const QString &m_date){
QDir m_datePath = QDir::homePath() + "/.cache/theme-build/" + m_date;
m_datePath.removeRecursively();
}

View File

@ -16,6 +16,8 @@ public:
QMap<QString, QVariant> FileSearch(const QString &m_date);
QString FileCreate(const QString &themes);
void FileClean(const QString &m_date);
static QString g_date;
private:

View File

@ -98,8 +98,16 @@ void InfoCreateWidget::InitInfoBtn(const QString &m_state){
m_recogniseBtn->setEnabled(false);
m_createDebBtn->setHidden(true);
} else if(m_state == "create"){
m_recogniseBtn->setHidden(true);
m_createDebBtn->setHidden(false);
if (m_builderNameLineEdit->text() != nullptr && m_themeNameENLineEdit->text() != nullptr
&& m_builderMailLineEdit->text() != nullptr ){
m_recogniseBtn->setHidden(true);
m_createDebBtn->setHidden(false);
m_createDebBtn->setEnabled(true);
} else {
m_recogniseBtn->setHidden(true);
m_createDebBtn->setHidden(false);
m_createDebBtn->setEnabled(false);
}
} else {
qDebug() << m_state;
}

View File

@ -7,6 +7,7 @@
#include "cursorthemewidget.h"
#include "infocreatewidget.h"
#include "titlebar.h"
#include "cacheconfirmedwidget.h"
#include <QWidget>
#include <QPushButton>

View File

@ -94,7 +94,19 @@ void MainWindow::initUI()
void MainWindow::onGoHomeClicked()
{
m_stackedWidget->setCurrentIndex(0);
if (FileProcess::g_date != nullptr){
cacheConfirmedWidget *m_cacheConfirmedWidget = new cacheConfirmedWidget();
m_cacheConfirmedWidget->show();
connect(m_cacheConfirmedWidget, &cacheConfirmedWidget::cacheClean, this, [=](){
m_stackedWidget->setCurrentIndex(0);
});
connect(m_cacheConfirmedWidget, &cacheConfirmedWidget::cacheSave, this, [=](){
m_stackedWidget->setCurrentIndex(0);
});
} else {
m_stackedWidget->setCurrentIndex(0);
}
}
void EntryButton::setEntry(const QIcon &icon, const QString &text)