|
15 | 15 | #include <QColorDialog> |
16 | 16 | #include <QTextStream> |
17 | 17 | #include <QMimeData> |
| 18 | +#include <QSettings> |
18 | 19 | #include "pixel_annotation_tool_version.h" |
19 | 20 |
|
20 | 21 | #include "about_dialog.h" |
@@ -88,6 +89,35 @@ MainWindow::MainWindow(QWidget *parent, Qt::WindowFlags flags) |
88 | 89 | list_label->setEnabled(false); |
89 | 90 |
|
90 | 91 | setAcceptDrops(true); |
| 92 | + readSettings(); |
| 93 | +} |
| 94 | + |
| 95 | +void MainWindow::writeSettings() |
| 96 | +{ |
| 97 | + QSettings settings(QSettings::UserScope); |
| 98 | + |
| 99 | + settings.setValue("window/size", size()); |
| 100 | + settings.setValue("window/pos", pos()); |
| 101 | + settings.setValue("pen_size", spinbox_pen_size->value()); |
| 102 | + settings.setValue("alpha", spinbox_alpha->value()); |
| 103 | + settings.setValue("scale", spinbox_scale->value()); |
| 104 | +} |
| 105 | + |
| 106 | +void MainWindow::readSettings() |
| 107 | +{ |
| 108 | + QSettings settings(QSettings::UserScope); |
| 109 | + |
| 110 | + resize(settings.value("window/size", QSize(1511, 967)).toSize()); |
| 111 | + move(settings.value("window/pos", QPoint(0, 0)).toPoint()); |
| 112 | + spinbox_pen_size->setValue(settings.value("pen_size", QVariant(30)).toInt()); |
| 113 | + spinbox_alpha->setValue(settings.value("alpha", QVariant(0.4)).toDouble()); |
| 114 | + spinbox_scale->setValue(settings.value("scale", QVariant(1.0)).toDouble()); |
| 115 | +} |
| 116 | + |
| 117 | +void MainWindow::closeEvent(QCloseEvent *event) |
| 118 | +{ |
| 119 | + writeSettings(); |
| 120 | + event->accept(); |
91 | 121 | } |
92 | 122 |
|
93 | 123 | void MainWindow::dragEnterEvent(QDragEnterEvent *e) { |
|
0 commit comments