@@ -327,7 +327,11 @@ void MainWindow::on_actionNew_triggered()
327327// /
328328void MainWindow::on_actionOpen_triggered ()
329329{
330- const auto filename = QFileDialog::getOpenFileName (this , QString (), _savePath, tr (" XML files (*.xml);;All files (*)" ));
330+ QStringList filters;
331+ filters << tr (" XML files (*.xml)" );
332+ filters << tr (" All files (*)" );
333+
334+ const auto filename = QFileDialog::getOpenFileName (this , QString (), _savePath, filters.join (" ;;" ));
331335 if (filename.isEmpty ()) return ;
332336
333337 _savePath = QFileInfo (filename).absoluteDir ().absolutePath ();
@@ -371,15 +375,19 @@ void MainWindow::on_actionSaveAs_triggered()
371375 auto frm = currentMdiChild ();
372376 if (!frm) return ;
373377
378+ QStringList filters;
379+ filters << tr (" XML files (*.xml)" );
380+ filters << tr (" All files (*)" );
381+
374382 const auto dir = QString (" %1%2%3" ).arg (_savePath, QDir::separator (), frm->windowTitle ());
375383
376384 QString selectedFilter;
377- auto filename = QFileDialog::getSaveFileName (this , QString (), dir, tr ( " XML files (*.xml);;All files (*) " ), &selectedFilter);
385+ auto filename = QFileDialog::getSaveFileName (this , QString (), dir, filters. join ( " ;; " ), &selectedFilter);
378386
379387 if (filename.isEmpty ()) return ;
380388
381389 auto format = SerializationFormat::Binary;
382- if (selectedFilter == tr ( " XML files (*.xml) " ) ) {
390+ if (selectedFilter == filters[ 0 ] ) {
383391 format = SerializationFormat::Xml;
384392 if (!filename.endsWith (" .xml" , Qt::CaseInsensitive)) {
385393 filename.append (" .xml" );
@@ -397,13 +405,17 @@ void MainWindow::on_actionSaveAs_triggered()
397405// /
398406void MainWindow::on_actionSaveTestConfig_triggered ()
399407{
408+ QStringList filters;
409+ filters << tr (" XML files (*.xml)" );
410+ filters << tr (" All files (*)" );
411+
400412 QString selectedFilter;
401- auto filename = QFileDialog::getSaveFileName (this , QString (), _savePath, tr ( " XML files (*.xml);;All files (*) " ), &selectedFilter);
413+ auto filename = QFileDialog::getSaveFileName (this , QString (), _savePath, filters. join ( " ;; " ), &selectedFilter);
402414
403415 if (filename.isEmpty ()) return ;
404416
405417 auto format = SerializationFormat::Binary;
406- if (selectedFilter == tr ( " XML files (*.xml) " ) ) {
418+ if (selectedFilter == filters[ 0 ] ) {
407419 format = SerializationFormat::Xml;
408420 if (!filename.endsWith (" .xml" , Qt::CaseInsensitive)) {
409421 filename.append (" .xml" );
@@ -419,7 +431,11 @@ void MainWindow::on_actionSaveTestConfig_triggered()
419431// /
420432void MainWindow::on_actionRestoreTestConfig_triggered ()
421433{
422- const auto filename = QFileDialog::getOpenFileName (this , QString (), _savePath, tr (" XML files (*.xml);;All files (*)" ));
434+ QStringList filters;
435+ filters << tr (" XML files (*.xml)" );
436+ filters << tr (" All files (*)" );
437+
438+ const auto filename = QFileDialog::getOpenFileName (this , QString (), _savePath, filters.join (" ;;" ));
423439 if (filename.isEmpty ()) return ;
424440
425441 _savePath = QFileInfo (filename).absoluteDir ().absolutePath ();
0 commit comments