git-svn-id: svn://db.shs.com.ru/libs@93 a8b55f48-bf90-11e4-a774-851b48703e85
This commit is contained in:
@@ -30,6 +30,10 @@ void SessionManager::save() {
|
|||||||
foreach (QSplitter * s, sp)
|
foreach (QSplitter * s, sp)
|
||||||
sr.setValue(mwindows[i].first + " splitter " + s->objectName(), s->saveState(), false);
|
sr.setValue(mwindows[i].first + " splitter " + s->objectName(), s->saveState(), false);
|
||||||
}
|
}
|
||||||
|
for (int i = 0; i < widgets.size(); ++i) {
|
||||||
|
sr.setValue(widgets[i].first + " geometry " + QString::number((int)widgets[i].second->windowState()), widgets[i].second->saveGeometry(), false);
|
||||||
|
sr.setValue(widgets[i].first + " window state", (int)widgets[i].second->windowState(), false);
|
||||||
|
}
|
||||||
for (int i = 0; i < checks.size(); ++i)
|
for (int i = 0; i < checks.size(); ++i)
|
||||||
sr.setValue(checks[i].first, checks[i].second->isChecked(), false);
|
sr.setValue(checks[i].first, checks[i].second->isChecked(), false);
|
||||||
for (int i = 0; i < lines.size(); ++i)
|
for (int i = 0; i < lines.size(); ++i)
|
||||||
@@ -40,6 +44,8 @@ void SessionManager::save() {
|
|||||||
sr.setValue(dspins[i].first, dspins[i].second->value(), false);
|
sr.setValue(dspins[i].first, dspins[i].second->value(), false);
|
||||||
for (int i = 0; i < spins.size(); ++i)
|
for (int i = 0; i < spins.size(); ++i)
|
||||||
sr.setValue(spins[i].first, spins[i].second->value(), false);
|
sr.setValue(spins[i].first, spins[i].second->value(), false);
|
||||||
|
for (int i = 0; i < spinsliders.size(); ++i)
|
||||||
|
sr.setValue(spinsliders[i].first, spinsliders[i].second->value(), false);
|
||||||
for (int i = 0; i < tabs.size(); ++i)
|
for (int i = 0; i < tabs.size(); ++i)
|
||||||
sr.setValue(tabs[i].first, tabs[i].second->currentIndex(), false);
|
sr.setValue(tabs[i].first, tabs[i].second->currentIndex(), false);
|
||||||
for (int i = 0; i < actions.size(); ++i)
|
for (int i = 0; i < actions.size(); ++i)
|
||||||
@@ -72,6 +78,10 @@ void SessionManager::load(bool onlyMainwindow) {
|
|||||||
foreach (QSplitter * s, sp)
|
foreach (QSplitter * s, sp)
|
||||||
s->restoreState(sr.getValue(mwindows[i].first + " splitter " + s->objectName(), QByteArray()));
|
s->restoreState(sr.getValue(mwindows[i].first + " splitter " + s->objectName(), QByteArray()));
|
||||||
}
|
}
|
||||||
|
for (int i = 0; i < widgets.size(); ++i) {
|
||||||
|
widgets[i].second->restoreGeometry(sr.getValue(widgets[i].first + " geometry " + QString::number((int)widgets[i].second->windowState()), QByteArray()));
|
||||||
|
widgets[i].second->setWindowState((Qt::WindowState)(int)sr.getValue(widgets[i].first + " window state", 0));
|
||||||
|
}
|
||||||
if (onlyMainwindow) return;
|
if (onlyMainwindow) return;
|
||||||
for (int i = 0; i < checks.size(); ++i)
|
for (int i = 0; i < checks.size(); ++i)
|
||||||
checks[i].second->setChecked(sr.getValue(checks[i].first, checks[i].second->isChecked()));
|
checks[i].second->setChecked(sr.getValue(checks[i].first, checks[i].second->isChecked()));
|
||||||
@@ -83,6 +93,8 @@ void SessionManager::load(bool onlyMainwindow) {
|
|||||||
dspins[i].second->setValue(sr.getValue(dspins[i].first, dspins[i].second->value()));
|
dspins[i].second->setValue(sr.getValue(dspins[i].first, dspins[i].second->value()));
|
||||||
for (int i = 0; i < spins.size(); ++i)
|
for (int i = 0; i < spins.size(); ++i)
|
||||||
spins[i].second->setValue(sr.getValue(spins[i].first, spins[i].second->value()));
|
spins[i].second->setValue(sr.getValue(spins[i].first, spins[i].second->value()));
|
||||||
|
for (int i = 0; i < spinsliders.size(); ++i)
|
||||||
|
spinsliders[i].second->setValue(sr.getValue(spinsliders[i].first, spinsliders[i].second->value()));
|
||||||
for (int i = 0; i < tabs.size(); ++i)
|
for (int i = 0; i < tabs.size(); ++i)
|
||||||
tabs[i].second->setCurrentIndex(sr.getValue(tabs[i].first, tabs[i].second->currentIndex()));
|
tabs[i].second->setCurrentIndex(sr.getValue(tabs[i].first, tabs[i].second->currentIndex()));
|
||||||
for (int i = 0; i < actions.size(); ++i)
|
for (int i = 0; i < actions.size(); ++i)
|
||||||
|
|||||||
@@ -28,6 +28,7 @@
|
|||||||
#include <QComboBox>
|
#include <QComboBox>
|
||||||
#include <QTabWidget>
|
#include <QTabWidget>
|
||||||
#include <QSplitter>
|
#include <QSplitter>
|
||||||
|
#include "spinslider.h"
|
||||||
#include "qpiconfig.h"
|
#include "qpiconfig.h"
|
||||||
|
|
||||||
class SessionManager: public QObject
|
class SessionManager: public QObject
|
||||||
@@ -45,8 +46,10 @@ public:
|
|||||||
inline void addEntry(QComboBox * e) {combos.push_back(QPair<QString, QComboBox * >(e->objectName(), e));}
|
inline void addEntry(QComboBox * e) {combos.push_back(QPair<QString, QComboBox * >(e->objectName(), e));}
|
||||||
inline void addEntry(QDoubleSpinBox * e) {dspins.push_back(QPair<QString, QDoubleSpinBox * >(e->objectName(), e));}
|
inline void addEntry(QDoubleSpinBox * e) {dspins.push_back(QPair<QString, QDoubleSpinBox * >(e->objectName(), e));}
|
||||||
inline void addEntry(QSpinBox * e) {spins.push_back(QPair<QString, QSpinBox * >(e->objectName(), e));}
|
inline void addEntry(QSpinBox * e) {spins.push_back(QPair<QString, QSpinBox * >(e->objectName(), e));}
|
||||||
|
inline void addEntry(SpinSlider * e) {spinsliders.push_back(QPair<QString, SpinSlider * >(e->objectName(), e));}
|
||||||
inline void addEntry(QTabWidget * e) {tabs.push_back(QPair<QString, QTabWidget * >(e->objectName(), e));}
|
inline void addEntry(QTabWidget * e) {tabs.push_back(QPair<QString, QTabWidget * >(e->objectName(), e));}
|
||||||
inline void addEntry(QAction * e) {actions.push_back(QPair<QString, QAction * >(e->objectName(), e));}
|
inline void addEntry(QAction * e) {actions.push_back(QPair<QString, QAction * >(e->objectName(), e));}
|
||||||
|
inline void addMainWidget(QWidget * e) {widgets.push_back(QPair<QString, QWidget * >(e->objectName(), e));}
|
||||||
|
|
||||||
inline void addEntry(const QString & name, QMainWindow * e) {mwindows.push_back(QPair<QString, QMainWindow * >(name, e));}
|
inline void addEntry(const QString & name, QMainWindow * e) {mwindows.push_back(QPair<QString, QMainWindow * >(name, e));}
|
||||||
inline void addEntry(const QString & name, QCheckBox * e) {checks.push_back(QPair<QString, QCheckBox * >(name, e));}
|
inline void addEntry(const QString & name, QCheckBox * e) {checks.push_back(QPair<QString, QCheckBox * >(name, e));}
|
||||||
@@ -54,6 +57,7 @@ public:
|
|||||||
inline void addEntry(const QString & name, QComboBox * e) {combos.push_back(QPair<QString, QComboBox * >(name, e));}
|
inline void addEntry(const QString & name, QComboBox * e) {combos.push_back(QPair<QString, QComboBox * >(name, e));}
|
||||||
inline void addEntry(const QString & name, QDoubleSpinBox * e) {dspins.push_back(QPair<QString, QDoubleSpinBox * >(name, e));}
|
inline void addEntry(const QString & name, QDoubleSpinBox * e) {dspins.push_back(QPair<QString, QDoubleSpinBox * >(name, e));}
|
||||||
inline void addEntry(const QString & name, QSpinBox * e) {spins.push_back(QPair<QString, QSpinBox * >(name, e));}
|
inline void addEntry(const QString & name, QSpinBox * e) {spins.push_back(QPair<QString, QSpinBox * >(name, e));}
|
||||||
|
inline void addEntry(const QString & name, SpinSlider * e) {spinsliders.push_back(QPair<QString, SpinSlider * >(name, e));}
|
||||||
inline void addEntry(const QString & name, QTabWidget * e) {tabs.push_back(QPair<QString, QTabWidget * >(name, e));}
|
inline void addEntry(const QString & name, QTabWidget * e) {tabs.push_back(QPair<QString, QTabWidget * >(name, e));}
|
||||||
inline void addEntry(const QString & name, QAction * e) {actions.push_back(QPair<QString, QAction * >(name, e));}
|
inline void addEntry(const QString & name, QAction * e) {actions.push_back(QPair<QString, QAction * >(name, e));}
|
||||||
inline void addEntry(const QString & name, QStringList * e) {stringlists.push_back(QPair<QString, QStringList * >(name, e));}
|
inline void addEntry(const QString & name, QStringList * e) {stringlists.push_back(QPair<QString, QStringList * >(name, e));}
|
||||||
@@ -62,17 +66,20 @@ public:
|
|||||||
inline void addEntry(const QString & name, bool * e) {bools.push_back(QPair<QString, bool * >(name, e));}
|
inline void addEntry(const QString & name, bool * e) {bools.push_back(QPair<QString, bool * >(name, e));}
|
||||||
inline void addEntry(const QString & name, int * e) {ints.push_back(QPair<QString, int * >(name, e));}
|
inline void addEntry(const QString & name, int * e) {ints.push_back(QPair<QString, int * >(name, e));}
|
||||||
inline void addEntry(const QString & name, float * e) {floats.push_back(QPair<QString, float * >(name, e));}
|
inline void addEntry(const QString & name, float * e) {floats.push_back(QPair<QString, float * >(name, e));}
|
||||||
|
inline void addMainWidget(const QString & name, QWidget * e) {widgets.push_back(QPair<QString, QWidget * >(name, e));}
|
||||||
|
|
||||||
void save();
|
void save();
|
||||||
void load(bool onlyMainwindow = false);
|
void load(bool onlyMainwindow = false);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QVector<QPair<QString, QMainWindow * > > mwindows;
|
QVector<QPair<QString, QMainWindow * > > mwindows;
|
||||||
|
QVector<QPair<QString, QWidget * > > widgets;
|
||||||
QVector<QPair<QString, QCheckBox * > > checks;
|
QVector<QPair<QString, QCheckBox * > > checks;
|
||||||
QVector<QPair<QString, QLineEdit * > > lines;
|
QVector<QPair<QString, QLineEdit * > > lines;
|
||||||
QVector<QPair<QString, QComboBox * > > combos;
|
QVector<QPair<QString, QComboBox * > > combos;
|
||||||
QVector<QPair<QString, QDoubleSpinBox * > > dspins;
|
QVector<QPair<QString, QDoubleSpinBox * > > dspins;
|
||||||
QVector<QPair<QString, QSpinBox * > > spins;
|
QVector<QPair<QString, QSpinBox * > > spins;
|
||||||
|
QVector<QPair<QString, SpinSlider * > > spinsliders;
|
||||||
QVector<QPair<QString, QTabWidget * > > tabs;
|
QVector<QPair<QString, QTabWidget * > > tabs;
|
||||||
QVector<QPair<QString, QAction * > > actions;
|
QVector<QPair<QString, QAction * > > actions;
|
||||||
QVector<QPair<QString, QStringList * > > stringlists;
|
QVector<QPair<QString, QStringList * > > stringlists;
|
||||||
|
|||||||
Reference in New Issue
Block a user