Browse Source

save/restore status of the splitter

pull/183/head
krepa098 11 years ago
parent
commit
6bb85c65b8
  1. 2
      mainwindow.ui
  2. 12
      settings.cpp
  3. 4
      settings.h
  4. 6
      widget/widget.cpp

2
mainwindow.ui

@ -225,7 +225,7 @@ @@ -225,7 +225,7 @@
</widget>
</item>
<item>
<widget class="QSplitter" name="centralWidget">
<widget class="QSplitter" name="mainSplitter">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>

12
settings.cpp

@ -106,6 +106,7 @@ void Settings::load() @@ -106,6 +106,7 @@ void Settings::load()
useNativeDecoration = s.value("nativeDecoration", true).toBool();
windowGeometry = s.value("windowGeometry", QByteArray()).toByteArray();
windowState = s.value("windowState", QByteArray()).toByteArray();
splitterState = s.value("splitterState", QByteArray()).toByteArray();
s.endGroup();
s.beginGroup("Privacy");
@ -166,6 +167,7 @@ void Settings::save(QString path) @@ -166,6 +167,7 @@ void Settings::save(QString path)
s.setValue("nativeDecoration", useNativeDecoration);
s.setValue("windowGeometry", windowGeometry);
s.setValue("windowState", windowState);
s.setValue("splitterState", splitterState);
s.endGroup();
s.beginGroup("Privacy");
@ -383,6 +385,16 @@ void Settings::setWindowState(const QByteArray &value) @@ -383,6 +385,16 @@ void Settings::setWindowState(const QByteArray &value)
windowState = value;
}
QByteArray Settings::getSplitterState() const
{
return splitterState;
}
void Settings::setSplitterState(const QByteArray &value)
{
splitterState = value;
}
bool Settings::isMinimizeOnCloseEnabled() const
{
return minimizeOnClose;

4
settings.h

@ -124,6 +124,9 @@ public: @@ -124,6 +124,9 @@ public:
QByteArray getWindowState() const;
void setWindowState(const QByteArray &value);
QByteArray getSplitterState() const;
void setSplitterState(const QByteArray &value);
private:
Settings();
Settings(Settings &settings) = delete;
@ -163,6 +166,7 @@ private: @@ -163,6 +166,7 @@ private:
bool useNativeDecoration;
QByteArray windowGeometry;
QByteArray windowState;
QByteArray splitterState;
// ChatView
int firstColumnHandlePos;

6
widget/widget.cpp

@ -55,6 +55,7 @@ Widget::Widget(QWidget *parent) @@ -55,6 +55,7 @@ Widget::Widget(QWidget *parent)
//restore window state
restoreGeometry(Settings::getInstance().getWindowGeometry());
restoreState(Settings::getInstance().getWindowState());
ui->mainSplitter->restoreState(Settings::getInstance().getSplitterState());
if (Settings::getInstance().getUseNativeDecoration())
{
@ -147,8 +148,8 @@ Widget::Widget(QWidget *parent) @@ -147,8 +148,8 @@ Widget::Widget(QWidget *parent)
//ui->friendList->viewport()->installEventFilter(this);
// disable proportional scaling
ui->centralWidget->setStretchFactor(0,0);
ui->centralWidget->setStretchFactor(1,1);
ui->mainSplitter->setStretchFactor(0,0);
ui->mainSplitter->setStretchFactor(1,1);
ui->statusButton->setObjectName("offline");
ui->statusButton->style()->polish(ui->statusButton);
@ -253,6 +254,7 @@ void Widget::closeEvent(QCloseEvent *event) @@ -253,6 +254,7 @@ void Widget::closeEvent(QCloseEvent *event)
{
Settings::getInstance().setWindowGeometry(saveGeometry());
Settings::getInstance().setWindowState(saveState());
Settings::getInstance().setSplitterState(ui->mainSplitter->saveState());
QWidget::closeEvent(event);
}

Loading…
Cancel
Save