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);