View: Save/restore splitter state
[pulseview.git] / pv / view / view.cpp
index d9b02353adaf708f04ea47b2ad4b4cc1112d7bb0..f3afd937795104d18768ca65089091819a5e351e 100644 (file)
@@ -155,7 +155,7 @@ View::View(Session &session, bool is_main_view, QWidget *parent) :
        ruler_ = new Ruler(*this);
 
        header_ = new Header(*this);
-       header_->setMinimumWidth(15);  // So that the arrow tips show at least
+       header_->setMinimumWidth(10);  // So that the arrow tips show at least
 
        // We put the header into a simple layout so that we can add the top margin,
        // allowing us to make it line up with the bottom of the ruler
@@ -300,6 +300,8 @@ void View::save_settings(QSettings &settings) const
        settings.setValue("v_offset",
                scrollarea_->verticalScrollBar()->sliderPosition());
 
+       settings.setValue("splitter_state", splitter_->saveState());
+
        stringstream ss;
        boost::archive::text_oarchive oa(ss);
        oa << boost::serialization::make_nvp("offset", offset_);
@@ -331,6 +333,9 @@ void View::restore_settings(QSettings &settings)
                set_offset(offset);
        }
 
+       if (settings.contains("splitter_state"))
+               splitter_->restoreState(settings.value("splitter_state").toByteArray());
+
        for (shared_ptr<Signal> signal : signals_) {
                settings.beginGroup(signal->base()->internal_name());
                signal->restore_settings(settings);