This repository was archived by the owner on Jul 19, 2026. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsettings_dialog.h
More file actions
95 lines (76 loc) · 2.17 KB
/
Copy pathsettings_dialog.h
File metadata and controls
95 lines (76 loc) · 2.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/*
* Renamifier's settings dialog.
* Copyright (c) 2026 Benjamin Johnson
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef SETTINGS_DIALOG_H
#define SETTINGS_DIALOG_H
#include <QObject>
#include <QString>
#include <QDialog>
#include <QGridLayout>
#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QGroupBox>
#include <QLabel>
#include <QLineEdit>
#include <QPushButton>
class PathEdit;
class SettingsDialog : public QDialog
{
Q_OBJECT
public:
SettingsDialog(QWidget *parent);
public slots:
void accept();
private:
QVBoxLayout *mainLayout;
QGroupBox *helperGroupBox;
QGridLayout *helperLayout;
QLabel *gsLabel;
PathEdit *gsPathEdit;
QLabel *gxpsLabel;
PathEdit *gxpsPathEdit;
QHBoxLayout *buttonLayout;
QPushButton *buttonOK;
QPushButton *buttonCancel;
void createHelperSettings();
void createButtons();
void loadSettings();
void saveSettings();
};
class PathEdit : public QWidget
{
Q_OBJECT
public:
PathEdit(QWidget *parent);
QString path() const { return lineEdit->text(); }
public slots:
inline void setDir(const QString &dir) { m_dir = dir; }
inline void setFilter(const QString &filter) { m_filter = filter; }
inline void setPath(const QString &path) { lineEdit->setText(path); }
private:
QHBoxLayout *layout;
QLineEdit *lineEdit;
QPushButton *browseButton;
QString m_dir;
QString m_filter;
private slots:
void browse();
signals:
void returnPressed();
};
#endif /* SETTINGS_DIALOG_H */