Changeset 899d1b8e15 in tspsg


Ignore:
Timestamp:
Jun 24, 2009, 6:54:10 PM (15 years ago)
Author:
Oleksii Serdiuk
Branches:
0.1.3.145-beta1-symbian, 0.1.4.170-beta2-bb10, appveyor, imgbot, master, readme
Children:
ac4cb71650
Parents:
78282ec778
Message:

+ Selected application language is now saved and restored.
+ Added language selection entries to main menu.
+ On-the-fly language switching.
+ Loading corresponding Qt library language, if exists.

  • File/New? sets all table cells to zeros.
  • Translation updates to reflect recent changes.
  • Renamed language files from language names to language codes.
  • Renamed some slot to have unified signal/slot naming.
  • Printer settings are now persistant until application close.
Files:
9 edited
3 moved

Legend:

Unmodified
Added
Removed
  • i18n/en.ts

    r78282ec778 r899d1b8e15  
    11<?xml version="1.0" encoding="utf-8"?>
    22<!DOCTYPE TS>
    3 <TS version="2.0" language="en" sourcelanguage="en">
     3<TS version="2.0">
    44<defaultcodec>UTF-8</defaultcodec>
    55<context>
     6    <name></name>
     7    <message>
     8        <location filename="../src/mainwindow.cpp" line="244"/>
     9        <location filename="../src/mainwindow.cpp" line="253"/>
     10        <source>Language change</source>
     11        <translation type="unfinished"></translation>
     12    </message>
     13    <message>
     14        <location filename="../src/mainwindow.cpp" line="244"/>
     15        <source>Language will be autodetected on next application start.</source>
     16        <translation type="unfinished"></translation>
     17    </message>
     18    <message>
     19        <location filename="../src/mainwindow.cpp" line="253"/>
     20        <source>You have language autodetection turned on.
     21It needs to be off.
     22Do you wish to turn it off?</source>
     23        <translation type="unfinished"></translation>
     24    </message>
     25</context>
     26<context>
    627    <name>CTSPModel</name>
    728    <message>
    829        <location filename="../src/tspmodel.cpp" line="52"/>
    930        <source>City %1</source>
    10         <translation></translation>
     31        <translation type="unfinished"></translation>
    1132    </message>
    1233    <message>
    1334        <location filename="../src/tspmodel.cpp" line="54"/>
    1435        <source>%1</source>
    15         <translation></translation>
     36        <translation type="unfinished"></translation>
    1637    </message>
    1738</context>
     
    1940    <name>MainWindow</name>
    2041    <message>
    21         <location filename="../ui/mainwindow.ui" line="315"/>
    22         <source>P&amp;rint setup...</source>
    23         <translation></translation>
    24     </message>
    25     <message>
    26         <location filename="../ui/mainwindow.ui" line="318"/>
    27         <source>Setup printing</source>
    28         <translation></translation>
    29     </message>
    30     <message>
    31         <location filename="../ui/mainwindow.ui" line="330"/>
    32         <source>&amp;Print...</source>
    33         <translation></translation>
    34     </message>
    35     <message>
    36         <location filename="../ui/mainwindow.ui" line="333"/>
    37         <source>Print solution results</source>
    38         <translation></translation>
    39     </message>
    40     <message>
    41         <location filename="../ui/mainwindow.ui" line="336"/>
    42         <source>Ctrl+P</source>
    43         <translation></translation>
    44     </message>
    45     <message>
    46         <location filename="../ui/mainwindow.ce.ui" line="503"/>
    47         <location filename="../ui/mainwindow.ui" line="519"/>
    48         <source>Ctrl+S</source>
    49         <translation></translation>
    50     </message>
    51     <message>
    52         <location filename="../ui/mainwindow.ce.ui" line="383"/>
    53         <location filename="../ui/mainwindow.ui" line="399"/>
    54         <source>Ctrl+N</source>
    55         <translation></translation>
     42        <location filename="../src/mainwindow.cpp" line="122"/>
     43        <source>Language change</source>
     44        <translation type="unfinished"></translation>
     45    </message>
     46    <message>
     47        <location filename="../src/mainwindow.cpp" line="122"/>
     48        <source>Unable to load translation language.</source>
     49        <translation type="unfinished"></translation>
     50    </message>
     51    <message>
     52        <location filename="../src/mainwindow.cpp" line="189"/>
     53        <source>Data error</source>
     54        <translation type="unfinished"></translation>
     55    </message>
     56    <message>
     57        <location filename="../src/mainwindow.cpp" line="189"/>
     58        <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
     59        <translation type="unfinished"></translation>
     60    </message>
     61    <message>
     62        <location filename="../src/mainwindow.cpp" line="198"/>
     63        <source>Solution error</source>
     64        <translation type="unfinished"></translation>
     65    </message>
     66    <message>
     67        <location filename="../src/mainwindow.cpp" line="198"/>
     68        <source>There was an error while solving the task.</source>
     69        <translation type="unfinished"></translation>
    5670    </message>
    5771    <message>
     
    5973        <location filename="../ui/mainwindow.ui" line="14"/>
    6074        <source>Travelling salesman problem</source>
    61         <translation></translation>
     75        <translation type="unfinished"></translation>
    6276    </message>
    6377    <message>
     
    6579        <location filename="../ui/mainwindow.ui" line="35"/>
    6680        <source>Task</source>
    67         <translation></translation>
     81        <translation type="unfinished"></translation>
    6882    </message>
    6983    <message>
     
    7185        <location filename="../ui/mainwindow.ui" line="56"/>
    7286        <source>&amp;Variant:</source>
    73         <translation></translation>
     87        <translation type="unfinished"></translation>
    7488    </message>
    7589    <message>
     
    7791        <location filename="../ui/mainwindow.ui" line="69"/>
    7892        <source>Number of variant</source>
    79         <translation></translation>
     93        <translation type="unfinished"></translation>
    8094    </message>
    8195    <message>
     
    8397        <location filename="../ui/mainwindow.ui" line="79"/>
    8498        <source>&amp;Cities:</source>
    85         <translation></translation>
     99        <translation type="unfinished"></translation>
    86100    </message>
    87101    <message>
     
    89103        <location filename="../ui/mainwindow.ui" line="92"/>
    90104        <source>Number of cities</source>
    91         <translation></translation>
     105        <translation type="unfinished"></translation>
    92106    </message>
    93107    <message>
     
    95109        <location filename="../ui/mainwindow.ui" line="123"/>
    96110        <source>Cost of travel from city to city</source>
    97         <translation></translation>
     111        <translation type="unfinished"></translation>
    98112    </message>
    99113    <message>
     
    101115        <location filename="../ui/mainwindow.ui" line="151"/>
    102116        <source>Fill table with random numbers</source>
    103         <translation></translation>
     117        <translation type="unfinished"></translation>
    104118    </message>
    105119    <message>
     
    107121        <location filename="../ui/mainwindow.ui" line="154"/>
    108122        <source>Random</source>
    109         <translation></translation>
     123        <translation type="unfinished"></translation>
    110124    </message>
    111125    <message>
     
    113127        <location filename="../ui/mainwindow.ui" line="164"/>
    114128        <source>Solve current task</source>
    115         <translation></translation>
     129        <translation type="unfinished"></translation>
    116130    </message>
    117131    <message>
     
    119133        <location filename="../ui/mainwindow.ui" line="167"/>
    120134        <source>Solve</source>
    121         <translation></translation>
     135        <translation type="unfinished"></translation>
    122136    </message>
    123137    <message>
     
    125139        <location filename="../ui/mainwindow.ui" line="181"/>
    126140        <source>Solution</source>
    127         <translation></translation>
     141        <translation type="unfinished"></translation>
    128142    </message>
    129143    <message>
     
    131145        <location filename="../ui/mainwindow.ui" line="198"/>
    132146        <source>Solution steps</source>
    133         <translation></translation>
     147        <translation type="unfinished"></translation>
    134148    </message>
    135149    <message>
     
    137151        <location filename="../ui/mainwindow.ui" line="208"/>
    138152        <source>Solution graph</source>
    139         <translation></translation>
     153        <translation type="unfinished"></translation>
    140154    </message>
    141155    <message>
     
    143157        <location filename="../ui/mainwindow.ui" line="236"/>
    144158        <source>&amp;File</source>
    145         <translation></translation>
     159        <translation type="unfinished"></translation>
    146160    </message>
    147161    <message>
    148162        <location filename="../ui/mainwindow.ce.ui" line="262"/>
    149         <location filename="../ui/mainwindow.ui" line="243"/>
     163        <location filename="../ui/mainwindow.ui" line="240"/>
    150164        <source>&amp;Save</source>
    151         <translation></translation>
     165        <translation type="unfinished"></translation>
    152166    </message>
    153167    <message>
    154168        <location filename="../ui/mainwindow.ce.ui" line="282"/>
    155         <location filename="../ui/mainwindow.ui" line="266"/>
     169        <location filename="../ui/mainwindow.ui" line="263"/>
    156170        <source>&amp;Settings</source>
    157         <translation></translation>
    158     </message>
    159     <message>
    160         <location filename="../ui/mainwindow.ce.ui" line="288"/>
    161         <location filename="../ui/mainwindow.ui" line="272"/>
     171        <translation type="unfinished"></translation>
     172    </message>
     173    <message>
     174        <location filename="../ui/mainwindow.ce.ui" line="292"/>
     175        <location filename="../ui/mainwindow.ui" line="273"/>
     176        <source>&amp;Language</source>
     177        <translation type="unfinished"></translation>
     178    </message>
     179    <message>
     180        <location filename="../ui/mainwindow.ce.ui" line="302"/>
     181        <location filename="../ui/mainwindow.ui" line="283"/>
    162182        <source>&amp;Help</source>
    163         <translation></translation>
    164     </message>
    165     <message>
    166         <location filename="../ui/mainwindow.ce.ui" line="328"/>
     183        <translation type="unfinished"></translation>
     184    </message>
     185    <message>
     186        <location filename="../ui/mainwindow.ce.ui" line="342"/>
     187        <location filename="../ui/mainwindow.ui" line="355"/>
     188        <source>Solution st&amp;eps</source>
     189        <translation type="unfinished"></translation>
     190    </message>
     191    <message>
     192        <location filename="../ui/mainwindow.ce.ui" line="345"/>
     193        <location filename="../ui/mainwindow.ui" line="358"/>
     194        <source>Save solution steps</source>
     195        <translation type="unfinished"></translation>
     196    </message>
     197    <message>
     198        <location filename="../ui/mainwindow.ce.ui" line="348"/>
     199        <location filename="../ui/mainwindow.ui" line="361"/>
     200        <source>Save solution steps only</source>
     201        <translation type="unfinished"></translation>
     202    </message>
     203    <message>
     204        <location filename="../ui/mainwindow.ce.ui" line="356"/>
     205        <location filename="../ui/mainwindow.ui" line="369"/>
     206        <source>Solution &amp;graph</source>
     207        <translation type="unfinished"></translation>
     208    </message>
     209    <message>
     210        <location filename="../ui/mainwindow.ce.ui" line="359"/>
     211        <location filename="../ui/mainwindow.ui" line="372"/>
     212        <source>Save solution graph</source>
     213        <translation type="unfinished"></translation>
     214    </message>
     215    <message>
     216        <location filename="../ui/mainwindow.ce.ui" line="362"/>
     217        <location filename="../ui/mainwindow.ui" line="375"/>
     218        <source>Save solution graph only</source>
     219        <translation type="unfinished"></translation>
     220    </message>
     221    <message>
     222        <location filename="../ui/mainwindow.ce.ui" line="370"/>
     223        <location filename="../ui/mainwindow.ui" line="383"/>
     224        <source>&amp;Solution</source>
     225        <translation type="unfinished"></translation>
     226    </message>
     227    <message>
     228        <location filename="../ui/mainwindow.ce.ui" line="373"/>
     229        <location filename="../ui/mainwindow.ui" line="386"/>
     230        <source>Save solution</source>
     231        <translation type="unfinished"></translation>
     232    </message>
     233    <message>
     234        <location filename="../ui/mainwindow.ce.ui" line="376"/>
     235        <location filename="../ui/mainwindow.ui" line="389"/>
     236        <source>Save solution steps and graph</source>
     237        <translation type="unfinished"></translation>
     238    </message>
     239    <message>
     240        <location filename="../ui/mainwindow.ce.ui" line="385"/>
     241        <location filename="../ui/mainwindow.ui" line="398"/>
     242        <source>&amp;New</source>
     243        <translation type="unfinished"></translation>
     244    </message>
     245    <message>
     246        <location filename="../ui/mainwindow.ce.ui" line="388"/>
     247        <location filename="../ui/mainwindow.ui" line="401"/>
     248        <source>New</source>
     249        <translation type="unfinished"></translation>
     250    </message>
     251    <message>
     252        <location filename="../ui/mainwindow.ce.ui" line="391"/>
     253        <location filename="../ui/mainwindow.ui" line="404"/>
     254        <source>New task</source>
     255        <translation type="unfinished"></translation>
     256    </message>
     257    <message>
     258        <location filename="../ui/mainwindow.ce.ui" line="394"/>
     259        <location filename="../ui/mainwindow.ui" line="407"/>
     260        <source>Create new task</source>
     261        <translation type="unfinished"></translation>
     262    </message>
     263    <message>
     264        <location filename="../ui/mainwindow.ce.ui" line="397"/>
     265        <location filename="../ui/mainwindow.ui" line="410"/>
     266        <source>Ctrl+N</source>
     267        <translation type="unfinished"></translation>
     268    </message>
     269    <message>
     270        <location filename="../ui/mainwindow.ce.ui" line="409"/>
     271        <location filename="../ui/mainwindow.ui" line="422"/>
     272        <source>&amp;Open...</source>
     273        <translation type="unfinished"></translation>
     274    </message>
     275    <message>
     276        <location filename="../ui/mainwindow.ce.ui" line="412"/>
     277        <location filename="../ui/mainwindow.ui" line="425"/>
     278        <source>Open...</source>
     279        <translation type="unfinished"></translation>
     280    </message>
     281    <message>
     282        <location filename="../ui/mainwindow.ce.ui" line="415"/>
     283        <location filename="../ui/mainwindow.ui" line="428"/>
     284        <source>Open task</source>
     285        <translation type="unfinished"></translation>
     286    </message>
     287    <message>
     288        <location filename="../ui/mainwindow.ce.ui" line="418"/>
     289        <location filename="../ui/mainwindow.ui" line="431"/>
     290        <source>Open saved task</source>
     291        <translation type="unfinished"></translation>
     292    </message>
     293    <message>
     294        <location filename="../ui/mainwindow.ce.ui" line="421"/>
     295        <location filename="../ui/mainwindow.ui" line="434"/>
     296        <source>Ctrl+O</source>
     297        <translation type="unfinished"></translation>
     298    </message>
     299    <message>
     300        <location filename="../ui/mainwindow.ce.ui" line="430"/>
     301        <location filename="../ui/mainwindow.ui" line="443"/>
     302        <source>&amp;Preferences...</source>
     303        <translation type="unfinished"></translation>
     304    </message>
     305    <message>
     306        <location filename="../ui/mainwindow.ce.ui" line="433"/>
     307        <location filename="../ui/mainwindow.ui" line="446"/>
     308        <source>Preferences...</source>
     309        <translation type="unfinished"></translation>
     310    </message>
     311    <message>
     312        <location filename="../ui/mainwindow.ce.ui" line="436"/>
     313        <location filename="../ui/mainwindow.ui" line="449"/>
     314        <source>Application preferences</source>
     315        <translation type="unfinished"></translation>
     316    </message>
     317    <message>
     318        <location filename="../ui/mainwindow.ce.ui" line="448"/>
     319        <location filename="../ui/mainwindow.ui" line="461"/>
     320        <source>&amp;Contents</source>
     321        <translation type="unfinished"></translation>
     322    </message>
     323    <message>
     324        <location filename="../ui/mainwindow.ce.ui" line="451"/>
     325        <location filename="../ui/mainwindow.ui" line="464"/>
     326        <source>Open help contents</source>
     327        <translation type="unfinished"></translation>
     328    </message>
     329    <message>
     330        <location filename="../ui/mainwindow.ce.ui" line="463"/>
     331        <location filename="../ui/mainwindow.ui" line="476"/>
     332        <source>&amp;Context help</source>
     333        <translation type="unfinished"></translation>
     334    </message>
     335    <message>
     336        <location filename="../ui/mainwindow.ce.ui" line="466"/>
     337        <location filename="../ui/mainwindow.ui" line="479"/>
     338        <source>Open context help</source>
     339        <translation type="unfinished"></translation>
     340    </message>
     341    <message>
     342        <location filename="../ui/mainwindow.ce.ui" line="475"/>
     343        <location filename="../ui/mainwindow.ui" line="488"/>
     344        <source>&amp;About...</source>
     345        <translation type="unfinished"></translation>
     346    </message>
     347    <message>
     348        <location filename="../ui/mainwindow.ce.ui" line="478"/>
     349        <location filename="../ui/mainwindow.ui" line="491"/>
     350        <source>About...</source>
     351        <translation type="unfinished"></translation>
     352    </message>
     353    <message>
     354        <location filename="../ui/mainwindow.ce.ui" line="481"/>
     355        <location filename="../ui/mainwindow.ui" line="494"/>
     356        <source>About application</source>
     357        <translation type="unfinished"></translation>
     358    </message>
     359    <message>
     360        <location filename="../ui/mainwindow.ce.ui" line="490"/>
     361        <location filename="../ui/mainwindow.ui" line="503"/>
     362        <source>E&amp;xit</source>
     363        <translation type="unfinished"></translation>
     364    </message>
     365    <message>
     366        <location filename="../ui/mainwindow.ce.ui" line="493"/>
     367        <location filename="../ui/mainwindow.ui" line="506"/>
     368        <source>Exit application</source>
     369        <translation type="unfinished"></translation>
     370    </message>
     371    <message>
     372        <location filename="../ui/mainwindow.ce.ui" line="505"/>
     373        <location filename="../ui/mainwindow.ui" line="518"/>
     374        <source>&amp;Task...</source>
     375        <translation type="unfinished"></translation>
     376    </message>
     377    <message>
     378        <location filename="../ui/mainwindow.ce.ui" line="508"/>
     379        <location filename="../ui/mainwindow.ui" line="521"/>
     380        <source>Task...</source>
     381        <translation type="unfinished"></translation>
     382    </message>
     383    <message>
     384        <location filename="../ui/mainwindow.ce.ui" line="511"/>
     385        <location filename="../ui/mainwindow.ui" line="524"/>
     386        <source>Save task</source>
     387        <translation type="unfinished"></translation>
     388    </message>
     389    <message>
     390        <location filename="../ui/mainwindow.ce.ui" line="514"/>
     391        <location filename="../ui/mainwindow.ui" line="527"/>
     392        <source>Save task to file</source>
     393        <translation type="unfinished"></translation>
     394    </message>
     395    <message>
     396        <location filename="../ui/mainwindow.ce.ui" line="517"/>
     397        <location filename="../ui/mainwindow.ui" line="530"/>
     398        <source>Ctrl+S</source>
     399        <translation type="unfinished"></translation>
     400    </message>
     401    <message>
     402        <location filename="../ui/mainwindow.ce.ui" line="528"/>
     403        <location filename="../ui/mainwindow.ui" line="541"/>
     404        <source>&amp;Autodetect</source>
     405        <translation type="unfinished"></translation>
     406    </message>
     407    <message>
     408        <location filename="../ui/mainwindow.ce.ui" line="286"/>
     409        <location filename="../ui/mainwindow.ui" line="267"/>
     410        <source>Select language</source>
     411        <translation type="unfinished"></translation>
     412    </message>
     413    <message>
     414        <location filename="../ui/mainwindow.ce.ui" line="289"/>
     415        <location filename="../ui/mainwindow.ui" line="270"/>
     416        <source>Select application language</source>
     417        <translation type="unfinished"></translation>
     418    </message>
     419    <message>
     420        <location filename="../ui/mainwindow.ui" line="326"/>
     421        <source>P&amp;rint setup...</source>
     422        <translation type="unfinished"></translation>
     423    </message>
     424    <message>
     425        <location filename="../ui/mainwindow.ui" line="329"/>
     426        <source>Setup printing</source>
     427        <translation type="unfinished"></translation>
     428    </message>
     429    <message>
     430        <location filename="../ui/mainwindow.ui" line="341"/>
     431        <source>&amp;Print...</source>
     432        <translation type="unfinished"></translation>
     433    </message>
     434    <message>
    167435        <location filename="../ui/mainwindow.ui" line="344"/>
    168         <source>Solution st&amp;eps</source>
    169         <translation></translation>
    170     </message>
    171     <message>
    172         <location filename="../ui/mainwindow.ce.ui" line="331"/>
     436        <source>Print solution results</source>
     437        <translation type="unfinished"></translation>
     438    </message>
     439    <message>
    173440        <location filename="../ui/mainwindow.ui" line="347"/>
    174         <source>Save solution steps</source>
    175         <translation></translation>
    176     </message>
    177     <message>
    178         <location filename="../ui/mainwindow.ce.ui" line="334"/>
    179         <location filename="../ui/mainwindow.ui" line="350"/>
    180         <source>Save solution steps only</source>
    181         <translation></translation>
    182     </message>
    183     <message>
    184         <location filename="../ui/mainwindow.ce.ui" line="342"/>
    185         <location filename="../ui/mainwindow.ui" line="358"/>
    186         <source>Solution &amp;graph</source>
    187         <translation></translation>
    188     </message>
    189     <message>
    190         <location filename="../ui/mainwindow.ce.ui" line="345"/>
    191         <location filename="../ui/mainwindow.ui" line="361"/>
    192         <source>Save solution graph</source>
    193         <translation></translation>
    194     </message>
    195     <message>
    196         <location filename="../ui/mainwindow.ce.ui" line="348"/>
    197         <location filename="../ui/mainwindow.ui" line="364"/>
    198         <source>Save solution graph only</source>
    199         <translation></translation>
    200     </message>
    201     <message>
    202         <location filename="../ui/mainwindow.ce.ui" line="356"/>
    203         <location filename="../ui/mainwindow.ui" line="372"/>
    204         <source>&amp;Solution</source>
    205         <translation></translation>
    206     </message>
    207     <message>
    208         <location filename="../ui/mainwindow.ce.ui" line="359"/>
    209         <location filename="../ui/mainwindow.ui" line="375"/>
    210         <source>Save solution</source>
    211         <translation></translation>
    212     </message>
    213     <message>
    214         <location filename="../ui/mainwindow.ce.ui" line="362"/>
    215         <location filename="../ui/mainwindow.ui" line="378"/>
    216         <source>Save solution steps and graph</source>
    217         <translation></translation>
    218     </message>
    219     <message>
    220         <location filename="../ui/mainwindow.ce.ui" line="371"/>
    221         <location filename="../ui/mainwindow.ui" line="387"/>
    222         <source>&amp;New</source>
    223         <translation></translation>
    224     </message>
    225     <message>
    226         <location filename="../ui/mainwindow.ce.ui" line="374"/>
    227         <location filename="../ui/mainwindow.ui" line="390"/>
    228         <source>New</source>
    229         <translation></translation>
    230     </message>
    231     <message>
    232         <location filename="../ui/mainwindow.ce.ui" line="377"/>
    233         <location filename="../ui/mainwindow.ui" line="393"/>
    234         <source>New task</source>
    235         <translation></translation>
    236     </message>
    237     <message>
    238         <location filename="../ui/mainwindow.ce.ui" line="380"/>
    239         <location filename="../ui/mainwindow.ui" line="396"/>
    240         <source>Create new task</source>
    241         <translation></translation>
    242     </message>
    243     <message>
    244         <location filename="../ui/mainwindow.ce.ui" line="395"/>
    245         <location filename="../ui/mainwindow.ui" line="411"/>
    246         <source>&amp;Open...</source>
    247         <translation></translation>
    248     </message>
    249     <message>
    250         <location filename="../ui/mainwindow.ce.ui" line="398"/>
    251         <location filename="../ui/mainwindow.ui" line="414"/>
    252         <source>Open...</source>
    253         <translation></translation>
    254     </message>
    255     <message>
    256         <location filename="../ui/mainwindow.ce.ui" line="401"/>
    257         <location filename="../ui/mainwindow.ui" line="417"/>
    258         <source>Open task</source>
    259         <translation></translation>
    260     </message>
    261     <message>
    262         <location filename="../ui/mainwindow.ce.ui" line="404"/>
    263         <location filename="../ui/mainwindow.ui" line="420"/>
    264         <source>Open saved task</source>
    265         <translation></translation>
    266     </message>
    267     <message>
    268         <location filename="../ui/mainwindow.ce.ui" line="407"/>
    269         <location filename="../ui/mainwindow.ui" line="423"/>
    270         <source>Ctrl+O</source>
    271         <translation></translation>
    272     </message>
    273     <message>
    274         <location filename="../ui/mainwindow.ce.ui" line="416"/>
    275         <location filename="../ui/mainwindow.ui" line="432"/>
    276         <source>&amp;Preferences...</source>
    277         <translation></translation>
    278     </message>
    279     <message>
    280         <location filename="../ui/mainwindow.ce.ui" line="419"/>
    281         <location filename="../ui/mainwindow.ui" line="435"/>
    282         <source>Preferences...</source>
    283         <translation></translation>
    284     </message>
    285     <message>
    286         <location filename="../ui/mainwindow.ce.ui" line="422"/>
    287         <location filename="../ui/mainwindow.ui" line="438"/>
    288         <source>Application preferences</source>
    289         <translation></translation>
    290     </message>
    291     <message>
    292         <location filename="../ui/mainwindow.ce.ui" line="434"/>
    293         <location filename="../ui/mainwindow.ui" line="450"/>
    294         <source>&amp;Contents</source>
    295         <translation></translation>
    296     </message>
    297     <message>
    298         <location filename="../ui/mainwindow.ce.ui" line="437"/>
    299         <location filename="../ui/mainwindow.ui" line="453"/>
    300         <source>Open help contents</source>
    301         <translation></translation>
    302     </message>
    303     <message>
    304         <location filename="../ui/mainwindow.ce.ui" line="449"/>
    305         <location filename="../ui/mainwindow.ui" line="465"/>
    306         <source>&amp;Context help</source>
    307         <translation></translation>
    308     </message>
    309     <message>
    310         <location filename="../ui/mainwindow.ce.ui" line="452"/>
    311         <location filename="../ui/mainwindow.ui" line="468"/>
    312         <source>Open context help</source>
    313         <translation></translation>
    314     </message>
    315     <message>
    316         <location filename="../ui/mainwindow.ce.ui" line="461"/>
    317         <location filename="../ui/mainwindow.ui" line="477"/>
    318         <source>&amp;About...</source>
    319         <translation></translation>
    320     </message>
    321     <message>
    322         <location filename="../ui/mainwindow.ce.ui" line="464"/>
    323         <location filename="../ui/mainwindow.ui" line="480"/>
    324         <source>About...</source>
    325         <translation></translation>
    326     </message>
    327     <message>
    328         <location filename="../ui/mainwindow.ce.ui" line="467"/>
    329         <location filename="../ui/mainwindow.ui" line="483"/>
    330         <source>About application</source>
    331         <translation></translation>
    332     </message>
    333     <message>
    334         <location filename="../ui/mainwindow.ce.ui" line="476"/>
    335         <location filename="../ui/mainwindow.ui" line="492"/>
    336         <source>E&amp;xit</source>
    337         <translation></translation>
    338     </message>
    339     <message>
    340         <location filename="../ui/mainwindow.ce.ui" line="479"/>
    341         <location filename="../ui/mainwindow.ui" line="495"/>
    342         <source>Exit application</source>
    343         <translation></translation>
    344     </message>
    345     <message>
    346         <location filename="../ui/mainwindow.ce.ui" line="491"/>
    347         <location filename="../ui/mainwindow.ui" line="507"/>
    348         <source>&amp;Task...</source>
    349         <translation></translation>
    350     </message>
    351     <message>
    352         <location filename="../ui/mainwindow.ce.ui" line="494"/>
    353         <location filename="../ui/mainwindow.ui" line="510"/>
    354         <source>Task...</source>
    355         <translation></translation>
    356     </message>
    357     <message>
    358         <location filename="../ui/mainwindow.ce.ui" line="497"/>
    359         <location filename="../ui/mainwindow.ui" line="513"/>
    360         <source>Save task</source>
    361         <translation></translation>
    362     </message>
    363     <message>
    364         <location filename="../ui/mainwindow.ce.ui" line="500"/>
    365         <location filename="../ui/mainwindow.ui" line="516"/>
    366         <source>Save task to file</source>
    367         <translation></translation>
    368     </message>
    369     <message>
    370         <location filename="../src/mainwindow.cpp" line="125"/>
    371         <source>Data error</source>
    372         <translation></translation>
    373     </message>
    374     <message>
    375         <location filename="../src/mainwindow.cpp" line="125"/>
    376         <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
    377         <translation></translation>
    378     </message>
    379     <message>
    380         <location filename="../src/mainwindow.cpp" line="134"/>
    381         <source>Solution error</source>
    382         <translation></translation>
    383     </message>
    384     <message>
    385         <location filename="../src/mainwindow.cpp" line="134"/>
    386         <source>There was an error while solving the task.</source>
    387         <translation></translation>
     441        <source>Ctrl+P</source>
     442        <translation type="unfinished"></translation>
     443    </message>
     444    <message>
     445        <location filename="../ui/mainwindow.ce.ui" line="531"/>
     446        <location filename="../ui/mainwindow.ui" line="544"/>
     447        <source>Detect language automatically</source>
     448        <translation type="unfinished"></translation>
     449    </message>
     450    <message>
     451        <location filename="../ui/mainwindow.ce.ui" line="534"/>
     452        <location filename="../ui/mainwindow.ui" line="547"/>
     453        <source>Detect language automatically based on regional settings</source>
     454        <translation type="unfinished"></translation>
    388455    </message>
    389456</context>
     
    391458    <name>SettingsDialog</name>
    392459    <message>
    393         <location filename="../ui/settingsdialog.ui" line="41"/>
    394         <source>background-color: #0080C0</source>
    395         <translation></translation>
    396     </message>
    397     <message>
    398         <location filename="../ui/settingsdialog.ui" line="235"/>
    399         <source>Print settings:</source>
    400         <translation></translation>
    401     </message>
    402     <message>
    403         <location filename="../ui/settingsdialog.ui" line="249"/>
    404         <source>&amp;Left margin:</source>
    405         <translation></translation>
    406     </message>
    407     <message>
    408         <location filename="../ui/settingsdialog.ui" line="262"/>
    409         <source>Left border margin for page</source>
    410         <translation></translation>
    411     </message>
    412     <message>
    413         <location filename="../ui/settingsdialog.ui" line="329"/>
    414         <source>Restore main window state and position on application restart</source>
    415         <translation></translation>
    416     </message>
    417     <message>
    418         <location filename="../ui/settingsdialog.ui" line="332"/>
    419         <source>Save main window state and position</source>
    420         <translation></translation>
    421     </message>
    422     <message>
    423         <location filename="../ui/settingsdialog.ui" line="403"/>
    424         <source>Hover mouse pointer over dialog elements to get additional help</source>
    425         <translation></translation>
    426     </message>
    427     <message>
    428460        <location filename="../ui/settingsdialog.ce.ui" line="14"/>
    429461        <location filename="../ui/settingsdialog.ui" line="14"/>
    430462        <source>Preferences</source>
    431         <translation></translation>
     463        <translation type="unfinished"></translation>
    432464    </message>
    433465    <message>
     
    435467        <location filename="../ui/settingsdialog.ui" line="151"/>
    436468        <source>Random values:</source>
    437         <translation></translation>
     469        <translation type="unfinished"></translation>
    438470    </message>
    439471    <message>
     
    441473        <location filename="../ui/settingsdialog.ui" line="165"/>
    442474        <source>&amp;Minimal:</source>
    443         <translation></translation>
     475        <translation type="unfinished"></translation>
    444476    </message>
    445477    <message>
     
    447479        <location filename="../ui/settingsdialog.ui" line="178"/>
    448480        <source>Minimum for random number generation</source>
    449         <translation></translation>
     481        <translation type="unfinished"></translation>
    450482    </message>
    451483    <message>
     
    453485        <location filename="../ui/settingsdialog.ui" line="201"/>
    454486        <source>Ma&amp;ximal:</source>
    455         <translation></translation>
     487        <translation type="unfinished"></translation>
    456488    </message>
    457489    <message>
     
    459491        <location filename="../ui/settingsdialog.ui" line="214"/>
    460492        <source>Maximum for random number generation</source>
    461         <translation></translation>
     493        <translation type="unfinished"></translation>
    462494    </message>
    463495    <message>
     
    465497        <location filename="../ui/settingsdialog.ui" line="288"/>
    466498        <source>Font color for printing</source>
    467         <translation></translation>
     499        <translation type="unfinished"></translation>
    468500    </message>
    469501    <message>
     
    471503        <location filename="../ui/settingsdialog.ui" line="291"/>
    472504        <source>&amp;Color...</source>
    473         <translation></translation>
     505        <translation type="unfinished"></translation>
    474506    </message>
    475507    <message>
     
    477509        <location filename="../ui/settingsdialog.ui" line="305"/>
    478510        <source>Font face for printing</source>
    479         <translation></translation>
     511        <translation type="unfinished"></translation>
    480512    </message>
    481513    <message>
     
    483515        <location filename="../ui/settingsdialog.ui" line="308"/>
    484516        <source>&amp;Font...</source>
    485         <translation></translation>
     517        <translation type="unfinished"></translation>
    486518    </message>
    487519    <message>
     
    491523        <location filename="../ui/settingsdialog.ui" line="383"/>
    492524        <source>Help</source>
    493         <translation></translation>
     525        <translation type="unfinished"></translation>
    494526    </message>
    495527    <message>
     
    497529        <location filename="../ui/settingsdialog.ui" line="380"/>
    498530        <source>Get preferences help</source>
    499         <translation></translation>
     531        <translation type="unfinished"></translation>
    500532    </message>
    501533    <message>
     
    503535        <location filename="../ui/settingsdialog.ui" line="425"/>
    504536        <source>Save new preferences</source>
    505         <translation></translation>
     537        <translation type="unfinished"></translation>
    506538    </message>
    507539    <message>
     
    509541        <location filename="../ui/settingsdialog.ui" line="428"/>
    510542        <source>&amp;OK</source>
    511         <translation></translation>
     543        <translation type="unfinished"></translation>
    512544    </message>
    513545    <message>
     
    515547        <location filename="../ui/settingsdialog.ui" line="445"/>
    516548        <source>Close without saving preferences</source>
    517         <translation></translation>
     549        <translation type="unfinished"></translation>
    518550    </message>
    519551    <message>
     
    521553        <location filename="../ui/settingsdialog.ui" line="448"/>
    522554        <source>&amp;Cancel</source>
    523         <translation></translation>
     555        <translation type="unfinished"></translation>
     556    </message>
     557    <message>
     558        <location filename="../ui/settingsdialog.ui" line="41"/>
     559        <source>background-color: #0080C0</source>
     560        <translation type="unfinished"></translation>
     561    </message>
     562    <message>
     563        <location filename="../ui/settingsdialog.ui" line="235"/>
     564        <source>Print settings:</source>
     565        <translation type="unfinished"></translation>
     566    </message>
     567    <message>
     568        <location filename="../ui/settingsdialog.ui" line="249"/>
     569        <source>&amp;Left margin:</source>
     570        <translation type="unfinished"></translation>
     571    </message>
     572    <message>
     573        <location filename="../ui/settingsdialog.ui" line="262"/>
     574        <source>Left border margin for page</source>
     575        <translation type="unfinished"></translation>
     576    </message>
     577    <message>
     578        <location filename="../ui/settingsdialog.ui" line="329"/>
     579        <source>Restore main window state and position on application restart</source>
     580        <translation type="unfinished"></translation>
     581    </message>
     582    <message>
     583        <location filename="../ui/settingsdialog.ui" line="332"/>
     584        <source>Save main window state and position</source>
     585        <translation type="unfinished"></translation>
     586    </message>
     587    <message>
     588        <location filename="../ui/settingsdialog.ui" line="403"/>
     589        <source>Hover mouse pointer over dialog elements to get additional help</source>
     590        <translation type="unfinished"></translation>
    524591    </message>
    525592</context>
  • i18n/ru.ts

    r78282ec778 r899d1b8e15  
    44<defaultcodec>UTF-8</defaultcodec>
    55<context>
     6    <name></name>
     7    <message>
     8        <location filename="../src/mainwindow.cpp" line="244"/>
     9        <location filename="../src/mainwindow.cpp" line="253"/>
     10        <source>Language change</source>
     11        <translation>Смена языка</translation>
     12    </message>
     13    <message>
     14        <location filename="../src/mainwindow.cpp" line="244"/>
     15        <source>Language will be autodetected on next application start.</source>
     16        <translation>Язык будет автоматически определен при следующем запуске приложения.</translation>
     17    </message>
     18    <message>
     19        <location filename="../src/mainwindow.cpp" line="253"/>
     20        <source>You have language autodetection turned on.
     21It needs to be off.
     22Do you wish to turn it off?</source>
     23        <translation>Включено автоматическое определение языка.
     24Его необходимо выключить.
     25Отключить его?</translation>
     26    </message>
     27</context>
     28<context>
    629    <name>CTSPModel</name>
    730    <message>
     
    1942    <name>MainWindow</name>
    2043    <message>
    21         <location filename="../src/mainwindow.cpp" line="125"/>
     44        <location filename="../src/mainwindow.cpp" line="122"/>
     45        <source>Language change</source>
     46        <translation>Смена языка</translation>
     47    </message>
     48    <message>
     49        <location filename="../src/mainwindow.cpp" line="122"/>
     50        <source>Unable to load translation language.</source>
     51        <translation>Невозможно загрузить перевод.</translation>
     52    </message>
     53    <message>
     54        <location filename="../src/mainwindow.cpp" line="189"/>
    2255        <source>Data error</source>
    2356        <translation>Ошибка в данных</translation>
    2457    </message>
    2558    <message>
    26         <location filename="../src/mainwindow.cpp" line="125"/>
     59        <location filename="../src/mainwindow.cpp" line="189"/>
    2760        <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
    2861        <translation>Ошибка в ячейке [Строка %1; Колонка %2]: Неверный формат данных.</translation>
    2962    </message>
    3063    <message>
    31         <location filename="../src/mainwindow.cpp" line="134"/>
     64        <location filename="../src/mainwindow.cpp" line="198"/>
    3265        <source>Solution error</source>
    3366        <translation>Ошибка при решении</translation>
    3467    </message>
    3568    <message>
    36         <location filename="../src/mainwindow.cpp" line="134"/>
     69        <location filename="../src/mainwindow.cpp" line="198"/>
    3770        <source>There was an error while solving the task.</source>
    3871        <translation>Во время решения задачи возникла ошибка.</translation>
     
    130163    <message>
    131164        <location filename="../ui/mainwindow.ce.ui" line="262"/>
    132         <location filename="../ui/mainwindow.ui" line="243"/>
     165        <location filename="../ui/mainwindow.ui" line="240"/>
    133166        <source>&amp;Save</source>
    134167        <translation>Со&amp;хранить</translation>
     
    136169    <message>
    137170        <location filename="../ui/mainwindow.ce.ui" line="282"/>
    138         <location filename="../ui/mainwindow.ui" line="266"/>
     171        <location filename="../ui/mainwindow.ui" line="263"/>
    139172        <source>&amp;Settings</source>
    140173        <translation>&amp;Настройки</translation>
    141174    </message>
    142175    <message>
    143         <location filename="../ui/mainwindow.ce.ui" line="288"/>
    144         <location filename="../ui/mainwindow.ui" line="272"/>
     176        <location filename="../ui/mainwindow.ce.ui" line="292"/>
     177        <location filename="../ui/mainwindow.ui" line="273"/>
     178        <source>&amp;Language</source>
     179        <translation>Язык / &amp;Language</translation>
     180    </message>
     181    <message>
     182        <location filename="../ui/mainwindow.ce.ui" line="302"/>
     183        <location filename="../ui/mainwindow.ui" line="283"/>
    145184        <source>&amp;Help</source>
    146185        <translation>&amp;Помощь</translation>
    147186    </message>
    148187    <message>
    149         <location filename="../ui/mainwindow.ce.ui" line="328"/>
    150         <location filename="../ui/mainwindow.ui" line="344"/>
     188        <location filename="../ui/mainwindow.ce.ui" line="342"/>
     189        <location filename="../ui/mainwindow.ui" line="355"/>
    151190        <source>Solution st&amp;eps</source>
    152191        <translation>&amp;Ход решения</translation>
    153192    </message>
    154193    <message>
    155         <location filename="../ui/mainwindow.ce.ui" line="331"/>
    156         <location filename="../ui/mainwindow.ui" line="347"/>
     194        <location filename="../ui/mainwindow.ce.ui" line="345"/>
     195        <location filename="../ui/mainwindow.ui" line="358"/>
    157196        <source>Save solution steps</source>
    158197        <translation>Сохранить ход решения</translation>
    159198    </message>
    160199    <message>
    161         <location filename="../ui/mainwindow.ce.ui" line="334"/>
    162         <location filename="../ui/mainwindow.ui" line="350"/>
     200        <location filename="../ui/mainwindow.ce.ui" line="348"/>
     201        <location filename="../ui/mainwindow.ui" line="361"/>
    163202        <source>Save solution steps only</source>
    164203        <translation>Сохранить только ход решения</translation>
    165204    </message>
    166205    <message>
    167         <location filename="../ui/mainwindow.ce.ui" line="342"/>
    168         <location filename="../ui/mainwindow.ui" line="358"/>
     206        <location filename="../ui/mainwindow.ce.ui" line="356"/>
     207        <location filename="../ui/mainwindow.ui" line="369"/>
    169208        <source>Solution &amp;graph</source>
    170209        <translation>&amp;Граф решения</translation>
    171210    </message>
    172211    <message>
    173         <location filename="../ui/mainwindow.ce.ui" line="345"/>
    174         <location filename="../ui/mainwindow.ui" line="361"/>
     212        <location filename="../ui/mainwindow.ce.ui" line="359"/>
     213        <location filename="../ui/mainwindow.ui" line="372"/>
    175214        <source>Save solution graph</source>
    176215        <translation>Сохранить граф решения</translation>
    177216    </message>
    178217    <message>
    179         <location filename="../ui/mainwindow.ce.ui" line="348"/>
    180         <location filename="../ui/mainwindow.ui" line="364"/>
     218        <location filename="../ui/mainwindow.ce.ui" line="362"/>
     219        <location filename="../ui/mainwindow.ui" line="375"/>
    181220        <source>Save solution graph only</source>
    182221        <translation>Сохранить только граф решения</translation>
    183222    </message>
    184223    <message>
    185         <location filename="../ui/mainwindow.ce.ui" line="356"/>
    186         <location filename="../ui/mainwindow.ui" line="372"/>
     224        <location filename="../ui/mainwindow.ce.ui" line="370"/>
     225        <location filename="../ui/mainwindow.ui" line="383"/>
    187226        <source>&amp;Solution</source>
    188227        <translation>&amp;Решение</translation>
    189228    </message>
    190229    <message>
    191         <location filename="../ui/mainwindow.ce.ui" line="359"/>
    192         <location filename="../ui/mainwindow.ui" line="375"/>
     230        <location filename="../ui/mainwindow.ce.ui" line="373"/>
     231        <location filename="../ui/mainwindow.ui" line="386"/>
    193232        <source>Save solution</source>
    194233        <translation>Сохранить решение</translation>
    195234    </message>
    196235    <message>
    197         <location filename="../ui/mainwindow.ce.ui" line="362"/>
    198         <location filename="../ui/mainwindow.ui" line="378"/>
     236        <location filename="../ui/mainwindow.ce.ui" line="376"/>
     237        <location filename="../ui/mainwindow.ui" line="389"/>
    199238        <source>Save solution steps and graph</source>
    200239        <translation>Сохранить ход и граф решения</translation>
    201240    </message>
    202241    <message>
    203         <location filename="../ui/mainwindow.ce.ui" line="371"/>
    204         <location filename="../ui/mainwindow.ui" line="387"/>
     242        <location filename="../ui/mainwindow.ce.ui" line="385"/>
     243        <location filename="../ui/mainwindow.ui" line="398"/>
    205244        <source>&amp;New</source>
    206245        <translation>&amp;Создать</translation>
    207246    </message>
    208247    <message>
    209         <location filename="../ui/mainwindow.ce.ui" line="374"/>
    210         <location filename="../ui/mainwindow.ui" line="390"/>
     248        <location filename="../ui/mainwindow.ce.ui" line="388"/>
     249        <location filename="../ui/mainwindow.ui" line="401"/>
    211250        <source>New</source>
    212251        <translation>Создать</translation>
    213252    </message>
    214253    <message>
    215         <location filename="../ui/mainwindow.ce.ui" line="377"/>
    216         <location filename="../ui/mainwindow.ui" line="393"/>
     254        <location filename="../ui/mainwindow.ce.ui" line="391"/>
     255        <location filename="../ui/mainwindow.ui" line="404"/>
    217256        <source>New task</source>
    218257        <translation>Создать задачу</translation>
    219258    </message>
    220259    <message>
    221         <location filename="../ui/mainwindow.ce.ui" line="380"/>
    222         <location filename="../ui/mainwindow.ui" line="396"/>
     260        <location filename="../ui/mainwindow.ce.ui" line="394"/>
     261        <location filename="../ui/mainwindow.ui" line="407"/>
    223262        <source>Create new task</source>
    224263        <translation>Создать новую задачу</translation>
    225264    </message>
    226265    <message>
    227         <location filename="../ui/mainwindow.ce.ui" line="383"/>
    228         <location filename="../ui/mainwindow.ui" line="399"/>
     266        <location filename="../ui/mainwindow.ce.ui" line="397"/>
     267        <location filename="../ui/mainwindow.ui" line="410"/>
    229268        <source>Ctrl+N</source>
    230269        <translation></translation>
    231270    </message>
    232271    <message>
    233         <location filename="../ui/mainwindow.ce.ui" line="395"/>
    234         <location filename="../ui/mainwindow.ui" line="411"/>
     272        <location filename="../ui/mainwindow.ce.ui" line="409"/>
     273        <location filename="../ui/mainwindow.ui" line="422"/>
    235274        <source>&amp;Open...</source>
    236275        <translation>&amp;Открыть...</translation>
    237276    </message>
    238277    <message>
    239         <location filename="../ui/mainwindow.ce.ui" line="398"/>
    240         <location filename="../ui/mainwindow.ui" line="414"/>
     278        <location filename="../ui/mainwindow.ce.ui" line="412"/>
     279        <location filename="../ui/mainwindow.ui" line="425"/>
    241280        <source>Open...</source>
    242281        <translation>Открыть...</translation>
    243282    </message>
    244283    <message>
    245         <location filename="../ui/mainwindow.ce.ui" line="401"/>
    246         <location filename="../ui/mainwindow.ui" line="417"/>
     284        <location filename="../ui/mainwindow.ce.ui" line="415"/>
     285        <location filename="../ui/mainwindow.ui" line="428"/>
    247286        <source>Open task</source>
    248287        <translation>Открыть задачу</translation>
    249288    </message>
    250289    <message>
    251         <location filename="../ui/mainwindow.ce.ui" line="404"/>
    252         <location filename="../ui/mainwindow.ui" line="420"/>
     290        <location filename="../ui/mainwindow.ce.ui" line="418"/>
     291        <location filename="../ui/mainwindow.ui" line="431"/>
    253292        <source>Open saved task</source>
    254293        <translation>Открыть сохраненное условие задачи</translation>
    255294    </message>
    256295    <message>
    257         <location filename="../ui/mainwindow.ce.ui" line="407"/>
    258         <location filename="../ui/mainwindow.ui" line="423"/>
     296        <location filename="../ui/mainwindow.ce.ui" line="421"/>
     297        <location filename="../ui/mainwindow.ui" line="434"/>
    259298        <source>Ctrl+O</source>
    260299        <translation></translation>
    261300    </message>
    262301    <message>
    263         <location filename="../ui/mainwindow.ce.ui" line="416"/>
    264         <location filename="../ui/mainwindow.ui" line="432"/>
     302        <location filename="../ui/mainwindow.ce.ui" line="430"/>
     303        <location filename="../ui/mainwindow.ui" line="443"/>
    265304        <source>&amp;Preferences...</source>
    266305        <translation>&amp;Параметры...</translation>
    267306    </message>
    268307    <message>
    269         <location filename="../ui/mainwindow.ce.ui" line="419"/>
    270         <location filename="../ui/mainwindow.ui" line="435"/>
     308        <location filename="../ui/mainwindow.ce.ui" line="433"/>
     309        <location filename="../ui/mainwindow.ui" line="446"/>
    271310        <source>Preferences...</source>
    272311        <translation>Параметры...</translation>
    273312    </message>
    274313    <message>
    275         <location filename="../ui/mainwindow.ce.ui" line="422"/>
    276         <location filename="../ui/mainwindow.ui" line="438"/>
     314        <location filename="../ui/mainwindow.ce.ui" line="436"/>
     315        <location filename="../ui/mainwindow.ui" line="449"/>
    277316        <source>Application preferences</source>
    278317        <translation>Настройка параметров программмы</translation>
    279318    </message>
    280319    <message>
    281         <location filename="../ui/mainwindow.ce.ui" line="434"/>
    282         <location filename="../ui/mainwindow.ui" line="450"/>
     320        <location filename="../ui/mainwindow.ce.ui" line="448"/>
     321        <location filename="../ui/mainwindow.ui" line="461"/>
    283322        <source>&amp;Contents</source>
    284323        <translation>&amp;Содежание</translation>
    285324    </message>
    286325    <message>
    287         <location filename="../ui/mainwindow.ce.ui" line="437"/>
    288         <location filename="../ui/mainwindow.ui" line="453"/>
     326        <location filename="../ui/mainwindow.ce.ui" line="451"/>
     327        <location filename="../ui/mainwindow.ui" line="464"/>
    289328        <source>Open help contents</source>
    290329        <translation>Вызвать справку программы</translation>
    291330    </message>
    292331    <message>
    293         <location filename="../ui/mainwindow.ce.ui" line="449"/>
    294         <location filename="../ui/mainwindow.ui" line="465"/>
     332        <location filename="../ui/mainwindow.ce.ui" line="463"/>
     333        <location filename="../ui/mainwindow.ui" line="476"/>
    295334        <source>&amp;Context help</source>
    296335        <translation>&amp;Контекстная справка</translation>
    297336    </message>
    298337    <message>
    299         <location filename="../ui/mainwindow.ce.ui" line="452"/>
    300         <location filename="../ui/mainwindow.ui" line="468"/>
     338        <location filename="../ui/mainwindow.ce.ui" line="466"/>
     339        <location filename="../ui/mainwindow.ui" line="479"/>
    301340        <source>Open context help</source>
    302341        <translation>Вызвать контекстную справку</translation>
    303342    </message>
    304343    <message>
    305         <location filename="../ui/mainwindow.ce.ui" line="461"/>
    306         <location filename="../ui/mainwindow.ui" line="477"/>
     344        <location filename="../ui/mainwindow.ce.ui" line="475"/>
     345        <location filename="../ui/mainwindow.ui" line="488"/>
    307346        <source>&amp;About...</source>
    308347        <translation>&amp;Про...</translation>
    309348    </message>
    310349    <message>
    311         <location filename="../ui/mainwindow.ce.ui" line="464"/>
    312         <location filename="../ui/mainwindow.ui" line="480"/>
     350        <location filename="../ui/mainwindow.ce.ui" line="478"/>
     351        <location filename="../ui/mainwindow.ui" line="491"/>
    313352        <source>About...</source>
    314353        <translation>Про...</translation>
    315354    </message>
    316355    <message>
    317         <location filename="../ui/mainwindow.ce.ui" line="467"/>
    318         <location filename="../ui/mainwindow.ui" line="483"/>
     356        <location filename="../ui/mainwindow.ce.ui" line="481"/>
     357        <location filename="../ui/mainwindow.ui" line="494"/>
    319358        <source>About application</source>
    320359        <translation>О программе</translation>
    321360    </message>
    322361    <message>
    323         <location filename="../ui/mainwindow.ce.ui" line="476"/>
    324         <location filename="../ui/mainwindow.ui" line="492"/>
     362        <location filename="../ui/mainwindow.ce.ui" line="490"/>
     363        <location filename="../ui/mainwindow.ui" line="503"/>
    325364        <source>E&amp;xit</source>
    326365        <translation>В&amp;ыход</translation>
    327366    </message>
    328367    <message>
    329         <location filename="../ui/mainwindow.ce.ui" line="479"/>
    330         <location filename="../ui/mainwindow.ui" line="495"/>
     368        <location filename="../ui/mainwindow.ce.ui" line="493"/>
     369        <location filename="../ui/mainwindow.ui" line="506"/>
    331370        <source>Exit application</source>
    332371        <translation>Выйти из приложения</translation>
    333372    </message>
    334373    <message>
    335         <location filename="../ui/mainwindow.ce.ui" line="491"/>
    336         <location filename="../ui/mainwindow.ui" line="507"/>
     374        <location filename="../ui/mainwindow.ce.ui" line="505"/>
     375        <location filename="../ui/mainwindow.ui" line="518"/>
    337376        <source>&amp;Task...</source>
    338377        <translation>&amp;Задачу...</translation>
    339378    </message>
    340379    <message>
    341         <location filename="../ui/mainwindow.ce.ui" line="494"/>
    342         <location filename="../ui/mainwindow.ui" line="510"/>
     380        <location filename="../ui/mainwindow.ce.ui" line="508"/>
     381        <location filename="../ui/mainwindow.ui" line="521"/>
    343382        <source>Task...</source>
    344383        <translation>Задачу...</translation>
    345384    </message>
    346385    <message>
    347         <location filename="../ui/mainwindow.ce.ui" line="497"/>
    348         <location filename="../ui/mainwindow.ui" line="513"/>
     386        <location filename="../ui/mainwindow.ce.ui" line="511"/>
     387        <location filename="../ui/mainwindow.ui" line="524"/>
    349388        <source>Save task</source>
    350389        <translation>Сохранить задачу</translation>
    351390    </message>
    352391    <message>
    353         <location filename="../ui/mainwindow.ce.ui" line="500"/>
    354         <location filename="../ui/mainwindow.ui" line="516"/>
     392        <location filename="../ui/mainwindow.ce.ui" line="514"/>
     393        <location filename="../ui/mainwindow.ui" line="527"/>
    355394        <source>Save task to file</source>
    356395        <translation>Сохранить условие задачи в файл</translation>
    357396    </message>
    358397    <message>
    359         <location filename="../ui/mainwindow.ce.ui" line="503"/>
    360         <location filename="../ui/mainwindow.ui" line="519"/>
     398        <location filename="../ui/mainwindow.ce.ui" line="517"/>
     399        <location filename="../ui/mainwindow.ui" line="530"/>
    361400        <source>Ctrl+S</source>
    362401        <translation></translation>
    363402    </message>
    364403    <message>
    365         <location filename="../ui/mainwindow.ui" line="315"/>
     404        <location filename="../ui/mainwindow.ce.ui" line="528"/>
     405        <location filename="../ui/mainwindow.ui" line="541"/>
     406        <source>&amp;Autodetect</source>
     407        <translation>&amp;Автоопределение</translation>
     408    </message>
     409    <message>
     410        <location filename="../ui/mainwindow.ce.ui" line="286"/>
     411        <location filename="../ui/mainwindow.ui" line="267"/>
     412        <source>Select language</source>
     413        <translation>Выбор языка</translation>
     414    </message>
     415    <message>
     416        <location filename="../ui/mainwindow.ce.ui" line="289"/>
     417        <location filename="../ui/mainwindow.ui" line="270"/>
     418        <source>Select application language</source>
     419        <translation>Выбрать язык приложения</translation>
     420    </message>
     421    <message>
     422        <location filename="../ui/mainwindow.ui" line="326"/>
    366423        <source>P&amp;rint setup...</source>
    367424        <translation>&amp;Настройка печати...</translation>
    368425    </message>
    369426    <message>
    370         <location filename="../ui/mainwindow.ui" line="318"/>
     427        <location filename="../ui/mainwindow.ui" line="329"/>
    371428        <source>Setup printing</source>
    372429        <translation>Настроить печать</translation>
    373430    </message>
    374431    <message>
    375         <location filename="../ui/mainwindow.ui" line="330"/>
     432        <location filename="../ui/mainwindow.ui" line="341"/>
    376433        <source>&amp;Print...</source>
    377434        <translation>&amp;Печать...</translation>
    378435    </message>
    379436    <message>
    380         <location filename="../ui/mainwindow.ui" line="333"/>
     437        <location filename="../ui/mainwindow.ui" line="344"/>
    381438        <source>Print solution results</source>
    382439        <translation>Распечатать результаты решения</translation>
    383440    </message>
    384441    <message>
    385         <location filename="../ui/mainwindow.ui" line="336"/>
     442        <location filename="../ui/mainwindow.ui" line="347"/>
    386443        <source>Ctrl+P</source>
    387444        <translation></translation>
     445    </message>
     446    <message>
     447        <location filename="../ui/mainwindow.ce.ui" line="531"/>
     448        <location filename="../ui/mainwindow.ui" line="544"/>
     449        <source>Detect language automatically</source>
     450        <translation>Определять язык автоматически</translation>
     451    </message>
     452    <message>
     453        <location filename="../ui/mainwindow.ce.ui" line="534"/>
     454        <location filename="../ui/mainwindow.ui" line="547"/>
     455        <source>Detect language automatically based on regional settings</source>
     456        <translation>Определять язык автоматически, основываясь на региональных настройках</translation>
    388457    </message>
    389458</context>
  • i18n/uk.ts

    r78282ec778 r899d1b8e15  
    44<defaultcodec>UTF-8</defaultcodec>
    55<context>
     6    <name></name>
     7    <message>
     8        <location filename="../src/mainwindow.cpp" line="244"/>
     9        <location filename="../src/mainwindow.cpp" line="253"/>
     10        <source>Language change</source>
     11        <translation>Зміна мови</translation>
     12    </message>
     13    <message>
     14        <location filename="../src/mainwindow.cpp" line="244"/>
     15        <source>Language will be autodetected on next application start.</source>
     16        <translation>Мову буде автоматично визначено при наступному запуску додатку.</translation>
     17    </message>
     18    <message>
     19        <location filename="../src/mainwindow.cpp" line="253"/>
     20        <source>You have language autodetection turned on.
     21It needs to be off.
     22Do you wish to turn it off?</source>
     23        <translation>Увімкнено автоматичне визначення мови.
     24Його необхідно вимкнути.
     25Вимкнути його?</translation>
     26    </message>
     27</context>
     28<context>
    629    <name>CTSPModel</name>
    730    <message>
     
    3154    </message>
    3255    <message>
    33         <location filename="../ui/mainwindow.ui" line="315"/>
     56        <location filename="../ui/mainwindow.ce.ui" line="286"/>
     57        <location filename="../ui/mainwindow.ui" line="267"/>
     58        <source>Select language</source>
     59        <translation>Вибір мови</translation>
     60    </message>
     61    <message>
     62        <location filename="../ui/mainwindow.ce.ui" line="289"/>
     63        <location filename="../ui/mainwindow.ui" line="270"/>
     64        <source>Select application language</source>
     65        <translation>Обрати мову додатку</translation>
     66    </message>
     67    <message>
     68        <location filename="../ui/mainwindow.ui" line="326"/>
    3469        <source>P&amp;rint setup...</source>
    3570        <translation>&amp;Налагодження друку...</translation>
    3671    </message>
    3772    <message>
    38         <location filename="../ui/mainwindow.ui" line="318"/>
     73        <location filename="../ui/mainwindow.ui" line="329"/>
    3974        <source>Setup printing</source>
    4075        <translation>Налагодити друк</translation>
    4176    </message>
    4277    <message>
    43         <location filename="../ui/mainwindow.ui" line="330"/>
     78        <location filename="../ui/mainwindow.ui" line="341"/>
    4479        <source>&amp;Print...</source>
    4580        <translation>&amp;Друк...</translation>
    4681    </message>
    4782    <message>
    48         <location filename="../ui/mainwindow.ui" line="333"/>
     83        <location filename="../ui/mainwindow.ui" line="344"/>
    4984        <source>Print solution results</source>
    5085        <translation>Роздрукувати результат розв&apos;язку</translation>
    5186    </message>
    5287    <message>
    53         <location filename="../ui/mainwindow.ui" line="336"/>
     88        <location filename="../ui/mainwindow.ui" line="347"/>
    5489        <source>Ctrl+P</source>
    5590        <translation></translation>
    5691    </message>
    5792    <message>
    58         <location filename="../ui/mainwindow.ce.ui" line="503"/>
    59         <location filename="../ui/mainwindow.ui" line="519"/>
     93        <location filename="../ui/mainwindow.ce.ui" line="531"/>
     94        <location filename="../ui/mainwindow.ui" line="544"/>
     95        <source>Detect language automatically</source>
     96        <translation>Визначати мову автоматично</translation>
     97    </message>
     98    <message>
     99        <location filename="../ui/mainwindow.ce.ui" line="534"/>
     100        <location filename="../ui/mainwindow.ui" line="547"/>
     101        <source>Detect language automatically based on regional settings</source>
     102        <translation type="unfinished">Визначати мову автоматично, використовуючи регіональні стандарти</translation>
     103    </message>
     104    <message>
     105        <location filename="../ui/mainwindow.ce.ui" line="517"/>
     106        <location filename="../ui/mainwindow.ui" line="530"/>
    60107        <source>Ctrl+S</source>
    61108        <translation></translation>
    62109    </message>
    63110    <message>
    64         <location filename="../ui/mainwindow.ce.ui" line="383"/>
    65         <location filename="../ui/mainwindow.ui" line="399"/>
     111        <location filename="../ui/mainwindow.ce.ui" line="397"/>
     112        <location filename="../ui/mainwindow.ui" line="410"/>
    66113        <source>Ctrl+N</source>
    67114        <translation></translation>
     
    147194    <message>
    148195        <location filename="../ui/mainwindow.ce.ui" line="262"/>
    149         <location filename="../ui/mainwindow.ui" line="243"/>
     196        <location filename="../ui/mainwindow.ui" line="240"/>
    150197        <source>&amp;Save</source>
    151198        <translation>&amp;Зберегти</translation>
     
    153200    <message>
    154201        <location filename="../ui/mainwindow.ce.ui" line="282"/>
    155         <location filename="../ui/mainwindow.ui" line="266"/>
     202        <location filename="../ui/mainwindow.ui" line="263"/>
    156203        <source>&amp;Settings</source>
    157204        <translation>&amp;Налагодження</translation>
    158205    </message>
    159206    <message>
    160         <location filename="../ui/mainwindow.ce.ui" line="288"/>
    161         <location filename="../ui/mainwindow.ui" line="272"/>
     207        <location filename="../ui/mainwindow.ce.ui" line="292"/>
     208        <location filename="../ui/mainwindow.ui" line="273"/>
     209        <source>&amp;Language</source>
     210        <translation>Мова / &amp;Language</translation>
     211    </message>
     212    <message>
     213        <location filename="../ui/mainwindow.ce.ui" line="302"/>
     214        <location filename="../ui/mainwindow.ui" line="283"/>
    162215        <source>&amp;Help</source>
    163216        <translation>&amp;Допомога</translation>
    164217    </message>
    165218    <message>
    166         <location filename="../ui/mainwindow.ce.ui" line="328"/>
    167         <location filename="../ui/mainwindow.ui" line="344"/>
     219        <location filename="../ui/mainwindow.ce.ui" line="342"/>
     220        <location filename="../ui/mainwindow.ui" line="355"/>
    168221        <source>Solution st&amp;eps</source>
    169222        <translation>&amp;Хід розв&apos;язку</translation>
    170223    </message>
    171224    <message>
    172         <location filename="../ui/mainwindow.ce.ui" line="331"/>
    173         <location filename="../ui/mainwindow.ui" line="347"/>
     225        <location filename="../ui/mainwindow.ce.ui" line="345"/>
     226        <location filename="../ui/mainwindow.ui" line="358"/>
    174227        <source>Save solution steps</source>
    175228        <translation>Зберегти хід розв&apos;язку</translation>
    176229    </message>
    177230    <message>
    178         <location filename="../ui/mainwindow.ce.ui" line="334"/>
    179         <location filename="../ui/mainwindow.ui" line="350"/>
     231        <location filename="../ui/mainwindow.ce.ui" line="348"/>
     232        <location filename="../ui/mainwindow.ui" line="361"/>
    180233        <source>Save solution steps only</source>
    181234        <translation>Зберегти тільки хід розв&apos;язку</translation>
    182235    </message>
    183236    <message>
    184         <location filename="../ui/mainwindow.ce.ui" line="342"/>
    185         <location filename="../ui/mainwindow.ui" line="358"/>
     237        <location filename="../ui/mainwindow.ce.ui" line="356"/>
     238        <location filename="../ui/mainwindow.ui" line="369"/>
    186239        <source>Solution &amp;graph</source>
    187240        <translation>&amp;Граф розв&apos;язку</translation>
    188241    </message>
    189242    <message>
    190         <location filename="../ui/mainwindow.ce.ui" line="345"/>
    191         <location filename="../ui/mainwindow.ui" line="361"/>
     243        <location filename="../ui/mainwindow.ce.ui" line="359"/>
     244        <location filename="../ui/mainwindow.ui" line="372"/>
    192245        <source>Save solution graph</source>
    193246        <translation>Зберегти граф розв&apos;язку</translation>
    194247    </message>
    195248    <message>
    196         <location filename="../ui/mainwindow.ce.ui" line="348"/>
    197         <location filename="../ui/mainwindow.ui" line="364"/>
     249        <location filename="../ui/mainwindow.ce.ui" line="362"/>
     250        <location filename="../ui/mainwindow.ui" line="375"/>
    198251        <source>Save solution graph only</source>
    199252        <translation>Зберегти тільки граф розв&apos;язку</translation>
    200253    </message>
    201254    <message>
    202         <location filename="../ui/mainwindow.ce.ui" line="356"/>
    203         <location filename="../ui/mainwindow.ui" line="372"/>
     255        <location filename="../ui/mainwindow.ce.ui" line="370"/>
     256        <location filename="../ui/mainwindow.ui" line="383"/>
    204257        <source>&amp;Solution</source>
    205258        <translation>&amp;Розв&apos;язок</translation>
    206259    </message>
    207260    <message>
    208         <location filename="../ui/mainwindow.ce.ui" line="359"/>
    209         <location filename="../ui/mainwindow.ui" line="375"/>
     261        <location filename="../ui/mainwindow.ce.ui" line="373"/>
     262        <location filename="../ui/mainwindow.ui" line="386"/>
    210263        <source>Save solution</source>
    211264        <translation>Зберегти розв&apos;язок</translation>
    212265    </message>
    213266    <message>
    214         <location filename="../ui/mainwindow.ce.ui" line="362"/>
    215         <location filename="../ui/mainwindow.ui" line="378"/>
     267        <location filename="../ui/mainwindow.ce.ui" line="376"/>
     268        <location filename="../ui/mainwindow.ui" line="389"/>
    216269        <source>Save solution steps and graph</source>
    217270        <translation>Зберегти хід та граф розв&apos;язку</translation>
    218271    </message>
    219272    <message>
    220         <location filename="../ui/mainwindow.ce.ui" line="371"/>
    221         <location filename="../ui/mainwindow.ui" line="387"/>
     273        <location filename="../ui/mainwindow.ce.ui" line="385"/>
     274        <location filename="../ui/mainwindow.ui" line="398"/>
    222275        <source>&amp;New</source>
    223276        <translation>&amp;Створити</translation>
    224277    </message>
    225278    <message>
    226         <location filename="../ui/mainwindow.ce.ui" line="374"/>
    227         <location filename="../ui/mainwindow.ui" line="390"/>
     279        <location filename="../ui/mainwindow.ce.ui" line="388"/>
     280        <location filename="../ui/mainwindow.ui" line="401"/>
    228281        <source>New</source>
    229282        <translation>Створити</translation>
    230283    </message>
    231284    <message>
    232         <location filename="../ui/mainwindow.ce.ui" line="377"/>
    233         <location filename="../ui/mainwindow.ui" line="393"/>
     285        <location filename="../ui/mainwindow.ce.ui" line="391"/>
     286        <location filename="../ui/mainwindow.ui" line="404"/>
    234287        <source>New task</source>
    235288        <translation>Нове завдання</translation>
    236289    </message>
    237290    <message>
    238         <location filename="../ui/mainwindow.ce.ui" line="380"/>
    239         <location filename="../ui/mainwindow.ui" line="396"/>
     291        <location filename="../ui/mainwindow.ce.ui" line="394"/>
     292        <location filename="../ui/mainwindow.ui" line="407"/>
    240293        <source>Create new task</source>
    241294        <translation>Створити нове завдання</translation>
    242295    </message>
    243296    <message>
    244         <location filename="../ui/mainwindow.ce.ui" line="395"/>
    245         <location filename="../ui/mainwindow.ui" line="411"/>
     297        <location filename="../ui/mainwindow.ce.ui" line="409"/>
     298        <location filename="../ui/mainwindow.ui" line="422"/>
    246299        <source>&amp;Open...</source>
    247300        <translation>&amp;Відкрити...</translation>
    248301    </message>
    249302    <message>
    250         <location filename="../ui/mainwindow.ce.ui" line="398"/>
    251         <location filename="../ui/mainwindow.ui" line="414"/>
     303        <location filename="../ui/mainwindow.ce.ui" line="412"/>
     304        <location filename="../ui/mainwindow.ui" line="425"/>
    252305        <source>Open...</source>
    253306        <translation>Відкрити...</translation>
    254307    </message>
    255308    <message>
    256         <location filename="../ui/mainwindow.ce.ui" line="401"/>
    257         <location filename="../ui/mainwindow.ui" line="417"/>
     309        <location filename="../ui/mainwindow.ce.ui" line="415"/>
     310        <location filename="../ui/mainwindow.ui" line="428"/>
    258311        <source>Open task</source>
    259312        <translation>Відкрити завдання</translation>
    260313    </message>
    261314    <message>
    262         <location filename="../ui/mainwindow.ce.ui" line="404"/>
    263         <location filename="../ui/mainwindow.ui" line="420"/>
     315        <location filename="../ui/mainwindow.ce.ui" line="418"/>
     316        <location filename="../ui/mainwindow.ui" line="431"/>
    264317        <source>Open saved task</source>
    265318        <translation>Відкрити збережене завдання</translation>
    266319    </message>
    267320    <message>
    268         <location filename="../ui/mainwindow.ce.ui" line="407"/>
    269         <location filename="../ui/mainwindow.ui" line="423"/>
     321        <location filename="../ui/mainwindow.ce.ui" line="421"/>
     322        <location filename="../ui/mainwindow.ui" line="434"/>
    270323        <source>Ctrl+O</source>
    271324        <translation></translation>
    272325    </message>
    273326    <message>
    274         <location filename="../ui/mainwindow.ce.ui" line="416"/>
    275         <location filename="../ui/mainwindow.ui" line="432"/>
     327        <location filename="../ui/mainwindow.ce.ui" line="430"/>
     328        <location filename="../ui/mainwindow.ui" line="443"/>
    276329        <source>&amp;Preferences...</source>
    277330        <translation>&amp;Параметри...</translation>
    278331    </message>
    279332    <message>
    280         <location filename="../ui/mainwindow.ce.ui" line="419"/>
    281         <location filename="../ui/mainwindow.ui" line="435"/>
     333        <location filename="../ui/mainwindow.ce.ui" line="433"/>
     334        <location filename="../ui/mainwindow.ui" line="446"/>
    282335        <source>Preferences...</source>
    283336        <translation>Параметри...</translation>
    284337    </message>
    285338    <message>
    286         <location filename="../ui/mainwindow.ce.ui" line="422"/>
    287         <location filename="../ui/mainwindow.ui" line="438"/>
     339        <location filename="../ui/mainwindow.ce.ui" line="436"/>
     340        <location filename="../ui/mainwindow.ui" line="449"/>
    288341        <source>Application preferences</source>
    289342        <translation>Параметри додатку</translation>
    290343    </message>
    291344    <message>
    292         <location filename="../ui/mainwindow.ce.ui" line="434"/>
    293         <location filename="../ui/mainwindow.ui" line="450"/>
     345        <location filename="../ui/mainwindow.ce.ui" line="448"/>
     346        <location filename="../ui/mainwindow.ui" line="461"/>
    294347        <source>&amp;Contents</source>
    295348        <translation>&amp;Зміст</translation>
    296349    </message>
    297350    <message>
    298         <location filename="../ui/mainwindow.ce.ui" line="437"/>
    299         <location filename="../ui/mainwindow.ui" line="453"/>
     351        <location filename="../ui/mainwindow.ce.ui" line="451"/>
     352        <location filename="../ui/mainwindow.ui" line="464"/>
    300353        <source>Open help contents</source>
    301354        <translation>Відкрити зміст допомоги</translation>
    302355    </message>
    303356    <message>
    304         <location filename="../ui/mainwindow.ce.ui" line="449"/>
    305         <location filename="../ui/mainwindow.ui" line="465"/>
     357        <location filename="../ui/mainwindow.ce.ui" line="463"/>
     358        <location filename="../ui/mainwindow.ui" line="476"/>
    306359        <source>&amp;Context help</source>
    307360        <translation>&amp;Контекстна допомога</translation>
    308361    </message>
    309362    <message>
    310         <location filename="../ui/mainwindow.ce.ui" line="452"/>
    311         <location filename="../ui/mainwindow.ui" line="468"/>
     363        <location filename="../ui/mainwindow.ce.ui" line="466"/>
     364        <location filename="../ui/mainwindow.ui" line="479"/>
    312365        <source>Open context help</source>
    313366        <translation>Відкрити контекстну допомогу</translation>
    314367    </message>
    315368    <message>
    316         <location filename="../ui/mainwindow.ce.ui" line="461"/>
    317         <location filename="../ui/mainwindow.ui" line="477"/>
     369        <location filename="../ui/mainwindow.ce.ui" line="475"/>
     370        <location filename="../ui/mainwindow.ui" line="488"/>
    318371        <source>&amp;About...</source>
    319372        <translation>&amp;Про...</translation>
    320373    </message>
    321374    <message>
    322         <location filename="../ui/mainwindow.ce.ui" line="464"/>
    323         <location filename="../ui/mainwindow.ui" line="480"/>
     375        <location filename="../ui/mainwindow.ce.ui" line="478"/>
     376        <location filename="../ui/mainwindow.ui" line="491"/>
    324377        <source>About...</source>
    325378        <translation>Про...</translation>
    326379    </message>
    327380    <message>
    328         <location filename="../ui/mainwindow.ce.ui" line="467"/>
    329         <location filename="../ui/mainwindow.ui" line="483"/>
     381        <location filename="../ui/mainwindow.ce.ui" line="481"/>
     382        <location filename="../ui/mainwindow.ui" line="494"/>
    330383        <source>About application</source>
    331384        <translation>Про додаток</translation>
    332385    </message>
    333386    <message>
    334         <location filename="../ui/mainwindow.ce.ui" line="476"/>
    335         <location filename="../ui/mainwindow.ui" line="492"/>
     387        <location filename="../ui/mainwindow.ce.ui" line="490"/>
     388        <location filename="../ui/mainwindow.ui" line="503"/>
    336389        <source>E&amp;xit</source>
    337390        <translation>В&amp;ихід</translation>
    338391    </message>
    339392    <message>
    340         <location filename="../ui/mainwindow.ce.ui" line="479"/>
    341         <location filename="../ui/mainwindow.ui" line="495"/>
     393        <location filename="../ui/mainwindow.ce.ui" line="493"/>
     394        <location filename="../ui/mainwindow.ui" line="506"/>
    342395        <source>Exit application</source>
    343396        <translation>Вийти з додатку</translation>
    344397    </message>
    345398    <message>
    346         <location filename="../ui/mainwindow.ce.ui" line="491"/>
    347         <location filename="../ui/mainwindow.ui" line="507"/>
     399        <location filename="../ui/mainwindow.ce.ui" line="505"/>
     400        <location filename="../ui/mainwindow.ui" line="518"/>
    348401        <source>&amp;Task...</source>
    349402        <translation>&amp;Завдання...</translation>
    350403    </message>
    351404    <message>
    352         <location filename="../ui/mainwindow.ce.ui" line="494"/>
    353         <location filename="../ui/mainwindow.ui" line="510"/>
     405        <location filename="../ui/mainwindow.ce.ui" line="508"/>
     406        <location filename="../ui/mainwindow.ui" line="521"/>
    354407        <source>Task...</source>
    355408        <translation>Завдання...</translation>
    356409    </message>
    357410    <message>
    358         <location filename="../ui/mainwindow.ce.ui" line="497"/>
    359         <location filename="../ui/mainwindow.ui" line="513"/>
     411        <location filename="../ui/mainwindow.ce.ui" line="511"/>
     412        <location filename="../ui/mainwindow.ui" line="524"/>
    360413        <source>Save task</source>
    361414        <translation>Зберегти завдання</translation>
    362415    </message>
    363416    <message>
    364         <location filename="../ui/mainwindow.ce.ui" line="500"/>
    365         <location filename="../ui/mainwindow.ui" line="516"/>
     417        <location filename="../ui/mainwindow.ce.ui" line="514"/>
     418        <location filename="../ui/mainwindow.ui" line="527"/>
    366419        <source>Save task to file</source>
    367420        <translation>Зберегти завдання до файлу</translation>
    368421    </message>
    369422    <message>
    370         <location filename="../src/mainwindow.cpp" line="125"/>
     423        <location filename="../ui/mainwindow.ce.ui" line="528"/>
     424        <location filename="../ui/mainwindow.ui" line="541"/>
     425        <source>&amp;Autodetect</source>
     426        <translation>&amp;Автовизначення</translation>
     427    </message>
     428    <message>
     429        <location filename="../src/mainwindow.cpp" line="122"/>
     430        <source>Language change</source>
     431        <translation>Зміна мови</translation>
     432    </message>
     433    <message>
     434        <location filename="../src/mainwindow.cpp" line="122"/>
     435        <source>Unable to load translation language.</source>
     436        <translation>Неможливо завантажити переклад.</translation>
     437    </message>
     438    <message>
     439        <location filename="../src/mainwindow.cpp" line="189"/>
    371440        <source>Data error</source>
    372441        <translation>Помилка даних</translation>
    373442    </message>
    374443    <message>
    375         <location filename="../src/mainwindow.cpp" line="125"/>
     444        <location filename="../src/mainwindow.cpp" line="189"/>
    376445        <source>Error in cell [Row %1; Column %2]: Invalid data format.</source>
    377446        <translation>Помилка у комірці  [Рядок %1; Колонка %2]: Невірний формат даних.</translation>
    378447    </message>
    379448    <message>
    380         <location filename="../src/mainwindow.cpp" line="134"/>
     449        <location filename="../src/mainwindow.cpp" line="198"/>
    381450        <source>Solution error</source>
    382451        <translation>Помилка розв&apos;язку</translation>
    383452    </message>
    384453    <message>
    385         <location filename="../src/mainwindow.cpp" line="134"/>
     454        <location filename="../src/mainwindow.cpp" line="198"/>
    386455        <source>There was an error while solving the task.</source>
    387456        <translation>Під час розв&apos;язання задачі виникла помилка.</translation>
  • src/main.cpp

    r78282ec778 r899d1b8e15  
    3333        app.setOrganizationDomain("www.leppsville.com");
    3434        app.setApplicationName("TSPSG");
    35 // i18n
    36 // TODO: Language selection in application.
    37 // TODO: Saving and restoring selected language.
    38 QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));
    39 QString locale = QLocale::languageToString(QLocale::system().language());
    40 QTranslator translator;
    41         // Getting current locale language name and trying to load it, if it's not English
    42         if (locale.compare("English") && translator.load(locale,"i18n"))
    43                 app.installTranslator(&translator);
     35        QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));
    4436MainWindow mainwindow;
    4537        mainwindow.show();
  • src/mainwindow.cpp

    r78282ec778 r899d1b8e15  
    3131        : QMainWindow(parent)
    3232{
     33        settings = new QSettings(QSettings::IniFormat,QSettings::UserScope,"TSPSG","tspsg");
     34        loadLanguage();
    3335        setupUi(this);
    34         settings = new QSettings(QSettings::IniFormat,QSettings::UserScope,"TSPSG","tspsg");
     36#ifndef Q_OS_WINCE
     37        printer = new QPrinter();
     38#endif // Q_OS_WINCE
     39        groupSettingsLanguageList = new QActionGroup(this);
     40        loadLangList();
    3541        spinCities->setValue(settings->value("NumCities",5).toInt());
    36         connect(actionSettingsSettings,SIGNAL(triggered()),this,SLOT(ChangeSettings()));
    37         connect(actionHelpAbout,SIGNAL(triggered()),this,SLOT(showAbout()));
    38 #ifndef Q_OS_WINCE
    39         connect(actionFilePrintSetup,SIGNAL(triggered()),this,SLOT(PrintSetup()));
    40 #endif // Q_OS_WINCE
    41         connect(buttonSolve,SIGNAL(clicked()),this,SLOT(Solve()));
    42         connect(buttonRandom,SIGNAL(clicked()),this,SLOT(Random()));
    43         connect(spinCities,SIGNAL(valueChanged(int)),this,SLOT(CitiesNumberChanged(int)));
     42        actionSettingsLanguageAutodetect->setChecked(settings->value("Language","").toString().isEmpty());
     43        connect(actionFileNew,SIGNAL(triggered()),this,SLOT(actionFileNewTriggered()));
     44        connect(actionSettingsPreferences,SIGNAL(triggered()),this,SLOT(actionSettingsPreferencesTriggered()));
     45        connect(actionSettingsLanguageAutodetect,SIGNAL(triggered(bool)),this,SLOT(actionSettingsLanguageAutodetectTriggered(bool)));
     46        connect(groupSettingsLanguageList,SIGNAL(triggered(QAction *)),this,SLOT(groupSettingsLanguageListTriggered(QAction *)));
     47        connect(actionHelpAbout,SIGNAL(triggered()),this,SLOT(actionHelpAboutTriggered()));
     48#ifndef Q_OS_WINCE
     49        connect(actionFilePrintSetup,SIGNAL(triggered()),this,SLOT(actionFilePrintSetupTriggered()));
     50#endif // Q_OS_WINCE
     51        connect(buttonSolve,SIGNAL(clicked()),this,SLOT(buttonSolveClicked()));
     52        connect(buttonRandom,SIGNAL(clicked()),this,SLOT(buttonRandomClicked()));
     53        connect(spinCities,SIGNAL(valueChanged(int)),this,SLOT(spinCitiesValueChanged(int)));
    4454QRect rect = geometry();
    4555#ifdef Q_OS_WINCE
     
    7383}
    7484
    75 void MainWindow::CitiesNumberChanged(int n)
     85bool MainWindow::loadLanguage()
     86{
     87// i18n
     88bool ad = settings->value("Language","").toString().isEmpty();
     89QString lang = settings->value("Language",QLocale::system().name()).toString();
     90static QTranslator *qtTranslator;
     91        if (qtTranslator) {
     92                qApp->removeTranslator(qtTranslator);
     93                delete qtTranslator;
     94                qtTranslator = NULL;
     95        }
     96        qtTranslator = new QTranslator();
     97        if (lang.compare("en") && !lang.startsWith("en_")) {
     98                // Trying to load system Qt library translation...
     99                if (qtTranslator->load("qt_" + lang,QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
     100                        qApp->installTranslator(qtTranslator);
     101                else
     102                        // No luck. Let's try to load bundled one.
     103                        if (qtTranslator->load("qt_" + lang,"i18n"))
     104                                qApp->installTranslator(qtTranslator);
     105                        else {
     106                                delete qtTranslator;
     107                                qtTranslator = NULL;
     108                        }
     109        }
     110        // Now let's load application translation.
     111static QTranslator *translator;
     112        if (translator) {
     113                qApp->removeTranslator(translator);
     114                delete translator;
     115        }
     116        translator = new QTranslator();
     117        if (lang.compare("en") && !lang.startsWith("en_")) {
     118                if (translator->load(lang,"i18n"))
     119                        qApp->installTranslator(translator);
     120                else {
     121                        if (!ad)
     122                                QMessageBox(QMessageBox::Warning,trUtf8("Language change"),trUtf8("Unable to load translation language."),QMessageBox::Ok,this).exec();
     123                        delete translator;
     124                        translator = NULL;
     125                        return false;
     126                }
     127        }
     128        return true;
     129}
     130
     131void MainWindow::spinCitiesValueChanged(int n)
    76132{
    77133#ifdef Q_OS_WINCE
     
    88144}
    89145
    90 void MainWindow::ChangeSettings()
     146
     147void MainWindow::actionFileNewTriggered()
     148{
     149        tspmodel->clear();
     150}
     151
     152void MainWindow::actionSettingsPreferencesTriggered()
    91153{
    92154SettingsDialog sd(this);
     
    95157
    96158#ifndef Q_OS_WINCE
    97 void MainWindow::PrintSetup()
    98 {
    99 QPrintDialog pd;
     159void MainWindow::actionFilePrintSetupTriggered()
     160{
     161QPrintDialog pd(printer,this);
     162        pd.setOption(QAbstractPrintDialog::PrintSelection,false);
     163        pd.setOption(QAbstractPrintDialog::PrintPageRange,false);
    100164        pd.exec();
    101165}
    102166#endif // Q_OS_WINCE
    103167
    104 void MainWindow::Random()
     168void MainWindow::buttonRandomClicked()
    105169{
    106170        tspmodel->randomize();
     
    111175}
    112176
    113 void MainWindow::Solve()
     177void MainWindow::buttonSolveClicked()
    114178{
    115179        // TODO: Task solving goes here :-)
     
    136200}
    137201
    138 void MainWindow::showAbout()
     202void MainWindow::actionHelpAboutTriggered()
    139203{
    140204        // TODO: Normal about window :-)
     
    149213}
    150214
     215void MainWindow::loadLangList()
     216{
     217QSettings langinfo("i18n/languages.ini",QSettings::IniFormat);
     218        langinfo.setIniCodec("UTF-8");
     219QDir dir("i18n","*.qm",QDir::Name | QDir::IgnoreCase,QDir::Files);
     220        if (!dir.exists())
     221                return;
     222QFileInfoList langs = dir.entryInfoList();
     223        if (langs.size() <= 0)
     224                return;
     225        menuSettingsLanguage->addSeparator();
     226QAction *a;
     227        for (int k = 0; k < langs.size(); k++) {
     228                QFileInfo lang = langs.at(k);
     229                if (!lang.completeBaseName().startsWith("qt_")) {
     230                        a = menuSettingsLanguage->addAction(langinfo.value(lang.completeBaseName() + "/NativeName",lang.completeBaseName()).toString());
     231                        a->setData(lang.completeBaseName());
     232                        a->setCheckable(true);
     233                        a->setActionGroup(groupSettingsLanguageList);
     234                        if (settings->value("Language",QLocale::system().name()).toString().startsWith(lang.completeBaseName()))
     235                                a->setChecked(true);
     236                }
     237        }
     238}
     239
     240void MainWindow::actionSettingsLanguageAutodetectTriggered(bool checked)
     241{
     242        if (checked) {
     243                settings->remove("Language");
     244                QMessageBox(QMessageBox::Information,trUtf8("Language change"),trUtf8("Language will be autodetected on next application start."),QMessageBox::Ok,this).exec();
     245        } else
     246                settings->setValue("Language",groupSettingsLanguageList->checkedAction()->data().toString());
     247}
     248
     249void MainWindow::groupSettingsLanguageListTriggered(QAction *action)
     250{
     251        if (actionSettingsLanguageAutodetect->isChecked()) {
     252                // We have language autodetection. It needs to be disabled to change language.
     253                if (QMessageBox(QMessageBox::Question,trUtf8("Language change"),trUtf8("You have language autodetection turned on.\nIt needs to be off.\nDo you wish to turn it off?"),QMessageBox::Yes | QMessageBox::No,this).exec() == QMessageBox::Yes) {
     254                        actionSettingsLanguageAutodetect->trigger();
     255                } else
     256                        return;
     257        }
     258        if (loadLanguage()) {
     259                settings->setValue("Language",action->data().toString());
     260                retranslateUi(this);
     261        } else {
     262        }
     263}
     264
    151265void MainWindow::closeEvent(QCloseEvent *event)
    152266{
  • src/mainwindow.h

    r78282ec778 r899d1b8e15  
    4343        void closeEvent(QCloseEvent *event);
    4444private slots:
    45         void ChangeSettings();
    46         void showAbout();
     45        void actionFileNewTriggered();
     46        void actionSettingsPreferencesTriggered();
     47        void actionSettingsLanguageAutodetectTriggered(bool checked);
     48        void groupSettingsLanguageListTriggered(QAction *action);
     49        void actionHelpAboutTriggered();
    4750#ifndef Q_OS_WINCE
    48         void PrintSetup();
     51        void actionFilePrintSetupTriggered();
    4952#endif // Q_OS_WINCE
    50         void Solve();
    51         void Random();
    52         void CitiesNumberChanged(int n);
     53        void buttonSolveClicked();
     54        void buttonRandomClicked();
     55        void spinCitiesValueChanged(int n);
    5356private:
    5457        QSettings *settings;
     58        QPrinter *printer;
    5559        CTSPModel *tspmodel;
     60        QActionGroup *groupSettingsLanguageList;
     61        bool loadLanguage();
     62        void loadLangList();
    5663};
    5764
  • src/tspmodel.cpp

    r78282ec778 r899d1b8e15  
    141141}
    142142
     143void CTSPModel::clear()
     144{
     145        for (int r = 0; r < nCities; r++)
     146                for (int c = 0; c < nCities; c++)
     147                        if (r != c)
     148                                table[r][c] = 0;
     149        emit dataChanged(index(0,0),index(nCities - 1,nCities - 1));
     150}
     151
    143152void CTSPModel::randomize()
    144153{
  • src/tspmodel.h

    r78282ec778 r899d1b8e15  
    4242        int numCities() const;
    4343        void setNumCities(int);
     44        void clear();
    4445        void randomize();
    4546private:
  • tspsg.pri

    r78282ec778 r899d1b8e15  
    3737#Translations
    3838CODECFORTR = UTF-8
    39 TRANSLATIONS += i18n/English.ts \
    40         i18n/Russian.ts \
    41         i18n/Ukrainian.ts
     39TRANSLATIONS += i18n/en.ts \
     40        i18n/ru.ts \
     41        i18n/uk.ts
  • ui/mainwindow.ce.ui

    r78282ec778 r899d1b8e15  
    282282     <string>&amp;Settings</string>
    283283    </property>
    284     <addaction name="actionSettingsSettings"/>
     284    <widget class="QMenu" name="menuSettingsLanguage">
     285     <property name="toolTip">
     286      <string>Select language</string>
     287     </property>
     288     <property name="statusTip">
     289      <string>Select application language</string>
     290     </property>
     291     <property name="title">
     292      <string extracomment="Please, append &quot; / Language&quot; when translating this string.">&amp;Language</string>
     293     </property>
     294     <addaction name="actionSettingsLanguageAutodetect"/>
     295    </widget>
     296    <addaction name="menuSettingsLanguage"/>
     297    <addaction name="separator"/>
     298    <addaction name="actionSettingsPreferences"/>
    285299   </widget>
    286300   <widget class="QMenu" name="menuHelp">
     
    317331   <addaction name="actionFileSaveTask"/>
    318332   <addaction name="separator"/>
    319    <addaction name="actionSettingsSettings"/>
     333   <addaction name="actionSettingsPreferences"/>
    320334   <addaction name="separator"/>
    321335   <addaction name="actionFileExit"/>
     
    408422   </property>
    409423  </action>
    410   <action name="actionSettingsSettings">
     424  <action name="actionSettingsPreferences">
    411425   <property name="icon">
    412426    <iconset resource="../resources/tspsg.qrc">
     
    502516   <property name="shortcut">
    503517    <string>Ctrl+S</string>
     518   </property>
     519  </action>
     520  <action name="actionSettingsLanguageAutodetect">
     521   <property name="checkable">
     522    <bool>true</bool>
     523   </property>
     524   <property name="checked">
     525    <bool>true</bool>
     526   </property>
     527   <property name="text">
     528    <string>&amp;Autodetect</string>
     529   </property>
     530   <property name="toolTip">
     531    <string>Detect language automatically</string>
     532   </property>
     533   <property name="statusTip">
     534    <string>Detect language automatically based on regional settings</string>
    504535   </property>
    505536  </action>
  • ui/mainwindow.ui

    r78282ec778 r899d1b8e15  
    237237    </property>
    238238    <widget class="QMenu" name="menuFileSave">
    239      <property name="statusTip">
    240       <string/>
    241      </property>
    242239     <property name="title">
    243240      <string>&amp;Save</string>
     
    249246     <addaction name="actionFileSaveTask"/>
    250247     <addaction name="separator"/>
    251      <addaction name="actionFileSaveResultAll"/>
    252      <addaction name="actionFileSaveResultMatrices"/>
    253      <addaction name="actionFileSaveResultGraph"/>
     248     <addaction name="actionFileSaveSolutionAll"/>
     249     <addaction name="actionFileSaveSolutionMatrices"/>
     250     <addaction name="actionFileSaveSolutionGraph"/>
    254251    </widget>
    255252    <addaction name="actionFileNew"/>
     
    266263     <string>&amp;Settings</string>
    267264    </property>
    268     <addaction name="actionSettingsSettings"/>
     265    <widget class="QMenu" name="menuSettingsLanguage">
     266     <property name="toolTip">
     267      <string>Select language</string>
     268     </property>
     269     <property name="statusTip">
     270      <string>Select application language</string>
     271     </property>
     272     <property name="title">
     273      <string extracomment="Please, append &quot; / Language&quot; when translating this string.">&amp;Language</string>
     274     </property>
     275     <addaction name="actionSettingsLanguageAutodetect"/>
     276    </widget>
     277    <addaction name="menuSettingsLanguage"/>
     278    <addaction name="separator"/>
     279    <addaction name="actionSettingsPreferences"/>
    269280   </widget>
    270281   <widget class="QMenu" name="menuHelp">
     
    303314   <addaction name="separator"/>
    304315   <addaction name="actionFilePrint"/>
    305    <addaction name="actionSettingsSettings"/>
     316   <addaction name="actionSettingsPreferences"/>
    306317   <addaction name="separator"/>
    307318   <addaction name="actionFileExit"/>
     
    337348   </property>
    338349  </action>
    339   <action name="actionFileSaveResultMatrices">
     350  <action name="actionFileSaveSolutionMatrices">
    340351   <property name="enabled">
    341352    <bool>false</bool>
     
    351362   </property>
    352363  </action>
    353   <action name="actionFileSaveResultGraph">
     364  <action name="actionFileSaveSolutionGraph">
    354365   <property name="enabled">
    355366    <bool>false</bool>
     
    365376   </property>
    366377  </action>
    367   <action name="actionFileSaveResultAll">
     378  <action name="actionFileSaveSolutionAll">
    368379   <property name="enabled">
    369380    <bool>false</bool>
     
    424435   </property>
    425436  </action>
    426   <action name="actionSettingsSettings">
     437  <action name="actionSettingsPreferences">
    427438   <property name="icon">
    428439    <iconset resource="../resources/tspsg.qrc">
     
    518529   <property name="shortcut">
    519530    <string>Ctrl+S</string>
     531   </property>
     532  </action>
     533  <action name="actionSettingsLanguageAutodetect">
     534   <property name="checkable">
     535    <bool>true</bool>
     536   </property>
     537   <property name="checked">
     538    <bool>true</bool>
     539   </property>
     540   <property name="text">
     541    <string>&amp;Autodetect</string>
     542   </property>
     543   <property name="toolTip">
     544    <string>Detect language automatically</string>
     545   </property>
     546   <property name="statusTip">
     547    <string>Detect language automatically based on regional settings</string>
    520548   </property>
    521549  </action>
  • ui/settingsdialog.ce.ui

    r78282ec778 r899d1b8e15  
    88    <y>0</y>
    99    <width>235</width>
    10     <height>190</height>
     10    <height>180</height>
    1111   </rect>
    1212  </property>
Note: See TracChangeset for help on using the changeset viewer.