Inform a user about options those require restart to take effect.
--HG-- branch : develop
This commit is contained in:
parent
368c3a871a
commit
a68da11776
|
@ -33,7 +33,6 @@
|
|||
|
||||
#include <QDir>
|
||||
#include <QDirIterator>
|
||||
#include <QMessageBox>
|
||||
#include <QTimer>
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
|
@ -121,8 +120,9 @@ PreferencesConfigurationPage::~PreferencesConfigurationPage()
|
|||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
void PreferencesConfigurationPage::Apply()
|
||||
QStringList PreferencesConfigurationPage::Apply()
|
||||
{
|
||||
QStringList preferences;
|
||||
VSettings *settings = qApp->ValentinaSettings();
|
||||
settings->SetAutosaveState(ui->autoSaveCheck->isChecked());
|
||||
settings->SetAutosaveTime(ui->autoTime->value());
|
||||
|
@ -153,9 +153,7 @@ void PreferencesConfigurationPage::Apply()
|
|||
const QString unit = qvariant_cast<QString>(ui->unitCombo->currentData());
|
||||
settings->SetUnit(unit);
|
||||
m_unitChanged = false;
|
||||
const QString text = tr("The Default unit has been updated and will be used as the default for the next "
|
||||
"pattern you create.");
|
||||
QMessageBox::information(this, QCoreApplication::applicationName(), text);
|
||||
preferences.append(tr("default unit"));
|
||||
}
|
||||
if (m_labelLangChanged)
|
||||
{
|
||||
|
@ -163,6 +161,7 @@ void PreferencesConfigurationPage::Apply()
|
|||
settings->SetLabelLanguage(locale);
|
||||
m_labelLangChanged = false;
|
||||
}
|
||||
return preferences;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
|
|
|
@ -44,7 +44,7 @@ public:
|
|||
explicit PreferencesConfigurationPage(QWidget *parent = nullptr);
|
||||
virtual ~PreferencesConfigurationPage();
|
||||
|
||||
void Apply();
|
||||
QStringList Apply();
|
||||
protected:
|
||||
virtual void changeEvent(QEvent* event) Q_DECL_OVERRIDE;
|
||||
private:
|
||||
|
|
|
@ -55,7 +55,7 @@ PreferencesPathPage::~PreferencesPathPage()
|
|||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
void PreferencesPathPage::Apply()
|
||||
QStringList PreferencesPathPage::Apply()
|
||||
{
|
||||
VSettings *settings = qApp->ValentinaSettings();
|
||||
settings->SetPathIndividualMeasurements(ui->pathTable->item(0, 1)->text());
|
||||
|
@ -64,6 +64,8 @@ void PreferencesPathPage::Apply()
|
|||
settings->SetPathLayout(ui->pathTable->item(3, 1)->text());
|
||||
settings->SetPathTemplate(ui->pathTable->item(4, 1)->text());
|
||||
settings->SetPathLabelTemplate(ui->pathTable->item(5, 1)->text());
|
||||
|
||||
return QStringList(); // No changes those require restart.
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
|
|
|
@ -44,7 +44,7 @@ public:
|
|||
explicit PreferencesPathPage(QWidget *parent = nullptr);
|
||||
virtual ~PreferencesPathPage();
|
||||
|
||||
void Apply();
|
||||
QStringList Apply();
|
||||
|
||||
private slots:
|
||||
void DefaultPath();
|
||||
|
|
|
@ -113,13 +113,29 @@ PreferencesPatternPage::~PreferencesPatternPage()
|
|||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
void PreferencesPatternPage::Apply()
|
||||
QStringList PreferencesPatternPage::Apply()
|
||||
{
|
||||
QStringList preferences;
|
||||
|
||||
VSettings *settings = qApp->ValentinaSettings();
|
||||
|
||||
// Scene antialiasing
|
||||
if (settings->GetGraphicalOutput() != ui->graphOutputCheck->isChecked())
|
||||
{
|
||||
if (qApp->getSceneView()->IsOpenGLRender())
|
||||
{
|
||||
preferences.append(tr("antialiasing"));
|
||||
}
|
||||
|
||||
settings->SetGraphicalOutput(ui->graphOutputCheck->isChecked());
|
||||
}
|
||||
|
||||
if (settings->IsOpenGLRender() != ui->checkBoxOpenGLRender->isChecked())
|
||||
{
|
||||
preferences.append(tr("scene render"));
|
||||
settings->SetOpenGLRender(ui->checkBoxOpenGLRender->isChecked());
|
||||
}
|
||||
|
||||
settings->SetCurveApproximationScale(ui->doubleSpinBoxCurveApproximation->value());
|
||||
settings->SetLineWidth(UnitConvertor(ui->doubleSpinBoxLineWidth->value(), m_oldLineUnit, Unit::Mm));
|
||||
qApp->getSceneView()->SetAntialiasing(ui->graphOutputCheck->isChecked());
|
||||
|
@ -149,6 +165,8 @@ void PreferencesPatternPage::Apply()
|
|||
|
||||
settings->SetKnownMaterials(m_knownMaterials);
|
||||
settings->SetRememberPatternMaterials(ui->checkBoxRemeberPatternMaterials->isChecked());
|
||||
|
||||
return preferences;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
|
|
|
@ -47,7 +47,7 @@ public:
|
|||
explicit PreferencesPatternPage(QWidget *parent = nullptr);
|
||||
virtual ~PreferencesPatternPage();
|
||||
|
||||
void Apply();
|
||||
QStringList Apply();
|
||||
void InitDefaultSeamAllowance();
|
||||
|
||||
private slots:
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
#include "configpages/preferencespatternpage.h"
|
||||
#include "configpages/preferencespathpage.h"
|
||||
|
||||
#include <QMessageBox>
|
||||
#include <QPushButton>
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
|
@ -122,9 +123,19 @@ void DialogPreferences::PageChanged(QListWidgetItem *current, QListWidgetItem *p
|
|||
//---------------------------------------------------------------------------------------------------------------------
|
||||
void DialogPreferences::Apply()
|
||||
{
|
||||
m_configurePage->Apply();
|
||||
m_patternPage->Apply();
|
||||
m_pathPage->Apply();
|
||||
QStringList preferences;
|
||||
|
||||
preferences += m_configurePage->Apply();
|
||||
preferences += m_patternPage->Apply();
|
||||
preferences += m_pathPage->Apply();
|
||||
|
||||
if (not preferences.isEmpty())
|
||||
{
|
||||
const QString text = tr("Followed %n option(s) require restart to take effect: %1.", "",
|
||||
preferences.size()).arg(preferences.join(", "));
|
||||
QMessageBox::information(this, QCoreApplication::applicationName(), text);
|
||||
}
|
||||
|
||||
|
||||
m_patternPage->InitDefaultSeamAllowance();
|
||||
|
||||
|
|
|
@ -633,8 +633,24 @@ void VMainGraphicsView::SetAntialiasing(bool value)
|
|||
{
|
||||
setRenderHint(QPainter::Antialiasing, value);
|
||||
setRenderHint(QPainter::SmoothPixmapTransform, value);
|
||||
}
|
||||
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
bool VMainGraphicsView::IsOpenGLRender() const
|
||||
{
|
||||
#if QT_VERSION >= QT_VERSION_CHECK(5, 4, 0)
|
||||
QOpenGLWidget *viewport = qobject_cast<QOpenGLWidget *>(this->viewport());
|
||||
#else
|
||||
QGLWidget *viewport = qobject_cast<QGLWidget *>(this->viewport());
|
||||
#endif
|
||||
if (viewport)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------------------------
|
||||
|
|
|
@ -132,6 +132,8 @@ public:
|
|||
|
||||
void SetAntialiasing(bool value);
|
||||
|
||||
bool IsOpenGLRender() const;
|
||||
|
||||
signals:
|
||||
/**
|
||||
* @brief MouseRelease help catch mouse release event.
|
||||
|
|
Loading…
Reference in New Issue
Block a user