@@ -63,7 +63,10 @@ SettingsDialog::SettingsDialog(ApplicationList *list,
6363 QSettings settings;
6464 mTempApplications ->copy (list);
6565
66+ int maxjobs = QThread::idealThreadCount ();
67+
6668 mUI ->mJobs ->setText (settings.value (SETTINGS_CHECK_THREADS, 1 ).toString ());
69+ mUI ->mJobs ->setValidator (new QIntValidator (1 , maxjobs, this ));
6770 mUI ->mForce ->setCheckState (boolToCheckState (settings.value (SETTINGS_CHECK_FORCE, false ).toBool ()));
6871 mUI ->mShowFullPath ->setCheckState (boolToCheckState (settings.value (SETTINGS_SHOW_FULL_PATH, false ).toBool ()));
6972 mUI ->mShowNoErrorsMessage ->setCheckState (boolToCheckState (settings.value (SETTINGS_SHOW_NO_ERRORS, false ).toBool ()));
@@ -119,11 +122,7 @@ SettingsDialog::SettingsDialog(ApplicationList *list,
119122 mUI ->mListWidget ->setSortingEnabled (false );
120123 populateApplicationList ();
121124
122- const int count = QThread::idealThreadCount ();
123- if (count != -1 )
124- mUI ->mLblIdealThreads ->setText (QString::number (count));
125- else
126- mUI ->mLblIdealThreads ->setText (tr (" N/A" ));
125+ mUI ->mLblMaxThreads ->setText (QString::number (maxjobs));
127126
128127 loadSettings ();
129128 initTranslationsList ();
@@ -179,13 +178,9 @@ void SettingsDialog::saveSettings() const
179178
180179void SettingsDialog::saveSettingValues () const
181180{
182- int jobs = mUI ->mJobs ->text ().toInt ();
183- if (jobs <= 0 ) {
184- jobs = 1 ;
185- }
186-
187181 QSettings settings;
188- settings.setValue (SETTINGS_CHECK_THREADS, jobs);
182+ if (mUI ->mJobs ->hasAcceptableInput ())
183+ settings.setValue (SETTINGS_CHECK_THREADS, mUI ->mJobs ->text ().toInt ());
189184 saveCheckboxValue (&settings, mUI ->mForce , SETTINGS_CHECK_FORCE);
190185 saveCheckboxValue (&settings, mUI ->mSaveAllErrors , SETTINGS_SAVE_ALL_ERRORS);
191186 saveCheckboxValue (&settings, mUI ->mSaveFullPath , SETTINGS_SAVE_FULL_PATH);
0 commit comments