gui: add basic gui code.

This commit is contained in:
2025-06-15 14:31:54 +08:00
parent 72df3216a5
commit 7d123b2c06
40 changed files with 1483 additions and 12 deletions

42
Gui/GuiUtil/Public.cpp Normal file
View File

@@ -0,0 +1,42 @@
#include "Public.h"
#include <QFileDialog>
#include <QMessageBox>
void FTCommon::msg(QWidget* parent, const QString& content)
{
QMessageBox::information(parent, QObject::tr("prompt"), content);
}
bool FTCommon::affirm(QWidget* parent, const QString& titile, const QString& content)
{
QMessageBox questionBox(parent);
questionBox.setText(content);
questionBox.setWindowTitle(titile);
questionBox.setIcon(QMessageBox::Question);
questionBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
int result = questionBox.exec();
if (result != QMessageBox::Yes) {
return false;
} else {
return true;
}
}
QString FTCommon::select_file(QWidget* parent, const QString& info, const QString& filter)
{
QString filePath = QFileDialog::getOpenFileName(parent, info, QDir::homePath(), filter);
return filePath;
}
QString FTCommon::GetAppPath()
{
QString home = QDir::homePath();
QDir dir(home);
auto ret_path = dir.absoluteFilePath(".config/frelayGUI");
QDir d(ret_path);
if (!d.exists()) {
d.mkpath(ret_path);
}
return ret_path;
}

16
Gui/GuiUtil/Public.h Normal file
View File

@@ -0,0 +1,16 @@
#ifndef PUBLIC_H
#define PUBLIC_H
#include <QString>
#include <QWidget>
class FTCommon
{
public:
static void msg(QWidget* parent, const QString& content);
static bool affirm(QWidget* parent, const QString& titile, const QString& content);
static QString select_file(QWidget* parent, const QString& info, const QString& filter);
static QString GetAppPath();
};
#endif // PUBLIC_H