From 1384cf3c217a0e0cffae3dba1ab86c4ddb9ac079 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D1=8B=D1=87=D0=BA=D0=BE=D0=B2=20=D0=90=D0=BD=D0=B4?= =?UTF-8?q?=D1=80=D0=B5=D0=B9?= Date: Mon, 25 May 2020 11:49:49 +0300 Subject: [PATCH] add default session path --- qad/CMakeLists.txt | 6 +++--- qad/widgets/session_manager.cpp | 27 +++++++++++++++++---------- qad/widgets/session_manager.h | 3 +-- 3 files changed, 21 insertions(+), 15 deletions(-) diff --git a/qad/CMakeLists.txt b/qad/CMakeLists.txt index 5fb0ea8..d9575a8 100644 --- a/qad/CMakeLists.txt +++ b/qad/CMakeLists.txt @@ -2,9 +2,9 @@ cmake_minimum_required(VERSION 3.0) cmake_policy(SET CMP0017 NEW) # need include() with .cmake project(qad) set(_QAD_MAJOR 1) -set(_QAD_MINOR 2) -set(_QAD_REVISION 1) -set(_QAD_SUFFIX beta) +set(_QAD_MINOR 3) +set(_QAD_REVISION 0) +set(_QAD_SUFFIX alpha) set(_QAD_COMPANY SHS) set(_QAD_DOMAIN org.SHS) diff --git a/qad/widgets/session_manager.cpp b/qad/widgets/session_manager.cpp index 065bcdb..e05d830 100644 --- a/qad/widgets/session_manager.cpp +++ b/qad/widgets/session_manager.cpp @@ -7,6 +7,15 @@ # include #endif #include "session_manager.h" +#include "qad_locations.h" + + +SessionManager::SessionManager(QString file) { + if (file.isEmpty() && !QCoreApplication::applicationName().isEmpty()) { + file = QAD::userPath(QAD::ltConfig, "session"); + } + setFile(file); +} void SessionManager::setFile(const QString & file) { @@ -34,7 +43,10 @@ void SessionManager::removeMainWidget(QWidget * e) { void SessionManager::save() { - if (file_.isEmpty()) return; + if (file_.isEmpty()) { + qDebug() << "[SessionManager] filename is empty"; + return; + } QPIConfig sr(file_); QObjectList tsc; for (int i = 0; i < mwindows.size(); ++i) { @@ -137,19 +149,14 @@ void restoreWindowState(QWidget * w, QPIConfig & sr, QString name) { srect.y() + (srect.height() - w->height()) / 2, w->width(), w->height()); } - /*if (w->windowState().testFlag(Qt::WindowMaximized)) { - foreach (QScreen * s, sl) { - if (s->geometry().contains(w->geometry())) { - //w->setGeometry(s->availableGeometry()); - break; - } - } - }*/ } void SessionManager::load(bool onlyMainwindow) { - if (file_.isEmpty()) return; + if (file_.isEmpty()) { + qDebug() << "[SessionManager] filename is empty"; + return; + } QPIConfig sr(file_); QObjectList tsc; for (int i = 0; i < mwindows.size(); ++i) { diff --git a/qad/widgets/session_manager.h b/qad/widgets/session_manager.h index faf058b..d788b2c 100644 --- a/qad/widgets/session_manager.h +++ b/qad/widgets/session_manager.h @@ -47,8 +47,7 @@ class QAD_EXPORT SessionManager: public QObject { Q_OBJECT public: - SessionManager(const QString & file = QString()) {setFile(file);} - ~SessionManager() {;} + SessionManager(QString file = QString()); void setFile(const QString & file);