Changeset 42 in tspsg-svn


Ignore:
Timestamp:
Jul 31, 2009, 8:23:07 PM (15 years ago)
Author:
laleppa
Message:

+ Finished solving algorithm (needs thorough testing).
+ Solution can be saved to HTML or OpenDocument? format.
+ Added VERSIONINFO resource for windows builds.

  • Updated translations to have unified terminology everywhere.

NB: This will be the first public alpha build.

Location:
trunk
Files:
1 added
24 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/README

    r39 r42  
    1 TSPSG - TSP Solver and Generator
     1TSPSG: TSP Solver and Generator
    22Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    33
  • trunk/i18n/en.ts

    r39 r42  
    1616    </message>
    1717    <message>
    18         <location filename="../src/tspmodel.cpp" line="156"/>
     18        <location filename="../src/tspmodel.cpp" line="147"/>
    1919        <source>Unexpected end of file.</source>
    2020        <translation type="unfinished"></translation>
    2121    </message>
    2222    <message>
    23         <location filename="../src/tspmodel.cpp" line="158"/>
     23        <location filename="../src/tspmodel.cpp" line="149"/>
    2424        <source>Corrupt data read. File possibly corrupted.</source>
    2525        <translation type="unfinished"></translation>
    2626    </message>
    2727    <message>
     28        <location filename="../src/tspmodel.cpp" line="151"/>
     29        <source>Unknown error.</source>
     30        <translation type="unfinished"></translation>
     31    </message>
     32    <message>
     33        <location filename="../src/tspmodel.cpp" line="152"/>
    2834        <location filename="../src/tspmodel.cpp" line="160"/>
    29         <source>Unknown error.</source>
    30         <translation type="unfinished"></translation>
    31     </message>
    32     <message>
    33         <location filename="../src/tspmodel.cpp" line="161"/>
    34         <location filename="../src/tspmodel.cpp" line="169"/>
    35         <location filename="../src/tspmodel.cpp" line="184"/>
    36         <location filename="../src/tspmodel.cpp" line="200"/>
    37         <location filename="../src/tspmodel.cpp" line="213"/>
     35        <location filename="../src/tspmodel.cpp" line="175"/>
     36        <location filename="../src/tspmodel.cpp" line="191"/>
     37        <location filename="../src/tspmodel.cpp" line="204"/>
     38        <location filename="../src/tspmodel.cpp" line="234"/>
    3839        <location filename="../src/tspmodel.cpp" line="243"/>
    39         <location filename="../src/tspmodel.cpp" line="252"/>
    4040        <source>Task Load</source>
    4141        <translation type="unfinished"></translation>
    4242    </message>
    4343    <message>
    44         <location filename="../src/tspmodel.cpp" line="161"/>
    45         <location filename="../src/tspmodel.cpp" line="184"/>
    46         <location filename="../src/tspmodel.cpp" line="200"/>
    47         <location filename="../src/tspmodel.cpp" line="213"/>
     44        <location filename="../src/tspmodel.cpp" line="152"/>
     45        <location filename="../src/tspmodel.cpp" line="175"/>
     46        <location filename="../src/tspmodel.cpp" line="191"/>
     47        <location filename="../src/tspmodel.cpp" line="204"/>
     48        <location filename="../src/tspmodel.cpp" line="234"/>
    4849        <location filename="../src/tspmodel.cpp" line="243"/>
    49         <location filename="../src/tspmodel.cpp" line="252"/>
    5050        <source>Unable to load task:</source>
    5151        <translation type="unfinished"></translation>
    5252    </message>
    5353    <message>
    54         <location filename="../src/tspmodel.cpp" line="169"/>
     54        <location filename="../src/tspmodel.cpp" line="160"/>
    5555        <source>Unable to open task file.
    5656Error: %1</source>
     
    5858    </message>
    5959    <message>
    60         <location filename="../src/tspmodel.cpp" line="184"/>
     60        <location filename="../src/tspmodel.cpp" line="175"/>
    6161        <source>Unknown file format or file is corrupted.</source>
    6262        <translation type="unfinished"></translation>
    6363    </message>
    6464    <message>
    65         <location filename="../src/tspmodel.cpp" line="200"/>
    66         <location filename="../src/tspmodel.cpp" line="243"/>
     65        <location filename="../src/tspmodel.cpp" line="191"/>
     66        <location filename="../src/tspmodel.cpp" line="234"/>
    6767        <source>File version is newer than application supports.
    6868Please, try to update application.</source>
     
    7070    </message>
    7171    <message>
    72         <location filename="../src/tspmodel.cpp" line="213"/>
    73         <location filename="../src/tspmodel.cpp" line="252"/>
     72        <location filename="../src/tspmodel.cpp" line="204"/>
     73        <location filename="../src/tspmodel.cpp" line="243"/>
    7474        <source>Unexpected data read.
    7575File is possibly corrupted.</source>
     
    7777    </message>
    7878    <message>
    79         <location filename="../src/tspmodel.cpp" line="282"/>
    80         <location filename="../src/tspmodel.cpp" line="288"/>
    81         <location filename="../src/tspmodel.cpp" line="295"/>
    82         <location filename="../src/tspmodel.cpp" line="302"/>
    83         <location filename="../src/tspmodel.cpp" line="309"/>
    84         <location filename="../src/tspmodel.cpp" line="316"/>
    85         <location filename="../src/tspmodel.cpp" line="323"/>
    86         <location filename="../src/tspmodel.cpp" line="333"/>
     79        <location filename="../src/tspmodel.cpp" line="273"/>
     80        <location filename="../src/tspmodel.cpp" line="279"/>
     81        <location filename="../src/tspmodel.cpp" line="286"/>
     82        <location filename="../src/tspmodel.cpp" line="293"/>
     83        <location filename="../src/tspmodel.cpp" line="300"/>
     84        <location filename="../src/tspmodel.cpp" line="307"/>
     85        <location filename="../src/tspmodel.cpp" line="314"/>
     86        <location filename="../src/tspmodel.cpp" line="324"/>
    8787        <source>Task Save</source>
    8888        <translation type="unfinished"></translation>
    8989    </message>
    9090    <message>
    91         <location filename="../src/tspmodel.cpp" line="282"/>
     91        <location filename="../src/tspmodel.cpp" line="273"/>
    9292        <source>Unable to create task file.
    9393Error: %1
     
    9696    </message>
    9797    <message>
    98         <location filename="../src/tspmodel.cpp" line="288"/>
    99         <location filename="../src/tspmodel.cpp" line="295"/>
    100         <location filename="../src/tspmodel.cpp" line="302"/>
    101         <location filename="../src/tspmodel.cpp" line="309"/>
    102         <location filename="../src/tspmodel.cpp" line="316"/>
    103         <location filename="../src/tspmodel.cpp" line="323"/>
    104         <location filename="../src/tspmodel.cpp" line="333"/>
     98        <location filename="../src/tspmodel.cpp" line="279"/>
     99        <location filename="../src/tspmodel.cpp" line="286"/>
     100        <location filename="../src/tspmodel.cpp" line="293"/>
     101        <location filename="../src/tspmodel.cpp" line="300"/>
     102        <location filename="../src/tspmodel.cpp" line="307"/>
     103        <location filename="../src/tspmodel.cpp" line="314"/>
     104        <location filename="../src/tspmodel.cpp" line="324"/>
    105105        <source>Unable to save task.
    106106Error: %1</source>
     107        <translation type="unfinished"></translation>
     108    </message>
     109</context>
     110<context>
     111    <name>CTSPSolver</name>
     112    <message>
     113        <location filename="../src/tspsolver.cpp" line="137"/>
     114        <source>%v of %m parts found</source>
     115        <translation type="unfinished"></translation>
     116    </message>
     117    <message>
     118        <location filename="../src/tspsolver.cpp" line="141"/>
     119        <source>Calculating optimal route...</source>
     120        <translation type="unfinished"></translation>
     121    </message>
     122    <message>
     123        <location filename="../src/tspsolver.cpp" line="142"/>
     124        <source>Solution Progress</source>
     125        <translation type="unfinished"></translation>
     126    </message>
     127    <message>
     128        <location filename="../src/tspsolver.cpp" line="210"/>
     129        <source>Solution Result</source>
     130        <translation type="unfinished"></translation>
     131    </message>
     132    <message>
     133        <location filename="../src/tspsolver.cpp" line="210"/>
     134        <source>This task has no solution.</source>
    107135        <translation type="unfinished"></translation>
    108136    </message>
     
    111139    <name>MainWindow</name>
    112140    <message>
    113         <location filename="../src/mainwindow.cpp" line="134"/>
    114         <location filename="../src/mainwindow.cpp" line="323"/>
    115         <location filename="../src/mainwindow.cpp" line="332"/>
     141        <location filename="../src/mainwindow.cpp" line="141"/>
     142        <location filename="../src/mainwindow.cpp" line="439"/>
     143        <location filename="../src/mainwindow.cpp" line="448"/>
    116144        <source>Language change</source>
    117145        <translation type="unfinished"></translation>
    118146    </message>
    119147    <message>
    120         <location filename="../src/mainwindow.cpp" line="134"/>
     148        <location filename="../src/mainwindow.cpp" line="141"/>
    121149        <source>Unable to load translation language.</source>
    122150        <translation type="unfinished"></translation>
    123151    </message>
    124152    <message>
    125         <location filename="../src/mainwindow.cpp" line="162"/>
     153        <location filename="../src/mainwindow.cpp" line="181"/>
    126154        <source>New Task</source>
    127155        <translation type="unfinished"></translation>
    128156    </message>
    129157    <message>
    130         <location filename="../src/mainwindow.cpp" line="162"/>
    131         <location filename="../src/mainwindow.cpp" line="173"/>
    132         <location filename="../src/mainwindow.cpp" line="346"/>
     158        <location filename="../src/mainwindow.cpp" line="181"/>
     159        <location filename="../src/mainwindow.cpp" line="195"/>
     160        <location filename="../src/mainwindow.cpp" line="462"/>
    133161        <source>Would you like to save changes in current task?</source>
    134162        <translation type="unfinished"></translation>
    135163    </message>
    136164    <message>
    137         <location filename="../src/mainwindow.cpp" line="173"/>
     165        <location filename="../src/mainwindow.cpp" line="195"/>
    138166        <source>Task Open</source>
    139167        <translation type="unfinished"></translation>
    140168    </message>
    141169    <message>
    142         <location filename="../src/mainwindow.cpp" line="180"/>
     170        <location filename="../src/mainwindow.cpp" line="202"/>
    143171        <source>All Supported Formats</source>
    144172        <translation type="unfinished"></translation>
    145173    </message>
    146174    <message>
    147         <location filename="../src/mainwindow.cpp" line="181"/>
    148         <location filename="../src/mainwindow.cpp" line="182"/>
     175        <location filename="../src/mainwindow.cpp" line="203"/>
     176        <location filename="../src/mainwindow.cpp" line="204"/>
    149177        <source>%1 Task Files</source>
    150178        <translation type="unfinished"></translation>
    151179    </message>
    152180    <message>
    153         <location filename="../src/mainwindow.cpp" line="183"/>
    154         <location filename="../src/mainwindow.cpp" line="203"/>
     181        <location filename="../src/mainwindow.cpp" line="205"/>
     182        <location filename="../src/mainwindow.cpp" line="232"/>
     183        <location filename="../src/mainwindow.cpp" line="251"/>
    155184        <source>All Files</source>
    156185        <translation type="unfinished"></translation>
    157186    </message>
    158187    <message>
    159         <location filename="../src/mainwindow.cpp" line="202"/>
     188        <location filename="../src/mainwindow.cpp" line="230"/>
     189        <source>HTML Files</source>
     190        <translation type="unfinished"></translation>
     191    </message>
     192    <message>
     193        <location filename="../src/mainwindow.cpp" line="231"/>
     194        <source>OpenDocument Files</source>
     195        <translation type="unfinished"></translation>
     196    </message>
     197    <message>
     198        <location filename="../src/mainwindow.cpp" line="250"/>
    160199        <source>%1 Task File</source>
    161200        <translation type="unfinished"></translation>
    162201    </message>
    163202    <message>
    164         <location filename="../src/mainwindow.cpp" line="259"/>
     203        <location filename="../src/mainwindow.cpp" line="273"/>
     204        <source>Settings Changed</source>
     205        <translation type="unfinished"></translation>
     206    </message>
     207    <message>
     208        <location filename="../src/mainwindow.cpp" line="273"/>
     209        <source>You have changed color settings.
     210Do you wish to apply them to current solution text?</source>
     211        <translation type="unfinished"></translation>
     212    </message>
     213    <message>
     214        <location filename="../src/mainwindow.cpp" line="337"/>
    165215        <source>Data error</source>
    166216        <translation type="unfinished"></translation>
    167217    </message>
    168218    <message>
    169         <location filename="../src/mainwindow.cpp" line="259"/>
     219        <location filename="../src/mainwindow.cpp" line="337"/>
    170220        <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
    171221        <translation type="unfinished"></translation>
    172222    </message>
    173223    <message>
    174         <location filename="../src/mainwindow.cpp" line="268"/>
    175         <source>Solution error</source>
    176         <translation type="unfinished"></translation>
    177     </message>
    178     <message>
    179         <location filename="../src/mainwindow.cpp" line="268"/>
    180         <source>There was an error while solving the task.</source>
    181         <translation type="unfinished"></translation>
    182     </message>
    183     <message>
    184         <location filename="../src/mainwindow.cpp" line="323"/>
     224        <location filename="../src/mainwindow.cpp" line="350"/>
     225        <source>Variant #%1</source>
     226        <translation type="unfinished"></translation>
     227    </message>
     228    <message>
     229        <location filename="../src/mainwindow.cpp" line="351"/>
     230        <source>Task:</source>
     231        <translation type="unfinished"></translation>
     232    </message>
     233    <message>
     234        <location filename="../src/mainwindow.cpp" line="354"/>
     235        <location filename="../src/mainwindow.cpp" line="380"/>
     236        <source>Solution of Variant #%1 task</source>
     237        <translation type="unfinished"></translation>
     238    </message>
     239    <message>
     240        <location filename="../src/mainwindow.cpp" line="361"/>
     241        <source>Step #%1</source>
     242        <translation type="unfinished"></translation>
     243    </message>
     244    <message>
     245        <location filename="../src/mainwindow.cpp" line="364"/>
     246        <source>This step has alternate candidates for branching.</source>
     247        <translation type="unfinished"></translation>
     248    </message>
     249    <message>
     250        <location filename="../src/mainwindow.cpp" line="376"/>
     251        <source>Optimal path:</source>
     252        <translation type="unfinished"></translation>
     253    </message>
     254    <message>
     255        <location filename="../src/mainwindow.cpp" line="378"/>
     256        <source>The price is &lt;b&gt;%1&lt;/b&gt; units.</source>
     257        <translation type="unfinished"></translation>
     258    </message>
     259    <message>
     260        <location filename="../src/mainwindow.cpp" line="439"/>
    185261        <source>Language will be autodetected on next application start.</source>
    186262        <translation type="unfinished"></translation>
    187263    </message>
    188264    <message>
    189         <location filename="../src/mainwindow.cpp" line="332"/>
     265        <location filename="../src/mainwindow.cpp" line="448"/>
    190266        <source>You have language autodetection turned on.
    191267It needs to be off.
     
    194270    </message>
    195271    <message>
    196         <location filename="../src/mainwindow.cpp" line="346"/>
     272        <location filename="../src/mainwindow.cpp" line="462"/>
    197273        <source>Application Close</source>
    198274        <translation type="unfinished"></translation>
    199275    </message>
    200276    <message>
    201         <location filename="../ui/mainwindow.ce.ui" line="56"/>
    202         <location filename="../ui/mainwindow.ui" line="35"/>
     277        <location filename="../ui/mainwindow.ce.ui" line="53"/>
     278        <location filename="../ui/mainwindow.ui" line="41"/>
    203279        <source>Task</source>
    204280        <translation type="unfinished"></translation>
    205281    </message>
    206282    <message>
    207         <location filename="../ui/mainwindow.ce.ui" line="77"/>
    208         <location filename="../ui/mainwindow.ui" line="56"/>
     283        <location filename="../ui/mainwindow.ce.ui" line="74"/>
     284        <location filename="../ui/mainwindow.ui" line="62"/>
    209285        <source>&amp;Variant:</source>
    210286        <translation type="unfinished"></translation>
    211287    </message>
    212288    <message>
    213         <location filename="../ui/mainwindow.ce.ui" line="90"/>
    214         <location filename="../ui/mainwindow.ui" line="69"/>
     289        <location filename="../ui/mainwindow.ce.ui" line="87"/>
     290        <location filename="../ui/mainwindow.ui" line="75"/>
    215291        <source>Number of variant</source>
    216292        <translation type="unfinished"></translation>
    217293    </message>
    218294    <message>
    219         <location filename="../ui/mainwindow.ce.ui" line="100"/>
    220         <location filename="../ui/mainwindow.ui" line="79"/>
     295        <location filename="../ui/mainwindow.ce.ui" line="97"/>
     296        <location filename="../ui/mainwindow.ui" line="85"/>
    221297        <source>&amp;Cities:</source>
    222298        <translation type="unfinished"></translation>
    223299    </message>
    224300    <message>
    225         <location filename="../ui/mainwindow.ce.ui" line="113"/>
    226         <location filename="../ui/mainwindow.ui" line="92"/>
     301        <location filename="../ui/mainwindow.ce.ui" line="110"/>
     302        <location filename="../ui/mainwindow.ui" line="98"/>
    227303        <source>Number of cities</source>
    228304        <translation type="unfinished"></translation>
    229305    </message>
    230306    <message>
    231         <location filename="../ui/mainwindow.ce.ui" line="144"/>
    232         <location filename="../ui/mainwindow.ui" line="123"/>
     307        <location filename="../ui/mainwindow.ce.ui" line="141"/>
     308        <location filename="../ui/mainwindow.ui" line="129"/>
    233309        <source>Cost of travel from city to city</source>
    234310        <translation type="unfinished"></translation>
    235311    </message>
    236312    <message>
     313        <location filename="../ui/mainwindow.ce.ui" line="169"/>
     314        <location filename="../ui/mainwindow.ui" line="157"/>
     315        <source>Fill table with random numbers</source>
     316        <translation type="unfinished"></translation>
     317    </message>
     318    <message>
    237319        <location filename="../ui/mainwindow.ce.ui" line="172"/>
    238         <location filename="../ui/mainwindow.ui" line="151"/>
    239         <source>Fill table with random numbers</source>
    240         <translation type="unfinished"></translation>
    241     </message>
    242     <message>
    243         <location filename="../ui/mainwindow.ce.ui" line="175"/>
    244         <location filename="../ui/mainwindow.ui" line="154"/>
     320        <location filename="../ui/mainwindow.ui" line="160"/>
    245321        <source>Random</source>
    246322        <translation type="unfinished"></translation>
    247323    </message>
    248324    <message>
     325        <location filename="../ui/mainwindow.ce.ui" line="186"/>
     326        <location filename="../ui/mainwindow.ui" line="174"/>
     327        <source>Solve current task</source>
     328        <translation type="unfinished"></translation>
     329    </message>
     330    <message>
    249331        <location filename="../ui/mainwindow.ce.ui" line="189"/>
    250         <location filename="../ui/mainwindow.ui" line="168"/>
    251         <source>Solve current task</source>
    252         <translation type="unfinished"></translation>
    253     </message>
    254     <message>
    255         <location filename="../ui/mainwindow.ce.ui" line="192"/>
    256         <location filename="../ui/mainwindow.ui" line="171"/>
     332        <location filename="../ui/mainwindow.ui" line="177"/>
    257333        <source>Solve</source>
    258334        <translation type="unfinished"></translation>
    259335    </message>
    260336    <message>
    261         <location filename="../ui/mainwindow.ce.ui" line="206"/>
    262         <location filename="../ui/mainwindow.ui" line="185"/>
     337        <location filename="../ui/mainwindow.ce.ui" line="203"/>
     338        <location filename="../ui/mainwindow.ui" line="191"/>
    263339        <source>Solution</source>
    264340        <translation type="unfinished"></translation>
    265341    </message>
    266342    <message>
    267         <location filename="../ui/mainwindow.ce.ui" line="223"/>
    268         <location filename="../ui/mainwindow.ui" line="202"/>
     343        <location filename="../ui/mainwindow.ce.ui" line="212"/>
     344        <location filename="../ui/mainwindow.ui" line="200"/>
    269345        <source>Solution steps</source>
    270346        <translation type="unfinished"></translation>
    271347    </message>
    272348    <message>
    273         <location filename="../ui/mainwindow.ce.ui" line="233"/>
    274         <location filename="../ui/mainwindow.ui" line="212"/>
    275         <source>Solution graph</source>
    276         <translation type="unfinished"></translation>
    277     </message>
    278     <message>
    279         <location filename="../ui/mainwindow.ce.ui" line="259"/>
    280         <location filename="../ui/mainwindow.ui" line="240"/>
     349        <location filename="../ui/mainwindow.ce.ui" line="242"/>
     350        <location filename="../ui/mainwindow.ui" line="230"/>
    281351        <source>&amp;File</source>
    282352        <translation type="unfinished"></translation>
    283353    </message>
    284354    <message>
    285         <location filename="../ui/mainwindow.ce.ui" line="266"/>
    286         <location filename="../ui/mainwindow.ui" line="244"/>
     355        <location filename="../ui/mainwindow.ce.ui" line="249"/>
     356        <location filename="../ui/mainwindow.ui" line="234"/>
    287357        <source>Save &amp;As...</source>
    288358        <translation type="unfinished"></translation>
    289359    </message>
    290360    <message>
    291         <location filename="../ui/mainwindow.ce.ui" line="348"/>
    292         <location filename="../ui/mainwindow.ui" line="361"/>
     361        <location filename="../ui/mainwindow.ce.ui" line="277"/>
     362        <location filename="../ui/mainwindow.ui" line="265"/>
     363        <source>&amp;Language</source>
     364        <comment>Please, append &quot; / Language&quot; when translating this string.</comment>
     365        <translation type="unfinished"></translation>
     366    </message>
     367    <message>
     368        <location filename="../ui/mainwindow.ce.ui" line="328"/>
     369        <location filename="../ui/mainwindow.ui" line="351"/>
    293370        <source>Solution S&amp;teps</source>
    294371        <translation type="unfinished"></translation>
    295372    </message>
    296373    <message>
    297         <location filename="../ui/mainwindow.ce.ui" line="362"/>
    298         <location filename="../ui/mainwindow.ui" line="375"/>
     374        <location filename="../ui/mainwindow.ce.ui" line="342"/>
     375        <location filename="../ui/mainwindow.ui" line="365"/>
    299376        <source>Solution &amp;Graph</source>
    300377        <translation type="unfinished"></translation>
    301378    </message>
    302379    <message>
    303         <location filename="../ui/mainwindow.ce.ui" line="466"/>
    304         <location filename="../ui/mainwindow.ui" line="479"/>
     380        <location filename="../ui/mainwindow.ce.ui" line="359"/>
     381        <source>Solution...</source>
     382        <translation type="unfinished"></translation>
     383    </message>
     384    <message>
     385        <location filename="../ui/mainwindow.ce.ui" line="449"/>
     386        <location filename="../ui/mainwindow.ui" line="469"/>
    305387        <source>Context &amp;Help</source>
    306388        <translation type="unfinished"></translation>
    307389    </message>
    308390    <message>
    309         <location filename="../ui/mainwindow.ce.ui" line="557"/>
    310         <location filename="../ui/mainwindow.ui" line="570"/>
     391        <location filename="../ui/mainwindow.ce.ui" line="540"/>
     392        <location filename="../ui/mainwindow.ui" line="556"/>
    311393        <source>&amp;Save</source>
    312394        <translation type="unfinished"></translation>
    313395    </message>
    314396    <message>
    315         <location filename="../ui/mainwindow.ce.ui" line="287"/>
    316         <location filename="../ui/mainwindow.ui" line="268"/>
     397        <location filename="../ui/mainwindow.ce.ui" line="267"/>
     398        <location filename="../ui/mainwindow.ui" line="255"/>
    317399        <source>&amp;Settings</source>
    318400        <translation type="unfinished"></translation>
     
    325407    </message>
    326408    <message>
    327         <location filename="../ui/mainwindow.ce.ui" line="297"/>
    328         <location filename="../ui/mainwindow.ui" line="278"/>
    329         <source>&amp;Language</source>
    330         <extracomment>Please, append &quot; / Language&quot; when translating this string.
    331 ----------
    332 Please, append &quot; / Language&quot; when translating this string.</extracomment>
    333         <translation type="unfinished"></translation>
    334     </message>
    335     <message>
    336         <location filename="../ui/mainwindow.ce.ui" line="313"/>
    337         <location filename="../ui/mainwindow.ui" line="294"/>
     409        <location filename="../ui/mainwindow.ce.ui" line="293"/>
     410        <location filename="../ui/mainwindow.ui" line="281"/>
    338411        <source>&amp;Help</source>
    339412        <translation type="unfinished"></translation>
    340413    </message>
    341414    <message>
    342         <location filename="../ui/mainwindow.ce.ui" line="351"/>
    343         <location filename="../ui/mainwindow.ui" line="364"/>
     415        <location filename="../ui/mainwindow.ce.ui" line="331"/>
     416        <location filename="../ui/mainwindow.ui" line="354"/>
    344417        <source>Save solution steps</source>
    345418        <translation type="unfinished"></translation>
    346419    </message>
    347420    <message>
    348         <location filename="../ui/mainwindow.ce.ui" line="354"/>
    349         <location filename="../ui/mainwindow.ui" line="367"/>
     421        <location filename="../ui/mainwindow.ce.ui" line="334"/>
     422        <location filename="../ui/mainwindow.ui" line="357"/>
    350423        <source>Save solution steps only</source>
    351424        <translation type="unfinished"></translation>
    352425    </message>
    353426    <message>
     427        <location filename="../ui/mainwindow.ce.ui" line="345"/>
     428        <location filename="../ui/mainwindow.ui" line="368"/>
     429        <source>Save solution graph</source>
     430        <translation type="unfinished"></translation>
     431    </message>
     432    <message>
     433        <location filename="../ui/mainwindow.ce.ui" line="348"/>
     434        <location filename="../ui/mainwindow.ui" line="371"/>
     435        <source>Save solution graph only</source>
     436        <translation type="unfinished"></translation>
     437    </message>
     438    <message>
     439        <location filename="../ui/mainwindow.ce.ui" line="362"/>
     440        <location filename="../ui/mainwindow.ui" line="382"/>
     441        <source>Save solution</source>
     442        <translation type="unfinished"></translation>
     443    </message>
     444    <message>
    354445        <location filename="../ui/mainwindow.ce.ui" line="365"/>
    355         <location filename="../ui/mainwindow.ui" line="378"/>
    356         <source>Save solution graph</source>
    357         <translation type="unfinished"></translation>
    358     </message>
    359     <message>
    360         <location filename="../ui/mainwindow.ce.ui" line="368"/>
    361         <location filename="../ui/mainwindow.ui" line="381"/>
    362         <source>Save solution graph only</source>
    363         <translation type="unfinished"></translation>
    364     </message>
    365     <message>
    366         <location filename="../ui/mainwindow.ce.ui" line="376"/>
    367         <location filename="../ui/mainwindow.ui" line="389"/>
    368         <source>&amp;Solution</source>
    369         <translation type="unfinished"></translation>
    370     </message>
    371     <message>
    372         <location filename="../ui/mainwindow.ce.ui" line="379"/>
    373         <location filename="../ui/mainwindow.ui" line="392"/>
    374         <source>Save solution</source>
    375         <translation type="unfinished"></translation>
    376     </message>
    377     <message>
    378         <location filename="../ui/mainwindow.ce.ui" line="382"/>
    379         <location filename="../ui/mainwindow.ui" line="395"/>
     446        <location filename="../ui/mainwindow.ui" line="385"/>
    380447        <source>Save solution steps and graph</source>
    381448        <translation type="unfinished"></translation>
    382449    </message>
    383450    <message>
    384         <location filename="../ui/mainwindow.ce.ui" line="391"/>
    385         <location filename="../ui/mainwindow.ui" line="404"/>
     451        <location filename="../ui/mainwindow.ce.ui" line="374"/>
     452        <location filename="../ui/mainwindow.ui" line="394"/>
    386453        <source>&amp;New</source>
    387454        <translation type="unfinished"></translation>
    388455    </message>
    389456    <message>
    390         <location filename="../ui/mainwindow.ce.ui" line="394"/>
    391         <location filename="../ui/mainwindow.ui" line="407"/>
     457        <location filename="../ui/mainwindow.ce.ui" line="377"/>
     458        <location filename="../ui/mainwindow.ui" line="397"/>
    392459        <source>New</source>
    393460        <translation type="unfinished"></translation>
    394461    </message>
    395462    <message>
    396         <location filename="../ui/mainwindow.ce.ui" line="397"/>
    397         <location filename="../ui/mainwindow.ui" line="410"/>
     463        <location filename="../ui/mainwindow.ce.ui" line="380"/>
     464        <location filename="../ui/mainwindow.ui" line="400"/>
    398465        <source>New task</source>
    399466        <translation type="unfinished"></translation>
    400467    </message>
    401468    <message>
    402         <location filename="../ui/mainwindow.ce.ui" line="400"/>
    403         <location filename="../ui/mainwindow.ui" line="413"/>
     469        <location filename="../ui/mainwindow.ce.ui" line="383"/>
     470        <location filename="../ui/mainwindow.ui" line="403"/>
    404471        <source>Create new task</source>
    405472        <translation type="unfinished"></translation>
    406473    </message>
    407474    <message>
    408         <location filename="../ui/mainwindow.ce.ui" line="403"/>
    409         <location filename="../ui/mainwindow.ui" line="416"/>
     475        <location filename="../ui/mainwindow.ce.ui" line="386"/>
     476        <location filename="../ui/mainwindow.ui" line="406"/>
    410477        <source>Ctrl+N</source>
    411478        <translation type="unfinished"></translation>
    412479    </message>
    413480    <message>
    414         <location filename="../ui/mainwindow.ce.ui" line="412"/>
    415         <location filename="../ui/mainwindow.ui" line="425"/>
     481        <location filename="../ui/mainwindow.ce.ui" line="395"/>
     482        <location filename="../ui/mainwindow.ui" line="415"/>
    416483        <source>&amp;Open...</source>
    417484        <translation type="unfinished"></translation>
    418485    </message>
    419486    <message>
    420         <location filename="../ui/mainwindow.ce.ui" line="415"/>
    421         <location filename="../ui/mainwindow.ui" line="428"/>
     487        <location filename="../ui/mainwindow.ce.ui" line="398"/>
     488        <location filename="../ui/mainwindow.ui" line="418"/>
    422489        <source>Open...</source>
    423490        <translation type="unfinished"></translation>
    424491    </message>
    425492    <message>
    426         <location filename="../ui/mainwindow.ce.ui" line="418"/>
    427         <location filename="../ui/mainwindow.ui" line="431"/>
     493        <location filename="../ui/mainwindow.ce.ui" line="401"/>
     494        <location filename="../ui/mainwindow.ui" line="421"/>
    428495        <source>Open task</source>
    429496        <translation type="unfinished"></translation>
    430497    </message>
    431498    <message>
    432         <location filename="../ui/mainwindow.ce.ui" line="421"/>
    433         <location filename="../ui/mainwindow.ui" line="434"/>
     499        <location filename="../ui/mainwindow.ce.ui" line="404"/>
     500        <location filename="../ui/mainwindow.ui" line="424"/>
    434501        <source>Open saved task</source>
    435502        <translation type="unfinished"></translation>
    436503    </message>
    437504    <message>
    438         <location filename="../ui/mainwindow.ce.ui" line="424"/>
    439         <location filename="../ui/mainwindow.ui" line="437"/>
     505        <location filename="../ui/mainwindow.ce.ui" line="407"/>
     506        <location filename="../ui/mainwindow.ui" line="427"/>
    440507        <source>Ctrl+O</source>
    441508        <translation type="unfinished"></translation>
    442509    </message>
    443510    <message>
    444         <location filename="../ui/mainwindow.ce.ui" line="433"/>
    445         <location filename="../ui/mainwindow.ui" line="446"/>
     511        <location filename="../ui/mainwindow.ce.ui" line="416"/>
     512        <location filename="../ui/mainwindow.ui" line="436"/>
    446513        <source>&amp;Preferences...</source>
    447514        <translation type="unfinished"></translation>
    448515    </message>
    449516    <message>
    450         <location filename="../ui/mainwindow.ce.ui" line="436"/>
    451         <location filename="../ui/mainwindow.ui" line="449"/>
     517        <location filename="../ui/mainwindow.ce.ui" line="419"/>
     518        <location filename="../ui/mainwindow.ui" line="439"/>
    452519        <source>Preferences...</source>
    453520        <translation type="unfinished"></translation>
    454521    </message>
    455522    <message>
    456         <location filename="../ui/mainwindow.ce.ui" line="439"/>
    457         <location filename="../ui/mainwindow.ui" line="452"/>
     523        <location filename="../ui/mainwindow.ce.ui" line="422"/>
     524        <location filename="../ui/mainwindow.ui" line="442"/>
    458525        <source>Application preferences</source>
    459526        <translation type="unfinished"></translation>
    460527    </message>
    461528    <message>
    462         <location filename="../ui/mainwindow.ce.ui" line="451"/>
    463         <location filename="../ui/mainwindow.ui" line="464"/>
     529        <location filename="../ui/mainwindow.ce.ui" line="434"/>
     530        <location filename="../ui/mainwindow.ui" line="454"/>
    464531        <source>&amp;Contents</source>
    465532        <translation type="unfinished"></translation>
    466533    </message>
    467534    <message>
    468         <location filename="../ui/mainwindow.ce.ui" line="454"/>
    469         <location filename="../ui/mainwindow.ui" line="467"/>
     535        <location filename="../ui/mainwindow.ce.ui" line="437"/>
     536        <location filename="../ui/mainwindow.ui" line="457"/>
    470537        <source>Open help contents</source>
    471538        <translation type="unfinished"></translation>
    472539    </message>
    473540    <message>
    474         <location filename="../ui/mainwindow.ce.ui" line="469"/>
    475         <location filename="../ui/mainwindow.ui" line="482"/>
     541        <location filename="../ui/mainwindow.ce.ui" line="452"/>
     542        <location filename="../ui/mainwindow.ui" line="472"/>
    476543        <source>Open context help</source>
    477544        <translation type="unfinished"></translation>
    478545    </message>
    479546    <message>
    480         <location filename="../ui/mainwindow.ce.ui" line="478"/>
    481         <location filename="../ui/mainwindow.ui" line="491"/>
     547        <location filename="../ui/mainwindow.ce.ui" line="461"/>
     548        <location filename="../ui/mainwindow.ui" line="481"/>
    482549        <source>&amp;About...</source>
    483550        <translation type="unfinished"></translation>
    484551    </message>
    485552    <message>
    486         <location filename="../ui/mainwindow.ce.ui" line="481"/>
    487         <location filename="../ui/mainwindow.ui" line="494"/>
     553        <location filename="../ui/mainwindow.ce.ui" line="464"/>
     554        <location filename="../ui/mainwindow.ui" line="484"/>
    488555        <source>About...</source>
    489556        <translation type="unfinished"></translation>
    490557    </message>
    491558    <message>
    492         <location filename="../ui/mainwindow.ce.ui" line="484"/>
    493         <location filename="../ui/mainwindow.ui" line="497"/>
     559        <location filename="../ui/mainwindow.ce.ui" line="467"/>
     560        <location filename="../ui/mainwindow.ui" line="487"/>
    494561        <source>About application</source>
    495562        <translation type="unfinished"></translation>
    496563    </message>
    497564    <message>
    498         <location filename="../ui/mainwindow.ce.ui" line="493"/>
    499         <location filename="../ui/mainwindow.ui" line="506"/>
     565        <location filename="../ui/mainwindow.ce.ui" line="476"/>
     566        <location filename="../ui/mainwindow.ui" line="496"/>
    500567        <source>E&amp;xit</source>
    501568        <translation type="unfinished"></translation>
    502569    </message>
    503570    <message>
    504         <location filename="../ui/mainwindow.ce.ui" line="496"/>
    505         <location filename="../ui/mainwindow.ui" line="509"/>
     571        <location filename="../ui/mainwindow.ce.ui" line="479"/>
     572        <location filename="../ui/mainwindow.ui" line="499"/>
    506573        <source>Exit application</source>
    507574        <translation type="unfinished"></translation>
    508575    </message>
    509576    <message>
    510         <location filename="../ui/mainwindow.ce.ui" line="505"/>
    511         <location filename="../ui/mainwindow.ui" line="518"/>
     577        <location filename="../ui/mainwindow.ce.ui" line="488"/>
     578        <location filename="../ui/mainwindow.ui" line="504"/>
    512579        <source>&amp;Task...</source>
    513580        <translation type="unfinished"></translation>
    514581    </message>
    515582    <message>
    516         <location filename="../ui/mainwindow.ce.ui" line="508"/>
    517         <location filename="../ui/mainwindow.ui" line="521"/>
     583        <location filename="../ui/mainwindow.ce.ui" line="491"/>
     584        <location filename="../ui/mainwindow.ui" line="507"/>
    518585        <source>Task...</source>
    519586        <translation type="unfinished"></translation>
    520587    </message>
    521588    <message>
     589        <location filename="../ui/mainwindow.ce.ui" line="494"/>
     590        <location filename="../ui/mainwindow.ce.ui" line="543"/>
     591        <location filename="../ui/mainwindow.ui" line="510"/>
     592        <location filename="../ui/mainwindow.ui" line="562"/>
     593        <source>Save task</source>
     594        <translation type="unfinished"></translation>
     595    </message>
     596    <message>
     597        <location filename="../ui/mainwindow.ce.ui" line="497"/>
     598        <location filename="../ui/mainwindow.ui" line="513"/>
     599        <source>Save task to file</source>
     600        <translation type="unfinished"></translation>
     601    </message>
     602    <message>
     603        <location filename="../ui/mainwindow.ce.ui" line="500"/>
     604        <location filename="../ui/mainwindow.ui" line="516"/>
     605        <source>Ctrl+S</source>
     606        <translation type="unfinished"></translation>
     607    </message>
     608    <message>
    522609        <location filename="../ui/mainwindow.ce.ui" line="511"/>
    523         <location filename="../ui/mainwindow.ce.ui" line="560"/>
    524         <location filename="../ui/mainwindow.ui" line="524"/>
    525         <location filename="../ui/mainwindow.ui" line="576"/>
    526         <source>Save task</source>
     610        <location filename="../ui/mainwindow.ui" line="527"/>
     611        <source>&amp;Autodetect</source>
     612        <translation type="unfinished"></translation>
     613    </message>
     614    <message>
     615        <location filename="../ui/mainwindow.ce.ui" line="528"/>
     616        <source>English</source>
     617        <translation type="unfinished"></translation>
     618    </message>
     619    <message>
     620        <location filename="../ui/mainwindow.ce.ui" line="546"/>
     621        <location filename="../ui/mainwindow.ui" line="565"/>
     622        <source>Save current task</source>
     623        <translation type="unfinished"></translation>
     624    </message>
     625    <message>
     626        <location filename="../ui/mainwindow.ce.ui" line="555"/>
     627        <location filename="../ui/mainwindow.ui" line="574"/>
     628        <source>About &amp;Qt...</source>
     629        <translation type="unfinished"></translation>
     630    </message>
     631    <message>
     632        <location filename="../ui/mainwindow.ce.ui" line="558"/>
     633        <location filename="../ui/mainwindow.ui" line="577"/>
     634        <source>About Qt...</source>
     635        <translation type="unfinished"></translation>
     636    </message>
     637    <message>
     638        <location filename="../ui/mainwindow.ce.ui" line="561"/>
     639        <source>About Qt</source>
     640        <translation type="unfinished"></translation>
     641    </message>
     642    <message>
     643        <location filename="../ui/mainwindow.ce.ui" line="564"/>
     644        <location filename="../ui/mainwindow.ui" line="580"/>
     645        <source>About Qt library</source>
     646        <translation type="unfinished"></translation>
     647    </message>
     648    <message>
     649        <location filename="../ui/mainwindow.ce.ui" line="271"/>
     650        <location filename="../ui/mainwindow.ui" line="259"/>
     651        <source>Select language</source>
     652        <translation type="unfinished"></translation>
     653    </message>
     654    <message>
     655        <location filename="../ui/mainwindow.ce.ui" line="274"/>
     656        <location filename="../ui/mainwindow.ui" line="262"/>
     657        <source>Select application language</source>
     658        <translation type="unfinished"></translation>
     659    </message>
     660    <message>
     661        <location filename="../ui/mainwindow.ui" line="322"/>
     662        <source>P&amp;rint Setup...</source>
     663        <translation type="unfinished"></translation>
     664    </message>
     665    <message>
     666        <location filename="../ui/mainwindow.ui" line="325"/>
     667        <source>Setup printing</source>
     668        <translation type="unfinished"></translation>
     669    </message>
     670    <message>
     671        <location filename="../ui/mainwindow.ui" line="337"/>
     672        <source>&amp;Print...</source>
     673        <translation type="unfinished"></translation>
     674    </message>
     675    <message>
     676        <location filename="../ui/mainwindow.ui" line="340"/>
     677        <source>Print solution results</source>
     678        <translation type="unfinished"></translation>
     679    </message>
     680    <message>
     681        <location filename="../ui/mainwindow.ui" line="343"/>
     682        <source>Ctrl+P</source>
     683        <translation type="unfinished"></translation>
     684    </message>
     685    <message>
     686        <location filename="../ui/mainwindow.ce.ui" line="356"/>
     687        <location filename="../ui/mainwindow.ui" line="379"/>
     688        <source>&amp;Solution...</source>
     689        <translation type="unfinished"></translation>
     690    </message>
     691    <message>
     692        <location filename="../ui/mainwindow.ui" line="559"/>
     693        <source>Save</source>
    527694        <translation type="unfinished"></translation>
    528695    </message>
    529696    <message>
    530697        <location filename="../ui/mainwindow.ce.ui" line="514"/>
    531         <location filename="../ui/mainwindow.ui" line="527"/>
    532         <source>Save task to file</source>
     698        <location filename="../ui/mainwindow.ui" line="530"/>
     699        <source>Detect language automatically</source>
    533700        <translation type="unfinished"></translation>
    534701    </message>
    535702    <message>
    536703        <location filename="../ui/mainwindow.ce.ui" line="517"/>
    537         <location filename="../ui/mainwindow.ui" line="530"/>
    538         <source>Ctrl+S</source>
    539         <translation type="unfinished"></translation>
    540     </message>
    541     <message>
    542         <location filename="../ui/mainwindow.ce.ui" line="528"/>
    543         <location filename="../ui/mainwindow.ui" line="541"/>
    544         <source>&amp;Autodetect</source>
    545         <translation type="unfinished"></translation>
    546     </message>
    547     <message>
    548         <location filename="../ui/mainwindow.ce.ui" line="545"/>
    549         <source>English</source>
    550         <translation type="unfinished"></translation>
    551     </message>
    552     <message>
    553         <location filename="../ui/mainwindow.ce.ui" line="563"/>
    554         <location filename="../ui/mainwindow.ui" line="579"/>
    555         <source>Save current task</source>
    556         <translation type="unfinished"></translation>
    557     </message>
    558     <message>
    559         <location filename="../ui/mainwindow.ce.ui" line="572"/>
    560         <location filename="../ui/mainwindow.ui" line="588"/>
    561         <source>About &amp;Qt...</source>
    562         <translation type="unfinished"></translation>
    563     </message>
    564     <message>
    565         <location filename="../ui/mainwindow.ce.ui" line="575"/>
    566         <location filename="../ui/mainwindow.ui" line="591"/>
    567         <source>About Qt...</source>
    568         <translation type="unfinished"></translation>
    569     </message>
    570     <message>
    571         <location filename="../ui/mainwindow.ce.ui" line="578"/>
    572         <source>About Qt</source>
    573         <translation type="unfinished"></translation>
    574     </message>
    575     <message>
    576         <location filename="../ui/mainwindow.ce.ui" line="581"/>
    577         <location filename="../ui/mainwindow.ui" line="594"/>
    578         <source>About Qt library</source>
    579         <translation type="unfinished"></translation>
    580     </message>
    581     <message>
    582         <location filename="../ui/mainwindow.ce.ui" line="291"/>
    583         <location filename="../ui/mainwindow.ui" line="272"/>
    584         <source>Select language</source>
    585         <translation type="unfinished"></translation>
    586     </message>
    587     <message>
    588         <location filename="../ui/mainwindow.ce.ui" line="294"/>
    589         <location filename="../ui/mainwindow.ui" line="275"/>
    590         <source>Select application language</source>
    591         <translation type="unfinished"></translation>
    592     </message>
    593     <message>
    594         <location filename="../ui/mainwindow.ui" line="332"/>
    595         <source>P&amp;rint Setup...</source>
    596         <translation type="unfinished"></translation>
    597     </message>
    598     <message>
    599         <location filename="../ui/mainwindow.ui" line="335"/>
    600         <source>Setup printing</source>
    601         <translation type="unfinished"></translation>
    602     </message>
    603     <message>
    604         <location filename="../ui/mainwindow.ui" line="347"/>
    605         <source>&amp;Print...</source>
    606         <translation type="unfinished"></translation>
    607     </message>
    608     <message>
    609         <location filename="../ui/mainwindow.ui" line="350"/>
    610         <source>Print solution results</source>
    611         <translation type="unfinished"></translation>
    612     </message>
    613     <message>
    614         <location filename="../ui/mainwindow.ui" line="353"/>
    615         <source>Ctrl+P</source>
    616         <translation type="unfinished"></translation>
    617     </message>
    618     <message>
    619         <location filename="../ui/mainwindow.ui" line="573"/>
    620         <source>Save</source>
    621         <translation type="unfinished"></translation>
    622     </message>
    623     <message>
    624         <location filename="../ui/mainwindow.ce.ui" line="531"/>
    625         <location filename="../ui/mainwindow.ui" line="544"/>
    626         <source>Detect language automatically</source>
    627         <translation type="unfinished"></translation>
    628     </message>
    629     <message>
    630         <location filename="../ui/mainwindow.ce.ui" line="534"/>
    631         <location filename="../ui/mainwindow.ui" line="547"/>
     704        <location filename="../ui/mainwindow.ui" line="533"/>
    632705        <source>Detect language automatically based on regional settings</source>
    633706        <translation type="unfinished"></translation>
     
    673746    </message>
    674747    <message>
    675         <location filename="../ui/settingsdialog.ce.ui" line="202"/>
    676         <location filename="../ui/settingsdialog.ui" line="288"/>
     748        <location filename="../ui/settingsdialog.ce.ui" line="184"/>
     749        <location filename="../ui/settingsdialog.ui" line="235"/>
     750        <source>Output settings:</source>
     751        <translation type="unfinished"></translation>
     752    </message>
     753    <message>
     754        <location filename="../ui/settingsdialog.ce.ui" line="210"/>
     755        <location filename="../ui/settingsdialog.ui" line="261"/>
    677756        <source>Font color for printing</source>
    678757        <translation type="unfinished"></translation>
    679758    </message>
    680759    <message>
    681         <location filename="../ui/settingsdialog.ce.ui" line="205"/>
    682         <location filename="../ui/settingsdialog.ui" line="291"/>
     760        <location filename="../ui/settingsdialog.ce.ui" line="213"/>
     761        <location filename="../ui/settingsdialog.ui" line="264"/>
    683762        <source>&amp;Color...</source>
    684763        <translation type="unfinished"></translation>
    685764    </message>
    686765    <message>
    687         <location filename="../ui/settingsdialog.ce.ui" line="219"/>
    688         <location filename="../ui/settingsdialog.ui" line="305"/>
     766        <location filename="../ui/settingsdialog.ce.ui" line="193"/>
     767        <location filename="../ui/settingsdialog.ui" line="244"/>
    689768        <source>Font face for printing</source>
    690769        <translation type="unfinished"></translation>
    691770    </message>
    692771    <message>
    693         <location filename="../ui/settingsdialog.ce.ui" line="222"/>
    694         <location filename="../ui/settingsdialog.ui" line="308"/>
     772        <location filename="../ui/settingsdialog.ce.ui" line="196"/>
     773        <location filename="../ui/settingsdialog.ui" line="247"/>
    695774        <source>&amp;Font...</source>
    696775        <translation type="unfinished"></translation>
    697776    </message>
    698777    <message>
    699         <location filename="../ui/settingsdialog.ce.ui" line="287"/>
    700         <location filename="../ui/settingsdialog.ce.ui" line="293"/>
    701         <location filename="../ui/settingsdialog.ui" line="377"/>
    702         <location filename="../ui/settingsdialog.ui" line="383"/>
     778        <location filename="../ui/settingsdialog.ce.ui" line="279"/>
     779        <location filename="../ui/settingsdialog.ce.ui" line="285"/>
     780        <location filename="../ui/settingsdialog.ui" line="331"/>
     781        <location filename="../ui/settingsdialog.ui" line="337"/>
    703782        <source>Help</source>
    704783        <translation type="unfinished"></translation>
    705784    </message>
    706785    <message>
    707         <location filename="../ui/settingsdialog.ce.ui" line="290"/>
    708         <location filename="../ui/settingsdialog.ui" line="380"/>
     786        <location filename="../ui/settingsdialog.ce.ui" line="282"/>
     787        <location filename="../ui/settingsdialog.ui" line="334"/>
    709788        <source>Get preferences help</source>
    710789        <translation type="unfinished"></translation>
    711790    </message>
    712791    <message>
    713         <location filename="../ui/settingsdialog.ce.ui" line="323"/>
    714         <location filename="../ui/settingsdialog.ui" line="425"/>
     792        <location filename="../ui/settingsdialog.ce.ui" line="315"/>
     793        <location filename="../ui/settingsdialog.ui" line="391"/>
    715794        <source>Save new preferences</source>
    716795        <translation type="unfinished"></translation>
    717796    </message>
    718797    <message>
    719         <location filename="../ui/settingsdialog.ce.ui" line="326"/>
    720         <location filename="../ui/settingsdialog.ui" line="428"/>
     798        <location filename="../ui/settingsdialog.ce.ui" line="318"/>
     799        <location filename="../ui/settingsdialog.ui" line="394"/>
    721800        <source>&amp;OK</source>
    722801        <translation type="unfinished"></translation>
    723802    </message>
    724803    <message>
    725         <location filename="../ui/settingsdialog.ce.ui" line="343"/>
    726         <location filename="../ui/settingsdialog.ui" line="445"/>
     804        <location filename="../ui/settingsdialog.ce.ui" line="335"/>
     805        <location filename="../ui/settingsdialog.ui" line="411"/>
    727806        <source>Close without saving preferences</source>
    728807        <translation type="unfinished"></translation>
    729808    </message>
    730809    <message>
    731         <location filename="../ui/settingsdialog.ce.ui" line="346"/>
    732         <location filename="../ui/settingsdialog.ui" line="448"/>
     810        <location filename="../ui/settingsdialog.ce.ui" line="338"/>
     811        <location filename="../ui/settingsdialog.ui" line="414"/>
    733812        <source>&amp;Cancel</source>
    734813        <translation type="unfinished"></translation>
     
    740819    </message>
    741820    <message>
    742         <location filename="../ui/settingsdialog.ui" line="235"/>
    743         <source>Print settings:</source>
    744         <translation type="unfinished"></translation>
    745     </message>
    746     <message>
    747         <location filename="../ui/settingsdialog.ui" line="249"/>
    748         <source>&amp;Left margin:</source>
    749         <translation type="unfinished"></translation>
    750     </message>
    751     <message>
    752         <location filename="../ui/settingsdialog.ui" line="262"/>
    753         <source>Left border margin for page</source>
    754         <translation type="unfinished"></translation>
    755     </message>
    756     <message>
    757         <location filename="../ui/settingsdialog.ui" line="329"/>
     821        <location filename="../ui/settingsdialog.ui" line="283"/>
    758822        <source>Restore main window state and position on application restart</source>
    759823        <translation type="unfinished"></translation>
    760824    </message>
    761825    <message>
    762         <location filename="../ui/settingsdialog.ui" line="332"/>
     826        <location filename="../ui/settingsdialog.ui" line="286"/>
    763827        <source>Save main window state and position</source>
    764828        <translation type="unfinished"></translation>
    765829    </message>
    766830    <message>
    767         <location filename="../ui/settingsdialog.ui" line="403"/>
     831        <location filename="../ui/settingsdialog.ui" line="369"/>
    768832        <source>Hover mouse pointer over dialog elements to get additional help</source>
    769833        <translation type="unfinished"></translation>
  • trunk/i18n/ru.ts

    r39 r42  
    1616    </message>
    1717    <message>
    18         <location filename="../src/tspmodel.cpp" line="156"/>
     18        <location filename="../src/tspmodel.cpp" line="147"/>
    1919        <source>Unexpected end of file.</source>
    2020        <translation>Неожиданный конец файла.</translation>
    2121    </message>
    2222    <message>
    23         <location filename="../src/tspmodel.cpp" line="158"/>
     23        <location filename="../src/tspmodel.cpp" line="149"/>
    2424        <source>Corrupt data read. File possibly corrupted.</source>
    25         <translation type="unfinished"></translation>
    26     </message>
    27     <message>
    28         <location filename="../src/tspmodel.cpp" line="160"/>
     25        <translation>Прочитаны испорченные данные.
     26Возможно, файл поврежден.</translation>
     27    </message>
     28    <message>
     29        <location filename="../src/tspmodel.cpp" line="151"/>
    2930        <source>Unknown error.</source>
    3031        <translation>Неизвестная ошибка.</translation>
    3132    </message>
    3233    <message>
    33         <location filename="../src/tspmodel.cpp" line="161"/>
    34         <location filename="../src/tspmodel.cpp" line="169"/>
    35         <location filename="../src/tspmodel.cpp" line="184"/>
    36         <location filename="../src/tspmodel.cpp" line="200"/>
    37         <location filename="../src/tspmodel.cpp" line="213"/>
     34        <location filename="../src/tspmodel.cpp" line="152"/>
     35        <location filename="../src/tspmodel.cpp" line="160"/>
     36        <location filename="../src/tspmodel.cpp" line="175"/>
     37        <location filename="../src/tspmodel.cpp" line="191"/>
     38        <location filename="../src/tspmodel.cpp" line="204"/>
     39        <location filename="../src/tspmodel.cpp" line="234"/>
    3840        <location filename="../src/tspmodel.cpp" line="243"/>
    39         <location filename="../src/tspmodel.cpp" line="252"/>
    4041        <source>Task Load</source>
    41         <translation>Загрузка задания</translation>
    42     </message>
    43     <message>
    44         <location filename="../src/tspmodel.cpp" line="161"/>
    45         <location filename="../src/tspmodel.cpp" line="184"/>
    46         <location filename="../src/tspmodel.cpp" line="200"/>
    47         <location filename="../src/tspmodel.cpp" line="213"/>
     42        <translation>Загрузка условия</translation>
     43    </message>
     44    <message>
     45        <location filename="../src/tspmodel.cpp" line="152"/>
     46        <location filename="../src/tspmodel.cpp" line="175"/>
     47        <location filename="../src/tspmodel.cpp" line="191"/>
     48        <location filename="../src/tspmodel.cpp" line="204"/>
     49        <location filename="../src/tspmodel.cpp" line="234"/>
    4850        <location filename="../src/tspmodel.cpp" line="243"/>
    49         <location filename="../src/tspmodel.cpp" line="252"/>
    5051        <source>Unable to load task:</source>
    51         <translation>Невозможно загрузить задание:</translation>
    52     </message>
    53     <message>
    54         <location filename="../src/tspmodel.cpp" line="169"/>
     52        <translation>Невозможно загрузить условие:</translation>
     53    </message>
     54    <message>
     55        <location filename="../src/tspmodel.cpp" line="160"/>
    5556        <source>Unable to open task file.
    5657Error: %1</source>
    57         <translation>Невозможно открыть файл задания.
     58        <translation>Невозможно открыть файл с условием.
    5859Ошибка: %1</translation>
    5960    </message>
    6061    <message>
    61         <location filename="../src/tspmodel.cpp" line="184"/>
     62        <location filename="../src/tspmodel.cpp" line="175"/>
    6263        <source>Unknown file format or file is corrupted.</source>
    6364        <translation>Неизвестный формат файла или файл поврежден.</translation>
    6465    </message>
    6566    <message>
    66         <location filename="../src/tspmodel.cpp" line="200"/>
    67         <location filename="../src/tspmodel.cpp" line="243"/>
     67        <location filename="../src/tspmodel.cpp" line="191"/>
     68        <location filename="../src/tspmodel.cpp" line="234"/>
    6869        <source>File version is newer than application supports.
    6970Please, try to update application.</source>
     
    7273    </message>
    7374    <message>
    74         <location filename="../src/tspmodel.cpp" line="213"/>
    75         <location filename="../src/tspmodel.cpp" line="252"/>
     75        <location filename="../src/tspmodel.cpp" line="204"/>
     76        <location filename="../src/tspmodel.cpp" line="243"/>
    7677        <source>Unexpected data read.
    7778File is possibly corrupted.</source>
    78         <translation type="unfinished"></translation>
    79     </message>
    80     <message>
    81         <location filename="../src/tspmodel.cpp" line="282"/>
    82         <location filename="../src/tspmodel.cpp" line="288"/>
    83         <location filename="../src/tspmodel.cpp" line="295"/>
    84         <location filename="../src/tspmodel.cpp" line="302"/>
    85         <location filename="../src/tspmodel.cpp" line="309"/>
    86         <location filename="../src/tspmodel.cpp" line="316"/>
    87         <location filename="../src/tspmodel.cpp" line="323"/>
    88         <location filename="../src/tspmodel.cpp" line="333"/>
     79        <translation>Прочитано неожиданные данные.
     80Возможно, файл поврежден.</translation>
     81    </message>
     82    <message>
     83        <location filename="../src/tspmodel.cpp" line="273"/>
     84        <location filename="../src/tspmodel.cpp" line="279"/>
     85        <location filename="../src/tspmodel.cpp" line="286"/>
     86        <location filename="../src/tspmodel.cpp" line="293"/>
     87        <location filename="../src/tspmodel.cpp" line="300"/>
     88        <location filename="../src/tspmodel.cpp" line="307"/>
     89        <location filename="../src/tspmodel.cpp" line="314"/>
     90        <location filename="../src/tspmodel.cpp" line="324"/>
    8991        <source>Task Save</source>
    90         <translation>Сохранение задачи</translation>
    91     </message>
    92     <message>
    93         <location filename="../src/tspmodel.cpp" line="282"/>
     92        <translation>Сохранение условия</translation>
     93    </message>
     94    <message>
     95        <location filename="../src/tspmodel.cpp" line="273"/>
    9496        <source>Unable to create task file.
    9597Error: %1
    9698Maybe, file is read-only?</source>
    97         <translation type="unfinished"></translation>
    98     </message>
    99     <message>
    100         <location filename="../src/tspmodel.cpp" line="288"/>
    101         <location filename="../src/tspmodel.cpp" line="295"/>
    102         <location filename="../src/tspmodel.cpp" line="302"/>
    103         <location filename="../src/tspmodel.cpp" line="309"/>
    104         <location filename="../src/tspmodel.cpp" line="316"/>
    105         <location filename="../src/tspmodel.cpp" line="323"/>
    106         <location filename="../src/tspmodel.cpp" line="333"/>
     99        <translation>Невозможно создать файл с условием.
     100Ошибка: %1
     101Возможно, файл только для чтения?</translation>
     102    </message>
     103    <message>
     104        <location filename="../src/tspmodel.cpp" line="279"/>
     105        <location filename="../src/tspmodel.cpp" line="286"/>
     106        <location filename="../src/tspmodel.cpp" line="293"/>
     107        <location filename="../src/tspmodel.cpp" line="300"/>
     108        <location filename="../src/tspmodel.cpp" line="307"/>
     109        <location filename="../src/tspmodel.cpp" line="314"/>
     110        <location filename="../src/tspmodel.cpp" line="324"/>
    107111        <source>Unable to save task.
    108112Error: %1</source>
    109         <translation>Невозможно сохранить задание.
     113        <translation>Невозможно сохранить условие.
    110114Ошибка: %1</translation>
     115    </message>
     116</context>
     117<context>
     118    <name>CTSPSolver</name>
     119    <message>
     120        <location filename="../src/tspsolver.cpp" line="137"/>
     121        <source>%v of %m parts found</source>
     122        <translation>Найдено %v з %m переходов</translation>
     123    </message>
     124    <message>
     125        <location filename="../src/tspsolver.cpp" line="141"/>
     126        <source>Calculating optimal route...</source>
     127        <translation>Расчет оптимального пути...</translation>
     128    </message>
     129    <message>
     130        <location filename="../src/tspsolver.cpp" line="142"/>
     131        <source>Solution Progress</source>
     132        <translation>Состояние решения</translation>
     133    </message>
     134    <message>
     135        <location filename="../src/tspsolver.cpp" line="210"/>
     136        <source>Solution Result</source>
     137        <translation>Результат решения</translation>
     138    </message>
     139    <message>
     140        <location filename="../src/tspsolver.cpp" line="210"/>
     141        <source>This task has no solution.</source>
     142        <translation>У данной задачи нет решения.</translation>
    111143    </message>
    112144</context>
     
    114146    <name>MainWindow</name>
    115147    <message>
    116         <location filename="../src/mainwindow.cpp" line="134"/>
    117         <location filename="../src/mainwindow.cpp" line="323"/>
    118         <location filename="../src/mainwindow.cpp" line="332"/>
     148        <location filename="../src/mainwindow.cpp" line="141"/>
     149        <location filename="../src/mainwindow.cpp" line="439"/>
     150        <location filename="../src/mainwindow.cpp" line="448"/>
    119151        <source>Language change</source>
    120152        <translation>Смена языка</translation>
    121153    </message>
    122154    <message>
    123         <location filename="../src/mainwindow.cpp" line="134"/>
     155        <location filename="../src/mainwindow.cpp" line="141"/>
    124156        <source>Unable to load translation language.</source>
    125157        <translation>Невозможно загрузить перевод.</translation>
    126158    </message>
    127159    <message>
    128         <location filename="../src/mainwindow.cpp" line="180"/>
     160        <location filename="../src/mainwindow.cpp" line="202"/>
    129161        <source>All Supported Formats</source>
    130162        <translation>Все поддерживаемые форматы</translation>
    131163    </message>
    132164    <message>
    133         <location filename="../src/mainwindow.cpp" line="183"/>
    134         <location filename="../src/mainwindow.cpp" line="203"/>
     165        <location filename="../src/mainwindow.cpp" line="205"/>
     166        <location filename="../src/mainwindow.cpp" line="232"/>
     167        <location filename="../src/mainwindow.cpp" line="251"/>
    135168        <source>All Files</source>
    136169        <translation>Все файлы</translation>
    137170    </message>
    138171    <message>
     172        <location filename="../src/mainwindow.cpp" line="203"/>
     173        <location filename="../src/mainwindow.cpp" line="204"/>
     174        <source>%1 Task Files</source>
     175        <translation>Файлы условий %1</translation>
     176    </message>
     177    <message>
    139178        <location filename="../src/mainwindow.cpp" line="181"/>
    140         <location filename="../src/mainwindow.cpp" line="182"/>
    141         <source>%1 Task Files</source>
    142         <translation>Файлы задач %1</translation>
    143     </message>
    144     <message>
    145         <location filename="../src/mainwindow.cpp" line="162"/>
    146179        <source>New Task</source>
    147         <translation>Новая задача</translation>
    148     </message>
    149     <message>
    150         <location filename="../src/mainwindow.cpp" line="162"/>
    151         <location filename="../src/mainwindow.cpp" line="173"/>
    152         <location filename="../src/mainwindow.cpp" line="346"/>
     180        <translation>Создать задачу</translation>
     181    </message>
     182    <message>
     183        <location filename="../src/mainwindow.cpp" line="181"/>
     184        <location filename="../src/mainwindow.cpp" line="195"/>
     185        <location filename="../src/mainwindow.cpp" line="462"/>
    153186        <source>Would you like to save changes in current task?</source>
    154187        <translation>Желаете сохранить изменения в текущей задаче?</translation>
    155188    </message>
    156189    <message>
    157         <location filename="../src/mainwindow.cpp" line="173"/>
     190        <location filename="../src/mainwindow.cpp" line="195"/>
    158191        <source>Task Open</source>
    159192        <translation>Открытие задания</translation>
    160193    </message>
    161194    <message>
    162         <location filename="../src/mainwindow.cpp" line="202"/>
     195        <location filename="../src/mainwindow.cpp" line="230"/>
     196        <source>HTML Files</source>
     197        <translation>Файлы HTML</translation>
     198    </message>
     199    <message>
     200        <location filename="../src/mainwindow.cpp" line="231"/>
     201        <source>OpenDocument Files</source>
     202        <translation>Файлы OpenDocument</translation>
     203    </message>
     204    <message>
     205        <location filename="../src/mainwindow.cpp" line="250"/>
    163206        <source>%1 Task File</source>
    164         <translation>Файл задачи %1</translation>
    165     </message>
    166     <message>
    167         <location filename="../src/mainwindow.cpp" line="259"/>
     207        <translation>Файл условия %1</translation>
     208    </message>
     209    <message>
     210        <location filename="../src/mainwindow.cpp" line="273"/>
     211        <source>Settings Changed</source>
     212        <translation>Параметры изменены</translation>
     213    </message>
     214    <message>
     215        <location filename="../src/mainwindow.cpp" line="273"/>
     216        <source>You have changed color settings.
     217Do you wish to apply them to current solution text?</source>
     218        <translation>Вы изменили параметры цвета.
     219Желаете применить их к текущему тексту решения?</translation>
     220    </message>
     221    <message>
     222        <location filename="../src/mainwindow.cpp" line="337"/>
    168223        <source>Data error</source>
    169224        <translation>Ошибка в данных</translation>
    170225    </message>
    171226    <message>
    172         <location filename="../src/mainwindow.cpp" line="259"/>
     227        <location filename="../src/mainwindow.cpp" line="337"/>
    173228        <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
    174229        <translation>Ошибка в ячейке [Строка %1; Колонка %2]: Неверный формат данных.</translation>
    175230    </message>
    176231    <message>
    177         <location filename="../src/mainwindow.cpp" line="268"/>
    178         <source>Solution error</source>
    179         <translation>Ошибка при решении</translation>
    180     </message>
    181     <message>
    182         <location filename="../src/mainwindow.cpp" line="268"/>
    183         <source>There was an error while solving the task.</source>
    184         <translation>Во время решения задачи возникла ошибка.</translation>
    185     </message>
    186     <message>
    187         <location filename="../src/mainwindow.cpp" line="323"/>
     232        <location filename="../src/mainwindow.cpp" line="350"/>
     233        <source>Variant #%1</source>
     234        <translation>Вариант №%1</translation>
     235    </message>
     236    <message>
     237        <location filename="../src/mainwindow.cpp" line="351"/>
     238        <source>Task:</source>
     239        <translation>Условие:</translation>
     240    </message>
     241    <message>
     242        <location filename="../src/mainwindow.cpp" line="354"/>
     243        <location filename="../src/mainwindow.cpp" line="380"/>
     244        <source>Solution of Variant #%1 task</source>
     245        <translation>Решение варианта №%1</translation>
     246    </message>
     247    <message>
     248        <location filename="../src/mainwindow.cpp" line="361"/>
     249        <source>Step #%1</source>
     250        <translation>Шаг №%1</translation>
     251    </message>
     252    <message>
     253        <location filename="../src/mainwindow.cpp" line="364"/>
     254        <source>This step has alternate candidates for branching.</source>
     255        <translation>У этого шага есть альтернативные кандидаты на ветвление.</translation>
     256    </message>
     257    <message>
     258        <location filename="../src/mainwindow.cpp" line="376"/>
     259        <source>Optimal path:</source>
     260        <translation>Оптимальный путь:</translation>
     261    </message>
     262    <message>
     263        <location filename="../src/mainwindow.cpp" line="378"/>
     264        <source>The price is &lt;b&gt;%1&lt;/b&gt; units.</source>
     265        <translation>Стоимость - &lt;b&gt;%1&lt;/b&gt; единиц.</translation>
     266    </message>
     267    <message>
     268        <location filename="../src/mainwindow.cpp" line="439"/>
    188269        <source>Language will be autodetected on next application start.</source>
    189270        <translation>Язык будет автоматически определен при следующем запуске приложения.</translation>
    190271    </message>
    191272    <message>
    192         <location filename="../src/mainwindow.cpp" line="332"/>
     273        <location filename="../src/mainwindow.cpp" line="448"/>
    193274        <source>You have language autodetection turned on.
    194275It needs to be off.
     
    199280    </message>
    200281    <message>
    201         <location filename="../src/mainwindow.cpp" line="346"/>
     282        <location filename="../src/mainwindow.cpp" line="462"/>
    202283        <source>Application Close</source>
    203284        <translation>Закрытие приложения</translation>
    204285    </message>
    205286    <message>
    206         <location filename="../ui/mainwindow.ce.ui" line="56"/>
    207         <location filename="../ui/mainwindow.ui" line="35"/>
     287        <location filename="../ui/mainwindow.ce.ui" line="53"/>
     288        <location filename="../ui/mainwindow.ui" line="41"/>
    208289        <source>Task</source>
    209         <translation>Задача</translation>
    210     </message>
    211     <message>
    212         <location filename="../ui/mainwindow.ce.ui" line="77"/>
    213         <location filename="../ui/mainwindow.ui" line="56"/>
     290        <translation>Условие</translation>
     291    </message>
     292    <message>
     293        <location filename="../ui/mainwindow.ce.ui" line="74"/>
     294        <location filename="../ui/mainwindow.ui" line="62"/>
    214295        <source>&amp;Variant:</source>
    215296        <translation>&amp;Вариант:</translation>
    216297    </message>
    217298    <message>
    218         <location filename="../ui/mainwindow.ce.ui" line="90"/>
    219         <location filename="../ui/mainwindow.ui" line="69"/>
     299        <location filename="../ui/mainwindow.ce.ui" line="87"/>
     300        <location filename="../ui/mainwindow.ui" line="75"/>
    220301        <source>Number of variant</source>
    221302        <translation>Номер варианта</translation>
    222303    </message>
    223304    <message>
    224         <location filename="../ui/mainwindow.ce.ui" line="100"/>
    225         <location filename="../ui/mainwindow.ui" line="79"/>
     305        <location filename="../ui/mainwindow.ce.ui" line="97"/>
     306        <location filename="../ui/mainwindow.ui" line="85"/>
    226307        <source>&amp;Cities:</source>
    227308        <translation>&amp;Городов:</translation>
    228309    </message>
    229310    <message>
    230         <location filename="../ui/mainwindow.ce.ui" line="113"/>
    231         <location filename="../ui/mainwindow.ui" line="92"/>
     311        <location filename="../ui/mainwindow.ce.ui" line="110"/>
     312        <location filename="../ui/mainwindow.ui" line="98"/>
    232313        <source>Number of cities</source>
    233314        <translation>Количество городов, которые обходит коммивояжер</translation>
    234315    </message>
    235316    <message>
    236         <location filename="../ui/mainwindow.ce.ui" line="144"/>
    237         <location filename="../ui/mainwindow.ui" line="123"/>
     317        <location filename="../ui/mainwindow.ce.ui" line="141"/>
     318        <location filename="../ui/mainwindow.ui" line="129"/>
    238319        <source>Cost of travel from city to city</source>
    239320        <translation>Стоимости переходов из города в город</translation>
    240321    </message>
    241322    <message>
    242         <location filename="../ui/mainwindow.ce.ui" line="172"/>
    243         <location filename="../ui/mainwindow.ui" line="151"/>
     323        <location filename="../ui/mainwindow.ce.ui" line="169"/>
     324        <location filename="../ui/mainwindow.ui" line="157"/>
    244325        <source>Fill table with random numbers</source>
    245326        <translation>Заполнить таблицу случайными значениями</translation>
    246327    </message>
    247328    <message>
    248         <location filename="../ui/mainwindow.ce.ui" line="175"/>
    249         <location filename="../ui/mainwindow.ui" line="154"/>
     329        <location filename="../ui/mainwindow.ce.ui" line="172"/>
     330        <location filename="../ui/mainwindow.ui" line="160"/>
    250331        <source>Random</source>
    251332        <translation>Случайно</translation>
    252333    </message>
    253334    <message>
    254         <location filename="../ui/mainwindow.ce.ui" line="189"/>
    255         <location filename="../ui/mainwindow.ui" line="168"/>
     335        <location filename="../ui/mainwindow.ce.ui" line="186"/>
     336        <location filename="../ui/mainwindow.ui" line="174"/>
    256337        <source>Solve current task</source>
    257338        <translation>Решить текущую задачу</translation>
    258339    </message>
    259340    <message>
    260         <location filename="../ui/mainwindow.ce.ui" line="192"/>
    261         <location filename="../ui/mainwindow.ui" line="171"/>
     341        <location filename="../ui/mainwindow.ce.ui" line="189"/>
     342        <location filename="../ui/mainwindow.ui" line="177"/>
    262343        <source>Solve</source>
    263344        <translation>Решить</translation>
    264345    </message>
    265346    <message>
    266         <location filename="../ui/mainwindow.ce.ui" line="206"/>
    267         <location filename="../ui/mainwindow.ui" line="185"/>
     347        <location filename="../ui/mainwindow.ce.ui" line="203"/>
     348        <location filename="../ui/mainwindow.ui" line="191"/>
    268349        <source>Solution</source>
    269350        <translation>Решение</translation>
    270351    </message>
    271352    <message>
    272         <location filename="../ui/mainwindow.ce.ui" line="223"/>
    273         <location filename="../ui/mainwindow.ui" line="202"/>
     353        <location filename="../ui/mainwindow.ce.ui" line="212"/>
     354        <location filename="../ui/mainwindow.ui" line="200"/>
    274355        <source>Solution steps</source>
    275356        <translation>Ход решения</translation>
    276357    </message>
    277358    <message>
    278         <location filename="../ui/mainwindow.ce.ui" line="233"/>
    279         <location filename="../ui/mainwindow.ui" line="212"/>
    280         <source>Solution graph</source>
    281         <translation>Граф решения</translation>
    282     </message>
    283     <message>
    284         <location filename="../ui/mainwindow.ce.ui" line="259"/>
    285         <location filename="../ui/mainwindow.ui" line="240"/>
     359        <location filename="../ui/mainwindow.ce.ui" line="242"/>
     360        <location filename="../ui/mainwindow.ui" line="230"/>
    286361        <source>&amp;File</source>
    287362        <translation>&amp;Файл</translation>
    288363    </message>
    289364    <message>
    290         <location filename="../ui/mainwindow.ce.ui" line="266"/>
    291         <location filename="../ui/mainwindow.ui" line="244"/>
     365        <location filename="../ui/mainwindow.ce.ui" line="249"/>
     366        <location filename="../ui/mainwindow.ui" line="234"/>
    292367        <source>Save &amp;As...</source>
    293368        <translation>Сохранить &amp;как...</translation>
    294369    </message>
    295370    <message>
    296         <location filename="../ui/mainwindow.ce.ui" line="348"/>
    297         <location filename="../ui/mainwindow.ui" line="361"/>
     371        <location filename="../ui/mainwindow.ce.ui" line="277"/>
     372        <location filename="../ui/mainwindow.ui" line="265"/>
     373        <source>&amp;Language</source>
     374        <comment>Please, append &quot; / Language&quot; when translating this string.</comment>
     375        <translation>Язык / &amp;Language</translation>
     376    </message>
     377    <message>
     378        <location filename="../ui/mainwindow.ce.ui" line="328"/>
     379        <location filename="../ui/mainwindow.ui" line="351"/>
    298380        <source>Solution S&amp;teps</source>
    299381        <translation>&amp;Ход решения</translation>
    300382    </message>
    301383    <message>
    302         <location filename="../ui/mainwindow.ce.ui" line="362"/>
    303         <location filename="../ui/mainwindow.ui" line="375"/>
     384        <location filename="../ui/mainwindow.ce.ui" line="342"/>
     385        <location filename="../ui/mainwindow.ui" line="365"/>
    304386        <source>Solution &amp;Graph</source>
    305387        <translation>&amp;Граф решения</translation>
    306388    </message>
    307389    <message>
    308         <location filename="../ui/mainwindow.ce.ui" line="466"/>
    309         <location filename="../ui/mainwindow.ui" line="479"/>
     390        <location filename="../ui/mainwindow.ce.ui" line="359"/>
     391        <source>Solution...</source>
     392        <translation>Решение...</translation>
     393    </message>
     394    <message>
     395        <location filename="../ui/mainwindow.ce.ui" line="449"/>
     396        <location filename="../ui/mainwindow.ui" line="469"/>
    310397        <source>Context &amp;Help</source>
    311398        <translation>&amp;Контекстная справка</translation>
    312399    </message>
    313400    <message>
    314         <location filename="../ui/mainwindow.ce.ui" line="557"/>
    315         <location filename="../ui/mainwindow.ui" line="570"/>
     401        <location filename="../ui/mainwindow.ce.ui" line="540"/>
     402        <location filename="../ui/mainwindow.ui" line="556"/>
    316403        <source>&amp;Save</source>
    317404        <translation>Со&amp;хранить</translation>
    318405    </message>
    319406    <message>
    320         <location filename="../ui/mainwindow.ce.ui" line="287"/>
    321         <location filename="../ui/mainwindow.ui" line="268"/>
     407        <location filename="../ui/mainwindow.ce.ui" line="267"/>
     408        <location filename="../ui/mainwindow.ui" line="255"/>
    322409        <source>&amp;Settings</source>
    323410        <translation>&amp;Настройки</translation>
     
    330417    </message>
    331418    <message>
    332         <location filename="../ui/mainwindow.ce.ui" line="297"/>
    333         <location filename="../ui/mainwindow.ui" line="278"/>
    334         <source>&amp;Language</source>
    335         <extracomment>Please, append &quot; / Language&quot; when translating this string.
    336 ----------
    337 Please, append &quot; / Language&quot; when translating this string.</extracomment>
    338         <translation>Язык / &amp;Language</translation>
    339     </message>
    340     <message>
    341         <location filename="../ui/mainwindow.ce.ui" line="313"/>
    342         <location filename="../ui/mainwindow.ui" line="294"/>
     419        <location filename="../ui/mainwindow.ce.ui" line="293"/>
     420        <location filename="../ui/mainwindow.ui" line="281"/>
    343421        <source>&amp;Help</source>
    344422        <translation>&amp;Помощь</translation>
    345423    </message>
    346424    <message>
    347         <location filename="../ui/mainwindow.ce.ui" line="351"/>
    348         <location filename="../ui/mainwindow.ui" line="364"/>
     425        <location filename="../ui/mainwindow.ce.ui" line="331"/>
     426        <location filename="../ui/mainwindow.ui" line="354"/>
    349427        <source>Save solution steps</source>
    350428        <translation>Сохранить ход решения</translation>
    351429    </message>
    352430    <message>
    353         <location filename="../ui/mainwindow.ce.ui" line="354"/>
    354         <location filename="../ui/mainwindow.ui" line="367"/>
     431        <location filename="../ui/mainwindow.ce.ui" line="334"/>
     432        <location filename="../ui/mainwindow.ui" line="357"/>
    355433        <source>Save solution steps only</source>
    356434        <translation>Сохранить только ход решения</translation>
    357435    </message>
    358436    <message>
    359         <location filename="../ui/mainwindow.ce.ui" line="365"/>
    360         <location filename="../ui/mainwindow.ui" line="378"/>
     437        <location filename="../ui/mainwindow.ce.ui" line="345"/>
     438        <location filename="../ui/mainwindow.ui" line="368"/>
    361439        <source>Save solution graph</source>
    362440        <translation>Сохранить граф решения</translation>
    363441    </message>
    364442    <message>
    365         <location filename="../ui/mainwindow.ce.ui" line="368"/>
    366         <location filename="../ui/mainwindow.ui" line="381"/>
     443        <location filename="../ui/mainwindow.ce.ui" line="348"/>
     444        <location filename="../ui/mainwindow.ui" line="371"/>
    367445        <source>Save solution graph only</source>
    368446        <translation>Сохранить только граф решения</translation>
    369447    </message>
    370448    <message>
    371         <location filename="../ui/mainwindow.ce.ui" line="376"/>
    372         <location filename="../ui/mainwindow.ui" line="389"/>
    373         <source>&amp;Solution</source>
    374         <translation>&amp;Решение</translation>
    375     </message>
    376     <message>
    377         <location filename="../ui/mainwindow.ce.ui" line="379"/>
    378         <location filename="../ui/mainwindow.ui" line="392"/>
     449        <location filename="../ui/mainwindow.ce.ui" line="362"/>
     450        <location filename="../ui/mainwindow.ui" line="382"/>
    379451        <source>Save solution</source>
    380452        <translation>Сохранить решение</translation>
    381453    </message>
    382454    <message>
    383         <location filename="../ui/mainwindow.ce.ui" line="382"/>
    384         <location filename="../ui/mainwindow.ui" line="395"/>
     455        <location filename="../ui/mainwindow.ce.ui" line="365"/>
     456        <location filename="../ui/mainwindow.ui" line="385"/>
    385457        <source>Save solution steps and graph</source>
    386458        <translation>Сохранить ход и граф решения</translation>
    387459    </message>
    388460    <message>
    389         <location filename="../ui/mainwindow.ce.ui" line="391"/>
    390         <location filename="../ui/mainwindow.ui" line="404"/>
     461        <location filename="../ui/mainwindow.ce.ui" line="374"/>
     462        <location filename="../ui/mainwindow.ui" line="394"/>
    391463        <source>&amp;New</source>
    392464        <translation>&amp;Создать</translation>
    393465    </message>
    394466    <message>
    395         <location filename="../ui/mainwindow.ce.ui" line="394"/>
    396         <location filename="../ui/mainwindow.ui" line="407"/>
     467        <location filename="../ui/mainwindow.ce.ui" line="377"/>
     468        <location filename="../ui/mainwindow.ui" line="397"/>
    397469        <source>New</source>
    398470        <translation>Создать</translation>
    399471    </message>
    400472    <message>
    401         <location filename="../ui/mainwindow.ce.ui" line="397"/>
    402         <location filename="../ui/mainwindow.ui" line="410"/>
     473        <location filename="../ui/mainwindow.ce.ui" line="380"/>
     474        <location filename="../ui/mainwindow.ui" line="400"/>
    403475        <source>New task</source>
    404476        <translation>Создать задачу</translation>
    405477    </message>
    406478    <message>
    407         <location filename="../ui/mainwindow.ce.ui" line="400"/>
    408         <location filename="../ui/mainwindow.ui" line="413"/>
     479        <location filename="../ui/mainwindow.ce.ui" line="383"/>
     480        <location filename="../ui/mainwindow.ui" line="403"/>
    409481        <source>Create new task</source>
    410482        <translation>Создать новую задачу</translation>
    411483    </message>
    412484    <message>
    413         <location filename="../ui/mainwindow.ce.ui" line="403"/>
    414         <location filename="../ui/mainwindow.ui" line="416"/>
     485        <location filename="../ui/mainwindow.ce.ui" line="386"/>
     486        <location filename="../ui/mainwindow.ui" line="406"/>
    415487        <source>Ctrl+N</source>
    416488        <translation></translation>
    417489    </message>
    418490    <message>
    419         <location filename="../ui/mainwindow.ce.ui" line="412"/>
    420         <location filename="../ui/mainwindow.ui" line="425"/>
     491        <location filename="../ui/mainwindow.ce.ui" line="395"/>
     492        <location filename="../ui/mainwindow.ui" line="415"/>
    421493        <source>&amp;Open...</source>
    422494        <translation>&amp;Открыть...</translation>
    423495    </message>
    424496    <message>
    425         <location filename="../ui/mainwindow.ce.ui" line="415"/>
    426         <location filename="../ui/mainwindow.ui" line="428"/>
     497        <location filename="../ui/mainwindow.ce.ui" line="398"/>
     498        <location filename="../ui/mainwindow.ui" line="418"/>
    427499        <source>Open...</source>
    428500        <translation>Открыть...</translation>
    429501    </message>
    430502    <message>
    431         <location filename="../ui/mainwindow.ce.ui" line="418"/>
    432         <location filename="../ui/mainwindow.ui" line="431"/>
     503        <location filename="../ui/mainwindow.ce.ui" line="401"/>
     504        <location filename="../ui/mainwindow.ui" line="421"/>
    433505        <source>Open task</source>
    434         <translation>Открыть задачу</translation>
    435     </message>
    436     <message>
    437         <location filename="../ui/mainwindow.ce.ui" line="421"/>
    438         <location filename="../ui/mainwindow.ui" line="434"/>
     506        <translation>Открыть условие</translation>
     507    </message>
     508    <message>
     509        <location filename="../ui/mainwindow.ce.ui" line="404"/>
     510        <location filename="../ui/mainwindow.ui" line="424"/>
    439511        <source>Open saved task</source>
    440512        <translation>Открыть сохраненное условие задачи</translation>
    441513    </message>
    442514    <message>
    443         <location filename="../ui/mainwindow.ce.ui" line="424"/>
    444         <location filename="../ui/mainwindow.ui" line="437"/>
     515        <location filename="../ui/mainwindow.ce.ui" line="407"/>
     516        <location filename="../ui/mainwindow.ui" line="427"/>
    445517        <source>Ctrl+O</source>
    446518        <translation></translation>
    447519    </message>
    448520    <message>
    449         <location filename="../ui/mainwindow.ce.ui" line="433"/>
    450         <location filename="../ui/mainwindow.ui" line="446"/>
     521        <location filename="../ui/mainwindow.ce.ui" line="416"/>
     522        <location filename="../ui/mainwindow.ui" line="436"/>
    451523        <source>&amp;Preferences...</source>
    452524        <translation>&amp;Параметры...</translation>
    453525    </message>
    454526    <message>
    455         <location filename="../ui/mainwindow.ce.ui" line="436"/>
    456         <location filename="../ui/mainwindow.ui" line="449"/>
     527        <location filename="../ui/mainwindow.ce.ui" line="419"/>
     528        <location filename="../ui/mainwindow.ui" line="439"/>
    457529        <source>Preferences...</source>
    458530        <translation>Параметры...</translation>
    459531    </message>
    460532    <message>
    461         <location filename="../ui/mainwindow.ce.ui" line="439"/>
    462         <location filename="../ui/mainwindow.ui" line="452"/>
     533        <location filename="../ui/mainwindow.ce.ui" line="422"/>
     534        <location filename="../ui/mainwindow.ui" line="442"/>
    463535        <source>Application preferences</source>
    464536        <translation>Настройка параметров программмы</translation>
    465537    </message>
    466538    <message>
    467         <location filename="../ui/mainwindow.ce.ui" line="451"/>
    468         <location filename="../ui/mainwindow.ui" line="464"/>
     539        <location filename="../ui/mainwindow.ce.ui" line="434"/>
     540        <location filename="../ui/mainwindow.ui" line="454"/>
    469541        <source>&amp;Contents</source>
    470542        <translation>&amp;Содежание</translation>
    471543    </message>
    472544    <message>
    473         <location filename="../ui/mainwindow.ce.ui" line="454"/>
    474         <location filename="../ui/mainwindow.ui" line="467"/>
     545        <location filename="../ui/mainwindow.ce.ui" line="437"/>
     546        <location filename="../ui/mainwindow.ui" line="457"/>
    475547        <source>Open help contents</source>
    476548        <translation>Вызвать справку программы</translation>
    477549    </message>
    478550    <message>
    479         <location filename="../ui/mainwindow.ce.ui" line="469"/>
    480         <location filename="../ui/mainwindow.ui" line="482"/>
     551        <location filename="../ui/mainwindow.ce.ui" line="452"/>
     552        <location filename="../ui/mainwindow.ui" line="472"/>
    481553        <source>Open context help</source>
    482554        <translation>Вызвать контекстную справку</translation>
    483555    </message>
    484556    <message>
    485         <location filename="../ui/mainwindow.ce.ui" line="478"/>
    486         <location filename="../ui/mainwindow.ui" line="491"/>
     557        <location filename="../ui/mainwindow.ce.ui" line="461"/>
     558        <location filename="../ui/mainwindow.ui" line="481"/>
    487559        <source>&amp;About...</source>
    488560        <translation>&amp;Про...</translation>
    489561    </message>
    490562    <message>
    491         <location filename="../ui/mainwindow.ce.ui" line="481"/>
    492         <location filename="../ui/mainwindow.ui" line="494"/>
     563        <location filename="../ui/mainwindow.ce.ui" line="464"/>
     564        <location filename="../ui/mainwindow.ui" line="484"/>
    493565        <source>About...</source>
    494566        <translation>Про...</translation>
    495567    </message>
    496568    <message>
    497         <location filename="../ui/mainwindow.ce.ui" line="484"/>
    498         <location filename="../ui/mainwindow.ui" line="497"/>
     569        <location filename="../ui/mainwindow.ce.ui" line="467"/>
     570        <location filename="../ui/mainwindow.ui" line="487"/>
    499571        <source>About application</source>
    500572        <translation>О программе</translation>
    501573    </message>
    502574    <message>
    503         <location filename="../ui/mainwindow.ce.ui" line="493"/>
    504         <location filename="../ui/mainwindow.ui" line="506"/>
     575        <location filename="../ui/mainwindow.ce.ui" line="476"/>
     576        <location filename="../ui/mainwindow.ui" line="496"/>
    505577        <source>E&amp;xit</source>
    506578        <translation>В&amp;ыход</translation>
    507579    </message>
    508580    <message>
    509         <location filename="../ui/mainwindow.ce.ui" line="496"/>
    510         <location filename="../ui/mainwindow.ui" line="509"/>
     581        <location filename="../ui/mainwindow.ce.ui" line="479"/>
     582        <location filename="../ui/mainwindow.ui" line="499"/>
    511583        <source>Exit application</source>
    512584        <translation>Выйти из приложения</translation>
    513585    </message>
    514586    <message>
    515         <location filename="../ui/mainwindow.ce.ui" line="505"/>
    516         <location filename="../ui/mainwindow.ui" line="518"/>
     587        <location filename="../ui/mainwindow.ce.ui" line="488"/>
     588        <location filename="../ui/mainwindow.ui" line="504"/>
    517589        <source>&amp;Task...</source>
    518         <translation>&amp;Задачу...</translation>
    519     </message>
    520     <message>
    521         <location filename="../ui/mainwindow.ce.ui" line="508"/>
    522         <location filename="../ui/mainwindow.ui" line="521"/>
     590        <translation>&amp;Условие...</translation>
     591    </message>
     592    <message>
     593        <location filename="../ui/mainwindow.ce.ui" line="491"/>
     594        <location filename="../ui/mainwindow.ui" line="507"/>
    523595        <source>Task...</source>
    524         <translation>Задачу...</translation>
    525     </message>
    526     <message>
    527         <location filename="../ui/mainwindow.ce.ui" line="511"/>
    528         <location filename="../ui/mainwindow.ce.ui" line="560"/>
    529         <location filename="../ui/mainwindow.ui" line="524"/>
    530         <location filename="../ui/mainwindow.ui" line="576"/>
     596        <translation>Условие...</translation>
     597    </message>
     598    <message>
     599        <location filename="../ui/mainwindow.ce.ui" line="494"/>
     600        <location filename="../ui/mainwindow.ce.ui" line="543"/>
     601        <location filename="../ui/mainwindow.ui" line="510"/>
     602        <location filename="../ui/mainwindow.ui" line="562"/>
    531603        <source>Save task</source>
    532         <translation>Сохранить задачу</translation>
    533     </message>
    534     <message>
    535         <location filename="../ui/mainwindow.ce.ui" line="514"/>
    536         <location filename="../ui/mainwindow.ui" line="527"/>
     604        <translation>Сохранить условие</translation>
     605    </message>
     606    <message>
     607        <location filename="../ui/mainwindow.ce.ui" line="497"/>
     608        <location filename="../ui/mainwindow.ui" line="513"/>
    537609        <source>Save task to file</source>
    538610        <translation>Сохранить условие задачи в файл</translation>
    539611    </message>
    540612    <message>
    541         <location filename="../ui/mainwindow.ce.ui" line="517"/>
    542         <location filename="../ui/mainwindow.ui" line="530"/>
     613        <location filename="../ui/mainwindow.ce.ui" line="500"/>
     614        <location filename="../ui/mainwindow.ui" line="516"/>
    543615        <source>Ctrl+S</source>
    544616        <translation></translation>
    545617    </message>
    546618    <message>
    547         <location filename="../ui/mainwindow.ce.ui" line="528"/>
    548         <location filename="../ui/mainwindow.ui" line="541"/>
     619        <location filename="../ui/mainwindow.ce.ui" line="511"/>
     620        <location filename="../ui/mainwindow.ui" line="527"/>
    549621        <source>&amp;Autodetect</source>
    550622        <translation>&amp;Автоопределение</translation>
    551623    </message>
    552624    <message>
    553         <location filename="../ui/mainwindow.ce.ui" line="545"/>
     625        <location filename="../ui/mainwindow.ce.ui" line="528"/>
    554626        <source>English</source>
    555627        <translation>Английский</translation>
    556628    </message>
    557629    <message>
    558         <location filename="../ui/mainwindow.ce.ui" line="563"/>
    559         <location filename="../ui/mainwindow.ui" line="579"/>
     630        <location filename="../ui/mainwindow.ce.ui" line="546"/>
     631        <location filename="../ui/mainwindow.ui" line="565"/>
    560632        <source>Save current task</source>
    561         <translation>Сохранить текущую задачу</translation>
    562     </message>
    563     <message>
    564         <location filename="../ui/mainwindow.ce.ui" line="572"/>
    565         <location filename="../ui/mainwindow.ui" line="588"/>
     633        <translation>Сохранить текущее условие</translation>
     634    </message>
     635    <message>
     636        <location filename="../ui/mainwindow.ce.ui" line="555"/>
     637        <location filename="../ui/mainwindow.ui" line="574"/>
    566638        <source>About &amp;Qt...</source>
    567639        <translation>Про &amp;Qt...</translation>
    568640    </message>
    569641    <message>
    570         <location filename="../ui/mainwindow.ce.ui" line="575"/>
    571         <location filename="../ui/mainwindow.ui" line="591"/>
     642        <location filename="../ui/mainwindow.ce.ui" line="558"/>
     643        <location filename="../ui/mainwindow.ui" line="577"/>
    572644        <source>About Qt...</source>
    573645        <translation>Про Qt...</translation>
    574646    </message>
    575647    <message>
    576         <location filename="../ui/mainwindow.ce.ui" line="578"/>
     648        <location filename="../ui/mainwindow.ce.ui" line="561"/>
    577649        <source>About Qt</source>
    578650        <translation>Про Qt</translation>
    579651    </message>
    580652    <message>
    581         <location filename="../ui/mainwindow.ce.ui" line="581"/>
    582         <location filename="../ui/mainwindow.ui" line="594"/>
     653        <location filename="../ui/mainwindow.ce.ui" line="564"/>
     654        <location filename="../ui/mainwindow.ui" line="580"/>
    583655        <source>About Qt library</source>
    584656        <translation>Про библиотеку Qt</translation>
    585657    </message>
    586658    <message>
    587         <location filename="../ui/mainwindow.ce.ui" line="291"/>
    588         <location filename="../ui/mainwindow.ui" line="272"/>
     659        <location filename="../ui/mainwindow.ce.ui" line="271"/>
     660        <location filename="../ui/mainwindow.ui" line="259"/>
    589661        <source>Select language</source>
    590662        <translation>Выбор языка</translation>
    591663    </message>
    592664    <message>
    593         <location filename="../ui/mainwindow.ce.ui" line="294"/>
    594         <location filename="../ui/mainwindow.ui" line="275"/>
     665        <location filename="../ui/mainwindow.ce.ui" line="274"/>
     666        <location filename="../ui/mainwindow.ui" line="262"/>
    595667        <source>Select application language</source>
    596668        <translation>Выбрать язык приложения</translation>
    597669    </message>
    598670    <message>
    599         <location filename="../ui/mainwindow.ui" line="332"/>
     671        <location filename="../ui/mainwindow.ui" line="322"/>
    600672        <source>P&amp;rint Setup...</source>
    601673        <translation>&amp;Настройка печати...</translation>
    602674    </message>
    603675    <message>
    604         <location filename="../ui/mainwindow.ui" line="335"/>
     676        <location filename="../ui/mainwindow.ui" line="325"/>
    605677        <source>Setup printing</source>
    606678        <translation>Настроить печать</translation>
    607679    </message>
    608680    <message>
    609         <location filename="../ui/mainwindow.ui" line="347"/>
     681        <location filename="../ui/mainwindow.ui" line="337"/>
    610682        <source>&amp;Print...</source>
    611683        <translation>&amp;Печать...</translation>
    612684    </message>
    613685    <message>
    614         <location filename="../ui/mainwindow.ui" line="350"/>
     686        <location filename="../ui/mainwindow.ui" line="340"/>
    615687        <source>Print solution results</source>
    616688        <translation>Распечатать результаты решения</translation>
    617689    </message>
    618690    <message>
    619         <location filename="../ui/mainwindow.ui" line="353"/>
     691        <location filename="../ui/mainwindow.ui" line="343"/>
    620692        <source>Ctrl+P</source>
    621693        <translation></translation>
    622694    </message>
    623695    <message>
    624         <location filename="../ui/mainwindow.ui" line="573"/>
     696        <location filename="../ui/mainwindow.ce.ui" line="356"/>
     697        <location filename="../ui/mainwindow.ui" line="379"/>
     698        <source>&amp;Solution...</source>
     699        <translation>&amp;Решение...</translation>
     700    </message>
     701    <message>
     702        <location filename="../ui/mainwindow.ui" line="559"/>
    625703        <source>Save</source>
    626704        <translation>Сохранить</translation>
    627705    </message>
    628706    <message>
    629         <location filename="../ui/mainwindow.ce.ui" line="531"/>
    630         <location filename="../ui/mainwindow.ui" line="544"/>
     707        <location filename="../ui/mainwindow.ce.ui" line="514"/>
     708        <location filename="../ui/mainwindow.ui" line="530"/>
    631709        <source>Detect language automatically</source>
    632710        <translation>Определять язык автоматически</translation>
    633711    </message>
    634712    <message>
    635         <location filename="../ui/mainwindow.ce.ui" line="534"/>
    636         <location filename="../ui/mainwindow.ui" line="547"/>
     713        <location filename="../ui/mainwindow.ce.ui" line="517"/>
     714        <location filename="../ui/mainwindow.ui" line="533"/>
    637715        <source>Detect language automatically based on regional settings</source>
    638716        <translation>Определять язык автоматически, основываясь на региональных настройках</translation>
     
    678756    </message>
    679757    <message>
    680         <location filename="../ui/settingsdialog.ce.ui" line="202"/>
    681         <location filename="../ui/settingsdialog.ui" line="288"/>
     758        <location filename="../ui/settingsdialog.ce.ui" line="184"/>
     759        <location filename="../ui/settingsdialog.ui" line="235"/>
     760        <source>Output settings:</source>
     761        <translation>Параметры вывода:</translation>
     762    </message>
     763    <message>
     764        <location filename="../ui/settingsdialog.ce.ui" line="210"/>
     765        <location filename="../ui/settingsdialog.ui" line="261"/>
    682766        <source>Font color for printing</source>
    683767        <translation>Цвет шрифта, используемого при печати</translation>
    684768    </message>
    685769    <message>
    686         <location filename="../ui/settingsdialog.ce.ui" line="205"/>
    687         <location filename="../ui/settingsdialog.ui" line="291"/>
     770        <location filename="../ui/settingsdialog.ce.ui" line="213"/>
     771        <location filename="../ui/settingsdialog.ui" line="264"/>
    688772        <source>&amp;Color...</source>
    689773        <translation>&amp;Цвет...</translation>
    690774    </message>
    691775    <message>
    692         <location filename="../ui/settingsdialog.ce.ui" line="219"/>
    693         <location filename="../ui/settingsdialog.ui" line="305"/>
     776        <location filename="../ui/settingsdialog.ce.ui" line="193"/>
     777        <location filename="../ui/settingsdialog.ui" line="244"/>
    694778        <source>Font face for printing</source>
    695779        <translation>Вид шрифта, используемого при печати</translation>
    696780    </message>
    697781    <message>
    698         <location filename="../ui/settingsdialog.ce.ui" line="222"/>
    699         <location filename="../ui/settingsdialog.ui" line="308"/>
     782        <location filename="../ui/settingsdialog.ce.ui" line="196"/>
     783        <location filename="../ui/settingsdialog.ui" line="247"/>
    700784        <source>&amp;Font...</source>
    701785        <translation>&amp;Шрифт...</translation>
    702786    </message>
    703787    <message>
    704         <location filename="../ui/settingsdialog.ce.ui" line="287"/>
    705         <location filename="../ui/settingsdialog.ce.ui" line="293"/>
    706         <location filename="../ui/settingsdialog.ui" line="377"/>
    707         <location filename="../ui/settingsdialog.ui" line="383"/>
     788        <location filename="../ui/settingsdialog.ce.ui" line="279"/>
     789        <location filename="../ui/settingsdialog.ce.ui" line="285"/>
     790        <location filename="../ui/settingsdialog.ui" line="331"/>
     791        <location filename="../ui/settingsdialog.ui" line="337"/>
    708792        <source>Help</source>
    709793        <translation>Помощь</translation>
    710794    </message>
    711795    <message>
    712         <location filename="../ui/settingsdialog.ce.ui" line="290"/>
    713         <location filename="../ui/settingsdialog.ui" line="380"/>
     796        <location filename="../ui/settingsdialog.ce.ui" line="282"/>
     797        <location filename="../ui/settingsdialog.ui" line="334"/>
    714798        <source>Get preferences help</source>
    715799        <translation>Получить помощь по настройкам</translation>
    716800    </message>
    717801    <message>
    718         <location filename="../ui/settingsdialog.ce.ui" line="323"/>
    719         <location filename="../ui/settingsdialog.ui" line="425"/>
     802        <location filename="../ui/settingsdialog.ce.ui" line="315"/>
     803        <location filename="../ui/settingsdialog.ui" line="391"/>
    720804        <source>Save new preferences</source>
    721805        <translation>Сохранить новые параметры</translation>
    722806    </message>
    723807    <message>
    724         <location filename="../ui/settingsdialog.ce.ui" line="326"/>
    725         <location filename="../ui/settingsdialog.ui" line="428"/>
     808        <location filename="../ui/settingsdialog.ce.ui" line="318"/>
     809        <location filename="../ui/settingsdialog.ui" line="394"/>
    726810        <source>&amp;OK</source>
    727811        <translation></translation>
    728812    </message>
    729813    <message>
    730         <location filename="../ui/settingsdialog.ce.ui" line="343"/>
    731         <location filename="../ui/settingsdialog.ui" line="445"/>
     814        <location filename="../ui/settingsdialog.ce.ui" line="335"/>
     815        <location filename="../ui/settingsdialog.ui" line="411"/>
    732816        <source>Close without saving preferences</source>
    733817        <translation>Закрыть окно без сохранения параметров</translation>
    734818    </message>
    735819    <message>
    736         <location filename="../ui/settingsdialog.ce.ui" line="346"/>
    737         <location filename="../ui/settingsdialog.ui" line="448"/>
     820        <location filename="../ui/settingsdialog.ce.ui" line="338"/>
     821        <location filename="../ui/settingsdialog.ui" line="414"/>
    738822        <source>&amp;Cancel</source>
    739823        <translation>&amp;Отмена</translation>
     
    745829    </message>
    746830    <message>
    747         <location filename="../ui/settingsdialog.ui" line="235"/>
    748         <source>Print settings:</source>
    749         <translation>Настройки печати:</translation>
    750     </message>
    751     <message>
    752         <location filename="../ui/settingsdialog.ui" line="249"/>
    753         <source>&amp;Left margin:</source>
    754         <translation>&amp;Левый отступ:</translation>
    755     </message>
    756     <message>
    757         <location filename="../ui/settingsdialog.ui" line="262"/>
    758         <source>Left border margin for page</source>
    759         <translation>Левый отступ от края страницы во время печати</translation>
    760     </message>
    761     <message>
    762         <location filename="../ui/settingsdialog.ui" line="329"/>
     831        <location filename="../ui/settingsdialog.ui" line="283"/>
    763832        <source>Restore main window state and position on application restart</source>
    764833        <translation>Восстанавливать состояние и размеры главного окна после перезапуска приложения</translation>
    765834    </message>
    766835    <message>
    767         <location filename="../ui/settingsdialog.ui" line="332"/>
     836        <location filename="../ui/settingsdialog.ui" line="286"/>
    768837        <source>Save main window state and position</source>
    769838        <translation>Сохранять состояние и положение главного окна</translation>
    770839    </message>
    771840    <message>
    772         <location filename="../ui/settingsdialog.ui" line="403"/>
     841        <location filename="../ui/settingsdialog.ui" line="369"/>
    773842        <source>Hover mouse pointer over dialog elements to get additional help</source>
    774843        <translation>Наведите указатель мыши на элемент диалога, чтоб получить подсказку</translation>
  • trunk/i18n/uk.ts

    r39 r42  
    1616    </message>
    1717    <message>
    18         <location filename="../src/tspmodel.cpp" line="156"/>
     18        <location filename="../src/tspmodel.cpp" line="147"/>
    1919        <source>Unexpected end of file.</source>
    2020        <translation>Неочікуваний кінець файлу.</translation>
    2121    </message>
    2222    <message>
    23         <location filename="../src/tspmodel.cpp" line="158"/>
     23        <location filename="../src/tspmodel.cpp" line="149"/>
    2424        <source>Corrupt data read. File possibly corrupted.</source>
    25         <translation type="unfinished"></translation>
    26     </message>
    27     <message>
    28         <location filename="../src/tspmodel.cpp" line="160"/>
     25        <translation>Прочитано ушкоджені дані.
     26Можливо, файл пошкоджено.</translation>
     27    </message>
     28    <message>
     29        <location filename="../src/tspmodel.cpp" line="151"/>
    2930        <source>Unknown error.</source>
    3031        <translation>Невідома помилка.</translation>
    3132    </message>
    3233    <message>
    33         <location filename="../src/tspmodel.cpp" line="161"/>
    34         <location filename="../src/tspmodel.cpp" line="169"/>
    35         <location filename="../src/tspmodel.cpp" line="184"/>
    36         <location filename="../src/tspmodel.cpp" line="200"/>
    37         <location filename="../src/tspmodel.cpp" line="213"/>
     34        <location filename="../src/tspmodel.cpp" line="152"/>
     35        <location filename="../src/tspmodel.cpp" line="160"/>
     36        <location filename="../src/tspmodel.cpp" line="175"/>
     37        <location filename="../src/tspmodel.cpp" line="191"/>
     38        <location filename="../src/tspmodel.cpp" line="204"/>
     39        <location filename="../src/tspmodel.cpp" line="234"/>
    3840        <location filename="../src/tspmodel.cpp" line="243"/>
    39         <location filename="../src/tspmodel.cpp" line="252"/>
    4041        <source>Task Load</source>
    41         <translation>Завантаження завдання</translation>
    42     </message>
    43     <message>
    44         <location filename="../src/tspmodel.cpp" line="161"/>
    45         <location filename="../src/tspmodel.cpp" line="184"/>
    46         <location filename="../src/tspmodel.cpp" line="200"/>
    47         <location filename="../src/tspmodel.cpp" line="213"/>
     42        <translation>Завантаження умови</translation>
     43    </message>
     44    <message>
     45        <location filename="../src/tspmodel.cpp" line="152"/>
     46        <location filename="../src/tspmodel.cpp" line="175"/>
     47        <location filename="../src/tspmodel.cpp" line="191"/>
     48        <location filename="../src/tspmodel.cpp" line="204"/>
     49        <location filename="../src/tspmodel.cpp" line="234"/>
    4850        <location filename="../src/tspmodel.cpp" line="243"/>
    49         <location filename="../src/tspmodel.cpp" line="252"/>
    5051        <source>Unable to load task:</source>
    51         <translation>Неможливо завантажити завдання:</translation>
    52     </message>
    53     <message>
    54         <location filename="../src/tspmodel.cpp" line="169"/>
     52        <translation>Неможливо завантажити умову:</translation>
     53    </message>
     54    <message>
     55        <location filename="../src/tspmodel.cpp" line="160"/>
    5556        <source>Unable to open task file.
    5657Error: %1</source>
    57         <translation>Неможливо відкрити файл завдання.
     58        <translation>Неможливо відкрити файл з умовою.
    5859Помилка: %1</translation>
    5960    </message>
    6061    <message>
    61         <location filename="../src/tspmodel.cpp" line="184"/>
     62        <location filename="../src/tspmodel.cpp" line="175"/>
    6263        <source>Unknown file format or file is corrupted.</source>
    6364        <translation>Невідомий формат файлу або файл пошкоджено.</translation>
    6465    </message>
    6566    <message>
    66         <location filename="../src/tspmodel.cpp" line="200"/>
    67         <location filename="../src/tspmodel.cpp" line="243"/>
     67        <location filename="../src/tspmodel.cpp" line="191"/>
     68        <location filename="../src/tspmodel.cpp" line="234"/>
    6869        <source>File version is newer than application supports.
    6970Please, try to update application.</source>
     
    7273    </message>
    7374    <message>
    74         <location filename="../src/tspmodel.cpp" line="213"/>
    75         <location filename="../src/tspmodel.cpp" line="252"/>
     75        <location filename="../src/tspmodel.cpp" line="204"/>
     76        <location filename="../src/tspmodel.cpp" line="243"/>
    7677        <source>Unexpected data read.
    7778File is possibly corrupted.</source>
    78         <translation type="unfinished"></translation>
    79     </message>
    80     <message>
    81         <location filename="../src/tspmodel.cpp" line="282"/>
    82         <location filename="../src/tspmodel.cpp" line="288"/>
    83         <location filename="../src/tspmodel.cpp" line="295"/>
    84         <location filename="../src/tspmodel.cpp" line="302"/>
    85         <location filename="../src/tspmodel.cpp" line="309"/>
    86         <location filename="../src/tspmodel.cpp" line="316"/>
    87         <location filename="../src/tspmodel.cpp" line="323"/>
    88         <location filename="../src/tspmodel.cpp" line="333"/>
     79        <translation>Прочитано неочікувані дані.
     80Можливо, файл пошкоджено.</translation>
     81    </message>
     82    <message>
     83        <location filename="../src/tspmodel.cpp" line="273"/>
     84        <location filename="../src/tspmodel.cpp" line="279"/>
     85        <location filename="../src/tspmodel.cpp" line="286"/>
     86        <location filename="../src/tspmodel.cpp" line="293"/>
     87        <location filename="../src/tspmodel.cpp" line="300"/>
     88        <location filename="../src/tspmodel.cpp" line="307"/>
     89        <location filename="../src/tspmodel.cpp" line="314"/>
     90        <location filename="../src/tspmodel.cpp" line="324"/>
    8991        <source>Task Save</source>
    90         <translation>Збереження завдання</translation>
    91     </message>
    92     <message>
    93         <location filename="../src/tspmodel.cpp" line="282"/>
     92        <translation>Збереження умови</translation>
     93    </message>
     94    <message>
     95        <location filename="../src/tspmodel.cpp" line="273"/>
    9496        <source>Unable to create task file.
    9597Error: %1
    9698Maybe, file is read-only?</source>
    97         <translation type="unfinished"></translation>
    98     </message>
    99     <message>
    100         <location filename="../src/tspmodel.cpp" line="288"/>
    101         <location filename="../src/tspmodel.cpp" line="295"/>
    102         <location filename="../src/tspmodel.cpp" line="302"/>
    103         <location filename="../src/tspmodel.cpp" line="309"/>
    104         <location filename="../src/tspmodel.cpp" line="316"/>
    105         <location filename="../src/tspmodel.cpp" line="323"/>
    106         <location filename="../src/tspmodel.cpp" line="333"/>
     99        <translation>Неможливо створити файл з умовою.
     100Помилка: %1
     101Можливо, файл тільки для читання?</translation>
     102    </message>
     103    <message>
     104        <location filename="../src/tspmodel.cpp" line="279"/>
     105        <location filename="../src/tspmodel.cpp" line="286"/>
     106        <location filename="../src/tspmodel.cpp" line="293"/>
     107        <location filename="../src/tspmodel.cpp" line="300"/>
     108        <location filename="../src/tspmodel.cpp" line="307"/>
     109        <location filename="../src/tspmodel.cpp" line="314"/>
     110        <location filename="../src/tspmodel.cpp" line="324"/>
    107111        <source>Unable to save task.
    108112Error: %1</source>
    109         <translation>Неможливо зберегти завдання.
     113        <translation>Неможливо зберегти умову.
    110114Помилка: %1</translation>
     115    </message>
     116</context>
     117<context>
     118    <name>CTSPSolver</name>
     119    <message>
     120        <location filename="../src/tspsolver.cpp" line="137"/>
     121        <source>%v of %m parts found</source>
     122        <translation>Знайдено %v з %m переходів</translation>
     123    </message>
     124    <message>
     125        <location filename="../src/tspsolver.cpp" line="141"/>
     126        <source>Calculating optimal route...</source>
     127        <translation>Обчислення оптимального шляху...</translation>
     128    </message>
     129    <message>
     130        <location filename="../src/tspsolver.cpp" line="142"/>
     131        <source>Solution Progress</source>
     132        <translation>Поступ розв&apos;зку</translation>
     133    </message>
     134    <message>
     135        <location filename="../src/tspsolver.cpp" line="210"/>
     136        <source>Solution Result</source>
     137        <translation>Результат розв&apos;язку</translation>
     138    </message>
     139    <message>
     140        <location filename="../src/tspsolver.cpp" line="210"/>
     141        <source>This task has no solution.</source>
     142        <translation>У цієї задачі немає розв&apos;язку.</translation>
    111143    </message>
    112144</context>
     
    114146    <name>MainWindow</name>
    115147    <message>
    116         <location filename="../ui/mainwindow.ce.ui" line="90"/>
    117         <location filename="../ui/mainwindow.ui" line="69"/>
     148        <location filename="../ui/mainwindow.ce.ui" line="87"/>
     149        <location filename="../ui/mainwindow.ui" line="75"/>
    118150        <source>Number of variant</source>
    119151        <translation>Номер варіанту</translation>
    120152    </message>
    121153    <message>
    122         <location filename="../ui/mainwindow.ce.ui" line="113"/>
    123         <location filename="../ui/mainwindow.ui" line="92"/>
     154        <location filename="../ui/mainwindow.ce.ui" line="110"/>
     155        <location filename="../ui/mainwindow.ui" line="98"/>
    124156        <source>Number of cities</source>
    125157        <translation>Кількість міст, що проходить комівояжер</translation>
    126158    </message>
    127159    <message>
    128         <location filename="../ui/mainwindow.ce.ui" line="291"/>
    129         <location filename="../ui/mainwindow.ui" line="272"/>
     160        <location filename="../ui/mainwindow.ce.ui" line="271"/>
     161        <location filename="../ui/mainwindow.ui" line="259"/>
    130162        <source>Select language</source>
    131163        <translation>Вибір мови</translation>
    132164    </message>
    133165    <message>
    134         <location filename="../ui/mainwindow.ce.ui" line="294"/>
    135         <location filename="../ui/mainwindow.ui" line="275"/>
     166        <location filename="../ui/mainwindow.ce.ui" line="274"/>
     167        <location filename="../ui/mainwindow.ui" line="262"/>
    136168        <source>Select application language</source>
    137169        <translation>Обрати мову додатку</translation>
    138170    </message>
    139171    <message>
    140         <location filename="../ui/mainwindow.ui" line="332"/>
     172        <location filename="../ui/mainwindow.ui" line="322"/>
    141173        <source>P&amp;rint Setup...</source>
    142174        <translation>&amp;Налагодження друку...</translation>
    143175    </message>
    144176    <message>
    145         <location filename="../ui/mainwindow.ui" line="335"/>
     177        <location filename="../ui/mainwindow.ui" line="325"/>
    146178        <source>Setup printing</source>
    147179        <translation>Налагодити друк</translation>
    148180    </message>
    149181    <message>
    150         <location filename="../ui/mainwindow.ui" line="347"/>
     182        <location filename="../ui/mainwindow.ui" line="337"/>
    151183        <source>&amp;Print...</source>
    152184        <translation>&amp;Друк...</translation>
    153185    </message>
    154186    <message>
    155         <location filename="../ui/mainwindow.ui" line="350"/>
     187        <location filename="../ui/mainwindow.ui" line="340"/>
    156188        <source>Print solution results</source>
    157189        <translation>Роздрукувати результат розв&apos;язку</translation>
    158190    </message>
    159191    <message>
    160         <location filename="../ui/mainwindow.ui" line="353"/>
     192        <location filename="../ui/mainwindow.ui" line="343"/>
    161193        <source>Ctrl+P</source>
    162194        <translation></translation>
    163195    </message>
    164196    <message>
    165         <location filename="../ui/mainwindow.ui" line="573"/>
     197        <location filename="../ui/mainwindow.ce.ui" line="356"/>
     198        <location filename="../ui/mainwindow.ui" line="379"/>
     199        <source>&amp;Solution...</source>
     200        <translation>&amp;Розв&apos;язок...</translation>
     201    </message>
     202    <message>
     203        <location filename="../ui/mainwindow.ui" line="559"/>
    166204        <source>Save</source>
    167205        <translation>Зберегти</translation>
    168206    </message>
    169207    <message>
    170         <location filename="../ui/mainwindow.ce.ui" line="531"/>
    171         <location filename="../ui/mainwindow.ui" line="544"/>
     208        <location filename="../ui/mainwindow.ce.ui" line="514"/>
     209        <location filename="../ui/mainwindow.ui" line="530"/>
    172210        <source>Detect language automatically</source>
    173211        <translation>Визначати мову автоматично</translation>
    174212    </message>
    175213    <message>
    176         <location filename="../ui/mainwindow.ce.ui" line="534"/>
    177         <location filename="../ui/mainwindow.ui" line="547"/>
     214        <location filename="../ui/mainwindow.ce.ui" line="517"/>
     215        <location filename="../ui/mainwindow.ui" line="533"/>
    178216        <source>Detect language automatically based on regional settings</source>
    179217        <translation>Визначати мову автоматично, використовуючи регіональні стандарти</translation>
    180218    </message>
    181219    <message>
    182         <location filename="../ui/mainwindow.ce.ui" line="517"/>
    183         <location filename="../ui/mainwindow.ui" line="530"/>
     220        <location filename="../ui/mainwindow.ce.ui" line="500"/>
     221        <location filename="../ui/mainwindow.ui" line="516"/>
    184222        <source>Ctrl+S</source>
    185223        <translation></translation>
    186224    </message>
    187225    <message>
    188         <location filename="../ui/mainwindow.ce.ui" line="403"/>
    189         <location filename="../ui/mainwindow.ui" line="416"/>
     226        <location filename="../ui/mainwindow.ce.ui" line="386"/>
     227        <location filename="../ui/mainwindow.ui" line="406"/>
    190228        <source>Ctrl+N</source>
    191229        <translation></translation>
    192230    </message>
    193231    <message>
    194         <location filename="../ui/mainwindow.ce.ui" line="56"/>
    195         <location filename="../ui/mainwindow.ui" line="35"/>
     232        <location filename="../ui/mainwindow.ce.ui" line="53"/>
     233        <location filename="../ui/mainwindow.ui" line="41"/>
    196234        <source>Task</source>
    197         <translation>Завдання</translation>
    198     </message>
    199     <message>
    200         <location filename="../ui/mainwindow.ce.ui" line="77"/>
    201         <location filename="../ui/mainwindow.ui" line="56"/>
     235        <translation>Умова</translation>
     236    </message>
     237    <message>
     238        <location filename="../ui/mainwindow.ce.ui" line="74"/>
     239        <location filename="../ui/mainwindow.ui" line="62"/>
    202240        <source>&amp;Variant:</source>
    203241        <translation>&amp;Варіант:</translation>
    204242    </message>
    205243    <message>
    206         <location filename="../ui/mainwindow.ce.ui" line="100"/>
    207         <location filename="../ui/mainwindow.ui" line="79"/>
     244        <location filename="../ui/mainwindow.ce.ui" line="97"/>
     245        <location filename="../ui/mainwindow.ui" line="85"/>
    208246        <source>&amp;Cities:</source>
    209247        <translation>&amp;Міст:</translation>
    210248    </message>
    211249    <message>
    212         <location filename="../ui/mainwindow.ce.ui" line="144"/>
    213         <location filename="../ui/mainwindow.ui" line="123"/>
     250        <location filename="../ui/mainwindow.ce.ui" line="141"/>
     251        <location filename="../ui/mainwindow.ui" line="129"/>
    214252        <source>Cost of travel from city to city</source>
    215253        <translation>Вартість переїзду з міста у місто</translation>
    216254    </message>
    217255    <message>
    218         <location filename="../ui/mainwindow.ce.ui" line="172"/>
    219         <location filename="../ui/mainwindow.ui" line="151"/>
     256        <location filename="../ui/mainwindow.ce.ui" line="169"/>
     257        <location filename="../ui/mainwindow.ui" line="157"/>
    220258        <source>Fill table with random numbers</source>
    221259        <translation>Заповнити таблицю випадковими значеннями</translation>
    222260    </message>
    223261    <message>
    224         <location filename="../ui/mainwindow.ce.ui" line="175"/>
    225         <location filename="../ui/mainwindow.ui" line="154"/>
     262        <location filename="../ui/mainwindow.ce.ui" line="172"/>
     263        <location filename="../ui/mainwindow.ui" line="160"/>
    226264        <source>Random</source>
    227265        <translation>Випадково</translation>
    228266    </message>
    229267    <message>
    230         <location filename="../ui/mainwindow.ce.ui" line="189"/>
    231         <location filename="../ui/mainwindow.ui" line="168"/>
     268        <location filename="../ui/mainwindow.ce.ui" line="186"/>
     269        <location filename="../ui/mainwindow.ui" line="174"/>
    232270        <source>Solve current task</source>
    233271        <translation>Розв&apos;язати поточну задачу</translation>
    234272    </message>
    235273    <message>
    236         <location filename="../ui/mainwindow.ce.ui" line="192"/>
    237         <location filename="../ui/mainwindow.ui" line="171"/>
     274        <location filename="../ui/mainwindow.ce.ui" line="189"/>
     275        <location filename="../ui/mainwindow.ui" line="177"/>
    238276        <source>Solve</source>
    239277        <translation>Розв&apos;язати</translation>
    240278    </message>
    241279    <message>
    242         <location filename="../ui/mainwindow.ce.ui" line="206"/>
    243         <location filename="../ui/mainwindow.ui" line="185"/>
     280        <location filename="../ui/mainwindow.ce.ui" line="203"/>
     281        <location filename="../ui/mainwindow.ui" line="191"/>
    244282        <source>Solution</source>
    245283        <translation>Розв&apos;язок</translation>
    246284    </message>
    247285    <message>
    248         <location filename="../ui/mainwindow.ce.ui" line="223"/>
    249         <location filename="../ui/mainwindow.ui" line="202"/>
     286        <location filename="../ui/mainwindow.ce.ui" line="212"/>
     287        <location filename="../ui/mainwindow.ui" line="200"/>
    250288        <source>Solution steps</source>
    251289        <translation>Хід розв&apos;язку</translation>
    252290    </message>
    253291    <message>
    254         <location filename="../ui/mainwindow.ce.ui" line="233"/>
    255         <location filename="../ui/mainwindow.ui" line="212"/>
    256         <source>Solution graph</source>
    257         <translation>Граф розв&apos;язку</translation>
    258     </message>
    259     <message>
    260         <location filename="../ui/mainwindow.ce.ui" line="259"/>
    261         <location filename="../ui/mainwindow.ui" line="240"/>
     292        <location filename="../ui/mainwindow.ce.ui" line="242"/>
     293        <location filename="../ui/mainwindow.ui" line="230"/>
    262294        <source>&amp;File</source>
    263295        <translation>&amp;Файл</translation>
    264296    </message>
    265297    <message>
    266         <location filename="../ui/mainwindow.ce.ui" line="266"/>
    267         <location filename="../ui/mainwindow.ui" line="244"/>
     298        <location filename="../ui/mainwindow.ce.ui" line="249"/>
     299        <location filename="../ui/mainwindow.ui" line="234"/>
    268300        <source>Save &amp;As...</source>
    269301        <translation>Зберегти &amp;як...</translation>
    270302    </message>
    271303    <message>
    272         <location filename="../ui/mainwindow.ce.ui" line="348"/>
    273         <location filename="../ui/mainwindow.ui" line="361"/>
     304        <location filename="../ui/mainwindow.ce.ui" line="277"/>
     305        <location filename="../ui/mainwindow.ui" line="265"/>
     306        <source>&amp;Language</source>
     307        <comment>Please, append &quot; / Language&quot; when translating this string.</comment>
     308        <translation>Мова / &amp;Language</translation>
     309    </message>
     310    <message>
     311        <location filename="../ui/mainwindow.ce.ui" line="328"/>
     312        <location filename="../ui/mainwindow.ui" line="351"/>
    274313        <source>Solution S&amp;teps</source>
    275314        <translation>&amp;Хід розв&apos;язку</translation>
    276315    </message>
    277316    <message>
    278         <location filename="../ui/mainwindow.ce.ui" line="362"/>
    279         <location filename="../ui/mainwindow.ui" line="375"/>
     317        <location filename="../ui/mainwindow.ce.ui" line="342"/>
     318        <location filename="../ui/mainwindow.ui" line="365"/>
    280319        <source>Solution &amp;Graph</source>
    281320        <translation>&amp;Граф розв&apos;язку</translation>
    282321    </message>
    283322    <message>
    284         <location filename="../ui/mainwindow.ce.ui" line="466"/>
    285         <location filename="../ui/mainwindow.ui" line="479"/>
     323        <location filename="../ui/mainwindow.ce.ui" line="359"/>
     324        <source>Solution...</source>
     325        <translation>Розв&apos;язок...</translation>
     326    </message>
     327    <message>
     328        <location filename="../ui/mainwindow.ce.ui" line="449"/>
     329        <location filename="../ui/mainwindow.ui" line="469"/>
    286330        <source>Context &amp;Help</source>
    287331        <translation>&amp;Контекстна допомога</translation>
    288332    </message>
    289333    <message>
    290         <location filename="../ui/mainwindow.ce.ui" line="557"/>
    291         <location filename="../ui/mainwindow.ui" line="570"/>
     334        <location filename="../ui/mainwindow.ce.ui" line="540"/>
     335        <location filename="../ui/mainwindow.ui" line="556"/>
    292336        <source>&amp;Save</source>
    293337        <translation>&amp;Зберегти</translation>
    294338    </message>
    295339    <message>
    296         <location filename="../ui/mainwindow.ce.ui" line="287"/>
    297         <location filename="../ui/mainwindow.ui" line="268"/>
     340        <location filename="../ui/mainwindow.ce.ui" line="267"/>
     341        <location filename="../ui/mainwindow.ui" line="255"/>
    298342        <source>&amp;Settings</source>
    299343        <translation>&amp;Налагодження</translation>
     
    306350    </message>
    307351    <message>
    308         <location filename="../ui/mainwindow.ce.ui" line="297"/>
    309         <location filename="../ui/mainwindow.ui" line="278"/>
    310         <source>&amp;Language</source>
    311         <extracomment>Please, append &quot; / Language&quot; when translating this string.
    312 ----------
    313 Please, append &quot; / Language&quot; when translating this string.</extracomment>
    314         <translation>Мова / &amp;Language</translation>
    315     </message>
    316     <message>
    317         <location filename="../ui/mainwindow.ce.ui" line="313"/>
    318         <location filename="../ui/mainwindow.ui" line="294"/>
     352        <location filename="../ui/mainwindow.ce.ui" line="293"/>
     353        <location filename="../ui/mainwindow.ui" line="281"/>
    319354        <source>&amp;Help</source>
    320355        <translation>&amp;Допомога</translation>
    321356    </message>
    322357    <message>
    323         <location filename="../ui/mainwindow.ce.ui" line="351"/>
    324         <location filename="../ui/mainwindow.ui" line="364"/>
     358        <location filename="../ui/mainwindow.ce.ui" line="331"/>
     359        <location filename="../ui/mainwindow.ui" line="354"/>
    325360        <source>Save solution steps</source>
    326361        <translation>Зберегти хід розв&apos;язку</translation>
    327362    </message>
    328363    <message>
    329         <location filename="../ui/mainwindow.ce.ui" line="354"/>
    330         <location filename="../ui/mainwindow.ui" line="367"/>
     364        <location filename="../ui/mainwindow.ce.ui" line="334"/>
     365        <location filename="../ui/mainwindow.ui" line="357"/>
    331366        <source>Save solution steps only</source>
    332367        <translation>Зберегти тільки хід розв&apos;язку</translation>
    333368    </message>
    334369    <message>
    335         <location filename="../ui/mainwindow.ce.ui" line="365"/>
    336         <location filename="../ui/mainwindow.ui" line="378"/>
     370        <location filename="../ui/mainwindow.ce.ui" line="345"/>
     371        <location filename="../ui/mainwindow.ui" line="368"/>
    337372        <source>Save solution graph</source>
    338373        <translation>Зберегти граф розв&apos;язку</translation>
    339374    </message>
    340375    <message>
    341         <location filename="../ui/mainwindow.ce.ui" line="368"/>
    342         <location filename="../ui/mainwindow.ui" line="381"/>
     376        <location filename="../ui/mainwindow.ce.ui" line="348"/>
     377        <location filename="../ui/mainwindow.ui" line="371"/>
    343378        <source>Save solution graph only</source>
    344379        <translation>Зберегти тільки граф розв&apos;язку</translation>
    345380    </message>
    346381    <message>
    347         <location filename="../ui/mainwindow.ce.ui" line="376"/>
    348         <location filename="../ui/mainwindow.ui" line="389"/>
    349         <source>&amp;Solution</source>
    350         <translation>&amp;Розв&apos;язок</translation>
    351     </message>
    352     <message>
    353         <location filename="../ui/mainwindow.ce.ui" line="379"/>
    354         <location filename="../ui/mainwindow.ui" line="392"/>
     382        <location filename="../ui/mainwindow.ce.ui" line="362"/>
     383        <location filename="../ui/mainwindow.ui" line="382"/>
    355384        <source>Save solution</source>
    356385        <translation>Зберегти розв&apos;язок</translation>
    357386    </message>
    358387    <message>
    359         <location filename="../ui/mainwindow.ce.ui" line="382"/>
    360         <location filename="../ui/mainwindow.ui" line="395"/>
     388        <location filename="../ui/mainwindow.ce.ui" line="365"/>
     389        <location filename="../ui/mainwindow.ui" line="385"/>
    361390        <source>Save solution steps and graph</source>
    362391        <translation>Зберегти хід та граф розв&apos;язку</translation>
    363392    </message>
    364393    <message>
    365         <location filename="../ui/mainwindow.ce.ui" line="391"/>
    366         <location filename="../ui/mainwindow.ui" line="404"/>
     394        <location filename="../ui/mainwindow.ce.ui" line="374"/>
     395        <location filename="../ui/mainwindow.ui" line="394"/>
    367396        <source>&amp;New</source>
    368397        <translation>&amp;Створити</translation>
    369398    </message>
    370399    <message>
    371         <location filename="../ui/mainwindow.ce.ui" line="394"/>
    372         <location filename="../ui/mainwindow.ui" line="407"/>
     400        <location filename="../ui/mainwindow.ce.ui" line="377"/>
     401        <location filename="../ui/mainwindow.ui" line="397"/>
    373402        <source>New</source>
    374403        <translation>Створити</translation>
    375404    </message>
    376405    <message>
    377         <location filename="../ui/mainwindow.ce.ui" line="397"/>
    378         <location filename="../ui/mainwindow.ui" line="410"/>
     406        <location filename="../ui/mainwindow.ce.ui" line="380"/>
     407        <location filename="../ui/mainwindow.ui" line="400"/>
    379408        <source>New task</source>
    380         <translation>Нове завдання</translation>
    381     </message>
    382     <message>
    383         <location filename="../ui/mainwindow.ce.ui" line="400"/>
    384         <location filename="../ui/mainwindow.ui" line="413"/>
     409        <translation>Нова задача</translation>
     410    </message>
     411    <message>
     412        <location filename="../ui/mainwindow.ce.ui" line="383"/>
     413        <location filename="../ui/mainwindow.ui" line="403"/>
    385414        <source>Create new task</source>
    386         <translation>Створити нове завдання</translation>
    387     </message>
    388     <message>
    389         <location filename="../ui/mainwindow.ce.ui" line="412"/>
    390         <location filename="../ui/mainwindow.ui" line="425"/>
     415        <translation>Створити нову задачу</translation>
     416    </message>
     417    <message>
     418        <location filename="../ui/mainwindow.ce.ui" line="395"/>
     419        <location filename="../ui/mainwindow.ui" line="415"/>
    391420        <source>&amp;Open...</source>
    392421        <translation>&amp;Відкрити...</translation>
    393422    </message>
    394423    <message>
    395         <location filename="../ui/mainwindow.ce.ui" line="415"/>
    396         <location filename="../ui/mainwindow.ui" line="428"/>
     424        <location filename="../ui/mainwindow.ce.ui" line="398"/>
     425        <location filename="../ui/mainwindow.ui" line="418"/>
    397426        <source>Open...</source>
    398427        <translation>Відкрити...</translation>
    399428    </message>
    400429    <message>
    401         <location filename="../ui/mainwindow.ce.ui" line="418"/>
    402         <location filename="../ui/mainwindow.ui" line="431"/>
     430        <location filename="../ui/mainwindow.ce.ui" line="401"/>
     431        <location filename="../ui/mainwindow.ui" line="421"/>
    403432        <source>Open task</source>
    404         <translation>Відкрити завдання</translation>
    405     </message>
    406     <message>
    407         <location filename="../ui/mainwindow.ce.ui" line="421"/>
    408         <location filename="../ui/mainwindow.ui" line="434"/>
     433        <translation>Відкрити умову</translation>
     434    </message>
     435    <message>
     436        <location filename="../ui/mainwindow.ce.ui" line="404"/>
     437        <location filename="../ui/mainwindow.ui" line="424"/>
    409438        <source>Open saved task</source>
    410         <translation>Відкрити збережене завдання</translation>
    411     </message>
    412     <message>
    413         <location filename="../ui/mainwindow.ce.ui" line="424"/>
    414         <location filename="../ui/mainwindow.ui" line="437"/>
     439        <translation>Відкрити збережену умову</translation>
     440    </message>
     441    <message>
     442        <location filename="../ui/mainwindow.ce.ui" line="407"/>
     443        <location filename="../ui/mainwindow.ui" line="427"/>
    415444        <source>Ctrl+O</source>
    416445        <translation></translation>
    417446    </message>
    418447    <message>
    419         <location filename="../ui/mainwindow.ce.ui" line="433"/>
    420         <location filename="../ui/mainwindow.ui" line="446"/>
     448        <location filename="../ui/mainwindow.ce.ui" line="416"/>
     449        <location filename="../ui/mainwindow.ui" line="436"/>
    421450        <source>&amp;Preferences...</source>
    422451        <translation>&amp;Параметри...</translation>
    423452    </message>
    424453    <message>
    425         <location filename="../ui/mainwindow.ce.ui" line="436"/>
    426         <location filename="../ui/mainwindow.ui" line="449"/>
     454        <location filename="../ui/mainwindow.ce.ui" line="419"/>
     455        <location filename="../ui/mainwindow.ui" line="439"/>
    427456        <source>Preferences...</source>
    428457        <translation>Параметри...</translation>
    429458    </message>
    430459    <message>
    431         <location filename="../ui/mainwindow.ce.ui" line="439"/>
    432         <location filename="../ui/mainwindow.ui" line="452"/>
     460        <location filename="../ui/mainwindow.ce.ui" line="422"/>
     461        <location filename="../ui/mainwindow.ui" line="442"/>
    433462        <source>Application preferences</source>
    434463        <translation>Параметри додатку</translation>
    435464    </message>
    436465    <message>
    437         <location filename="../ui/mainwindow.ce.ui" line="451"/>
    438         <location filename="../ui/mainwindow.ui" line="464"/>
     466        <location filename="../ui/mainwindow.ce.ui" line="434"/>
     467        <location filename="../ui/mainwindow.ui" line="454"/>
    439468        <source>&amp;Contents</source>
    440469        <translation>&amp;Зміст</translation>
    441470    </message>
    442471    <message>
    443         <location filename="../ui/mainwindow.ce.ui" line="454"/>
    444         <location filename="../ui/mainwindow.ui" line="467"/>
     472        <location filename="../ui/mainwindow.ce.ui" line="437"/>
     473        <location filename="../ui/mainwindow.ui" line="457"/>
    445474        <source>Open help contents</source>
    446475        <translation>Відкрити зміст допомоги</translation>
    447476    </message>
    448477    <message>
    449         <location filename="../ui/mainwindow.ce.ui" line="469"/>
    450         <location filename="../ui/mainwindow.ui" line="482"/>
     478        <location filename="../ui/mainwindow.ce.ui" line="452"/>
     479        <location filename="../ui/mainwindow.ui" line="472"/>
    451480        <source>Open context help</source>
    452481        <translation>Відкрити контекстну допомогу</translation>
    453482    </message>
    454483    <message>
    455         <location filename="../ui/mainwindow.ce.ui" line="478"/>
    456         <location filename="../ui/mainwindow.ui" line="491"/>
     484        <location filename="../ui/mainwindow.ce.ui" line="461"/>
     485        <location filename="../ui/mainwindow.ui" line="481"/>
    457486        <source>&amp;About...</source>
    458487        <translation>&amp;Про...</translation>
    459488    </message>
    460489    <message>
    461         <location filename="../ui/mainwindow.ce.ui" line="481"/>
    462         <location filename="../ui/mainwindow.ui" line="494"/>
     490        <location filename="../ui/mainwindow.ce.ui" line="464"/>
     491        <location filename="../ui/mainwindow.ui" line="484"/>
    463492        <source>About...</source>
    464493        <translation>Про...</translation>
    465494    </message>
    466495    <message>
    467         <location filename="../ui/mainwindow.ce.ui" line="484"/>
    468         <location filename="../ui/mainwindow.ui" line="497"/>
     496        <location filename="../ui/mainwindow.ce.ui" line="467"/>
     497        <location filename="../ui/mainwindow.ui" line="487"/>
    469498        <source>About application</source>
    470499        <translation>Про додаток</translation>
    471500    </message>
    472501    <message>
    473         <location filename="../ui/mainwindow.ce.ui" line="493"/>
    474         <location filename="../ui/mainwindow.ui" line="506"/>
     502        <location filename="../ui/mainwindow.ce.ui" line="476"/>
     503        <location filename="../ui/mainwindow.ui" line="496"/>
    475504        <source>E&amp;xit</source>
    476505        <translation>В&amp;ихід</translation>
    477506    </message>
    478507    <message>
    479         <location filename="../ui/mainwindow.ce.ui" line="496"/>
    480         <location filename="../ui/mainwindow.ui" line="509"/>
     508        <location filename="../ui/mainwindow.ce.ui" line="479"/>
     509        <location filename="../ui/mainwindow.ui" line="499"/>
    481510        <source>Exit application</source>
    482511        <translation>Вийти з додатку</translation>
    483512    </message>
    484513    <message>
    485         <location filename="../ui/mainwindow.ce.ui" line="505"/>
    486         <location filename="../ui/mainwindow.ui" line="518"/>
     514        <location filename="../ui/mainwindow.ce.ui" line="488"/>
     515        <location filename="../ui/mainwindow.ui" line="504"/>
    487516        <source>&amp;Task...</source>
    488         <translation>&amp;Завдання...</translation>
    489     </message>
    490     <message>
    491         <location filename="../ui/mainwindow.ce.ui" line="508"/>
    492         <location filename="../ui/mainwindow.ui" line="521"/>
     517        <translation>&amp;Умову...</translation>
     518    </message>
     519    <message>
     520        <location filename="../ui/mainwindow.ce.ui" line="491"/>
     521        <location filename="../ui/mainwindow.ui" line="507"/>
    493522        <source>Task...</source>
    494         <translation>Завдання...</translation>
     523        <translation>Умову...</translation>
     524    </message>
     525    <message>
     526        <location filename="../ui/mainwindow.ce.ui" line="494"/>
     527        <location filename="../ui/mainwindow.ce.ui" line="543"/>
     528        <location filename="../ui/mainwindow.ui" line="510"/>
     529        <location filename="../ui/mainwindow.ui" line="562"/>
     530        <source>Save task</source>
     531        <translation>Зберегти умову</translation>
     532    </message>
     533    <message>
     534        <location filename="../ui/mainwindow.ce.ui" line="497"/>
     535        <location filename="../ui/mainwindow.ui" line="513"/>
     536        <source>Save task to file</source>
     537        <translation>Зберегти умову задачі у файл</translation>
    495538    </message>
    496539    <message>
    497540        <location filename="../ui/mainwindow.ce.ui" line="511"/>
    498         <location filename="../ui/mainwindow.ce.ui" line="560"/>
    499         <location filename="../ui/mainwindow.ui" line="524"/>
    500         <location filename="../ui/mainwindow.ui" line="576"/>
    501         <source>Save task</source>
    502         <translation>Зберегти завдання</translation>
    503     </message>
    504     <message>
    505         <location filename="../ui/mainwindow.ce.ui" line="514"/>
    506541        <location filename="../ui/mainwindow.ui" line="527"/>
    507         <source>Save task to file</source>
    508         <translation>Зберегти завдання до файлу</translation>
    509     </message>
    510     <message>
    511         <location filename="../ui/mainwindow.ce.ui" line="528"/>
    512         <location filename="../ui/mainwindow.ui" line="541"/>
    513542        <source>&amp;Autodetect</source>
    514543        <translation>&amp;Автовизначення</translation>
    515544    </message>
    516545    <message>
    517         <location filename="../ui/mainwindow.ce.ui" line="545"/>
     546        <location filename="../ui/mainwindow.ce.ui" line="528"/>
    518547        <source>English</source>
    519548        <translation>Англійська</translation>
    520549    </message>
    521550    <message>
    522         <location filename="../ui/mainwindow.ce.ui" line="563"/>
    523         <location filename="../ui/mainwindow.ui" line="579"/>
     551        <location filename="../ui/mainwindow.ce.ui" line="546"/>
     552        <location filename="../ui/mainwindow.ui" line="565"/>
    524553        <source>Save current task</source>
    525         <translation>Зберегти поточне завдання</translation>
    526     </message>
    527     <message>
    528         <location filename="../ui/mainwindow.ce.ui" line="572"/>
    529         <location filename="../ui/mainwindow.ui" line="588"/>
     554        <translation>Зберегти поточну умову</translation>
     555    </message>
     556    <message>
     557        <location filename="../ui/mainwindow.ce.ui" line="555"/>
     558        <location filename="../ui/mainwindow.ui" line="574"/>
    530559        <source>About &amp;Qt...</source>
    531560        <translation>Про &amp;Qt...</translation>
    532561    </message>
    533562    <message>
    534         <location filename="../ui/mainwindow.ce.ui" line="575"/>
    535         <location filename="../ui/mainwindow.ui" line="591"/>
     563        <location filename="../ui/mainwindow.ce.ui" line="558"/>
     564        <location filename="../ui/mainwindow.ui" line="577"/>
    536565        <source>About Qt...</source>
    537566        <translation>Про Qt...</translation>
    538567    </message>
    539568    <message>
    540         <location filename="../ui/mainwindow.ce.ui" line="578"/>
     569        <location filename="../ui/mainwindow.ce.ui" line="561"/>
    541570        <source>About Qt</source>
    542571        <translation>Про Qt</translation>
    543572    </message>
    544573    <message>
    545         <location filename="../ui/mainwindow.ce.ui" line="581"/>
    546         <location filename="../ui/mainwindow.ui" line="594"/>
     574        <location filename="../ui/mainwindow.ce.ui" line="564"/>
     575        <location filename="../ui/mainwindow.ui" line="580"/>
    547576        <source>About Qt library</source>
    548577        <translation>Про бібліотеку Qt</translation>
    549578    </message>
    550579    <message>
    551         <location filename="../src/mainwindow.cpp" line="134"/>
    552         <location filename="../src/mainwindow.cpp" line="323"/>
    553         <location filename="../src/mainwindow.cpp" line="332"/>
     580        <location filename="../src/mainwindow.cpp" line="141"/>
     581        <location filename="../src/mainwindow.cpp" line="439"/>
     582        <location filename="../src/mainwindow.cpp" line="448"/>
    554583        <source>Language change</source>
    555584        <translation>Зміна мови</translation>
    556585    </message>
    557586    <message>
    558         <location filename="../src/mainwindow.cpp" line="134"/>
     587        <location filename="../src/mainwindow.cpp" line="141"/>
    559588        <source>Unable to load translation language.</source>
    560589        <translation>Неможливо завантажити переклад.</translation>
    561590    </message>
    562591    <message>
    563         <location filename="../src/mainwindow.cpp" line="180"/>
     592        <location filename="../src/mainwindow.cpp" line="202"/>
    564593        <source>All Supported Formats</source>
    565594        <translation>Усі підтримувані формати</translation>
    566595    </message>
    567596    <message>
    568         <location filename="../src/mainwindow.cpp" line="183"/>
    569         <location filename="../src/mainwindow.cpp" line="203"/>
     597        <location filename="../src/mainwindow.cpp" line="205"/>
     598        <location filename="../src/mainwindow.cpp" line="232"/>
     599        <location filename="../src/mainwindow.cpp" line="251"/>
    570600        <source>All Files</source>
    571601        <translation>Усі файли</translation>
    572602    </message>
    573603    <message>
     604        <location filename="../src/mainwindow.cpp" line="203"/>
     605        <location filename="../src/mainwindow.cpp" line="204"/>
     606        <source>%1 Task Files</source>
     607        <translation>Файли умов %1</translation>
     608    </message>
     609    <message>
    574610        <location filename="../src/mainwindow.cpp" line="181"/>
    575         <location filename="../src/mainwindow.cpp" line="182"/>
    576         <source>%1 Task Files</source>
    577         <translation>Файли завдань %1</translation>
    578     </message>
    579     <message>
    580         <location filename="../src/mainwindow.cpp" line="162"/>
    581611        <source>New Task</source>
    582612        <translation>Нова задача</translation>
    583613    </message>
    584614    <message>
    585         <location filename="../src/mainwindow.cpp" line="162"/>
    586         <location filename="../src/mainwindow.cpp" line="173"/>
    587         <location filename="../src/mainwindow.cpp" line="346"/>
     615        <location filename="../src/mainwindow.cpp" line="181"/>
     616        <location filename="../src/mainwindow.cpp" line="195"/>
     617        <location filename="../src/mainwindow.cpp" line="462"/>
    588618        <source>Would you like to save changes in current task?</source>
    589619        <translation>Бажаете зберегти зміни у поточній задачі?</translation>
    590620    </message>
    591621    <message>
    592         <location filename="../src/mainwindow.cpp" line="173"/>
     622        <location filename="../src/mainwindow.cpp" line="195"/>
    593623        <source>Task Open</source>
    594624        <translation>Відкриття завдання</translation>
    595625    </message>
    596626    <message>
    597         <location filename="../src/mainwindow.cpp" line="202"/>
     627        <location filename="../src/mainwindow.cpp" line="230"/>
     628        <source>HTML Files</source>
     629        <translation>Файли HTML</translation>
     630    </message>
     631    <message>
     632        <location filename="../src/mainwindow.cpp" line="231"/>
     633        <source>OpenDocument Files</source>
     634        <translation>Файли OpenDocument</translation>
     635    </message>
     636    <message>
     637        <location filename="../src/mainwindow.cpp" line="250"/>
    598638        <source>%1 Task File</source>
    599         <translation>Файл завдання %1</translation>
    600     </message>
    601     <message>
    602         <location filename="../src/mainwindow.cpp" line="259"/>
     639        <translation>Файл умови %1</translation>
     640    </message>
     641    <message>
     642        <location filename="../src/mainwindow.cpp" line="273"/>
     643        <source>Settings Changed</source>
     644        <translation>Параметри змінено</translation>
     645    </message>
     646    <message>
     647        <location filename="../src/mainwindow.cpp" line="273"/>
     648        <source>You have changed color settings.
     649Do you wish to apply them to current solution text?</source>
     650        <translation>Ви змінили параметри кольору.
     651Бажаєте застосувати їх до поточного тексту розв&apos;зку?</translation>
     652    </message>
     653    <message>
     654        <location filename="../src/mainwindow.cpp" line="337"/>
    603655        <source>Data error</source>
    604         <translation>Помилка даних</translation>
    605     </message>
    606     <message>
    607         <location filename="../src/mainwindow.cpp" line="259"/>
     656        <translation>Помилка у даних</translation>
     657    </message>
     658    <message>
     659        <location filename="../src/mainwindow.cpp" line="337"/>
    608660        <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
    609661        <translation>Помилка у комірці  [Рядок %1; Колонка %2]: Невірний формат даних.</translation>
    610662    </message>
    611663    <message>
    612         <location filename="../src/mainwindow.cpp" line="268"/>
    613         <source>Solution error</source>
    614         <translation>Помилка розв&apos;язку</translation>
    615     </message>
    616     <message>
    617         <location filename="../src/mainwindow.cpp" line="268"/>
    618         <source>There was an error while solving the task.</source>
    619         <translation>Під час розв&apos;язання задачі виникла помилка.</translation>
    620     </message>
    621     <message>
    622         <location filename="../src/mainwindow.cpp" line="323"/>
     664        <location filename="../src/mainwindow.cpp" line="350"/>
     665        <source>Variant #%1</source>
     666        <translation>Варіант №%1</translation>
     667    </message>
     668    <message>
     669        <location filename="../src/mainwindow.cpp" line="351"/>
     670        <source>Task:</source>
     671        <translation>Умова:</translation>
     672    </message>
     673    <message>
     674        <location filename="../src/mainwindow.cpp" line="354"/>
     675        <location filename="../src/mainwindow.cpp" line="380"/>
     676        <source>Solution of Variant #%1 task</source>
     677        <translation>Розв&apos;язок варіанту №%1</translation>
     678    </message>
     679    <message>
     680        <location filename="../src/mainwindow.cpp" line="361"/>
     681        <source>Step #%1</source>
     682        <translation>Крок №%1</translation>
     683    </message>
     684    <message>
     685        <location filename="../src/mainwindow.cpp" line="364"/>
     686        <source>This step has alternate candidates for branching.</source>
     687        <translation>У цьому кроці є альтернативні кандидати на розгалудження.</translation>
     688    </message>
     689    <message>
     690        <location filename="../src/mainwindow.cpp" line="376"/>
     691        <source>Optimal path:</source>
     692        <translation>Оптимальний шлях:</translation>
     693    </message>
     694    <message>
     695        <location filename="../src/mainwindow.cpp" line="378"/>
     696        <source>The price is &lt;b&gt;%1&lt;/b&gt; units.</source>
     697        <translation>Вартість - &lt;b&gt;%1&lt;/b&gt; одиниць.</translation>
     698    </message>
     699    <message>
     700        <location filename="../src/mainwindow.cpp" line="439"/>
    623701        <source>Language will be autodetected on next application start.</source>
    624702        <translation>Мову буде автоматично визначено при наступному запуску додатку.</translation>
    625703    </message>
    626704    <message>
    627         <location filename="../src/mainwindow.cpp" line="332"/>
     705        <location filename="../src/mainwindow.cpp" line="448"/>
    628706        <source>You have language autodetection turned on.
    629707It needs to be off.
     
    634712    </message>
    635713    <message>
    636         <location filename="../src/mainwindow.cpp" line="346"/>
     714        <location filename="../src/mainwindow.cpp" line="462"/>
    637715        <source>Application Close</source>
    638716        <translation>Закриття додатку</translation>
     
    647725    </message>
    648726    <message>
    649         <location filename="../ui/settingsdialog.ui" line="235"/>
    650         <source>Print settings:</source>
    651         <translation>Налагодження друку:</translation>
    652     </message>
    653     <message>
    654         <location filename="../ui/settingsdialog.ui" line="249"/>
    655         <source>&amp;Left margin:</source>
    656         <translation>&amp;Лівий відступ:</translation>
    657     </message>
    658     <message>
    659         <location filename="../ui/settingsdialog.ui" line="262"/>
    660         <source>Left border margin for page</source>
    661         <translation>Лівий відступ від межі сторінки під час друку</translation>
    662     </message>
    663     <message>
    664         <location filename="../ui/settingsdialog.ui" line="329"/>
     727        <location filename="../ui/settingsdialog.ui" line="283"/>
    665728        <source>Restore main window state and position on application restart</source>
    666         <translation>Відновлювати стан та розмір головного вікна пысля перезапуску додатку</translation>
    667     </message>
    668     <message>
    669         <location filename="../ui/settingsdialog.ui" line="332"/>
     729        <translation>Відновлювати стан та розмір головного вікна після перезапуску додатку</translation>
     730    </message>
     731    <message>
     732        <location filename="../ui/settingsdialog.ui" line="286"/>
    670733        <source>Save main window state and position</source>
    671734        <translation>Зберегти стан та розміщення головного вікна</translation>
    672735    </message>
    673736    <message>
    674         <location filename="../ui/settingsdialog.ui" line="403"/>
     737        <location filename="../ui/settingsdialog.ui" line="369"/>
    675738        <source>Hover mouse pointer over dialog elements to get additional help</source>
    676739        <translation>Наведіть покажчик миші на елемент ділогу, щоб отримати підказку</translation>
     
    713776    </message>
    714777    <message>
    715         <location filename="../ui/settingsdialog.ce.ui" line="202"/>
    716         <location filename="../ui/settingsdialog.ui" line="288"/>
     778        <location filename="../ui/settingsdialog.ce.ui" line="184"/>
     779        <location filename="../ui/settingsdialog.ui" line="235"/>
     780        <source>Output settings:</source>
     781        <translation>Параметри виводу:</translation>
     782    </message>
     783    <message>
     784        <location filename="../ui/settingsdialog.ce.ui" line="210"/>
     785        <location filename="../ui/settingsdialog.ui" line="261"/>
    717786        <source>Font color for printing</source>
    718787        <translation>Колір шрифта для друку</translation>
    719788    </message>
    720789    <message>
    721         <location filename="../ui/settingsdialog.ce.ui" line="205"/>
    722         <location filename="../ui/settingsdialog.ui" line="291"/>
     790        <location filename="../ui/settingsdialog.ce.ui" line="213"/>
     791        <location filename="../ui/settingsdialog.ui" line="264"/>
    723792        <source>&amp;Color...</source>
    724793        <translation>&amp;Колір...</translation>
    725794    </message>
    726795    <message>
    727         <location filename="../ui/settingsdialog.ce.ui" line="219"/>
    728         <location filename="../ui/settingsdialog.ui" line="305"/>
     796        <location filename="../ui/settingsdialog.ce.ui" line="193"/>
     797        <location filename="../ui/settingsdialog.ui" line="244"/>
    729798        <source>Font face for printing</source>
    730799        <translation>Вигляд шрифта для друку</translation>
    731800    </message>
    732801    <message>
    733         <location filename="../ui/settingsdialog.ce.ui" line="222"/>
    734         <location filename="../ui/settingsdialog.ui" line="308"/>
     802        <location filename="../ui/settingsdialog.ce.ui" line="196"/>
     803        <location filename="../ui/settingsdialog.ui" line="247"/>
    735804        <source>&amp;Font...</source>
    736805        <translation>&amp;Шрифт...</translation>
    737806    </message>
    738807    <message>
    739         <location filename="../ui/settingsdialog.ce.ui" line="287"/>
    740         <location filename="../ui/settingsdialog.ce.ui" line="293"/>
    741         <location filename="../ui/settingsdialog.ui" line="377"/>
    742         <location filename="../ui/settingsdialog.ui" line="383"/>
     808        <location filename="../ui/settingsdialog.ce.ui" line="279"/>
     809        <location filename="../ui/settingsdialog.ce.ui" line="285"/>
     810        <location filename="../ui/settingsdialog.ui" line="331"/>
     811        <location filename="../ui/settingsdialog.ui" line="337"/>
    743812        <source>Help</source>
    744813        <translation>Допомога</translation>
    745814    </message>
    746815    <message>
    747         <location filename="../ui/settingsdialog.ce.ui" line="290"/>
    748         <location filename="../ui/settingsdialog.ui" line="380"/>
     816        <location filename="../ui/settingsdialog.ce.ui" line="282"/>
     817        <location filename="../ui/settingsdialog.ui" line="334"/>
    749818        <source>Get preferences help</source>
    750819        <translation>Отримати допомогу по налагодженням</translation>
    751820    </message>
    752821    <message>
    753         <location filename="../ui/settingsdialog.ce.ui" line="323"/>
    754         <location filename="../ui/settingsdialog.ui" line="425"/>
     822        <location filename="../ui/settingsdialog.ce.ui" line="315"/>
     823        <location filename="../ui/settingsdialog.ui" line="391"/>
    755824        <source>Save new preferences</source>
    756825        <translation>Зберегти нові параметри</translation>
    757826    </message>
    758827    <message>
    759         <location filename="../ui/settingsdialog.ce.ui" line="326"/>
    760         <location filename="../ui/settingsdialog.ui" line="428"/>
     828        <location filename="../ui/settingsdialog.ce.ui" line="318"/>
     829        <location filename="../ui/settingsdialog.ui" line="394"/>
    761830        <source>&amp;OK</source>
    762831        <translation></translation>
    763832    </message>
    764833    <message>
    765         <location filename="../ui/settingsdialog.ce.ui" line="343"/>
    766         <location filename="../ui/settingsdialog.ui" line="445"/>
     834        <location filename="../ui/settingsdialog.ce.ui" line="335"/>
     835        <location filename="../ui/settingsdialog.ui" line="411"/>
    767836        <source>Close without saving preferences</source>
    768837        <translation>Закрити вікно без збереження параметрів</translation>
    769838    </message>
    770839    <message>
    771         <location filename="../ui/settingsdialog.ce.ui" line="346"/>
    772         <location filename="../ui/settingsdialog.ui" line="448"/>
     840        <location filename="../ui/settingsdialog.ce.ui" line="338"/>
     841        <location filename="../ui/settingsdialog.ui" line="414"/>
    773842        <source>&amp;Cancel</source>
    774843        <translation>&amp;Скасувати</translation>
  • trunk/resources/tspsg.qrc

    r38 r42  
    11<RCC>
    22    <qresource prefix="/images" >
    3         <file>qtlogo-64.png</file>
    43        <file>About.bmp</file>
    54        <file>Icon.png</file>
     
    2322        <file>icons/locale.png</file>
    2423        <file>icons/preferences_system.png</file>
     24        <file>icons/qtlogo-64.png</file>
    2525        <file>icons/roll.png</file>
    2626    </qresource>
  • trunk/resources/tspsg.rc

    r18 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    1010
    1111#include "..\\src\\resource.h"
     12#pragma code_page(65001)
    1213
     14LANGUAGE        0x00, 0x00
     15
     16// Main Icon
    1317IDI_APPICON     ICON    "Icon.ico"
     18
     19// Version Info
     20VS_VERSION_INFO VERSIONINFO
     21        FILEVERSION BUILD_VERSION_MAJOR,BUILD_VERSION_MINOR,BUILD_RELEASE,BUILD_NUMBER
     22        PRODUCTVERSION BUILD_VERSION_MAJOR,BUILD_VERSION_MINOR,BUILD_RELEASE,BUILD_NUMBER
     23        FILEFLAGSMASK 0x17L
     24#ifdef _DEBUG
     25        FILEFLAGS 0x1L
     26#else
     27        FILEFLAGS 0x0L
     28#endif
     29#ifdef Q_OS_WINCE
     30        FILEOS 0x50000L
     31#else
     32        FILEOS 0x4L
     33#endif
     34        FILETYPE 0x1L
     35        FILESUBTYPE 0x0L
     36BEGIN
     37    BLOCK "StringFileInfo"
     38    BEGIN
     39        BLOCK "000004b0"
     40        BEGIN
     41            VALUE "Comments", BUILD_STATUS
     42            VALUE "CompanyName", "..::Lёppsville::.. Homes"
     43            VALUE "FileDescription", "TSPSG: TSP Solver and Generator"
     44            VALUE "FileVersion", BUILD_VERSION
     45            VALUE "InternalName", "TSPSG"
     46            VALUE "LegalCopyright", "Copyright © 2007 - 2009 Lёppa"
     47            VALUE "OriginalFilename", "tspsg.exe"
     48            VALUE "ProductName", "TSPSG"
     49            VALUE "ProductVersion", BUILD_VERSION
     50        END
     51    END
     52    BLOCK "VarFileInfo"
     53    BEGIN
     54        VALUE "Translation", 0x0, 1200
     55    END
     56END
  • trunk/src/globals.h

    r31 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    2929#include <QtGui>
    3030
     31// Version info
     32#include "version.h"
    3133// OS detection
    3234#include "os.h"
     
    3840#define DEF_OFFSET 100
    3941#define DEF_FONT_FAMILY "Courier New"
    40 #define DEF_FONT_SIZE 12
     42#define DEF_FONT_SIZE 10
    4143#define DEF_FONT_COLOR Qt::black
    4244
     
    5456#define ZKT_VERSION quint8(1)
    5557
    56 // Decided, that static array with 100 of cities maximum hard limit
    57 // will be enough for most cases, but the code will be simplier than
    58 // when using dynamic lists. If you need more, just change this value
    59 // and recompile the program ;-)
    60 #define MAX_CITIES 100
    6158// This value means infinity :-)
    6259#ifndef INFINITY
     
    6461#endif
    6562// This is string, which represents infinite value in table
    66 #define INFSTR "-----"
     63#define INFSTR "---"
    6764
    6865#endif // GLOBALS_H
  • trunk/src/main.cpp

    r35 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
  • trunk/src/mainwindow.cpp

    r41 r42  
    1 /*
    2  *  TSPSG - TSP Solver and Generator
     1        /*
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    3030        loadLanguage();
    3131        setupUi(this);
     32        initDocStyleSheet();
     33        solutionText->document()->setDefaultFont(settings->value("Output/Font",QFont(DEF_FONT_FAMILY,DEF_FONT_SIZE)).value<QFont>());
     34        solutionText->setTextColor(settings->value("Output/Color",DEF_FONT_COLOR).value<QColor>());
     35        solutionText->setWordWrapMode(QTextOption::WordWrap);
    3236#ifdef Q_OS_WINCE
    3337        // A little hack for toolbar icons to have sane size.
     
    4650        connect(actionFileNew,SIGNAL(triggered()),this,SLOT(actionFileNewTriggered()));
    4751        connect(actionFileOpen,SIGNAL(triggered()),this,SLOT(actionFileOpenTriggered()));
    48         connect(actionFileSaveTask,SIGNAL(triggered()),this,SLOT(actionFileSaveTaskTriggered()));
     52        connect(actionFileSaveAsTask,SIGNAL(triggered()),this,SLOT(actionFileSaveAsTaskTriggered()));
     53        connect(actionFileSaveAsSolution,SIGNAL(triggered()),this,SLOT(actionFileSaveAsSolutionTriggered()));
    4954        connect(actionSettingsPreferences,SIGNAL(triggered()),this,SLOT(actionSettingsPreferencesTriggered()));
    5055        connect(actionSettingsLanguageAutodetect,SIGNAL(triggered(bool)),this,SLOT(actionSettingsLanguageAutodetectTriggered(bool)));
     
    5964        connect(spinCities,SIGNAL(valueChanged(int)),this,SLOT(spinCitiesValueChanged(int)));
    6065QRect rect = geometry();
    61 #ifdef Q_OS_WINCE
    62         // HACK: Fix for all tabWidget elements becoming "unclickable" if making it central widget.
    63 /*      rect.setSize(QApplication::desktop()->availableGeometry().size());
    64         rect.setHeight(rect.height() - (QApplication::desktop()->screenGeometry().height() - QApplication::desktop()->availableGeometry().height()));
    65         tabWidget->resize(rect.width(),rect.height() - toolBar->iconSize().height());*/
    66         // Somehow, this works now. No more "unclickable" elements :-\
    6766        setCentralWidget(tabWidget);
    68 #else
     67#ifndef Q_OS_WINCE
    6968        if (settings->value("SavePos",false).toBool()) {
    7069                // Loading of saved window state
     
    9291        taskView->resizeRowsToContents();
    9392#endif // Q_OS_WINCE
     93}
     94
     95void MainWindow::enableSolutionActions(bool enable)
     96{
     97        actionFileSaveAsSolution->setEnabled(enable);
     98        solutionText->setEnabled(enable);
     99        if (!enable)
     100                output.clear();
    94101}
    95102
     
    141148}
    142149
     150void MainWindow::initDocStyleSheet()
     151{
     152QColor color = settings->value("Output/Color",DEF_FONT_COLOR).value<QColor>();
     153QColor hilight;
     154        if (color.value() < 192)
     155                hilight.setHsv(color.hue(),color.saturation(),127 + qRound(color.value() / 2));
     156        else
     157                hilight.setHsv(color.hue(),color.saturation(),color.value() / 2);
     158        solutionText->document()->setDefaultStyleSheet("* {color: " + color.name() +";} p {margin: 0px 10px;} table {margin: 5px;} td {padding: 1px 5px;} .hasalts {color: " + hilight.name() + ";} .selected {color: #A00000; font-weight: bold;} .alternate {color: #008000; font-weight: bold;}");
     159        solutionText->document()->setDefaultFont(settings->value("Output/Font",QFont(DEF_FONT_FAMILY,DEF_FONT_SIZE)).value<QFont>());
     160}
     161
    143162void MainWindow::spinCitiesValueChanged(int n)
    144163{
     
    166185        tspmodel->clear();
    167186        setWindowModified(false);
     187        tabWidget->setCurrentIndex(0);
     188        solutionText->clear();
     189        enableSolutionActions(false);
    168190}
    169191
     
    190212        tspmodel->loadTask(files.first());
    191213        setWindowModified(false);
    192 }
    193 
    194 void MainWindow::actionFileSaveTaskTriggered()
     214        solutionText->clear();
     215        enableSolutionActions(false);
     216}
     217
     218void MainWindow::actionFileSaveAsTaskTriggered()
    195219{
    196220        saveTask();
     221}
     222
     223void MainWindow::actionFileSaveAsSolutionTriggered()
     224{
     225static QString selectedFile;
     226        if (selectedFile.isEmpty())
     227                selectedFile = "solution.html";
     228QFileDialog sd(this);
     229        sd.setAcceptMode(QFileDialog::AcceptSave);
     230QStringList filters(trUtf8("HTML Files") + " (*.html *.htm)");
     231        filters.append(trUtf8("OpenDocument Files") + " (*.odt)");
     232        filters.append(trUtf8("All Files") + " (*)");
     233        sd.setNameFilters(filters);
     234        sd.selectFile(selectedFile);
     235        if (sd.exec() != QDialog::Accepted)
     236                return;
     237QStringList files = sd.selectedFiles();
     238        if (files.empty())
     239                return;
     240        selectedFile = files.first();
     241QTextDocumentWriter dw(selectedFile);
     242        if (!(selectedFile.endsWith(".htm",Qt::CaseInsensitive) || selectedFile.endsWith(".html",Qt::CaseInsensitive) || selectedFile.endsWith(".odt",Qt::CaseInsensitive) || selectedFile.endsWith(".txt",Qt::CaseInsensitive)))
     243                dw.setFormat("plaintext");
     244        dw.write(solutionText->document());
    197245}
    198246
     
    219267{
    220268SettingsDialog sd(this);
    221         sd.exec();
     269        if (sd.exec() != QDialog::Accepted)
     270                return;
     271        if (sd.colorChanged() || sd.fontChanged()) {
     272                initDocStyleSheet();
     273                if (!output.isEmpty() && sd.colorChanged() && (QMessageBox(QMessageBox::Question,trUtf8("Settings Changed"),trUtf8("You have changed color settings.\nDo you wish to apply them to current solution text?"),QMessageBox::Yes | QMessageBox::No,this).exec() == QMessageBox::Yes)) {
     274                        QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
     275                        solutionText->clear();
     276                        solutionText->setHtml(output.join(""));
     277                        QApplication::restoreOverrideCursor();
     278                }
     279        }
    222280}
    223281
     
    245303}
    246304
     305void MainWindow::outputMatrix(tMatrix matrix, QStringList &output, int nRow, int nCol)
     306{
     307int n = spinCities->value();
     308QString line="";
     309        output.append("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">");
     310        for (int r = 0; r < n; r++) {
     311                line = "<tr>";
     312                for (int c = 0; c < n; c++) {
     313                        if (matrix[r][c] == INFINITY)
     314                                line += "<td align=\"center\">"INFSTR"</td>";
     315                        else if ((r == nRow) && (c == nCol))
     316                                line += "<td align=\"center\" class=\"selected\">" + QVariant(matrix[r][c]).toString() + "</td>";
     317                        else
     318                                line += "<td align=\"center\">" + QVariant(matrix[r][c]).toString() + "</td>";
     319                }
     320                line += "</tr>";
     321                output.append(line);
     322        }
     323        output.append("</table>");
     324}
     325
    247326void MainWindow::buttonSolveClicked()
    248327{
    249         // TODO: Task solving goes here :-)
    250328tMatrix matrix;
    251 double *row;
     329QList<double> row;
    252330int n = spinCities->value();
    253331bool ok;
    254332        for (int r = 0; r < n; r++) {
    255                 row = new double[n];
     333                row.clear();
    256334                for (int c = 0; c < n; c++) {
    257                         row[c] = tspmodel->index(r,c).data(Qt::UserRole).toDouble(&ok);
     335                        row.append(tspmodel->index(r,c).data(Qt::UserRole).toDouble(&ok));
    258336                        if (!ok) {
    259337                                QMessageBox(QMessageBox::Critical,trUtf8("Data error"),QString(trUtf8("Error in cell [Row %1; Column %2]: Invalid data format.")).arg(r + 1).arg(c + 1),QMessageBox::Ok,this).exec();
     
    266344sStep *root = solver.solve(spinCities->value(),matrix);
    267345        if (!root)
    268                 QMessageBox(QMessageBox::Critical,trUtf8("Solution error"),trUtf8("There was an error while solving the task."),QMessageBox::Ok,this).exec();
    269         // tabWidget->setCurrentIndex(1);
     346                return;
     347        QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
     348QColor color = settings->value("Output/Color",DEF_FONT_COLOR).value<QColor>();
     349        output.clear();
     350        output.append("<p>" + trUtf8("Variant #%1").arg(spinVariant->value()) + "</p>");
     351        output.append("<p>" + trUtf8("Task:") + "</p>");
     352        outputMatrix(matrix,output);
     353        output.append("<hr>");
     354        output.append("<p>" + trUtf8("Solution of Variant #%1 task").arg(spinVariant->value()) + "</p>");
     355sStep *step = root;
     356        n = 1;
     357QString path = "";
     358        while (n <= spinCities->value()) {
     359                if (step->prNode->prNode != NULL || (step->prNode->prNode == NULL && step->plNode->prNode == NULL)) {
     360                        if (n != spinCities->value()) {
     361                                output.append("<p>" + trUtf8("Step #%1").arg(n++) + "</p>");
     362                                outputMatrix(step->matrix,output,step->candidate.nRow,step->candidate.nCol);
     363                                if (step->alts)
     364                                        output.append("<p class=\"hasalts\">" + trUtf8("This step has alternate candidates for branching.") + "</p>");
     365                                output.append("<p>&nbsp;</p>");
     366                        }
     367                        path += QString(" (%1,%2)").arg(step->candidate.nRow + 1).arg(step->candidate.nCol + 1);
     368                }
     369                if (step->prNode->prNode != NULL)
     370                        step = step->prNode;
     371                else if (step->plNode->prNode != NULL)
     372                        step = step->plNode;
     373                else
     374                        break;
     375        }
     376        output.append("<p>" + trUtf8("Optimal path:") + "</p>");
     377        output.append("<p>&nbsp;&nbsp;" + path + "</p>");
     378        output.append("<p>" + trUtf8("The price is <b>%1</b> units.").arg(step->price) + "</p>");
     379        solutionText->setHtml(output.join(""));
     380        solutionText->setDocumentTitle(trUtf8("Solution of Variant #%1 task").arg(spinVariant->value()));
     381        enableSolutionActions();
     382        tabWidget->setCurrentIndex(1);
     383        QApplication::restoreOverrideCursor();
    270384}
    271385
     
    274388        // TODO: Normal about window :-)
    275389QString about = QString::fromUtf8("TSPSG - TSP Solver and Generator\n");
    276 about += QString::fromUtf8("    Copyright (C) 2007-%1 Lёppa <contacts[at]oleksii[dot]name>\n").arg(QDate::currentDate().toString("yyyy"));
     390        about += QString::fromUtf8("    Version: "BUILD_VERSION" ("BUILD_STATUS")\n");
     391        about += QString::fromUtf8("    Copyright (C) 2007-%1 Lёppa <contacts[at]oleksii[dot]name>\n").arg(QDate::currentDate().toString("yyyy"));
    277392        about += QString::fromUtf8("Target OS: %1\n").arg(OS);
    278393        about += "Qt library:\n";
  • trunk/src/mainwindow.h

    r37 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    4444        void actionFileNewTriggered();
    4545        void actionFileOpenTriggered();
    46         void actionFileSaveTaskTriggered();
     46        void actionFileSaveAsTaskTriggered();
     47        void actionFileSaveAsSolutionTriggered();
    4748        void actionSettingsPreferencesTriggered();
    4849        void actionSettingsLanguageAutodetectTriggered(bool);
     
    6263        CTSPModel *tspmodel;
    6364        QActionGroup *groupSettingsLanguageList;
     65        QStringList output;
    6466        bool loadLanguage(QString lang = "");
    6567        void loadLangList();
     68        void initDocStyleSheet();
    6669        bool saveTask();
     70        void outputMatrix(tMatrix, QStringList &, int nRow = -1, int nCol = -1);
     71        void enableSolutionActions(bool enable = true);
    6772};
    6873
  • trunk/src/os.h

    r41 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
  • trunk/src/resource.h

    r18 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    99 */
    1010
     11#include "version.h"
     12
     13#define VS_VERSION_INFO 1
    1114#define IDI_APPICON 101
  • trunk/src/settingsdialog.cpp

    r31 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    2525
    2626SettingsDialog::SettingsDialog(QWidget *parent)
    27         : QDialog(parent)
     27        : QDialog(parent), newFont(false), newColor(false)
    2828{
    2929        setupUi(this);
     
    3535//      setWindowFlags(Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint | Qt::MSWindowsFixedSizeDialogHint);
    3636        setWindowFlags(windowFlags() ^ Qt::WindowContextHelpButtonHint);
    37         layout()->setSizeConstraint(layout()->SetFixedSize);
    3837#ifndef Q_OS_WINCE
    3938        // Setting initial text of dialog hint label to own status tip
    4039        // text.
    4140        labelHint->setText(labelHint->statusTip());
    42         // HACK: Do not resize label hint (and dialog) when text changes
    43         // from one-line to two-line and vice versa. Any better solution?
    44         labelHint->setMaximumHeight(labelHint->height());
    45         labelHint->setMinimumHeight(labelHint->height());
    4641#endif // Q_OS_WINCE
    4742        settings = new QSettings(QSettings::IniFormat,QSettings::UserScope,"TSPSG","tspsg");
     
    5146        cbSaveState->setChecked(settings->value("SavePos",false).toBool());
    5247#endif // Q_OS_WINCE
    53         settings->beginGroup("Print");
     48        settings->beginGroup("Output");
    5449        font = settings->value("Font",QFont(DEF_FONT_FAMILY,DEF_FONT_SIZE)).value<QFont>();
    5550        color = settings->value("Color",DEF_FONT_COLOR).value<QColor>();
     51        settings->endGroup();
     52}
     53
     54void SettingsDialog::accept()
     55{
    5656#ifndef Q_OS_WINCE
    57         spinLeftMargin->setValue(settings->value("Offset",DEF_OFFSET).toInt());
     57        settings->setValue("SavePos",cbSaveState->isChecked());
    5858#endif // Q_OS_WINCE
     59        settings->setValue("MinCost",spinRandMin->value());
     60        settings->setValue("MaxCost",spinRandMax->value());
     61        settings->beginGroup("Output");
     62        if (newFont)
     63                settings->setValue("Font",font);
     64        if (newColor)
     65                settings->setValue("Color",color);
    5966        settings->endGroup();
     67        QDialog::accept();
     68}
     69
     70void SettingsDialog::buttonFontClicked()
     71{
     72bool ok;
     73QFont font = QFontDialog::getFont(&ok,this->font,this);
     74        if (ok && (this->font != font)) {
     75                this->font = font;
     76                newFont = true;
     77        }
     78}
     79
     80void SettingsDialog::buttonColorClicked()
     81{
     82QColor color = QColorDialog::getColor(this->color,this);
     83        if (color.isValid() && (this->color != color)) {
     84                this->color = color;
     85                newColor = true;
     86        }
     87}
     88
     89bool SettingsDialog::colorChanged() const
     90{
     91        return newColor;
     92}
     93
     94bool SettingsDialog::fontChanged() const
     95{
     96        return newFont;
    6097}
    6198
     
    77114}
    78115#endif // Q_OS_WINCE
    79 
    80 void SettingsDialog::buttonFontClicked()
    81 {
    82 bool ok;
    83 QFont font = QFontDialog::getFont(&ok,this->font,this);
    84         if (ok)
    85                 this->font = font;
    86 }
    87 
    88 void SettingsDialog::buttonColorClicked()
    89 {
    90 QColor color = QColorDialog::getColor(this->color,this);
    91         if (color.isValid())
    92                 this->color = color;
    93 }
    94 
    95 void SettingsDialog::accept()
    96 {
    97 #ifndef Q_OS_WINCE
    98         settings->setValue("SavePos",cbSaveState->isChecked());
    99 #endif // Q_OS_WINCE
    100         settings->setValue("MinCost",spinRandMin->value());
    101         settings->setValue("MaxCost",spinRandMax->value());
    102         settings->beginGroup("Print");
    103         settings->setValue("Font",font);
    104         settings->setValue("Color",color);
    105 #ifndef Q_OS_WINCE
    106         settings->setValue("Offset",spinLeftMargin->value());
    107 #endif // Q_OS_WINCE
    108         settings->endGroup();
    109         QDialog::accept();
    110 }
  • trunk/src/settingsdialog.h

    r31 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    3737public:
    3838        SettingsDialog(QWidget *parent = 0);
     39        bool fontChanged() const;
     40        bool colorChanged() const;
    3941
    4042private:
     
    4244        QFont font;
    4345        QColor color;
     46        bool newFont;
     47        bool newColor;
    4448#ifndef Q_OS_WINCE
    4549        bool event(QEvent *);
  • trunk/src/tspmodel.cpp

    r37 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    119119                return;
    120120        emit layoutAboutToBeChanged();
    121         if (n > nCities) {
    122                 for (int r = 0; r < nCities; r++) {
    123                         for (int c = nCities; c < n; c++)
    124                                 if (r == c)
    125                                         table[r][c] = INFINITY;
    126                                 else
    127                                         table[r][c] = 0;
    128                 }
    129                 for (int r = nCities; r < n; r++) {
    130                         for (int c = 0; c < n; c++)
    131                                 if (r == c)
    132                                         table[r][c] = INFINITY;
    133                                 else
    134                                         table[r][c] = 0;
    135                 }
    136         }
     121        table.resize(n);
     122        for (int k = 0; k < n; k++) {
     123                table[k].resize(n);
     124        }
     125        if (n > nCities)
     126                for (int k = nCities; k < n; k++)
     127                        table[k][k] = INFINITY;
    137128        nCities = n;
    138129        emit layoutChanged();
     
    148139}
    149140
    150 inline bool CTSPModel::loadError(QDataStream::Status status) const
     141inline bool CTSPModel::loadError(QDataStream::Status status)
    151142{
    152143QString err;
     
    257248        // Costs
    258249double val;
    259         for (int r = 0; r < size; r++)
    260                 for (int c = 0; c < size; c++)
    261                         if (r != c) {
     250        for (int r = 0; r < 5; r++)
     251                for (int c = 0; c < 5; c++)
     252                        if ((r != c) && (r < size)) {
    262253                                ds->readRawData(reinterpret_cast<char *>(&val),8);
    263254                                if (loadError(ds->status())) {
  • trunk/src/tspmodel.h

    r37 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    4848private:
    4949        QSettings *settings;
    50         double table[MAX_CITIES][MAX_CITIES];
     50        QVector<QVector<double>> table;
    5151        quint16 nCities;
    5252        int rand(int, int) const;
    53         bool loadError(QDataStream::Status) const;
     53        bool loadError(QDataStream::Status);
    5454        void loadZKT(QDataStream *);
    5555        void loadTSPT(QDataStream *);
  • trunk/src/tspsolver.cpp

    r17 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    2626
    2727CTSPSolver::CTSPSolver()
    28 {
    29 }
    30 
    31 double CTSPSolver::findMinInRow(int nRow, tMatrix matrix)
     28        : nCities(0)
     29{
     30}
     31
     32void CTSPSolver::cleanup()
     33{
     34        route.clear();
     35}
     36
     37double CTSPSolver::findMinInRow(int nRow, tMatrix matrix, int exc)
    3238{
    3339double min = INFINITY;
    3440        for (int k = 0; k < nCities; k++)
    35                 if (min > matrix[nRow][k])
     41                if (((k != exc)) && (min > matrix[nRow][k]))
    3642                        min = matrix[nRow][k];
    3743        return min == INFINITY ? 0 : min;
    3844}
    3945
    40 double CTSPSolver::findMinInCol(int nCol, tMatrix matrix)
     46double CTSPSolver::findMinInCol(int nCol, tMatrix matrix, int exr)
    4147{
    4248double min = INFINITY;
    4349        for (int k = 0; k < nCities; k++)
    44                 if (min > matrix[k][nCol])
     50                if ((k != exr) && (min > matrix[k][nCol]))
    4551                        min = matrix[k][nCol];
    4652        return min == INFINITY ? 0 : min;
    4753}
    4854
    49 sStep *CTSPSolver::solve(int numCities, tMatrix task)
     55void CTSPSolver::subRow(tMatrix &matrix, int nRow, double val)
     56{
     57        for (int k = 0; k < nCities; k++)
     58                if (k != nRow)
     59                        matrix[nRow][k] -= val;
     60}
     61
     62void CTSPSolver::subCol(tMatrix &matrix, int nCol, double val)
     63{
     64        for (int k = 0; k < nCities; k++)
     65                if (k != nCol)
     66                        matrix[k][nCol] -= val;
     67}
     68
     69double CTSPSolver::align(tMatrix &matrix)
     70{
     71double r = 0;
     72double min;
     73        for (int k = 0; k < nCities; k++) {
     74                min = findMinInRow(k,matrix);
     75                if (min > 0) {
     76                        r += min;
     77                        subRow(matrix,k,min);
     78                }
     79        }
     80        for (int k = 0; k < nCities; k++) {
     81                min = findMinInCol(k,matrix);
     82                if (min > 0) {
     83                        r += min;
     84                        subCol(matrix,k,min);
     85                }
     86        }
     87        return r;
     88}
     89
     90bool CTSPSolver::findCandidate(tMatrix matrix, int &nRow, int &nCol, double &h)
     91{
     92        h = -1;
     93        nRow = -1;
     94        nCol = -1;
     95bool alts = false;
     96double sum;
     97        for (int r = 0; r < nCities; r++)
     98                for (int c = 0; c < nCities; c++)
     99                        if ((matrix[r][c] == 0) && !forbidden.values(r).contains(c)) {
     100                                sum = findMinInRow(r,matrix,c) + findMinInCol(c,matrix,r);
     101                                if (sum > h) {
     102                                        h = sum;
     103                                        nRow = r;
     104                                        nCol = c;
     105                                        alts = false;
     106                                } else if (sum == h)
     107                                        alts = true;
     108                        }
     109        return alts;
     110}
     111
     112bool CTSPSolver::hasSubCycles(int nRow, int nCol)
     113{
     114        if ((nRow < 0) || (nCol < 0) || route.isEmpty() || !(route.size() < nCities - 1) || !route.contains(nCol))
     115                return false;
     116int i = nCol;
     117        while (true) {
     118                if ((i = route[i]) == nRow)
     119                        return true;
     120                if (!route.contains(i))
     121                        return false;
     122        }
     123        return false;
     124}
     125
     126// TODO: Comment the algorithm
     127sStep *CTSPSolver::solve(int numCities, tMatrix task, QWidget *parent)
    50128{
    51129        if (numCities <= 1)
    52130                return NULL;
     131        cleanup();
    53132        nCities = numCities;
     133double s;
     134QProgressDialog pd(parent);
     135QProgressBar *pb = new QProgressBar(&pd);
     136        pb->setAlignment(Qt::AlignCenter);
     137        pb->setFormat(trUtf8("%v of %m parts found"));
     138        pd.setBar(pb);
     139        pd.setMaximum(nCities);
     140        pd.setMinimumDuration(1000);
     141        pd.setLabelText(trUtf8("Calculating optimal route..."));
     142        pd.setWindowTitle(trUtf8("Solution Progress"));
     143        pd.setWindowModality(Qt::ApplicationModal);
     144        pd.setValue(0);
     145
    54146sStep *step = new sStep();
    55147        step->matrix = task;
     148
     149        s = align(step->matrix);
     150        step->price = s;
    56151        root = step;
    57152
    58         return step;
    59 }
     153sStep *left, *right;
     154int nRow, nCol;
     155        while (route.size() < nCities) {
     156                forbidden.clear();
     157                step->alts = findCandidate(step->matrix,nRow,nCol,s);
     158                while (hasSubCycles(nRow,nCol)) {
     159                        forbidden[nRow] = nCol;
     160                        step->matrix[nRow][nCol] = INFINITY;
     161                        step->price += align(step->matrix);
     162                        step->alts = findCandidate(step->matrix,nRow,nCol,s);
     163                }
     164                if ((nRow == -1) || (nCol == -1) || pd.wasCanceled()) {
     165                        root = NULL;
     166                        break;
     167                }
     168
     169                // Route with (nRow,nCol) path
     170                right = new sStep();
     171                right->matrix = step->matrix;
     172                for (int k = 0; k < nCities; k++) {
     173                        if (k != nCol)
     174                                right->matrix[nRow][k] = INFINITY;
     175                        if (k != nRow)
     176                                right->matrix[k][nCol] = INFINITY;
     177                }
     178                right->price = step->price + align(right->matrix);
     179                // Forbid selected route to exclude its reuse in next steps.
     180                right->matrix[nCol][nRow] = INFINITY;
     181                right->matrix[nRow][nCol] = INFINITY;
     182
     183                // Route without (nRow,nCol) path
     184                left = new sStep();
     185                left->matrix = step->matrix;
     186                left->matrix[nRow][nCol] = INFINITY;
     187                left->price = step->price + align(left->matrix);
     188
     189                step->candidate.nRow = nRow;
     190                step->candidate.nCol = nCol;
     191                step->plNode = left;
     192                step->prNode = right;
     193
     194                if (right->price <= left->price) {
     195                        // Route with (nRow,nCol) path is cheaper
     196                        step = right;
     197                        route[nRow] = nCol;
     198                        pd.setValue(route.size());
     199                } else {
     200                        // Route without (nRow,nCol) path is cheaper
     201                        step = left;
     202                        qApp->processEvents();
     203                }
     204        }
     205
     206        pd.reset();
     207        qApp->processEvents();
     208
     209        if (!root && !pd.wasCanceled()) {
     210                QMessageBox(QMessageBox::Warning,trUtf8("Solution Result"),trUtf8("This task has no solution."),QMessageBox::Ok,parent).exec();
     211        }
     212
     213        return root;
     214}
  • trunk/src/tspsolver.h

    r31 r42  
    11/*
    2  *  TSPSG - TSP Solver and Generator
     2 *  TSPSG: TSP Solver and Generator
    33 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    44 *
     
    2727#include "globals.h"
    2828
    29 typedef QList<double *> tMatrix;
     29typedef QList<QList<double>> tMatrix;
    3030
    3131// This structure represents one step of solving
    3232// The tree of such elements will represent the solving process
    3333struct sStep {
    34         tMatrix matrix;
    35         double price;
    36         struct {unsigned int x; unsigned int y;} pos;
    37         sStep *plNode, *prNode;
    38         sStep() { price = pos.x = pos.y = 0; plNode = prNode = NULL; }
     34        tMatrix matrix; // Steps's matrix
     35        double price; // Price of travel to this step
     36        struct {unsigned int nRow; unsigned int nCol;} candidate; // Candiadate for branching in current matrix
     37        bool alts; // This matrix has alternative candidates
     38        sStep *plNode, *prNode; // Pointers to left and right branch steps
     39        sStep() { price = candidate.nRow = candidate.nCol = -1; alts = false; plNode = prNode = NULL; } // Default values
    3940};
    4041
     
    4243class CTSPSolver
    4344{
     45        Q_DECLARE_TR_FUNCTIONS(CTSPSolver)
     46
    4447public:
    4548        CTSPSolver();
    46         sStep *solve(int, tMatrix);
     49        sStep *solve(int, tMatrix, QWidget *parent = 0);
     50
    4751private:
    4852        int nCities;
    4953        sStep *root;
    50         double findMinInRow(int, tMatrix);
    51         double findMinInCol(int, tMatrix);
     54        QHash<int,int> route;
     55        QHash<int,int> forbidden;
     56        double align(tMatrix &);
     57        void cleanup();
     58        bool findCandidate(tMatrix, int &, int &, double &);
     59        double findMinInRow(int, tMatrix, int exc = -1);
     60        double findMinInCol(int, tMatrix, int exr = -1);
     61        bool hasSubCycles(int, int);
     62        void subCol(tMatrix &, int, double);
     63        void subRow(tMatrix &, int, double);
    5264};
    5365
  • trunk/tspsg.pri

    r33 r42  
    11######################################################################
    22#
    3 # TSPSG - TSP Solver and Generator
     3# TSPSG: TSP Solver and Generator
    44# Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    55#
     
    1313#Header files
    1414HEADERS += src/globals.h \
     15        src/version.h \
    1516        src/os.h \
    1617        src/mainwindow.h \
  • trunk/tspsg.pro

    r40 r42  
    11######################################################################
    22#
    3 # TSPSG - TSP Solver and Generator
     3# TSPSG: TSP Solver and Generator
    44# Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
    55#
  • trunk/ui/mainwindow.ce.ui

    r39 r42  
    1010    <x>0</x>
    1111    <y>0</y>
    12     <width>234</width>
    13     <height>292</height>
     12    <width>225</width>
     13    <height>322</height>
    1414   </rect>
    1515  </property>
     
    2222  </property>
    2323  <widget class="QWidget" name="centralwidget">
    24    <property name="enabled">
    25     <bool>true</bool>
    26    </property>
    2724   <widget class="QTabWidget" name="tabWidget">
    2825    <property name="enabled">
     
    3128    <property name="geometry">
    3229     <rect>
    33       <x>0</x>
    34       <y>0</y>
    35       <width>235</width>
    36       <height>240</height>
     30      <x>9</x>
     31      <y>9</y>
     32      <width>207</width>
     33      <height>248</height>
    3734     </rect>
    3835    </property>
     
    206203      <string>Solution</string>
    207204     </attribute>
    208      <layout class="QVBoxLayout" name="_4">
     205     <layout class="QVBoxLayout" name="verticalLayout_2">
    209206      <item>
    210        <layout class="QHBoxLayout" name="_5">
    211         <property name="spacing">
    212          <number>0</number>
     207       <widget class="QTextEdit" name="solutionText">
     208        <property name="enabled">
     209         <bool>false</bool>
    213210        </property>
    214         <item>
    215          <widget class="QTextEdit" name="textEdit">
    216           <property name="sizePolicy">
    217            <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
    218             <horstretch>0</horstretch>
    219             <verstretch>0</verstretch>
    220            </sizepolicy>
    221           </property>
    222           <property name="statusTip">
    223            <string>Solution steps</string>
    224           </property>
    225           <property name="readOnly">
    226            <bool>true</bool>
    227           </property>
    228          </widget>
    229         </item>
    230         <item>
    231          <widget class="QGraphicsView" name="graphicsView">
    232           <property name="statusTip">
    233            <string>Solution graph</string>
    234           </property>
    235          </widget>
    236         </item>
    237        </layout>
     211        <property name="statusTip">
     212         <string>Solution steps</string>
     213        </property>
     214        <property name="readOnly">
     215         <bool>true</bool>
     216        </property>
     217        <property name="textInteractionFlags">
     218         <set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
     219        </property>
     220       </widget>
    238221      </item>
    239222     </layout>
     
    246229     <x>0</x>
    247230     <y>0</y>
    248      <width>234</width>
    249      <height>24</height>
     231     <width>225</width>
     232     <height>22</height>
    250233    </rect>
    251234   </property>
     
    270253       <normaloff>:/images/icons/filesaveas.png</normaloff>:/images/icons/filesaveas.png</iconset>
    271254     </property>
    272      <addaction name="actionFileSaveTask"/>
    273      <addaction name="separator"/>
    274      <addaction name="actionFileSaveResultAll"/>
    275      <addaction name="actionFileSaveResultMatrices"/>
    276      <addaction name="actionFileSaveResultGraph"/>
     255     <addaction name="actionFileSaveAsTask"/>
     256     <addaction name="actionFileSaveAsSolution"/>
    277257    </widget>
    278258    <addaction name="actionFileNew"/>
     
    295275     </property>
    296276     <property name="title">
    297       <string extracomment="Please, append &quot; / Language&quot; when translating this string.">&amp;Language</string>
     277      <string comment="Please, append &quot; / Language&quot; when translating this string.">&amp;Language</string>
    298278     </property>
    299279     <property name="icon">
     
    369349   </property>
    370350  </action>
    371   <action name="actionFileSaveResultAll">
     351  <action name="actionFileSaveAsSolution">
    372352   <property name="enabled">
    373353    <bool>false</bool>
    374354   </property>
    375355   <property name="text">
    376     <string>&amp;Solution</string>
     356    <string>&amp;Solution...</string>
     357   </property>
     358   <property name="iconText">
     359    <string>Solution...</string>
    377360   </property>
    378361   <property name="toolTip">
     
    497480   </property>
    498481  </action>
    499   <action name="actionFileSaveTask">
     482  <action name="actionFileSaveAsTask">
    500483   <property name="icon">
    501484    <iconset resource="../resources/tspsg.qrc">
     
    567550   <property name="icon">
    568551    <iconset resource="../resources/tspsg.qrc">
    569      <normaloff>:/images/qtlogo-64.png</normaloff>:/images/qtlogo-64.png</iconset>
     552     <normaloff>:/images/icons/qtlogo-64.png</normaloff>:/images/icons/qtlogo-64.png</iconset>
    570553   </property>
    571554   <property name="text">
  • trunk/ui/mainwindow.ui

    r39 r42  
    77    <x>0</x>
    88    <y>0</y>
    9     <width>640</width>
    10     <height>480</height>
     9    <width>491</width>
     10    <height>400</height>
    1111   </rect>
    1212  </property>
     
    1919  </property>
    2020  <widget class="QWidget" name="centralwidget">
    21    <layout class="QGridLayout">
    22     <item row="0" column="0">
    23      <widget class="QTabWidget" name="tabWidget">
    24       <property name="sizePolicy">
    25        <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
    26         <horstretch>0</horstretch>
    27         <verstretch>0</verstretch>
    28        </sizepolicy>
    29       </property>
    30       <property name="currentIndex">
    31        <number>0</number>
    32       </property>
    33       <widget class="QWidget" name="tabTask">
    34        <attribute name="title">
    35         <string>Task</string>
    36        </attribute>
    37        <layout class="QVBoxLayout">
    38         <item>
    39          <layout class="QHBoxLayout">
    40           <item>
    41            <spacer>
    42             <property name="orientation">
    43              <enum>Qt::Horizontal</enum>
    44             </property>
    45             <property name="sizeHint" stdset="0">
    46              <size>
    47               <width>40</width>
    48               <height>20</height>
    49              </size>
    50             </property>
    51            </spacer>
    52           </item>
    53           <item>
    54            <widget class="QLabel" name="labelVariant">
    55             <property name="text">
    56              <string>&amp;Variant:</string>
    57             </property>
    58             <property name="buddy">
    59              <cstring>spinVariant</cstring>
    60             </property>
    61            </widget>
    62           </item>
    63           <item>
    64            <widget class="QSpinBox" name="spinVariant">
    65             <property name="cursor">
    66              <cursorShape>PointingHandCursor</cursorShape>
    67             </property>
    68             <property name="statusTip">
    69              <string>Number of variant</string>
    70             </property>
    71             <property name="minimum">
    72              <number>1</number>
    73             </property>
    74            </widget>
    75           </item>
    76           <item>
    77            <widget class="QLabel" name="labelCities">
    78             <property name="text">
    79              <string>&amp;Cities:</string>
    80             </property>
    81             <property name="buddy">
    82              <cstring>spinCities</cstring>
    83             </property>
    84            </widget>
    85           </item>
    86           <item>
    87            <widget class="QSpinBox" name="spinCities">
    88             <property name="cursor">
    89              <cursorShape>PointingHandCursor</cursorShape>
    90             </property>
    91             <property name="statusTip">
    92              <string>Number of cities</string>
    93             </property>
    94             <property name="minimum">
    95              <number>3</number>
    96             </property>
    97             <property name="maximum">
    98              <number>5</number>
    99             </property>
    100             <property name="value">
    101              <number>5</number>
    102             </property>
    103            </widget>
    104           </item>
    105           <item>
    106            <spacer>
    107             <property name="orientation">
    108              <enum>Qt::Horizontal</enum>
    109             </property>
    110             <property name="sizeHint" stdset="0">
    111              <size>
    112               <width>40</width>
    113               <height>20</height>
    114              </size>
    115             </property>
    116            </spacer>
    117           </item>
    118          </layout>
    119         </item>
    120         <item>
    121          <widget class="QTableView" name="taskView">
     21   <widget class="QTabWidget" name="tabWidget">
     22    <property name="geometry">
     23     <rect>
     24      <x>0</x>
     25      <y>0</y>
     26      <width>481</width>
     27      <height>311</height>
     28     </rect>
     29    </property>
     30    <property name="sizePolicy">
     31     <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
     32      <horstretch>0</horstretch>
     33      <verstretch>0</verstretch>
     34     </sizepolicy>
     35    </property>
     36    <property name="currentIndex">
     37     <number>0</number>
     38    </property>
     39    <widget class="QWidget" name="tabTask">
     40     <attribute name="title">
     41      <string>Task</string>
     42     </attribute>
     43     <layout class="QVBoxLayout">
     44      <item>
     45       <layout class="QHBoxLayout">
     46        <item>
     47         <spacer>
     48          <property name="orientation">
     49           <enum>Qt::Horizontal</enum>
     50          </property>
     51          <property name="sizeHint" stdset="0">
     52           <size>
     53            <width>40</width>
     54            <height>20</height>
     55           </size>
     56          </property>
     57         </spacer>
     58        </item>
     59        <item>
     60         <widget class="QLabel" name="labelVariant">
     61          <property name="text">
     62           <string>&amp;Variant:</string>
     63          </property>
     64          <property name="buddy">
     65           <cstring>spinVariant</cstring>
     66          </property>
     67         </widget>
     68        </item>
     69        <item>
     70         <widget class="QSpinBox" name="spinVariant">
     71          <property name="cursor">
     72           <cursorShape>PointingHandCursor</cursorShape>
     73          </property>
    12274          <property name="statusTip">
    123            <string>Cost of travel from city to city</string>
    124           </property>
    125           <property name="selectionMode">
    126            <enum>QAbstractItemView::NoSelection</enum>
     75           <string>Number of variant</string>
     76          </property>
     77          <property name="minimum">
     78           <number>1</number>
    12779          </property>
    12880         </widget>
    12981        </item>
    13082        <item>
    131          <layout class="QHBoxLayout">
    132           <item>
    133            <spacer>
    134             <property name="orientation">
    135              <enum>Qt::Horizontal</enum>
    136             </property>
    137             <property name="sizeHint" stdset="0">
    138              <size>
    139               <width>40</width>
    140               <height>20</height>
    141              </size>
    142             </property>
    143            </spacer>
    144           </item>
    145           <item>
    146            <widget class="QPushButton" name="buttonRandom">
    147             <property name="cursor">
    148              <cursorShape>PointingHandCursor</cursorShape>
    149             </property>
    150             <property name="statusTip">
    151              <string>Fill table with random numbers</string>
    152             </property>
    153             <property name="text">
    154              <string>Random</string>
    155             </property>
    156             <property name="icon">
    157              <iconset resource="../resources/tspsg.qrc">
    158               <normaloff>:/images/icons/roll.png</normaloff>:/images/icons/roll.png</iconset>
    159             </property>
    160            </widget>
    161           </item>
    162           <item>
    163            <widget class="QPushButton" name="buttonSolve">
    164             <property name="cursor">
    165              <cursorShape>PointingHandCursor</cursorShape>
    166             </property>
    167             <property name="statusTip">
    168              <string>Solve current task</string>
    169             </property>
    170             <property name="text">
    171              <string>Solve</string>
    172             </property>
    173             <property name="icon">
    174              <iconset resource="../resources/tspsg.qrc">
    175               <normaloff>:/images/icons/button_ok.png</normaloff>:/images/icons/button_ok.png</iconset>
    176             </property>
    177            </widget>
    178           </item>
    179          </layout>
     83         <widget class="QLabel" name="labelCities">
     84          <property name="text">
     85           <string>&amp;Cities:</string>
     86          </property>
     87          <property name="buddy">
     88           <cstring>spinCities</cstring>
     89          </property>
     90         </widget>
     91        </item>
     92        <item>
     93         <widget class="QSpinBox" name="spinCities">
     94          <property name="cursor">
     95           <cursorShape>PointingHandCursor</cursorShape>
     96          </property>
     97          <property name="statusTip">
     98           <string>Number of cities</string>
     99          </property>
     100          <property name="minimum">
     101           <number>3</number>
     102          </property>
     103          <property name="maximum">
     104           <number>5</number>
     105          </property>
     106          <property name="value">
     107           <number>5</number>
     108          </property>
     109         </widget>
     110        </item>
     111        <item>
     112         <spacer>
     113          <property name="orientation">
     114           <enum>Qt::Horizontal</enum>
     115          </property>
     116          <property name="sizeHint" stdset="0">
     117           <size>
     118            <width>40</width>
     119            <height>20</height>
     120           </size>
     121          </property>
     122         </spacer>
    180123        </item>
    181124       </layout>
    182       </widget>
    183       <widget class="QWidget" name="tabSolution">
    184        <attribute name="title">
    185         <string>Solution</string>
    186        </attribute>
    187        <layout class="QVBoxLayout">
    188         <item>
    189          <layout class="QHBoxLayout">
    190           <property name="spacing">
    191            <number>0</number>
    192           </property>
    193           <item>
    194            <widget class="QTextEdit" name="textEdit">
    195             <property name="sizePolicy">
    196              <sizepolicy hsizetype="Fixed" vsizetype="Expanding">
    197               <horstretch>0</horstretch>
    198               <verstretch>0</verstretch>
    199              </sizepolicy>
    200             </property>
    201             <property name="statusTip">
    202              <string>Solution steps</string>
    203             </property>
    204             <property name="readOnly">
    205              <bool>true</bool>
    206             </property>
    207            </widget>
    208           </item>
    209           <item>
    210            <widget class="QGraphicsView" name="graphicsView">
    211             <property name="statusTip">
    212              <string>Solution graph</string>
    213             </property>
    214            </widget>
    215           </item>
    216          </layout>
     125      </item>
     126      <item>
     127       <widget class="QTableView" name="taskView">
     128        <property name="statusTip">
     129         <string>Cost of travel from city to city</string>
     130        </property>
     131        <property name="selectionMode">
     132         <enum>QAbstractItemView::NoSelection</enum>
     133        </property>
     134       </widget>
     135      </item>
     136      <item>
     137       <layout class="QHBoxLayout">
     138        <item>
     139         <spacer>
     140          <property name="orientation">
     141           <enum>Qt::Horizontal</enum>
     142          </property>
     143          <property name="sizeHint" stdset="0">
     144           <size>
     145            <width>40</width>
     146            <height>20</height>
     147           </size>
     148          </property>
     149         </spacer>
     150        </item>
     151        <item>
     152         <widget class="QPushButton" name="buttonRandom">
     153          <property name="cursor">
     154           <cursorShape>PointingHandCursor</cursorShape>
     155          </property>
     156          <property name="statusTip">
     157           <string>Fill table with random numbers</string>
     158          </property>
     159          <property name="text">
     160           <string>Random</string>
     161          </property>
     162          <property name="icon">
     163           <iconset resource="../resources/tspsg.qrc">
     164            <normaloff>:/images/icons/roll.png</normaloff>:/images/icons/roll.png</iconset>
     165          </property>
     166         </widget>
     167        </item>
     168        <item>
     169         <widget class="QPushButton" name="buttonSolve">
     170          <property name="cursor">
     171           <cursorShape>PointingHandCursor</cursorShape>
     172          </property>
     173          <property name="statusTip">
     174           <string>Solve current task</string>
     175          </property>
     176          <property name="text">
     177           <string>Solve</string>
     178          </property>
     179          <property name="icon">
     180           <iconset resource="../resources/tspsg.qrc">
     181            <normaloff>:/images/icons/button_ok.png</normaloff>:/images/icons/button_ok.png</iconset>
     182          </property>
     183         </widget>
    217184        </item>
    218185       </layout>
    219       </widget>
    220      </widget>
    221     </item>
    222    </layout>
     186      </item>
     187     </layout>
     188    </widget>
     189    <widget class="QWidget" name="tabSolution">
     190     <attribute name="title">
     191      <string>Solution</string>
     192     </attribute>
     193     <layout class="QVBoxLayout" name="verticalLayout">
     194      <item>
     195       <widget class="QTextEdit" name="solutionText">
     196        <property name="enabled">
     197         <bool>false</bool>
     198        </property>
     199        <property name="statusTip">
     200         <string>Solution steps</string>
     201        </property>
     202        <property name="readOnly">
     203         <bool>true</bool>
     204        </property>
     205        <property name="textInteractionFlags">
     206         <set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
     207        </property>
     208       </widget>
     209      </item>
     210     </layout>
     211    </widget>
     212   </widget>
    223213  </widget>
    224214  <widget class="QMenuBar" name="menubar">
     
    227217     <x>0</x>
    228218     <y>0</y>
    229      <width>640</width>
    230      <height>24</height>
     219     <width>491</width>
     220     <height>22</height>
    231221    </rect>
    232222   </property>
     
    248238       <normaloff>:/images/icons/filesaveas.png</normaloff>:/images/icons/filesaveas.png</iconset>
    249239     </property>
    250      <addaction name="actionFileSaveTask"/>
    251      <addaction name="separator"/>
    252      <addaction name="actionFileSaveSolutionAll"/>
    253      <addaction name="actionFileSaveSolutionMatrices"/>
    254      <addaction name="actionFileSaveSolutionGraph"/>
     240     <addaction name="actionFileSaveAsTask"/>
     241     <addaction name="actionFileSaveAsSolution"/>
    255242    </widget>
    256243    <addaction name="actionFileNew"/>
     
    276263     </property>
    277264     <property name="title">
    278       <string extracomment="Please, append &quot; / Language&quot; when translating this string.">&amp;Language</string>
     265      <string comment="Please, append &quot; / Language&quot; when translating this string.">&amp;Language</string>
    279266     </property>
    280267     <property name="icon">
     
    325312  </widget>
    326313  <action name="actionFilePrintSetup">
     314   <property name="enabled">
     315    <bool>false</bool>
     316   </property>
    327317   <property name="icon">
    328318    <iconset resource="../resources/tspsg.qrc">
     
    382372   </property>
    383373  </action>
    384   <action name="actionFileSaveSolutionAll">
    385    <property name="enabled">
    386     <bool>false</bool>
    387    </property>
    388    <property name="text">
    389     <string>&amp;Solution</string>
     374  <action name="actionFileSaveAsSolution">
     375   <property name="enabled">
     376    <bool>false</bool>
     377   </property>
     378   <property name="text">
     379    <string>&amp;Solution...</string>
    390380   </property>
    391381   <property name="toolTip">
     
    510500   </property>
    511501  </action>
    512   <action name="actionFileSaveTask">
    513    <property name="icon">
    514     <iconset resource="../resources/tspsg.qrc">
    515      <normaloff>:/images/icons/filesaveas.png</normaloff>:/images/icons/filesaveas.png</iconset>
    516    </property>
     502  <action name="actionFileSaveAsTask">
    517503   <property name="text">
    518504    <string>&amp;Task...</string>
     
    583569   <property name="icon">
    584570    <iconset resource="../resources/tspsg.qrc">
    585      <normaloff>:/images/qtlogo-64.png</normaloff>:/images/qtlogo-64.png</iconset>
     571     <normaloff>:/images/icons/qtlogo-64.png</normaloff>:/images/icons/qtlogo-64.png</iconset>
    586572   </property>
    587573   <property name="text">
  • trunk/ui/settingsdialog.ce.ui

    r38 r42  
    77    <x>0</x>
    88    <y>0</y>
    9     <width>235</width>
    10     <height>180</height>
     9    <width>205</width>
     10    <height>212</height>
    1111   </rect>
    1212  </property>
     
    180180      </item>
    181181      <item>
    182        <layout class="QHBoxLayout" name="horizontalLayout_2">
    183         <item>
    184          <spacer name="horizontalSpacer_3">
    185           <property name="orientation">
    186            <enum>Qt::Horizontal</enum>
    187           </property>
    188           <property name="sizeHint" stdset="0">
    189            <size>
    190             <width>40</width>
    191             <height>20</height>
    192            </size>
    193           </property>
    194          </spacer>
    195         </item>
    196         <item>
    197          <widget class="QPushButton" name="buttonColor">
    198           <property name="cursor">
    199            <cursorShape>PointingHandCursor</cursorShape>
    200           </property>
    201           <property name="statusTip">
    202            <string>Font color for printing</string>
    203           </property>
    204           <property name="text">
    205            <string>&amp;Color...</string>
    206           </property>
    207           <property name="icon">
    208            <iconset resource="../resources/tspsg.qrc">
    209             <normaloff>:/images/icons/color_line.png</normaloff>:/images/icons/color_line.png</iconset>
    210           </property>
    211          </widget>
    212         </item>
    213         <item>
    214          <widget class="QPushButton" name="buttonFont">
    215           <property name="cursor">
    216            <cursorShape>PointingHandCursor</cursorShape>
    217           </property>
    218           <property name="statusTip">
    219            <string>Font face for printing</string>
    220           </property>
    221           <property name="text">
    222            <string>&amp;Font...</string>
    223           </property>
    224           <property name="icon">
    225            <iconset resource="../resources/tspsg.qrc">
    226             <normaloff>:/images/icons/fonts.png</normaloff>:/images/icons/fonts.png</iconset>
    227           </property>
    228          </widget>
    229         </item>
    230        </layout>
     182       <widget class="QGroupBox" name="groupOutputSettings">
     183        <property name="title">
     184         <string>Output settings:</string>
     185        </property>
     186        <layout class="QHBoxLayout" name="horizontalLayout">
     187         <item>
     188          <widget class="QPushButton" name="buttonFont">
     189           <property name="cursor">
     190            <cursorShape>PointingHandCursor</cursorShape>
     191           </property>
     192           <property name="statusTip">
     193            <string>Font face for printing</string>
     194           </property>
     195           <property name="text">
     196            <string>&amp;Font...</string>
     197           </property>
     198           <property name="icon">
     199            <iconset resource="../resources/tspsg.qrc">
     200             <normaloff>:/images/icons/fonts.png</normaloff>:/images/icons/fonts.png</iconset>
     201           </property>
     202          </widget>
     203         </item>
     204         <item>
     205          <widget class="QPushButton" name="buttonColor">
     206           <property name="cursor">
     207            <cursorShape>PointingHandCursor</cursorShape>
     208           </property>
     209           <property name="statusTip">
     210            <string>Font color for printing</string>
     211           </property>
     212           <property name="text">
     213            <string>&amp;Color...</string>
     214           </property>
     215           <property name="icon">
     216            <iconset resource="../resources/tspsg.qrc">
     217             <normaloff>:/images/icons/color_line.png</normaloff>:/images/icons/color_line.png</iconset>
     218           </property>
     219          </widget>
     220         </item>
     221        </layout>
     222       </widget>
    231223      </item>
    232224      <item>
  • trunk/ui/settingsdialog.ui

    r38 r42  
    77    <x>0</x>
    88    <y>0</y>
    9     <width>448</width>
    10     <height>174</height>
     9    <width>415</width>
     10    <height>176</height>
    1111   </rect>
    1212  </property>
     
    231231          </item>
    232232          <item>
    233            <widget class="QGroupBox" name="groupPrintSetup">
     233           <widget class="QGroupBox" name="groupOutputSettings">
    234234            <property name="title">
    235              <string>Print settings:</string>
     235             <string>Output settings:</string>
    236236            </property>
    237237            <layout class="QVBoxLayout" name="verticalLayout">
    238238             <item>
    239               <layout class="QHBoxLayout">
    240                <item>
    241                 <widget class="QLabel" name="labelLeftMargin">
    242                  <property name="sizePolicy">
    243                   <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
    244                    <horstretch>0</horstretch>
    245                    <verstretch>0</verstretch>
    246                   </sizepolicy>
    247                  </property>
    248                  <property name="text">
    249                   <string>&amp;Left margin:</string>
    250                  </property>
    251                  <property name="buddy">
    252                   <cstring>spinLeftMargin</cstring>
    253                  </property>
    254                 </widget>
    255                </item>
    256                <item>
    257                 <widget class="QSpinBox" name="spinLeftMargin">
    258                  <property name="cursor">
    259                   <cursorShape>PointingHandCursor</cursorShape>
    260                  </property>
    261                  <property name="statusTip">
    262                   <string>Left border margin for page</string>
    263                  </property>
    264                  <property name="maximum">
    265                   <number>999</number>
    266                  </property>
    267                  <property name="singleStep">
    268                   <number>10</number>
    269                  </property>
    270                  <property name="value">
    271                   <number>100</number>
    272                  </property>
    273                 </widget>
    274                </item>
    275               </layout>
     239              <widget class="QPushButton" name="buttonFont">
     240               <property name="cursor">
     241                <cursorShape>PointingHandCursor</cursorShape>
     242               </property>
     243               <property name="statusTip">
     244                <string>Font face for printing</string>
     245               </property>
     246               <property name="text">
     247                <string>&amp;Font...</string>
     248               </property>
     249               <property name="icon">
     250                <iconset resource="../resources/tspsg.qrc">
     251                 <normaloff>:/images/icons/fonts.png</normaloff>:/images/icons/fonts.png</iconset>
     252               </property>
     253              </widget>
    276254             </item>
    277255             <item>
    278               <layout class="QHBoxLayout" name="horizontalLayout">
    279                <property name="spacing">
    280                 <number>0</number>
    281                </property>
    282                <item>
    283                 <widget class="QPushButton" name="buttonColor">
    284                  <property name="cursor">
    285                   <cursorShape>PointingHandCursor</cursorShape>
    286                  </property>
    287                  <property name="statusTip">
    288                   <string>Font color for printing</string>
    289                  </property>
    290                  <property name="text">
    291                   <string>&amp;Color...</string>
    292                  </property>
    293                  <property name="icon">
    294                   <iconset resource="../resources/tspsg.qrc">
    295                    <normaloff>:/images/icons/color_line.png</normaloff>:/images/icons/color_line.png</iconset>
    296                  </property>
    297                 </widget>
    298                </item>
    299                <item>
    300                 <widget class="QPushButton" name="buttonFont">
    301                  <property name="cursor">
    302                   <cursorShape>PointingHandCursor</cursorShape>
    303                  </property>
    304                  <property name="statusTip">
    305                   <string>Font face for printing</string>
    306                  </property>
    307                  <property name="text">
    308                   <string>&amp;Font...</string>
    309                  </property>
    310                  <property name="icon">
    311                   <iconset resource="../resources/tspsg.qrc">
    312                    <normaloff>:/images/icons/fonts.png</normaloff>:/images/icons/fonts.png</iconset>
    313                  </property>
    314                 </widget>
    315                </item>
    316               </layout>
     256              <widget class="QPushButton" name="buttonColor">
     257               <property name="cursor">
     258                <cursorShape>PointingHandCursor</cursorShape>
     259               </property>
     260               <property name="statusTip">
     261                <string>Font color for printing</string>
     262               </property>
     263               <property name="text">
     264                <string>&amp;Color...</string>
     265               </property>
     266               <property name="icon">
     267                <iconset resource="../resources/tspsg.qrc">
     268                 <normaloff>:/images/icons/color_line.png</normaloff>:/images/icons/color_line.png</iconset>
     269               </property>
     270              </widget>
    317271             </item>
    318272            </layout>
     
    400354        </sizepolicy>
    401355       </property>
     356       <property name="minimumSize">
     357        <size>
     358         <width>0</width>
     359         <height>28</height>
     360        </size>
     361       </property>
     362       <property name="maximumSize">
     363        <size>
     364         <width>16777215</width>
     365         <height>28</height>
     366        </size>
     367       </property>
    402368       <property name="statusTip">
    403369        <string>Hover mouse pointer over dialog elements to get additional help</string>
     
    460426 <resources>
    461427  <include location="../resources/tspsg.qrc"/>
     428  <include location="../resources/tspsg.qrc"/>
     429  <include location="../resources/tspsg.qrc"/>
     430  <include location="../resources/tspsg.qrc"/>
     431  <include location="../resources/tspsg.qrc"/>
     432  <include location="../resources/tspsg.qrc"/>
     433  <include location="../resources/tspsg.qrc"/>
     434  <include location="../resources/tspsg.qrc"/>
     435  <include location="../resources/tspsg.qrc"/>
    462436 </resources>
    463437 <connections/>
Note: See TracChangeset for help on using the changeset viewer.