Save window geometry and state
This commit is contained in:
@@ -18,6 +18,7 @@
|
|||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include <linux/btrfs.h>
|
#include <linux/btrfs.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
|
#include <QSettings>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int MainWindow::socketPair[2] = {0, 0};
|
int MainWindow::socketPair[2] = {0, 0};
|
||||||
@@ -31,6 +32,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
|
|||||||
m_info = new ImageInfo(this);
|
m_info = new ImageInfo(this);
|
||||||
QDockWidget *infoDock = new QDockWidget(tr("Image info"), this);
|
QDockWidget *infoDock = new QDockWidget(tr("Image info"), this);
|
||||||
infoDock->setWidget(m_info);
|
infoDock->setWidget(m_info);
|
||||||
|
infoDock->setObjectName("infoDock");
|
||||||
addDockWidget(Qt::LeftDockWidgetArea, infoDock);
|
addDockWidget(Qt::LeftDockWidgetArea, infoDock);
|
||||||
m_image = new ImageScrollArea(this);
|
m_image = new ImageScrollArea(this);
|
||||||
setCentralWidget(m_image);
|
setCentralWidget(m_image);
|
||||||
@@ -39,6 +41,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
|
|||||||
PhotoCapture *photoCapture = new PhotoCapture(this);
|
PhotoCapture *photoCapture = new PhotoCapture(this);
|
||||||
QDockWidget *captureDock = new QDockWidget(tr("Photo capture"), this);
|
QDockWidget *captureDock = new QDockWidget(tr("Photo capture"), this);
|
||||||
captureDock->setWidget(photoCapture);
|
captureDock->setWidget(photoCapture);
|
||||||
|
captureDock->setObjectName("captureDock");
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, captureDock);
|
addDockWidget(Qt::BottomDockWidgetArea, captureDock);
|
||||||
|
|
||||||
setWindowTitle(tr("Tenmon"));
|
setWindowTitle(tr("Tenmon"));
|
||||||
@@ -106,6 +109,9 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
|
|||||||
menuBar()->addMenu(dockMenu);
|
menuBar()->addMenu(dockMenu);
|
||||||
|
|
||||||
setupSigterm();
|
setupSigterm();
|
||||||
|
QSettings settings;
|
||||||
|
restoreGeometry(settings.value("mainwindow/geometry").toByteArray());
|
||||||
|
restoreState(settings.value("mainwindow/state").toByteArray());
|
||||||
}
|
}
|
||||||
|
|
||||||
MainWindow::~MainWindow()
|
MainWindow::~MainWindow()
|
||||||
@@ -169,6 +175,14 @@ void MainWindow::signalHandler(int)
|
|||||||
::write(socketPair[0], &a, sizeof(a));
|
::write(socketPair[0], &a, sizeof(a));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::closeEvent(QCloseEvent *event)
|
||||||
|
{
|
||||||
|
QSettings settings;
|
||||||
|
settings.setValue("mainwindow/geometry", saveGeometry());
|
||||||
|
settings.setValue("mainwindow/state", saveState());
|
||||||
|
QMainWindow::closeEvent(event);
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::socketNotify()
|
void MainWindow::socketNotify()
|
||||||
{
|
{
|
||||||
socketNotifier->setEnabled(false);
|
socketNotifier->setEnabled(false);
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ protected:
|
|||||||
void keyReleaseEvent(QKeyEvent *event);
|
void keyReleaseEvent(QKeyEvent *event);
|
||||||
void setupSigterm();
|
void setupSigterm();
|
||||||
static void signalHandler(int);
|
static void signalHandler(int);
|
||||||
|
void closeEvent(QCloseEvent *event);
|
||||||
protected slots:
|
protected slots:
|
||||||
void socketNotify();
|
void socketNotify();
|
||||||
void updateWindowTitle();
|
void updateWindowTitle();
|
||||||
|
|||||||
Reference in New Issue
Block a user