Index: /trunk/i18n/en.ts
===================================================================
--- /trunk/i18n/en.ts	(revision 81)
+++ /trunk/i18n/en.ts	(revision 82)
@@ -147,16 +147,16 @@
     <name>MainWindow</name>
     <message>
-        <location filename="../src/mainwindow.cpp" line="273"/>
-        <location filename="../src/mainwindow.cpp" line="282"/>
+        <location filename="../src/mainwindow.cpp" line="267"/>
+        <location filename="../src/mainwindow.cpp" line="276"/>
         <source>Language change</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="632"/>
+        <location filename="../src/mainwindow.cpp" line="626"/>
         <source>Unable to load translation language.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="642"/>
+        <location filename="../src/mainwindow.cpp" line="636"/>
         <source>Would you like to save changes in current task?</source>
         <translation type="unfinished"></translation>
@@ -164,15 +164,15 @@
     <message>
         <location filename="../ui/mainwindow.ui" line="15"/>
-        <location filename="../src/mainwindow.cpp" line="751"/>
+        <location filename="../src/mainwindow.cpp" line="742"/>
         <source>Travelling Salesman Problem</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="632"/>
+        <location filename="../src/mainwindow.cpp" line="626"/>
         <source>Language Change</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="642"/>
+        <location filename="../src/mainwindow.cpp" line="636"/>
         <source>Unsaved Changes</source>
         <translation type="unfinished"></translation>
@@ -191,37 +191,37 @@
     <message>
         <location filename="../src/mainwindow.cpp" line="129"/>
-        <location filename="../src/mainwindow.cpp" line="188"/>
-        <location filename="../src/mainwindow.cpp" line="725"/>
+        <location filename="../src/mainwindow.cpp" line="185"/>
+        <location filename="../src/mainwindow.cpp" line="719"/>
         <source>All Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="182"/>
+        <location filename="../src/mainwindow.cpp" line="179"/>
         <source>PDF Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="184"/>
+        <location filename="../src/mainwindow.cpp" line="181"/>
         <source>HTML Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="186"/>
+        <location filename="../src/mainwindow.cpp" line="183"/>
         <source>OpenDocument Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="426"/>
+        <location filename="../src/mainwindow.cpp" line="420"/>
         <source>Selected candidate for branching: %1.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="426"/>
-        <location filename="../src/mainwindow.cpp" line="433"/>
+        <location filename="../src/mainwindow.cpp" line="420"/>
+        <location filename="../src/mainwindow.cpp" line="427"/>
         <source>(%1;%2)</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../src/mainwindow.cpp" line="435"/>
+        <location filename="../src/mainwindow.cpp" line="429"/>
         <source>%n alternate candidate(s) for branching: %1.</source>
         <translation>
@@ -231,5 +231,5 @@
     </message>
     <message numerus="yes">
-        <location filename="../src/mainwindow.cpp" line="453"/>
+        <location filename="../src/mainwindow.cpp" line="447"/>
         <source>The price is &lt;b&gt;%n&lt;/b&gt; unit(s).</source>
         <translation>
@@ -239,10 +239,10 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="724"/>
+        <location filename="../src/mainwindow.cpp" line="718"/>
         <source>%1 Task File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="260"/>
+        <location filename="../src/mainwindow.cpp" line="254"/>
         <source>Settings Changed</source>
         <translation type="unfinished"></translation>
@@ -250,10 +250,9 @@
     <message>
         <location filename="../src/mainwindow.cpp" line="132"/>
-        <location filename="../src/mainwindow.cpp" line="134"/>
         <source>Task Load</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="260"/>
+        <location filename="../src/mainwindow.cpp" line="254"/>
         <source>You have changed color settings.
 Do you wish to apply them to current solution text?</source>
@@ -261,72 +260,71 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="365"/>
+        <location filename="../src/mainwindow.cpp" line="359"/>
         <source>About TSPSG</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="399"/>
+        <location filename="../src/mainwindow.cpp" line="393"/>
         <source>Data error</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="399"/>
+        <location filename="../src/mainwindow.cpp" line="393"/>
         <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="412"/>
+        <location filename="../src/mainwindow.cpp" line="406"/>
         <source>Variant #%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="413"/>
+        <location filename="../src/mainwindow.cpp" line="407"/>
         <source>Task:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../src/mainwindow.cpp" line="410"/>
+        <location filename="../src/mainwindow.cpp" line="457"/>
+        <source>Solution of Variant #%1 task</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../src/mainwindow.cpp" line="416"/>
-        <location filename="../src/mainwindow.cpp" line="463"/>
-        <source>Solution of Variant #%1 task</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../src/mainwindow.cpp" line="422"/>
         <source>Step #%1</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="448"/>
+        <location filename="../src/mainwindow.cpp" line="442"/>
         <source>Optimal path:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="450"/>
+        <location filename="../src/mainwindow.cpp" line="444"/>
         <source>Resulting path:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="455"/>
+        <location filename="../src/mainwindow.cpp" line="449"/>
         <source>The price is &lt;b&gt;%1&lt;/b&gt; units.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="458"/>
+        <location filename="../src/mainwindow.cpp" line="452"/>
         <source>&lt;b&gt;WARNING!!!&lt;/b&gt;&lt;br&gt;This result is a record, but it may not be optimal.&lt;br&gt;Iterations need to be continued to check whether this result is optimal or get an optimal one.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="733"/>
-        <location filename="../src/mainwindow.cpp" line="735"/>
+        <location filename="../src/mainwindow.cpp" line="727"/>
         <source>Task Save</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="273"/>
+        <location filename="../src/mainwindow.cpp" line="267"/>
         <source>Language will be autodetected on next application start.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="282"/>
+        <location filename="../src/mainwindow.cpp" line="276"/>
         <source>You have language autodetection turned on.
 It needs to be off.
@@ -335,7 +333,7 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="149"/>
-        <location filename="../src/mainwindow.cpp" line="165"/>
-        <location filename="../src/mainwindow.cpp" line="287"/>
+        <location filename="../src/mainwindow.cpp" line="146"/>
+        <location filename="../src/mainwindow.cpp" line="162"/>
+        <location filename="../src/mainwindow.cpp" line="281"/>
         <location filename="../src/mainwindow.h" line="100"/>
         <source>Untitled</source>
@@ -611,10 +609,10 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="712"/>
+        <location filename="../src/mainwindow.cpp" line="706"/>
         <source>&amp;Print...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="719"/>
+        <location filename="../src/mainwindow.cpp" line="713"/>
         <source>Ctrl+P</source>
         <translation type="unfinished"></translation>
@@ -636,25 +634,25 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="704"/>
+        <location filename="../src/mainwindow.cpp" line="698"/>
         <source>P&amp;rint Preview...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="706"/>
+        <location filename="../src/mainwindow.cpp" line="700"/>
         <source>Preview solution results</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="709"/>
+        <location filename="../src/mainwindow.cpp" line="703"/>
         <source>Preview current solution results before printing</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="714"/>
+        <location filename="../src/mainwindow.cpp" line="708"/>
         <source>Print solution</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="717"/>
+        <location filename="../src/mainwindow.cpp" line="711"/>
         <source>Print current solution results</source>
         <translation type="unfinished"></translation>
@@ -739,4 +737,9 @@
     </message>
     <message>
+        <location filename="../ui/settingsdialog.ui" line="291"/>
+        <source>Maximum number of cities to show solution steps&apos; matrices</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../ui/settingsdialog.ui" line="305"/>
         <source>Generate fractional random values with the accuracy of 2 decimal places</source>
@@ -756,4 +759,14 @@
         <location filename="../ui/settingsdialog.ui" line="319"/>
         <source>Scroll to solution end</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../ui/settingsdialog.ui" line="327"/>
+        <source>Use native File Open and File Save dialogs (uncheck to use Qt&apos;s File Dialogs)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../ui/settingsdialog.ui" line="330"/>
+        <source>Use native file dialogs</source>
         <translation type="unfinished"></translation>
     </message>
@@ -764,9 +777,4 @@
     </message>
     <message>
-        <location filename="../ui/settingsdialog.ui" line="291"/>
-        <source>Maximum number of cities for showing solution steps&apos; matrices</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../ui/settingsdialog.ui" line="294"/>
         <source> cities</source>
@@ -806,15 +814,15 @@
     </message>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="99"/>
+        <location filename="../src/settingsdialog.cpp" line="100"/>
         <source>Restore main window state and position on application restart</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="101"/>
+        <location filename="../src/settingsdialog.cpp" line="102"/>
         <source>Save main window state and position</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="124"/>
+        <location filename="../src/settingsdialog.cpp" line="125"/>
         <source>Hover mouse pointer over dialog elements to get additional help</source>
         <translation type="unfinished"></translation>
Index: /trunk/i18n/ru.ts
===================================================================
--- /trunk/i18n/ru.ts	(revision 81)
+++ /trunk/i18n/ru.ts	(revision 82)
@@ -155,11 +155,11 @@
     <name>MainWindow</name>
     <message>
-        <location filename="../src/mainwindow.cpp" line="273"/>
-        <location filename="../src/mainwindow.cpp" line="282"/>
+        <location filename="../src/mainwindow.cpp" line="267"/>
+        <location filename="../src/mainwindow.cpp" line="276"/>
         <source>Language change</source>
         <translation>Смена языка</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="632"/>
+        <location filename="../src/mainwindow.cpp" line="626"/>
         <source>Unable to load translation language.</source>
         <translation>Невозможно загрузить перевод.</translation>
@@ -167,10 +167,10 @@
     <message>
         <location filename="../ui/mainwindow.ui" line="15"/>
-        <location filename="../src/mainwindow.cpp" line="751"/>
+        <location filename="../src/mainwindow.cpp" line="742"/>
         <source>Travelling Salesman Problem</source>
         <translation>Задача коммивояжера</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="642"/>
+        <location filename="../src/mainwindow.cpp" line="636"/>
         <source>Unsaved Changes</source>
         <translation>Несохраненные изменения</translation>
@@ -183,6 +183,6 @@
     <message>
         <location filename="../src/mainwindow.cpp" line="129"/>
-        <location filename="../src/mainwindow.cpp" line="188"/>
-        <location filename="../src/mainwindow.cpp" line="725"/>
+        <location filename="../src/mainwindow.cpp" line="185"/>
+        <location filename="../src/mainwindow.cpp" line="719"/>
         <source>All Files</source>
         <translation>Все файлы</translation>
@@ -195,41 +195,41 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="632"/>
+        <location filename="../src/mainwindow.cpp" line="626"/>
         <source>Language Change</source>
         <translation>Смена языка</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="642"/>
+        <location filename="../src/mainwindow.cpp" line="636"/>
         <source>Would you like to save changes in current task?</source>
         <translation>Желаете сохранить изменения в текущей задаче?</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="182"/>
+        <location filename="../src/mainwindow.cpp" line="179"/>
         <source>PDF Files</source>
         <translation>Файли PDF</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="184"/>
+        <location filename="../src/mainwindow.cpp" line="181"/>
         <source>HTML Files</source>
         <translation>Файлы HTML</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="186"/>
+        <location filename="../src/mainwindow.cpp" line="183"/>
         <source>OpenDocument Files</source>
         <translation>Файлы OpenDocument</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="426"/>
+        <location filename="../src/mainwindow.cpp" line="420"/>
         <source>Selected candidate for branching: %1.</source>
         <translation>Выбранный кандидат для ветвления: %1.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="426"/>
-        <location filename="../src/mainwindow.cpp" line="433"/>
+        <location filename="../src/mainwindow.cpp" line="420"/>
+        <location filename="../src/mainwindow.cpp" line="427"/>
         <source>(%1;%2)</source>
         <translation></translation>
     </message>
     <message numerus="yes">
-        <location filename="../src/mainwindow.cpp" line="435"/>
+        <location filename="../src/mainwindow.cpp" line="429"/>
         <source>%n alternate candidate(s) for branching: %1.</source>
         <translation>
@@ -240,5 +240,5 @@
     </message>
     <message numerus="yes">
-        <location filename="../src/mainwindow.cpp" line="453"/>
+        <location filename="../src/mainwindow.cpp" line="447"/>
         <source>The price is &lt;b&gt;%n&lt;/b&gt; unit(s).</source>
         <translation>
@@ -249,10 +249,10 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="724"/>
+        <location filename="../src/mainwindow.cpp" line="718"/>
         <source>%1 Task File</source>
         <translation>Файл условия %1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="260"/>
+        <location filename="../src/mainwindow.cpp" line="254"/>
         <source>Settings Changed</source>
         <translation>Параметры изменены</translation>
@@ -260,10 +260,9 @@
     <message>
         <location filename="../src/mainwindow.cpp" line="132"/>
-        <location filename="../src/mainwindow.cpp" line="134"/>
         <source>Task Load</source>
         <translation>Загрузка условия</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="260"/>
+        <location filename="../src/mainwindow.cpp" line="254"/>
         <source>You have changed color settings.
 Do you wish to apply them to current solution text?</source>
@@ -272,72 +271,71 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="365"/>
+        <location filename="../src/mainwindow.cpp" line="359"/>
         <source>About TSPSG</source>
         <translation>Про TSPSG</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="399"/>
+        <location filename="../src/mainwindow.cpp" line="393"/>
         <source>Data error</source>
         <translation>Ошибка в данных</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="399"/>
+        <location filename="../src/mainwindow.cpp" line="393"/>
         <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
         <translation>Ошибка в ячейке [Строка %1; Колонка %2]: Неверный формат данных.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="412"/>
+        <location filename="../src/mainwindow.cpp" line="406"/>
         <source>Variant #%1</source>
         <translation>Вариант №%1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="413"/>
+        <location filename="../src/mainwindow.cpp" line="407"/>
         <source>Task:</source>
         <translation>Условие:</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="416"/>
-        <location filename="../src/mainwindow.cpp" line="463"/>
+        <location filename="../src/mainwindow.cpp" line="410"/>
+        <location filename="../src/mainwindow.cpp" line="457"/>
         <source>Solution of Variant #%1 task</source>
         <translation>Решение варианта №%1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="422"/>
+        <location filename="../src/mainwindow.cpp" line="416"/>
         <source>Step #%1</source>
         <translation>Шаг №%1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="448"/>
+        <location filename="../src/mainwindow.cpp" line="442"/>
         <source>Optimal path:</source>
         <translation>Оптимальный путь:</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="450"/>
+        <location filename="../src/mainwindow.cpp" line="444"/>
         <source>Resulting path:</source>
         <translation>Найденный путь:</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="455"/>
+        <location filename="../src/mainwindow.cpp" line="449"/>
         <source>The price is &lt;b&gt;%1&lt;/b&gt; units.</source>
         <translation>Стоимость - &lt;b&gt;%1&lt;/b&gt; единиц.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="458"/>
+        <location filename="../src/mainwindow.cpp" line="452"/>
         <source>&lt;b&gt;WARNING!!!&lt;/b&gt;&lt;br&gt;This result is a record, but it may not be optimal.&lt;br&gt;Iterations need to be continued to check whether this result is optimal or get an optimal one.</source>
         <translation>&lt;b&gt;ВНИМАНИЕ!!!&lt;/b&gt;&lt;br&gt;Найденное решение является рекордом, но может оказаться не оптимальным.&lt;br&gt;Для получения оптимального решения, или проверки текущего на оптимальность, требуется продолжить итерации.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="733"/>
-        <location filename="../src/mainwindow.cpp" line="735"/>
+        <location filename="../src/mainwindow.cpp" line="727"/>
         <source>Task Save</source>
         <translation>Сохранение условия</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="273"/>
+        <location filename="../src/mainwindow.cpp" line="267"/>
         <source>Language will be autodetected on next application start.</source>
         <translation>Язык будет автоматически определен при следующем запуске приложения.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="282"/>
+        <location filename="../src/mainwindow.cpp" line="276"/>
         <source>You have language autodetection turned on.
 It needs to be off.
@@ -348,7 +346,7 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="149"/>
-        <location filename="../src/mainwindow.cpp" line="165"/>
-        <location filename="../src/mainwindow.cpp" line="287"/>
+        <location filename="../src/mainwindow.cpp" line="146"/>
+        <location filename="../src/mainwindow.cpp" line="162"/>
+        <location filename="../src/mainwindow.cpp" line="281"/>
         <location filename="../src/mainwindow.h" line="100"/>
         <source>Untitled</source>
@@ -629,35 +627,35 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="704"/>
+        <location filename="../src/mainwindow.cpp" line="698"/>
         <source>P&amp;rint Preview...</source>
         <translation>П&amp;редварительный просмотр...</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="706"/>
+        <location filename="../src/mainwindow.cpp" line="700"/>
         <source>Preview solution results</source>
         <translation>Предварительный просмотр результатов решения</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="709"/>
+        <location filename="../src/mainwindow.cpp" line="703"/>
         <source>Preview current solution results before printing</source>
         <translation>Предварительный просмотр результатов решения перед печатью</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="712"/>
+        <location filename="../src/mainwindow.cpp" line="706"/>
         <source>&amp;Print...</source>
         <translation>&amp;Печать...</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="714"/>
+        <location filename="../src/mainwindow.cpp" line="708"/>
         <source>Print solution</source>
         <translation>Печать решения</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="717"/>
+        <location filename="../src/mainwindow.cpp" line="711"/>
         <source>Print current solution results</source>
         <translation>Распечатать текущие результаты решения</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="719"/>
+        <location filename="../src/mainwindow.cpp" line="713"/>
         <source>Ctrl+P</source>
         <translation></translation>
@@ -752,4 +750,9 @@
     </message>
     <message>
+        <location filename="../ui/settingsdialog.ui" line="291"/>
+        <source>Maximum number of cities to show solution steps&apos; matrices</source>
+        <translation>Максимальное количество городов для показа матриц шагов решения</translation>
+    </message>
+    <message>
         <location filename="../ui/settingsdialog.ui" line="305"/>
         <source>Generate fractional random values with the accuracy of 2 decimal places</source>
@@ -769,5 +772,15 @@
         <location filename="../ui/settingsdialog.ui" line="319"/>
         <source>Scroll to solution end</source>
-        <translation>Прокручивать в конец</translation>
+        <translation>Прокручивать в конец решения</translation>
+    </message>
+    <message>
+        <location filename="../ui/settingsdialog.ui" line="327"/>
+        <source>Use native File Open and File Save dialogs (uncheck to use Qt&apos;s File Dialogs)</source>
+        <translation>Использовать системные диалоги открытия и сохранения файла</translation>
+    </message>
+    <message>
+        <location filename="../ui/settingsdialog.ui" line="330"/>
+        <source>Use native file dialogs</source>
+        <translation>Системные файловые диалоги</translation>
     </message>
     <message>
@@ -775,9 +788,4 @@
         <source>Only when &lt;=</source>
         <translation>Только когда ≤</translation>
-    </message>
-    <message>
-        <location filename="../ui/settingsdialog.ui" line="291"/>
-        <source>Maximum number of cities for showing solution steps&apos; matrices</source>
-        <translation>Максимальное количество городов для показа матриц шагов решения</translation>
     </message>
     <message>
@@ -819,15 +827,15 @@
     </message>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="99"/>
+        <location filename="../src/settingsdialog.cpp" line="100"/>
         <source>Restore main window state and position on application restart</source>
         <translation>Восстанавливать состояние и размеры главного окна после перезапуска приложения</translation>
     </message>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="101"/>
+        <location filename="../src/settingsdialog.cpp" line="102"/>
         <source>Save main window state and position</source>
         <translation>Сохранять состояние и положение главного окна</translation>
     </message>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="124"/>
+        <location filename="../src/settingsdialog.cpp" line="125"/>
         <source>Hover mouse pointer over dialog elements to get additional help</source>
         <translation>Наведите указатель мыши на элемент диалога, чтоб получить подсказку</translation>
Index: /trunk/i18n/uk.ts
===================================================================
--- /trunk/i18n/uk.ts	(revision 81)
+++ /trunk/i18n/uk.ts	(revision 82)
@@ -185,35 +185,35 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="704"/>
+        <location filename="../src/mainwindow.cpp" line="698"/>
         <source>P&amp;rint Preview...</source>
         <translation>&amp;Попередній перегляд...</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="706"/>
+        <location filename="../src/mainwindow.cpp" line="700"/>
         <source>Preview solution results</source>
         <translation>Попередній перегляд результатів розв&apos;язку</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="709"/>
+        <location filename="../src/mainwindow.cpp" line="703"/>
         <source>Preview current solution results before printing</source>
         <translation>Попередній перегляд результатів розв&apos;язку перед друком</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="712"/>
+        <location filename="../src/mainwindow.cpp" line="706"/>
         <source>&amp;Print...</source>
         <translation>&amp;Друк...</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="714"/>
+        <location filename="../src/mainwindow.cpp" line="708"/>
         <source>Print solution</source>
         <translation>Друк розв&apos;зку</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="717"/>
+        <location filename="../src/mainwindow.cpp" line="711"/>
         <source>Print current solution results</source>
         <translation>Роздрукувати поточний результат розв&apos;язку</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="719"/>
+        <location filename="../src/mainwindow.cpp" line="713"/>
         <source>Ctrl+P</source>
         <translation></translation>
@@ -478,11 +478,11 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="273"/>
-        <location filename="../src/mainwindow.cpp" line="282"/>
+        <location filename="../src/mainwindow.cpp" line="267"/>
+        <location filename="../src/mainwindow.cpp" line="276"/>
         <source>Language change</source>
         <translation>Зміна мови</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="632"/>
+        <location filename="../src/mainwindow.cpp" line="626"/>
         <source>Unable to load translation language.</source>
         <translation>Неможливо завантажити переклад.</translation>
@@ -490,10 +490,10 @@
     <message>
         <location filename="../ui/mainwindow.ui" line="15"/>
-        <location filename="../src/mainwindow.cpp" line="751"/>
+        <location filename="../src/mainwindow.cpp" line="742"/>
         <source>Travelling Salesman Problem</source>
         <translation>Задача комівояжера</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="642"/>
+        <location filename="../src/mainwindow.cpp" line="636"/>
         <source>Unsaved Changes</source>
         <translation>Незбережені зміни</translation>
@@ -506,6 +506,6 @@
     <message>
         <location filename="../src/mainwindow.cpp" line="129"/>
-        <location filename="../src/mainwindow.cpp" line="188"/>
-        <location filename="../src/mainwindow.cpp" line="725"/>
+        <location filename="../src/mainwindow.cpp" line="185"/>
+        <location filename="../src/mainwindow.cpp" line="719"/>
         <source>All Files</source>
         <translation>Усі файли</translation>
@@ -518,41 +518,41 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="632"/>
+        <location filename="../src/mainwindow.cpp" line="626"/>
         <source>Language Change</source>
         <translation>Зміна мови</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="642"/>
+        <location filename="../src/mainwindow.cpp" line="636"/>
         <source>Would you like to save changes in current task?</source>
         <translation>Бажаете зберегти зміни у поточній задачі?</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="182"/>
+        <location filename="../src/mainwindow.cpp" line="179"/>
         <source>PDF Files</source>
         <translation>Файлы PDF</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="184"/>
+        <location filename="../src/mainwindow.cpp" line="181"/>
         <source>HTML Files</source>
         <translation>Файли HTML</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="186"/>
+        <location filename="../src/mainwindow.cpp" line="183"/>
         <source>OpenDocument Files</source>
         <translation>Файли OpenDocument</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="426"/>
+        <location filename="../src/mainwindow.cpp" line="420"/>
         <source>Selected candidate for branching: %1.</source>
         <translation>Обраний кандидат на розгалудження: %1.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="426"/>
-        <location filename="../src/mainwindow.cpp" line="433"/>
+        <location filename="../src/mainwindow.cpp" line="420"/>
+        <location filename="../src/mainwindow.cpp" line="427"/>
         <source>(%1;%2)</source>
         <translation></translation>
     </message>
     <message numerus="yes">
-        <location filename="../src/mainwindow.cpp" line="435"/>
+        <location filename="../src/mainwindow.cpp" line="429"/>
         <source>%n alternate candidate(s) for branching: %1.</source>
         <translation>
@@ -563,5 +563,5 @@
     </message>
     <message numerus="yes">
-        <location filename="../src/mainwindow.cpp" line="453"/>
+        <location filename="../src/mainwindow.cpp" line="447"/>
         <source>The price is &lt;b&gt;%n&lt;/b&gt; unit(s).</source>
         <translation>
@@ -572,10 +572,10 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="724"/>
+        <location filename="../src/mainwindow.cpp" line="718"/>
         <source>%1 Task File</source>
         <translation>Файл умови %1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="260"/>
+        <location filename="../src/mainwindow.cpp" line="254"/>
         <source>Settings Changed</source>
         <translation>Параметри змінено</translation>
@@ -583,10 +583,9 @@
     <message>
         <location filename="../src/mainwindow.cpp" line="132"/>
-        <location filename="../src/mainwindow.cpp" line="134"/>
         <source>Task Load</source>
         <translation>Завантаження умови</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="260"/>
+        <location filename="../src/mainwindow.cpp" line="254"/>
         <source>You have changed color settings.
 Do you wish to apply them to current solution text?</source>
@@ -595,72 +594,71 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="365"/>
+        <location filename="../src/mainwindow.cpp" line="359"/>
         <source>About TSPSG</source>
         <translation>Про TSPSG</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="399"/>
+        <location filename="../src/mainwindow.cpp" line="393"/>
         <source>Data error</source>
         <translation>Помилка у даних</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="399"/>
+        <location filename="../src/mainwindow.cpp" line="393"/>
         <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
         <translation>Помилка у комірці  [Рядок %1; Колонка %2]: Невірний формат даних.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="412"/>
+        <location filename="../src/mainwindow.cpp" line="406"/>
         <source>Variant #%1</source>
         <translation>Варіант №%1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="413"/>
+        <location filename="../src/mainwindow.cpp" line="407"/>
         <source>Task:</source>
         <translation>Умова:</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="416"/>
-        <location filename="../src/mainwindow.cpp" line="463"/>
+        <location filename="../src/mainwindow.cpp" line="410"/>
+        <location filename="../src/mainwindow.cpp" line="457"/>
         <source>Solution of Variant #%1 task</source>
         <translation>Розв&apos;язок варіанту №%1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="422"/>
+        <location filename="../src/mainwindow.cpp" line="416"/>
         <source>Step #%1</source>
         <translation>Крок №%1</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="448"/>
+        <location filename="../src/mainwindow.cpp" line="442"/>
         <source>Optimal path:</source>
         <translation>Оптимальний шлях:</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="450"/>
+        <location filename="../src/mainwindow.cpp" line="444"/>
         <source>Resulting path:</source>
         <translation>Знайдений шлях:</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="455"/>
+        <location filename="../src/mainwindow.cpp" line="449"/>
         <source>The price is &lt;b&gt;%1&lt;/b&gt; units.</source>
         <translation>Вартість - &lt;b&gt;%1&lt;/b&gt; одиниць.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="458"/>
+        <location filename="../src/mainwindow.cpp" line="452"/>
         <source>&lt;b&gt;WARNING!!!&lt;/b&gt;&lt;br&gt;This result is a record, but it may not be optimal.&lt;br&gt;Iterations need to be continued to check whether this result is optimal or get an optimal one.</source>
         <translation>&lt;b&gt;Увага!!!&lt;/b&gt;&lt;br&gt;Знайдений розв&apos;язок є рекордом, але може бути неоптимальним.&lt;br&gt;Для отримання оптимального розв&apos;зку, або перевірки поточного на оптимальність, потрібно продовжити ітерації.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="733"/>
-        <location filename="../src/mainwindow.cpp" line="735"/>
+        <location filename="../src/mainwindow.cpp" line="727"/>
         <source>Task Save</source>
         <translation>Збереження умови</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="273"/>
+        <location filename="../src/mainwindow.cpp" line="267"/>
         <source>Language will be autodetected on next application start.</source>
         <translation>Мову буде автоматично визначено при наступному запуску додатку.</translation>
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="282"/>
+        <location filename="../src/mainwindow.cpp" line="276"/>
         <source>You have language autodetection turned on.
 It needs to be off.
@@ -671,7 +669,7 @@
     </message>
     <message>
-        <location filename="../src/mainwindow.cpp" line="149"/>
-        <location filename="../src/mainwindow.cpp" line="165"/>
-        <location filename="../src/mainwindow.cpp" line="287"/>
+        <location filename="../src/mainwindow.cpp" line="146"/>
+        <location filename="../src/mainwindow.cpp" line="162"/>
+        <location filename="../src/mainwindow.cpp" line="281"/>
         <location filename="../src/mainwindow.h" line="100"/>
         <source>Untitled</source>
@@ -682,15 +680,15 @@
     <name>SettingsDialog</name>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="99"/>
+        <location filename="../src/settingsdialog.cpp" line="100"/>
         <source>Restore main window state and position on application restart</source>
         <translation>Відновлювати стан та розмір головного вікна після перезапуску додатку</translation>
     </message>
     <message>
-        <location filename="../src/settingsdialog.cpp" line="101"/>
+        <location filename="../src/settingsdialog.cpp" line="102"/>
         <source>Save main window state and position</source>
-        <translation>Зберегти стан та розміщення головного вікна</translation>
-    </message>
-    <message>
-        <location filename="../src/settingsdialog.cpp" line="124"/>
+        <translation>Зберігати стан та розміщення головного вікна</translation>
+    </message>
+    <message>
+        <location filename="../src/settingsdialog.cpp" line="125"/>
         <source>Hover mouse pointer over dialog elements to get additional help</source>
         <translation>Наведіть покажчик миші на елемент ділогу, щоб отримати підказку</translation>
@@ -767,4 +765,9 @@
     </message>
     <message>
+        <location filename="../ui/settingsdialog.ui" line="291"/>
+        <source>Maximum number of cities to show solution steps&apos; matrices</source>
+        <translation>Максимальна кількість міст для показу матриць кроків розв&apos;язку</translation>
+    </message>
+    <message>
         <location filename="../ui/settingsdialog.ui" line="305"/>
         <source>Generate fractional random values with the accuracy of 2 decimal places</source>
@@ -784,5 +787,15 @@
         <location filename="../ui/settingsdialog.ui" line="319"/>
         <source>Scroll to solution end</source>
-        <translation>Прокручувати в кінець</translation>
+        <translation>Прокручувати в кінець розв&apos;язку</translation>
+    </message>
+    <message>
+        <location filename="../ui/settingsdialog.ui" line="327"/>
+        <source>Use native File Open and File Save dialogs (uncheck to use Qt&apos;s File Dialogs)</source>
+        <translation>Використовувати системні діалоги відкриття та збереження файлу</translation>
+    </message>
+    <message>
+        <location filename="../ui/settingsdialog.ui" line="330"/>
+        <source>Use native file dialogs</source>
+        <translation>Системні файлові діалоги</translation>
     </message>
     <message>
@@ -790,9 +803,4 @@
         <source>Only when &lt;=</source>
         <translation>Лише коли ≤</translation>
-    </message>
-    <message>
-        <location filename="../ui/settingsdialog.ui" line="291"/>
-        <source>Maximum number of cities for showing solution steps&apos; matrices</source>
-        <translation>Максимальна кількість міст для показу матриць кроків розв&apos;язку</translation>
     </message>
     <message>
Index: /trunk/src/globals.h
===================================================================
--- /trunk/src/globals.h	(revision 81)
+++ /trunk/src/globals.h	(revision 82)
@@ -46,13 +46,26 @@
 //! Default number of cities
 #define DEF_NUM_CITIES 5
-//! Default value for generating fractional random values
+/*!
+ * \def DEF_USE_NATIVE_DIALOGS
+ * \brief Default for "Use native file dialog".
+ */
+#ifdef Q_OS_WINCE
+	#define DEF_USE_NATIVE_DIALOGS false
+#else
+	#define DEF_USE_NATIVE_DIALOGS true
+#endif // Q_OS_WINCE
+//! Default for "Automatically resize rows and columns to their contents"
+#define DEF_AUTOSIZE true
+//! Default for "Save main window state and position"
+#define DEF_SAVEPOS false
+//! Default for "Fractional random values"
 #define DEF_FRACTIONAL_RANDOM false
-//! Default value for showing or not solution step matrices
+//! Default for "Show solution steps' matrices for every solution step"
 #define DEF_SHOW_MATRIX true
-//! Default value for using or not city limit for showing solution steps matrices
+//! Default for "Show or hide solution steps' matrices based on number of cities in the task"
 #define DEF_USE_SHOW_MATRIX_LIMIT true
-//! Default maximum number of cities to show solution step matrices
-#define DEF_SHOW_MATRIX_CITY_LIMIT 15
-//! Default for scrolling to the end of output after solving
+//! Default for "Maximum number of cities to show solution steps' matrices"
+#define DEF_SHOW_MATRIX_LIMIT 15
+//! Default for "Scroll to the end of output after solving"
 #define DEF_SCROLL_TO_END true
 //! Default font name
@@ -114,7 +127,7 @@
 // FUNCTIONS
 /*!
- * \brief Checks whether \a x contains an integer value
- * \param x A value to check
- * \return \c true if \a x countains an integer, oherwise \c false
+ * \brief Checks whether \a x contains an integer value.
+ * \param x A value to check.
+ * \return \c true if \a x countains an integer, oherwise \c false.
  */
 inline bool isInteger(double x)
Index: /trunk/src/mainwindow.cpp
===================================================================
--- /trunk/src/mainwindow.cpp	(revision 81)
+++ /trunk/src/mainwindow.cpp	(revision 82)
@@ -64,5 +64,5 @@
 	connect(spinCities,SIGNAL(valueChanged(int)),this,SLOT(spinCitiesValueChanged(int)));
 
-	if (settings->value("SavePos", false).toBool()) {
+	if (settings->value("SavePos", DEF_SAVEPOS).toBool()) {
 		// Loading of saved window state
 		settings->beginGroup("MainWindow");
@@ -129,9 +129,6 @@
 	filters.append(trUtf8("All Files") + " (*)");
 
-#ifdef Q_OS_WINCE
-	QString file = QFileDialog::getOpenFileName(this, trUtf8("Task Load"), QString(), filters.join(";;"), NULL, QFileDialog::DontUseNativeDialog);
-#else
-QString file = QFileDialog::getOpenFileName(this, trUtf8("Task Load"), QString(), filters.join(";;"));
-#endif // Q_OS_WINCE
+QFileDialog::Options opts = settings->value("UseNativeDialogs", DEF_USE_NATIVE_DIALOGS).toBool() ? QFileDialog::Options() : QFileDialog::DontUseNativeDialog;
+QString file = QFileDialog::getOpenFileName(this, trUtf8("Task Load"), QString(), filters.join(";;"), NULL, opts);
 	if (file.isEmpty() || !QFileInfo(file).isFile())
 		return;
@@ -188,9 +185,6 @@
 	filters.append(trUtf8("All Files") + " (*)");
 
-#ifdef Q_OS_WINCE
-QString file = QFileDialog::getSaveFileName(this, QString(), selectedFile, filters.join(";;"), NULL, QFileDialog::DontUseNativeDialog);
-#else
-QString file = QFileDialog::getSaveFileName(this, QString(), selectedFile, filters.join(";;"));
-#endif
+QFileDialog::Options opts = settings->value("UseNativeDialogs", DEF_USE_NATIVE_DIALOGS).toBool() ? QFileDialog::Options() : QFileDialog::DontUseNativeDialog;
+QString file = QFileDialog::getSaveFileName(this, QString(), selectedFile, filters.join(";;"), NULL, opts);
 	if (file.isEmpty())
 		return;
@@ -421,5 +415,5 @@
 			if (n != spinCities->value()) {
 				output.append("<p>" + trUtf8("Step #%1").arg(n++) + "</p>");
-				if (settings->value("Output/ShowMatrix", DEF_SHOW_MATRIX).toBool() && settings->value("Output/UseShowMatrixLimit", DEF_USE_SHOW_MATRIX_LIMIT).toBool() && (spinCities->value() <= settings->value("Output/ShowMatrixCitiesLimit", DEF_SHOW_MATRIX_CITY_LIMIT).toInt())) {
+				if (settings->value("Output/ShowMatrix", DEF_SHOW_MATRIX).toBool() && settings->value("Output/UseShowMatrixLimit", DEF_USE_SHOW_MATRIX_LIMIT).toBool() && (spinCities->value() <= settings->value("Output/ShowMatrixLimit", DEF_SHOW_MATRIX_LIMIT).toInt())) {
 					outputMatrix(*step, output);
 				}
@@ -481,5 +475,5 @@
 {
 	setWindowModified(true);
-	if (settings->value("Autosize",true).toBool()) {
+	if (settings->value("Autosize", DEF_AUTOSIZE).toBool()) {
 		for (int k = tl.row(); k <= br.row(); k++)
 			taskView->resizeRowToContents(k);
@@ -508,5 +502,5 @@
 int count = tspmodel->numCities();
 	tspmodel->setNumCities(n);
-	if ((n > count) && settings->value("Autosize",true).toBool())
+	if ((n > count) && settings->value("Autosize", DEF_AUTOSIZE).toBool())
 		for (int k = count; k < n; k++) {
 			taskView->resizeColumnToContents(k);
@@ -525,5 +519,5 @@
 
 	// Saving Main Window state
-	if (settings->value("SavePos", false).toBool()) {
+	if (settings->value("SavePos", DEF_SAVEPOS).toBool()) {
 		settings->beginGroup("MainWindow");
 #ifndef Q_OS_WINCE
@@ -730,9 +724,6 @@
 		file = QFileInfo(fileName).canonicalPath() + "/" + QFileInfo(fileName).completeBaseName() + ".tspt";
 
-#ifdef Q_OS_WINCE
-	file = QFileDialog::getSaveFileName(this, trUtf8("Task Save"), file, filters.join(";;"), NULL, QFileDialog::DontUseNativeDialog);
-#else
-	file = QFileDialog::getSaveFileName(this, trUtf8("Task Save"), file, filters.join(";;"));
-#endif // Q_OS_WINCE
+QFileDialog::Options opts = settings->value("UseNativeDialogs", DEF_USE_NATIVE_DIALOGS).toBool() ? QFileDialog::Options() : QFileDialog::DontUseNativeDialog;
+	file = QFileDialog::getSaveFileName(this, trUtf8("Task Save"), file, filters.join(";;"), NULL, opts);
 
 	if (file.isEmpty())
Index: /trunk/src/settingsdialog.cpp
===================================================================
--- /trunk/src/settingsdialog.cpp	(revision 81)
+++ /trunk/src/settingsdialog.cpp	(revision 82)
@@ -68,4 +68,5 @@
 	vbox2->addWidget(cbScrollToEnd);
 	vbox2->addWidget(cbAutosize);
+	vbox2->addWidget(cbUseNativeDialogs);
 
 	// Output settings group
@@ -108,6 +109,6 @@
 	imgIcon->setLineWidth(0);
 	imgIcon->setPixmap(QPixmap(":/images/icons/preferences_system.png"));
-	imgIcon->setStyleSheet("background-color: #0080C0;");
-	imgIcon->setAlignment(Qt::AlignCenter);
+	imgIcon->setStyleSheet("background-color: #0080C0; padding-top: 11px;");
+	imgIcon->setAlignment(Qt::AlignTop | Qt::AlignHCenter);
 	imgIcon->setMinimumWidth(150);
 
@@ -150,5 +151,5 @@
 	// Top right part (with white bg)
 	vbox2 = new QVBoxLayout(bgWhite);
-	vbox2->addStretch();
+//	vbox2->addStretch();
 	vbox2->addLayout(hbox2);
 	vbox2->addWidget(cbFractionalRandom);
@@ -157,4 +158,5 @@
 	vbox2->addWidget(cbScrollToEnd);
 	vbox2->addWidget(cbAutosize);
+	vbox2->addWidget(cbUseNativeDialogs);
 	vbox2->addWidget(cbSaveState);
 	vbox2->addStretch();
@@ -193,7 +195,8 @@
 	spinRandMax->setValue(settings->value("MaxCost",DEF_RAND_MAX).toInt());
 	cbFractionalRandom->setChecked(settings->value("FractionalRandom", DEF_FRACTIONAL_RANDOM).toBool());
-	cbAutosize->setChecked(settings->value("Autosize",true).toBool());
+	cbAutosize->setChecked(settings->value("Autosize", DEF_AUTOSIZE).toBool());
+	cbUseNativeDialogs->setChecked(settings->value("UseNativeDialogs", DEF_USE_NATIVE_DIALOGS).toBool());
 #ifndef Q_OS_WINCE
-	cbSaveState->setChecked(settings->value("SavePos",false).toBool());
+	cbSaveState->setChecked(settings->value("SavePos", DEF_SAVEPOS).toBool());
 #endif // Q_OS_WINCE
 
@@ -203,5 +206,5 @@
 	cbCitiesLimit->setChecked(settings->value("UseShowMatrixLimit", DEF_USE_SHOW_MATRIX_LIMIT && cbShowMatrix->isChecked()).toBool());
 	spinCitiesLimit->setEnabled(cbShowMatrix->isChecked());
-	spinCitiesLimit->setValue(settings->value("ShowMatrixCitiesLimit", DEF_SHOW_MATRIX_CITY_LIMIT).toInt());
+	spinCitiesLimit->setValue(settings->value("ShowMatrixLimit", DEF_SHOW_MATRIX_LIMIT).toInt());
 	spinCitiesLimit->setMaximum(MAX_NUM_CITIES);
 	cbScrollToEnd->setChecked(settings->value("ScrollToEnd", DEF_SCROLL_TO_END).toBool());
@@ -239,4 +242,5 @@
 	settings->setValue("SavePos", cbSaveState->isChecked());
 #endif // Q_OS_WINCE
+	settings->setValue("UseNativeDialogs", cbUseNativeDialogs->isChecked());
 	settings->setValue("Autosize", cbAutosize->isChecked());
 	settings->setValue("MinCost", spinRandMin->value());
@@ -248,5 +252,5 @@
 	settings->setValue("UseShowMatrixLimit", cbShowMatrix->isChecked() && cbCitiesLimit->isChecked());
 	if (cbCitiesLimit->isChecked())
-		settings->setValue("ShowMatrixCitiesLimit", spinCitiesLimit->value());
+		settings->setValue("ShowMatrixLimit", spinCitiesLimit->value());
 	settings->setValue("ScrollToEnd", cbScrollToEnd->isChecked());
 	if (newFont)
Index: /trunk/ui/settingsdialog.ui
===================================================================
--- /trunk/ui/settingsdialog.ui	(revision 81)
+++ /trunk/ui/settingsdialog.ui	(revision 82)
@@ -289,5 +289,5 @@
    <widget class="QSpinBox" name="spinCitiesLimit">
     <property name="statusTip">
-     <string>Maximum number of cities for showing solution steps' matrices</string>
+     <string>Maximum number of cities to show solution steps' matrices</string>
     </property>
     <property name="suffix">
@@ -318,4 +318,15 @@
     <property name="text">
      <string>Scroll to solution end</string>
+    </property>
+   </widget>
+   <widget class="QCheckBox" name="cbUseNativeDialogs">
+    <property name="cursor">
+     <cursorShape>PointingHandCursor</cursorShape>
+    </property>
+    <property name="statusTip">
+     <string>Use native File Open and File Save dialogs (uncheck to use Qt's File Dialogs)</string>
+    </property>
+    <property name="text">
+     <string>Use native file dialogs</string>
     </property>
    </widget>
