From c2aef0b738506a7fe07d2f966dc91d4fd57e4de7 Mon Sep 17 00:00:00 2001 From: Jim Evins Date: Thu, 31 Mar 2016 21:41:19 -0400 Subject: [PATCH] Track all three paper size search flags in settings. --- glabels/PreferencesDialog.cpp | 18 ---- glabels/PreferencesDialog.h | 1 - glabels/SelectProductDialog.cpp | 19 +++-- glabels/SelectProductDialog.h | 2 +- glabels/Settings.cpp | 131 ++++++++++++++++++++++-------- glabels/Settings.h | 12 ++- glabels/ui/PreferencesDialog.ui | 61 +------------- glabels/ui/SelectProductDialog.ui | 106 ++++++++++++------------ 8 files changed, 173 insertions(+), 177 deletions(-) diff --git a/glabels/PreferencesDialog.cpp b/glabels/PreferencesDialog.cpp index eedf4ee..d6ab019 100644 --- a/glabels/PreferencesDialog.cpp +++ b/glabels/PreferencesDialog.cpp @@ -49,15 +49,6 @@ PreferencesDialog::PreferencesDialog( QWidget *parent ) unitsPointsRadio->setChecked( true ); break; } - - if ( Settings::preferIsoPaperSizes() ) - { - preferedPaperSizesIsoRadio->setChecked( true ); - } - else - { - preferedPaperSizesUsRadio->setChecked( true ); - } } @@ -87,12 +78,3 @@ void PreferencesDialog::onUnitsRadiosChanged() Settings::setUnits( glabels::Distance::Units::PT ); } } - - -/// -/// Prefered Paper Sizes Radios Changed -/// -void PreferencesDialog::onPreferedPaperSizesRadiosChanged() -{ - Settings::setPreferIsoPaperSizes( preferedPaperSizesIsoRadio->isChecked() ); -} diff --git a/glabels/PreferencesDialog.h b/glabels/PreferencesDialog.h index c8091ea..2a0fc1f 100644 --- a/glabels/PreferencesDialog.h +++ b/glabels/PreferencesDialog.h @@ -44,7 +44,6 @@ public: ///////////////////////////////// private slots: void onUnitsRadiosChanged(); - void onPreferedPaperSizesRadiosChanged(); }; diff --git a/glabels/SelectProductDialog.cpp b/glabels/SelectProductDialog.cpp index c9e0134..77900d4 100644 --- a/glabels/SelectProductDialog.cpp +++ b/glabels/SelectProductDialog.cpp @@ -20,10 +20,11 @@ #include "SelectProductDialog.h" -#include - #include "libglabels/Db.h" #include "TemplatePickerItem.h" +#include "Settings.h" + +#include /// @@ -34,11 +35,9 @@ SelectProductDialog::SelectProductDialog( QWidget *parent ) { setupUi( this ); - // TODO: Set default based on locale and/or saved preferences - // Perhaps move to checkboxes - pageSizeIsoCheck->setChecked( false ); - pageSizeUsCheck->setChecked( true ); - pageSizeOtherCheck->setChecked( true ); + pageSizeIsoCheck->setChecked( Settings::searchIsoPaperSizes() ); + pageSizeUsCheck->setChecked( Settings::searchUsPaperSizes() ); + pageSizeOtherCheck->setChecked( Settings::searchOtherPaperSizes() ); QList tmplates = glabels::Db::templates(); templatePicker->setTemplates( tmplates ); @@ -89,8 +88,12 @@ void SelectProductDialog::onSearchClearButtonClicked() /// /// Page Size Check Toggled Slot /// -void SelectProductDialog::onPageSizeCheckToggled() +void SelectProductDialog::onPageSizeCheckClicked() { + Settings::setSearchIsoPaperSizes( pageSizeIsoCheck->isChecked() ); + Settings::setSearchUsPaperSizes( pageSizeUsCheck->isChecked() ); + Settings::setSearchOtherPaperSizes( pageSizeOtherCheck->isChecked() ); + templatePicker->applyFilter( searchEntry->text(), pageSizeIsoCheck->isChecked(), pageSizeUsCheck->isChecked(), diff --git a/glabels/SelectProductDialog.h b/glabels/SelectProductDialog.h index b4540d9..14a9dd0 100644 --- a/glabels/SelectProductDialog.h +++ b/glabels/SelectProductDialog.h @@ -51,7 +51,7 @@ public: private slots: void onSearchEntryTextChanged(); void onSearchClearButtonClicked(); - void onPageSizeCheckToggled(); + void onPageSizeCheckClicked(); void onTemplatePickerSelectionChanged(); void onSelectButtonClicked(); void onCancelButtonClicked(); diff --git a/glabels/Settings.cpp b/glabels/Settings.cpp index aa2d8d1..a6dbb90 100644 --- a/glabels/Settings.cpp +++ b/glabels/Settings.cpp @@ -49,41 +49,6 @@ Settings* Settings::instance() } -bool Settings::preferIsoPaperSizes() -{ - // Guess at a suitable default - bool defaultValue; - switch (QLocale::system().country()) - { - case QLocale::UnitedStates: - case QLocale::Canada: - defaultValue = false; - break; - - default: - defaultValue = true; - break; - } - - mInstance->beginGroup( "Locale" ); - bool returnValue = mInstance->value( "preferIsoPaperSizes", defaultValue ).toBool(); - mInstance->endGroup(); - - return returnValue; -} - - -void Settings::setPreferIsoPaperSizes( bool preferIsoPaperSizes ) -{ - - mInstance->beginGroup( "Locale" ); - mInstance->setValue( "preferIsoPaperSizes", preferIsoPaperSizes ); - mInstance->endGroup(); - - emit mInstance->changed(); -} - - glabels::Distance::Units Settings::units() { // Guess at a suitable default @@ -115,3 +80,99 @@ void Settings::setUnits( glabels::Distance::Units units ) emit mInstance->changed(); } + + +bool Settings::searchIsoPaperSizes() +{ + // Guess at a suitable default + bool defaultValue; + switch (QLocale::system().country()) + { + case QLocale::UnitedStates: + case QLocale::Canada: + defaultValue = false; + break; + + default: + defaultValue = true; + break; + } + + mInstance->beginGroup( "Search" ); + bool returnValue = mInstance->value( "isoPaperSizes", defaultValue ).toBool(); + mInstance->endGroup(); + + return returnValue; +} + + +void Settings::setSearchIsoPaperSizes( bool searchIsoPaperSizes ) +{ + + mInstance->beginGroup( "Search" ); + mInstance->setValue( "isoPaperSizes", searchIsoPaperSizes ); + mInstance->endGroup(); + + emit mInstance->changed(); +} + + +bool Settings::searchUsPaperSizes() +{ + // Guess at a suitable default + bool defaultValue; + switch (QLocale::system().country()) + { + case QLocale::UnitedStates: + case QLocale::Canada: + defaultValue = true; + break; + + default: + defaultValue = false; + break; + } + + mInstance->beginGroup( "Search" ); + bool returnValue = mInstance->value( "usPaperSizes", defaultValue ).toBool(); + mInstance->endGroup(); + + return returnValue; +} + + +void Settings::setSearchUsPaperSizes( bool searchUsPaperSizes ) +{ + + mInstance->beginGroup( "Search" ); + mInstance->setValue( "usPaperSizes", searchUsPaperSizes ); + mInstance->endGroup(); + + emit mInstance->changed(); +} + + +bool Settings::searchOtherPaperSizes() +{ + // Guess at a suitable default + bool defaultValue = true; + + mInstance->beginGroup( "Search" ); + bool returnValue = mInstance->value( "otherPaperSizes", defaultValue ).toBool(); + mInstance->endGroup(); + + return returnValue; +} + + +void Settings::setSearchOtherPaperSizes( bool searchOtherPaperSizes ) +{ + + mInstance->beginGroup( "Search" ); + mInstance->setValue( "otherPaperSizes", searchOtherPaperSizes ); + mInstance->endGroup(); + + emit mInstance->changed(); +} + + diff --git a/glabels/Settings.h b/glabels/Settings.h index 36582a1..17f5b37 100644 --- a/glabels/Settings.h +++ b/glabels/Settings.h @@ -59,12 +59,18 @@ signals: // Accessors ///////////////////////////////// public: - static bool preferIsoPaperSizes(); - static void setPreferIsoPaperSizes( bool preferIsoPaperSizes ); - static glabels::Distance::Units units(); static void setUnits( glabels::Distance::Units units ); + static bool searchIsoPaperSizes(); + static void setSearchIsoPaperSizes( bool searchIsoPaperSizes ); + + static bool searchUsPaperSizes(); + static void setSearchUsPaperSizes( bool searchUsPaperSizes ); + + static bool searchOtherPaperSizes(); + static void setSearchOtherPaperSizes( bool searchOtherPaperSizes ); + private: static Settings* mInstance; diff --git a/glabels/ui/PreferencesDialog.ui b/glabels/ui/PreferencesDialog.ui index 11fce7a..5b908e6 100644 --- a/glabels/ui/PreferencesDialog.ui +++ b/glabels/ui/PreferencesDialog.ui @@ -6,8 +6,8 @@ 0 0 - 299 - 385 + 318 + 295 @@ -24,7 +24,7 @@ Locale - + Qt::Vertical @@ -88,29 +88,6 @@ - - - - Prefered Paper Sizes - - - - - - US - - - - - - - ISO - - - - - - @@ -193,38 +170,6 @@ - - preferedPaperSizesUsRadio - clicked() - PreferencesDialog - onPreferedPaperSizesRadiosChanged() - - - 269 - 276 - - - 298 - 221 - - - - - preferedPaperSizesIsoRadio - clicked() - PreferencesDialog - onPreferedPaperSizesRadiosChanged() - - - 269 - 303 - - - 298 - 255 - - - unitsCentimetersRadio clicked(bool) diff --git a/glabels/ui/SelectProductDialog.ui b/glabels/ui/SelectProductDialog.ui index 8bdbe3f..2a45f2a 100644 --- a/glabels/ui/SelectProductDialog.ui +++ b/glabels/ui/SelectProductDialog.ui @@ -223,54 +223,6 @@ - - pageSizeIsoCheck - toggled(bool) - SelectProductDialog - onPageSizeCheckToggled() - - - 78 - 116 - - - 3 - 110 - - - - - pageSizeUsCheck - toggled(bool) - SelectProductDialog - onPageSizeCheckToggled() - - - 52 - 145 - - - 8 - 144 - - - - - pageSizeOtherCheck - toggled(bool) - SelectProductDialog - onPageSizeCheckToggled() - - - 37 - 170 - - - 10 - 188 - - - templatePicker itemSelectionChanged() @@ -294,8 +246,8 @@ onCancelButtonClicked() - 587 - 708 + 864 + 648 689 @@ -310,8 +262,8 @@ onSelectButtonClicked() - 660 - 689 + 955 + 648 687 @@ -319,14 +271,62 @@ + + pageSizeIsoCheck + clicked() + SelectProductDialog + onPageSizeCheckClicked() + + + 40 + 112 + + + 2 + 116 + + + + + pageSizeUsCheck + clicked() + SelectProductDialog + onPageSizeCheckClicked() + + + 38 + 144 + + + 4 + 141 + + + + + pageSizeOtherCheck + clicked() + SelectProductDialog + onPageSizeCheckClicked() + + + 35 + 169 + + + 8 + 168 + + + onSearchClearButtonClicked() - onPageSizeCheckToggled() onTemplatePickerSelectionChanged() onOrientationRadioToggled() onSearchEntryTextChanged() onCancelButtonClicked() onSelectButtonClicked() + onPageSizeCheckClicked()