Allow to reset dockwidget settings/margins

* changed name to object name
* reset to defaults possible
This commit is contained in:
Klaus Basan
2016-06-20 01:07:33 +02:00
parent 30b9900ea3
commit 44bfcc2d9c
4 changed files with 73 additions and 29 deletions

View File

@@ -20,6 +20,20 @@ namespace BlackGui
CSettingsDockWidget::CSettingsDockWidget()
{ }
void CSettingsDockWidget::resetMarginsToDefault()
{
// this->setMarginsWhenFloating(QMargins(0, 3, 15, 35)); // found by trial and error on windows
this->setMarginsWhenFloating(QMargins(0, 0, 0, 0));
this->setMarginsWhenFramelessFloating(QMargins(0, 0, 0, 0));
this->setMarginsWhenDocked(QMargins(0, 0, 0, 0));
}
void CSettingsDockWidget::reset()
{
this->resetMarginsToDefault();
this->m_geometry = "";
}
void CSettingsDockWidget::setMarginsWhenFramelessFloating(const QMargins &margins)
{
this->m_floatingFramelessMargins = marginsToString(margins);
@@ -161,9 +175,17 @@ namespace BlackGui
// default values can be set here, this could be enhanced if needed
// e.g. by platform dependent defaults
s.setMarginsWhenFloating(QMargins(0, 3, 15, 35)); // found by trial and error on windows
s.reset();
this->insert(name, s);
return s;
}
void CSettingsDockWidgets::resetToDefaults(const QString &name)
{
if (this->contains(name))
{
this->remove(name);
}
}
} // ns
} // ns

View File

@@ -47,6 +47,12 @@ namespace BlackGui
//! Destructor.
~CSettingsDockWidget() {}
//! Reset margins to default
void resetMarginsToDefault();
//! Reset to defaults
void reset();
//! Set margins for given dock widget
void setMarginsWhenFramelessFloating(const QMargins &margins);
@@ -137,6 +143,9 @@ namespace BlackGui
//! Get setting or init by estimated default values
CSettingsDockWidget getByNameOrInitToDefault(const QString &name);
//! Reset to defaults
void resetToDefaults(const QString &name);
};
//! Trait for settings for dock widget