Files
Renderive/YSGraphic_Core/Qt/File_Tool.h
T
2026-06-16 13:33:27 +08:00

37 lines
857 B
C++

#pragma once
#include "Message.h"
#include <QDesktopServices>
#include <QFileDialog>
#include <QFileInfo>
#include <QFile>
#include <QDateTime>
#include <QHBoxLayout>
#include <QLabel>
#include <QLineEdit>
#include <QPushButton>
#include <QUrl>
#include <QWidget>
#include "global.h"
namespace Psc {
class File_Tool : public QWidget {
Q_OBJECT
public:
enum class Mode { OpenFile, SaveFile, Directory };
explicit File_Tool(const QString& title = {}, Mode mode = Mode::OpenFile, QWidget *parent = nullptr);
void set_title(const QString& t);
[[nodiscard]] QString path() const;
void set_path(const QString &p);
signals:
void path_changed(const QString &);
private:
Mode mode_;
QLabel* title_label{};
QLineEdit *path_edit{};
QPushButton *browse_btn{};
QPushButton *clear_btn{};
QPushButton *backup_clear_btn{};
};
} // namespace Psc