Changes in / [725:b5728792c4f0:726:216171714496]
- Files:
-
- 9 added
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
MLXMANIFEST
r723 r726 1 1 library/encodings/shift_jis.pyc 1670 afdb08e9b2888f86fc71010edcf057b4 2 library/xml/__init__.pyc 1058 8f77f254e8c6db7a3b6d9930a686d7873 doc/manual/en/finish.png 28855 671eac74a9f5801c794f08d5861eafaa4 2 library/sre_constants.pyc 5988 060e037737c1096503cf9247fc353edf 5 3 library/encodings/euc_jis_2004.pyc 1694 e12bbd059d4fd595cf4be5440ab439c2 6 library/ encodings/iso8859_7.pyc 2686 db390f1961c1fd4181e351c330816ecd4 library/xml/dom/xmlbuilder.pyc 15414 42285fdd810a2aa92c06775b5d415c33 7 5 library/fnmatch.pyc 3414 4d50000f78e903598af06ef1c5cfb3ef 8 library/libexpat-1.dll 143096 701659d3689bf4a8265b669b7d774255 9 library/gtk/_gtk.pyc 549 fc79b81b10be66eb2514e690cc0090ac 6 library/gtk/_gtk.pyc 549 9458c6b0ddc3c1e11c1203b6fd4633a9 10 7 library/encodings/cp858.pyc 7591 02054a0b8e91b9758826eb70cddf096f 11 library/mlx/pirep.pyc 4623 6c485ea65ff6245ab56960a8bbec705112 8 library/encodings/cp1254.pyc 2678 17ff2ac86f90886d5c73ed789f0499f3 13 9 library/encodings/unicode_internal.pyc 2022 1e902113491e0c334b44deb0c8940e01 14 library/libpango-1.0-0.dll 333729 5a14efd93ee27cfe960220fe4a904911 15 library/mlx/gui/gui.pyc 53459 ff9a0ce7c21f1d3dfb7c1359a4226d34 16 library/stat.pyc 2503 d3b6dc7a54e705219f04d0be75a212de 17 library/posixpath.pyc 10734 d694316c239784c444b252c801c97efa 18 doc/manual/hu/landing.png 28525 2dd99249a389e9faf5c4d7b1180e8ebb 10 library/lxml/etree.pyc 555 698876f9fdc81ba76c8a6fe486c49dab 19 11 library/encodings/gbk.pyc 1622 71c1e7fe25116114241829a60e57c5f4 20 12 sounds/speed.mp3 26331 3d64da0eea9f48fa73be82d385354bf6 21 13 library/encodings/cp932.pyc 1638 e060301989634a7fb30ded375011cb09 22 doc/manual/hu/bugreport.png 12385 c71c7db56f19870ae5d6bb7f533d3679 23 library/share/locale/hu/LC_MESSAGES/gtk20.mo 58794 6ee4491ae7bc9d3dfb778578eb29a0b3 24 library/gobject/_gobject.pyc 573 81047d5239f6250991b28ed9d046173f 25 locale/en/LC_MESSAGES/mlx.mo 64494 5eb2e430656c49a02122e3ea54fe4698 26 library/encodings/utf_7.pyc 1747 2beeb059236527197d6c640396476ce8 14 locales/am.pak 10404 5501abf396344840777c5e65843dd680 15 locales/id.pak 6724 87f2077cb9f8a80f18ed5ab3c48d448b 16 library/distutils/__init__.pyc 365 6f7d10b79fa1086d3ac9ce0806b5ba23 27 17 doc/manual/hu/pirepViewer.png 26835 267e4325e550ed14ed22f86a2c7e8e9d 28 18 doc/manual/hu/prefsGeneral.png 25082 9775eaf0c8f1f770e1ad46ce9b6e6973 29 library/atexit.pyc 2083 595a09be339c73c3c02e378d99325d2a 30 library/cookielib.pyc 52852 2a1030653dc204a9ba1fb56fd32eca68 31 sounds/737taxi.mp3 157362 846c403e5cb660be53c8b6da16b68234 19 library/mlx/gui/statusbar.pyc 4812 490a882b53429fa18f317e146f0c70c0 32 20 doc/manual/hu/mainWindow.png 27770 42e5565ccb75d22b2f378d2df2b2865d 33 library/libgobject-2.0-0.dll 341594 356d697647a480562c4e2e921b13f8ed 34 library/email/charset.pyc 13200 771aee9802116e673d08b44bc0450f99 35 library/libpangocairo-1.0-0.dll 104729 d3ad38599649097a3645777ff95be08e 36 doc/manual/en/briefing.png 32129 65cf1236d009fd61c1bd6c374ffd261c 37 library/uu.pyc 4212 0073b65d26a6092e4e177c7763058fa4 38 library/encodings/iso8859_1.pyc 2678 f09ec3b7f6a348cbd7f7286b60572bd0 39 doc/manual/hu/monitorWindow.png 20577 34bfd26fe50e72706625a9203ac98217 21 library/lxml.etree.pyd 2977792 d9f46391d4eeb719304a07b1ddaa72d9 40 22 library/pdb.pyc 41336 cca4477d622e897335b3f0cecb667ff4 41 library/ pangocairo.pyd 17920 5fc69a7d29a6d3127710c64de440daa423 library/lxml/html/_setmixin.pyc 4312 eac09282d97aceede13bb8efc0da3a5f 42 24 doc/manual/en/fuel.png 27700 777f9f3431c2f53db4b98f3449e4baf7 43 library/mlx/gui/info.pyc 6538 78c97f25111c13dc94c6226140943916 44 library/ io.pyc 3378 197da422e1d85c483c94fa0251b5ff7625 subprocess.exe 267264 00107a8ed63a3e055e5d14f5c4b6cb0d 26 library/selenium/webdriver/android/webdriver.pyc 1348 d8e382aa629964bf424c14159dd4fd2d 45 27 library/xml/sax/xmlreader.pyc 17862 0362ded7016d21cdd85aea1170ebdda1 46 28 doc/manual/hu/fuel.png 29886 92a67f7d11e5101a7ac64034c7be26a4 47 29 doc/manual/hu/time.png 28618 50dd8f862b7e1034cb1066ab16e7c587 48 30 library/encodings/mac_croatian.pyc 2755 425b44ba614eff660b863cb7cc12e509 49 library/encodings/iso8859_6.pyc 2723 c8f9aa14a6a2ebf05d977317114bc65d50 31 library/stringprep.pyc 14089 1c0d248fa5ff974c44479a82d8deb72c 51 doc/manual/hu/prefsSounds.png 22667 452c396c2bda9684bf052c98fd7870d1 52 library/sre.pyc 499 92bb633daa0bab6550ec0e3677673b5b 32 library/WINHTTP.dll 354304 d29f2889baa10e19ad9ff70c8d5ecf50 33 locales/ca.pak 7484 6490335e2837ffefb296ff1fabb50372 34 library/selenium/webdriver/remote/switch_to.pyc 3203 203c551f8bb5b7999810cf31728c85ee 53 35 library/encodings/cp720.pyc 2736 a0f8bdcf6477a00166d2a38b1ba3ce7c 54 36 library/xml/sax/_exceptions.pyc 5829 9f1abe12a091b6808b131a0b4e179b5a 55 library/encodings/iso2022_jp_3.pyc 1699 ee1c3aa11bbe19eeb4deafa23856313356 library/encodings/mac_turkish.pyc 2739 1682e228ddfd2e74e3ccaee0b65e726157 37 doc/manual/en/prefsMessages.png 22653 9002bdcc9f1ecd395c67e0662dec62dc 58 38 library/xml/sax/handler.pyc 12528 655e21f07d79d8cde1d7af6fe0d9c2db 59 39 library/collections.pyc 23430 3b68687320ddc080ef5c92404487a161 60 40 library/encodings/hp_roman8.pyc 3922 cc8ddf1c5f5264309df0050775df2dc3 61 library/xmlrpclib.pyc 40724 d4f819f9199ea21236a74c967e335c4362 41 library/encodings/big5hkscs.pyc 1670 0ff54e70f21b5e4a359d3779367cba85 63 42 library/encodings/utf_8.pyc 1806 4b8dee0284ea2f55c4142fcde7463524 64 library/unicodedata.pyd 688128 c856c31a03dc892e4f2aee93d0bfee44 65 locale/hu/LC_MESSAGES/mlx.mo 69361 d6d8b2f8bd1a18bcc710b841e849d5c3 43 locale/hu/LC_MESSAGES/mlx.mo 73166 f479bb641fede1c31adbd0ff2a3d736b 66 44 library/encodings/mac_roman.pyc 2716 4b4745eccfcb77860b70b374ac07fbcc 67 library/ copy_reg.pyc 4893 7a58bc441232056d1c123cd3375b377445 library/py_compile.pyc 6292 425da7ee065aa158fd274946204a4a77 68 46 library/ctypes/_endian.pyc 2154 c73aab798475f9961158ed4f6c07a70b 69 doc/manual/en/debugLogTab.png 33696 5be65d41058f78554840032c51aa9d6d70 47 doc/manual/en/checklistEditor.png 26353 b8963432d1219a2138e22850b1b94b56 71 48 library/email/_parseaddr.pyc 13285 9a4c79b09ed093f1fc48b4d427b877e0 72 library/dummy_thread.pyc 5094 310a3d15c9cf20259b0ca4892811dec573 library/gtk._gtk.pyd 1882624 bbb1d1e41bbebc6abf69bed719d5049774 49 library/encodings/__init__.pyc 4298 df673fd19cf6e69f54e7638d05179a32 75 50 library/share/themes/MS-Windows/gtk-2.0/gtkrc 1825 94d104680cec5f3d8bbec56258d0c926 76 library/_hashlib.pyd 287232 a1a18de0644f481749fcbcf26005eeaf77 doc/manual/en/monitorWindow.png 20886 42e08d10c758e21209c4c021f391dee778 library/_hashlib.pyc 549 9e2049be4b8278f6106cd91d0b39a37579 51 library/libpng14-14.dll 230529 f3a15497e25baaa721f96638d7a4d2f8 80 library/copy.pyc 11674 30d1745c5e38ab170f8a0486fbebf30581 52 library/share/locale/hu/LC_MESSAGES/gdk-pixbuf.mo 21895 a932ead453f04de30e348c1689a4d896 53 library/selenium/webdriver/safari/__init__.pyc 125 4a6fe7f5be076227125ddd0577386fa7 54 locales/fil.pak 7790 38cdea149d120d8e9a8a0b0a90ac5dfd 82 55 library/mlx/gui/dcdata.pyc 19878 128e72fd5c4cf74b988abe22b9e9e641 83 library/ mlx/gui/__init__.pyc 107 22f268cac1c5be2f3a058810b6caead356 library/selenium/webdriver/common/utils.pyc 1718 4f61f38d0107f2694454eacb6d480f45 84 57 library/encodings/iso8859_5.pyc 2679 58a290e94b0266ef8ff4ee52da00e257 85 58 library/encodings/iso2022_kr.pyc 1683 ef9549932514d2deda6c4676e5e5f1db 86 59 library/libglib-2.0-0.dll 1242929 18e88b04da123bf05b07ff60a4e96654 87 library/select.pyd 11776 d90bf525f9f6c9c3aa6532fa6e569b4f88 60 library/base64.pyc 10528 39abec9c60dc011d3c763f443f9b1a11 89 61 library/mlx/gui/bugreport.pyc 4602 a32ca4d644f316b3d120ae3dc2597eba 90 library/traceback.pyc 11223 50ace5c2c6c040a923082442da94cd7891 library/_weakrefset.pyc 9290 a56e87c491c0511cd329a3c8c4cd956392 library/mlx/flight.pyc 21066 471a24b3678e6d684d6bf5aead1ae54493 library/urllib2.pyc 43566 7eb57ea0dcd1086d1d9073a5cefb090394 62 doc/manual/en/flightSelection.png 29847 7817c8f5ed8d7fe64cf72d0addaf3e4a 95 library/encodings/mac_farsi.pyc 2659 df751a61510129a25f7a43ae3aace4f796 library/tokenize.pyc 13565 354d02cd79df187a28c1851a1e3bad9697 63 library/encodings/cp500.pyc 2639 bb122a6e1384530e1b2efb14cf999239 98 64 sounds/TaxiAfterLand.mp3 155481 ded1908d2e7bf2ee2cbf445bb44cf756 99 65 library/urlparse.pyc 13222 cca8581f4f4fa9067ccc880f049a6032 100 library/mlx/common.pyc 1327 822ddec8bdeabcd64ec7927b275680c0 66 library/json/encoder.pyc 12918 d4d1f0b8a67df3e7c2f470ca19d0f964 67 library/selenium/webdriver/remote/webdriver.pyc 31960 5ef4044402659e32409fa4570a91f03c 101 68 doc/manual/en/mainWindow.png 25345 15b206118a6670f9edaceb8aa830fdd7 102 library/ctypes/__init__.pyc 18846 2bd183962453ae93d6887b303d3fd338103 library/mlx/acars.pyc 1690 733d057c94683c74079d6e096f601855104 69 library/encodings/iso8859_3.pyc 2685 7b5b2924647578ab7555db2d86cd1b9b 105 sounds/taps.mp3 16614 d4a019c7e9342ae329aee6932d6a43c3 70 locales/kn.pak 15411 d24e6fbfcbd4c8e76cc534bf63d75d61 71 library/xml/dom/minicompat.pyc 3256 4cb81e995ea180f716a8913fb0148a64 106 72 library/email/generator.pyc 9877 f387feb2b59e121f7b0ece209e8875ae 107 73 library/types.pyc 2386 25023bf7b2334153cfff8922979862c9 108 conn_grey.png 988 7a956ebba793197f324cec56d94073e7 109 library/getopt.pyc 6454 8f8cd6763f5339988d157d153c910bf5 74 doc/manual/en/bugreport.png 11730 a649c456acbbfa0419d183a7b8261c01 75 locales/mr.pak 13137 cdfba7767a139ab7c34ec01d496029a2 76 library/xml/dom/pulldom.pyc 12238 14c378c017da4b4a1576321c884c9ac4 110 77 doc/manual/en/landing.png 26272 97115671017d7dd3af55513ae912ff17 111 78 library/textwrap.pyc 11410 f7bfc56465324edf71b977397a4c7c0b 79 locales/nb.pak 6676 56894a866d7af9193faca13ef28c7b68 112 80 library/encodings/undefined.pyc 2399 030217a6a82b09af1a32dc18955d3355 113 library/encodings/idna.pyc 6124 6d67198be2b194c4c0acf48e2f1473ac 114 library/email/mime/__init__.pyc 110 bae57a199e3d0998a1364b9fbae8b3cd 115 library/calendar.pyc 26136 6f2f18efc99d759f99b2935b9dc9dbb1 116 library/winerror.pyc 112982 4986a8f2df094dddedd12c9fddf4966d 117 library/_LWPCookieJar.pyc 5440 3782ae675165b232a3f78608ac2dbccd 118 library/encodings/mac_latin2.pyc 4717 564dbaf5c296a147203eb821dc2466ba 81 library/cairo/__init__.pyc 142 010dd7cc8485565d5782d60e92e4ba34 119 82 library/encodings/utf_16_be.pyc 1854 84a1d1465453727af051eaeeb853782f 120 library/mlx/fsuipc.pyc 74670 4da0a45a9a6372a2e463ab21fdc43359 121 library/xml/sax/__init__.pyc 3579 c78222ad1fd4f3dbdea06666fe74e84e 122 doc/manual/en/connect.png 27436 5406dfe5408569cb95499c057bf0185b 83 library/selenium/webdriver/ie/webdriver.pyc 1917 121143596ab09d1c691eb62c08540471 84 library/selenium/webdriver/common/keys.pyc 2116 25c69327342e220cdafefcca6e79bfe5 123 85 library/encodings/cp1006.pyc 2725 99fe5e34e21f82126b87b830c382347f 124 86 logo.ico 44054 8a2bfc719521f8dc59540055941af7db … … 126 88 doc/manual/hu/takeoff.png 28255 c328eb866f78338e178f1fb761f57511 127 89 library/encodings/rot_13.pyc 3413 04994d9c6c3622213b73a23e86c4cd07 128 library/encodings/charmap.pyc 3203 2358b8eb05c66e2a2826b5db6f214547 129 library/os2emxpath.pyc 4312 0c35794eeb4739ebb4eb28b9a1daf0ca 130 library/libgdk-win32-2.0-0.dll 931390 a2b46daac3d4140efdf86429f7aea476 90 library/selenium/webdriver/chrome/service.pyc 3456 213d552983fc36a04948f1c1fb551965 131 91 library/win32file.pyd 111616 25ecaa0a381c6fd9ba4080bea63b952e 132 library/mlx/gui/common.pyc 10398 b94179414ef460863981a327bbea2cf3 133 library/dummy_threading.pyc 1265 5ab5c897721aeb346b5bccb84066c5bd 134 library/markupbase.pyc 9010 b33ff430e9b1adba3d540b5394ff289a 135 library/encodings/cp1258.pyc 2681 5c09b3b0a82036b0e785422376cb64cc 136 sounds/767taxi.mp3 160496 4cb43cda6e1214fbe15328a716827345 137 doc/manual/en/prefsAdvanced.png 16169 64c14e0842c413cac98b92926279f3e0 138 library/mlx/pyuipc_sim.pyc 57203 e1828998919f435bae2a5cbd969ff8f3 139 library/cairo/_cairo.pyc 561 74600b46e3cca88959de18f46fd35dd6 140 library/win32file.pyc 552 7cc3345bbc0f00a5ab26fd1fa2644112 141 library/encodings/cp865.pyc 7868 7d40a7ba053ac23339218be8799e5397 142 library/lib/gtk-2.0/2.10.0/engines/libwimp.dll 97984 a5bbbe46e1363aba9020a76f2d58e9d6 92 library/share/locale/hu/LC_MESSAGES/gtk20-properties.mo 167125 cd1b1b3693c1e3c74bfcea20be640cc6 93 library/lxml/_elementpath.pyc 6886 9a280fb32989572f97a77a8439c60b03 143 94 library/unittest/__init__.pyc 2945 3b9d3992b823bd7bc391d8b1bb434310 144 95 sounds/sikoly.mp3 126222 b0bb88361b253cd21bfd3706524f4aec 145 library/HTMLParser.pyc 11589 f641df5331b5bb552ebe180f79b85a6b 146 library/bz2.pyd 76800 1ca9ececd2c84b80996fe632627f857f 147 library/encodings/iso8859_16.pyc 2695 85e819a29dec2b601ce978dcd5a040fc 148 library/share/locale/hu/LC_MESSAGES/gtk20-properties.mo 167125 cd1b1b3693c1e3c74bfcea20be640cc6 96 library/selenium/webdriver/common/proxy.pyc 9645 560e74712da0a0e2f9115689b0dce0a2 149 97 conn_red.png 914 860388cb7c3b26b2f348fdbee40780ce 150 library/bz2.pyc 534 c0e76855ba3b871b6033bf3e93815fb8151 98 library/xml/sax/expatreader.pyc 13563 4f64c0efb2f1f8dbba84cdb5c6036f2d 152 library/ email/utils.pyc 8840 a7be428df6fddee6121cfce55382d1f899 library/lxml/html/__init__.pyc 57505 75e60bdbe2cda9fe95dc43345e79a0ae 153 100 library/encodings/iso8859_14.pyc 2714 b9baeb3f59da8a2137db576b2e434feb 154 101 library/unittest/signals.pyc 2126 d574469ae3f8e3c3c6054c48e8ff6fe1 155 102 library/encodings/cp949.pyc 1638 a248191502a186c4ee64598e5e684608 156 library/encodings/iso2022_jp_2.pyc 1699 4b917caa926e5779176612409c66be39157 library/_ssl.pyd 720896 90826a140137efd0d806038828e16f8e158 103 library/urllib.pyc 48771 4d4b07040a1d0b0b31f5779eeb01c269 159 104 doc/manual/hu/payload.png 29785 c9b8f7dd269629ea22764f531e5d27bf 160 105 doc/manual/en/gateSelection.png 28063 b02c97fe05d9cd8ea986a5023937f4bc 161 library/glib/__init__.pyc 187 d44c8c2772b263a36726ac0dcfc04b42162 106 library/UserDict.pyc 7920 c72896a5a8a1a3d93fa6ba23c50a04b0 163 107 library/encodings/koi8_r.pyc 2700 fff1b35002b9e938b7ea6fd0fbe824ae 164 library/mlx/gui/statusbar.pyc 4812 490a882b53429fa18f317e146f0c70c0 165 library/warnings.pyc 12666 9788b5f45765e8204e04c820f2711094 166 mlxupdate.exe 19456 ddccbdef96743f9fb9ef233581c240fc 167 library/mlx/const.pyc 6289 fda6baed7910fe29ee62a57e7818eb89 168 library/email/errors.pyc 3229 cdb78ab237e195ad69f059128bc03b1d 169 library/linecache.pyc 3091 666e6f81b0ea9a7637f8068493f738d5 170 sounds/malev.mp3 201247 8a00666288f14a1666eb112223c140e0 171 library/encodings/mac_iceland.pyc 2738 dfff28ea5edfda00df56b4ab9a35bc59 108 sounds/737taxi.mp3 157362 846c403e5cb660be53c8b6da16b68234 109 library/mlx/const.pyc 6294 5cdef68da98c1d03135d20e2b78668fc 110 locales/th.pak 13637 7262d0f5e1877212a45a1ef1ccc4c777 111 library/mlx/gui/cef.pyc 13834 c0aa2cc0103680c5c8f25a8b504839d8 172 112 library/encodings/punycode.pyc 7570 335ff94e207934ae64e6f5fc07a5cacc 173 library/unittest/util.pyc 4358 1530cc34b18ae6a6c6128a1d8b1355d7 174 library/gtk/__init__.pyc 3025 9f6605bf84c6cbd3c20f1d37e58af969 175 library/codecs.pyc 34722 339dc90c17d548887dbcf1bbbcae5d5b 113 mlx_cef_caller.bat 142 d1815645d52f5638f27f16903a977d00 176 114 library/encodings/shift_jisx0213.pyc 1710 1ec0383aafb1dcadb5f9b6afff16eb7f 177 doc/manual/hu/statusIcon2.png 7969 3ec6caa058848932d381da6e02c702be178 115 library/shlex.pyc 7282 cbe1a4823894c97c87d01f9d9faf5b8f 179 library/ cairo/__init__.pyc 142 010dd7cc8485565d5782d60e92e4ba34180 library/ _ssl.pyc 537 aca2f45a9b83601311c6292e537f4611116 library/encodings/idna.pyc 6124 6d67198be2b194c4c0acf48e2f1473ac 117 library/selenium/webdriver/support/wait.pyc 3062 0b45eef7d5f12effdcb7b3b3bf077953 181 118 library/encodings/iso8859_8.pyc 2717 f3ad6ce58cfac9e3ca86cf5c2fef092b 182 library/encodings/iso2022_jp_1.pyc 1699 faed9d5747e982cec9fa8b3ad8e1de26183 library/encodings/cp850.pyc 7621 20d776af743fa7acf090fbd575eea143184 library/xml/parsers/expat.pyc 259 d7be0c4de475d65e08ba7fdbabe088d3185 119 library/encodings/utf_16.pyc 4808 45343ba87ff1675cd72f656555193d29 186 library/struct.pyc 219 421271d66b783c3f13c37ec09efa8b65187 120 library/httplib.pyc 35251 2ac8119676b4b02ed78fd020ea423de5 188 doc/manual/en/bugreport.png 11730 a649c456acbbfa0419d183a7b8261c01 189 python27.dll 2206720 f8f39495ed4a813e8f3049a4b9f5cff4 190 library/encodings/mac_centeuro.pyc 2747 6461bd7ed7a57683d5c36001f9ac85c9 191 library/encodings/utf_32.pyc 5336 912103fef3db6edc29a35dd0cfb5c5b9 192 library/ntpath.pyc 11407 533c9331a1b72cc80dd3f88145ba4466 121 library/selenium/webdriver/remote/__init__.pyc 125 98c24cdbe880f259e3a39688b035f899 193 122 library/rfc822.pyc 30648 0d6ab1f052b2b58e19659373c57e6443 194 123 library/encodings/cp869.pyc 7915 404063f8111d018b17d803a12c956ee8 195 124 library/opcode.pyc 6052 4b056d1c0ecd2904ca1fb2a14f28da3c 196 library/mlx/gui/checklist.pyc 12279 555775aaed42b3d0687e1b0f501a9f61197 125 library/email/header.pyc 13339 f741f4c3543a278fec30f4d9bdd0f859 198 library/encodings/cp1252.pyc 2676 b4c43cc72650c911cf3654dbaf565df9199 126 library/share/locale/hu/LC_MESSAGES/atk10.mo 8465 e3f3466da367215aad971d7b0394229d 200 library/ unicodedata.pyc 558 9fff50a023ac65726b3f323860f16dc7201 library/select.pyc 543 ac1d1553c508b92a2f222dc5babd3060127 library/selenium/webdriver/android/__init__.pyc 126 2c08539a10f0de9d77dea0fb81f88c93 128 library/select.pyc 543 000aafbf9f916aa8dc56f48e6421ae8e 202 129 library/encodings/uu_codec.pyc 4646 5282a5fcb676851224d2924aa3e48a9e 130 library/selenium/webdriver/remote/file_detector.pyc 2025 06b01ab65d8732125257374fb263e879 131 library/selenium/webdriver/phantomjs/webdriver.pyc 2534 dedaa853a9d939c417e05069a74a0851 203 132 library/ConfigParser.pyc 23857 1d17020dd0000ce0f73de812effa152f 204 library/encodings/cp1256.pyc 2675 c1bf26ed9c9b5ee0eec495138993cffb 133 mlx_cef_caller_secondary.bat 172 c4864924a731e8ed4beae9e70018370f 205 134 library/genericpath.pyc 3063 eb5a2eacaea46c733ed68d770eb1d89c 206 135 sounds/notam.mp3 195604 9c5edf885a2ba68484a9554a1cd22c47 207 l ibrary/email/base64mime.pyc 5221 c536d6f0c03f029bba77f15ef6ba3d99136 locales/en-US.pak 6371 7dc755262eb4ba15fd0f2bd986801f13 208 137 library/gettext.pyc 14675 606ad2e00535dd0f4fee5bd8d8562b29 209 logo.png 69816 4a7517b22cfd75cc9c15e3fc1b7ebeec210 library/libpangoft2-1.0-0.dll 815421 1dbfead06e26edb81f0849490210e3ff211 138 library/random.pyc 24831 54b2048974a5c98912276ffa5dc637a9 212 library/mlx/util.pyc 4884 7537803cf47e18210ab5f298ba9eba9e 139 icudt.dll 9956864 5434e18b933e03f274d8da59fda4c676 213 140 library/mlx/soundsched.pyc 9185 4211730170fddb82b5683ce1849234ee 214 library/doctest.pyc 79210 620422f95e18417ff5f8440534a71e91215 141 library/mlx/logger.pyc 13109 a70c061d36cf6b4e540f5610133466d3 216 library/encodings/cp775.pyc 7888 25bf7dd514dff294aa02d5119399b2b7217 library/libfontconfig-1.dll 279059 dd583bedc5efe7bbd21a8ef107dec88d218 library/_strptime.pyc 14347 ad17a449b54061177a080e3a21507a39219 library/mlx/singleton.pyc 9184 9eec2ed5b230e043afc56592fb13a684220 library/mlx/airports.pyc 4350 e0fee9bae54850629841bbcf68b1b89f221 142 library/xplra.pyc 32012 50a1d9f19c0cc88783d264909ad1c678 222 library/socket.pyc 15488 35f8eb455d6d8df8e19826d1dd7193f2 223 doc/manual/en/statusIcon1.png 6472 10a7158dd8655de3f18ba914eb2373a5 224 doc/manual/hu/prefsAdvanced.png 16738 d39884283d7c0f25efa3dc97328749a3 225 library/encodings/euc_kr.pyc 1646 af2a5eaf1ea334c3f3bd60ea13db33a9 143 library/selenium/selenium.pyc 88274 e4b7af1a0fdb5800faba4cdbba1e85b3 144 library/selenium/webdriver/common/html5/__init__.pyc 131 e2214dcaff874176a4d2b8ecdaa8a677 226 145 library/encodings/string_escape.pyc 1907 5856af6d4b4bbbe84b0595434afe8d34 227 library/encodings/ptcp154.pyc 4700 377245b13f9246526c8c17b5e13bac4f 228 library/gobject/__init__.pyc 5154 944a57e672b63943bf88c5dbe459cd41 146 locales/lv.pak 7778 892b75d606ecee874c180454b1dcb956 229 147 library/xmllib.pyc 25767 3ec689dd4068f2f244823616800486f7 230 148 library/re.pyc 12699 5b157b40e294465c0f3d2ca82f70f66e 149 locales/gu.pak 13531 b227db903a5cadbf928e97133643415d 231 150 doc/manual/hu/flightInfoTab.png 28786 3e8af27775131f02696b0912ca441f36 232 library/encodings/utf_8_sig.pyc 4625 1b1405db186e5819fa271ff96c1ca2c5 233 library/pangocairo.pyc 555 6323df5caa1cde78b3888b71fb9ef34e 234 library/encodings/cp1255.pyc 2697 b265913c887f2e1c8736632b652c0093 235 library/encodings/zlib_codec.pyc 4308 319c9073aff840436a03cc1fa0b08fb5 236 library/encodings/unicode_escape.pyc 1996 32990583f1caf874e556087da7b92971 237 library/pprint.pyc 9852 6b4724e14285c257116655b1d4ba6db1 238 doc/manual/hu/connect.png 28822 929f3eb85ee3cad019e12017c923f664 239 library/encodings/palmos.pyc 2876 9284ad53dcfd82dfae0a79923b1cf91d 240 library/mlx/web.pyc 36866 96511f975c55c000b0e9c16dff3aa31b 241 library/mlx/gui/gates.pyc 5635 ea478376f306ce9d6d0ed2e759407c00 242 library/email/feedparser.pyc 10682 4de6a63da8dc270c9881edb9c2f28508 243 library/gobject/propertyhelper.pyc 8878 cc3598dab17d31ff46a6dee669ccb5ed 244 library/intl.dll 152489 eb2d4c4d4a527bc88a69a16cc99afcf5 151 library/xml/dom/expatbuilder.pyc 31399 c996bf83ee6078c9ddda33b79ce11d48 245 152 library/encodings/mbcs.pyc 1883 2213911a7dd0deada6799b63e18b695b 246 library/pyuipc.pyc 543 2977fd6e66c07bb48bb2c21f1b90139c 247 sounds/TOC.mp3 273032 fae1be2ad25c8b54806bd1d759919705 153 library/json/decoder.pyc 11727 edb191cd3c20a61e33cbe04edd422270 248 154 library/encodings/iso8859_4.pyc 2678 16f2fe7994051752360c533c052b892b 249 155 library/functools.pyc 5569 4af4ea4f948f8327649fd65f93cde1d4 250 156 library/getpass.pyc 4627 7c01bf3df2e0074115d1a484629b4c63 251 library/freetype6.dll 538324 fe5ec4b2a07d2c20a4cd3aa09ce0c571252 doc/manual/hu/finish.png 31044 adb40bacabf2cc597687fffe5c3340de253 157 library/encodings/mac_cyrillic.pyc 2745 c17fd9fd5bc854dd5ffe80076e1eeb02 254 158 library/threading.pyc 26361 ac75b44a3dfea9ec884fcde4f7aa3275 255 library/email/__init__.pyc 2752 5e1a1ba649ac697d631b031987d09c33256 library/share/icons/hicolor/index.theme 22255 5138b82a57488ee821b8a38c2aa1420e257 159 library/pywintypes27.dll 110080 7fa49d1d53588cca5071dfaa61061087 258 library/ glob.pyc 2238 d06c4386d18e2ab7f53fb866599403cc160 library/lxml/html/defs.pyc 3980 b5d26d607dc394b6a37511fc902fed94 259 161 doc/manual/en/calloutsEditor.png 14862 8041dc5f889a8913f510bdf0da923b58 260 l ibrary/encodings/iso2022_jp_ext.pyc 1715 97eda1c1468f65445951b0bf23a89570162 locales/ro.pak 8130 3220d7b7833d5a3df586c24a6f1696a9 261 163 library/unittest/runner.pyc 7220 118e9e76a41d050e53c2a5ef70189acb 262 library/ _threading_local.pyc 6424 9dfe88d58a5811d2d56347cc381ebf0a164 library/selenium/common/__init__.pyc 166 b2bcfbae2f994badd5e73c3ec186552f 263 165 library/abc.pyc 5923 c45df4ceeb48b9c74dcb8bc4d5928924 264 166 library/os.pyc 25063 7c7eee513ae4238d1b2c16af719c10a0 265 doc/manual/en/payload.png 28191 b9d22d6226541b8f58df89c7c9da9a62 266 library/pyuipc.pyd 47616 2b4fe2d52575de71dda6f72690cf581e 167 library/selenium/webdriver/chrome/options.pyc 5251 e62df837d9fe50d3f6464a0c4f02489e 267 168 library/encodings/cp424.pyc 2669 4667015363f54bae44e98d4748e8acfa 268 169 doc/manual/hu/flightSelection.png 30815 e8bcdda6079c6b16ffa72ca62c21ca85 269 170 library/win32pipe.pyd 24064 de374eded459293b2a7eb8ed8fb38eaa 270 library/win32pipe.pyc 552 19590da3d42ad587ab8f48ab66c92312171 library/win32pipe.pyc 552 91891e843acff73f0bf28e2450464e7b 271 172 doc/manual/hu/cruise.png 27460 a2610173563e45baae1b0f9e63007ebd 272 doc/manual/hu/logTab.png 28706 f48004202310bd2a1cb2f873d8064e93273 173 library/encodings/iso2022_jp_2004.pyc 1723 66376e788f3819e781897268c1100986 274 library/ win32event.pyc 555 c419ceffad157c77eb64a0567a49f85e174 library/cefpython3.cefpython_py27.pyd 968192 58161b73feae974f560d2c9f416adf3b 275 175 library/encodings/cp866.pyc 8103 f36418dcf93b17b3ced63bd544f44159 276 library/gio/_gio.pyc 549 dc1412f35c94fea43409ff9228163889176 library/gio/_gio.pyc 549 2965d8aa7312527dda6888c8f5ecb287 277 177 library/encodings/cp437.pyc 7874 63f1278c0a66129c6fb4f504d6b61b66 278 doc/manual/hu/ helpTab.png 27961 8e7cc4aeb8d7f40fcf186c7caf53583b178 doc/manual/hu/prefsSounds.png 22667 452c396c2bda9684bf052c98fd7870d1 279 179 library/mlx/gates.pyc 7002 20aca1eaf3de122eda51883b5b518f6f 280 library/encodings/shift_jis_2004.pyc 1710 f8bb22a8b02dba2b66b7f77122c98fd6281 library/encodings/cp856.pyc 2701 8b6649490089bedd87e9b8c56985f6b3282 180 library/mimetools.pyc 7837 c9accd6ef795bf71c90630be0161cadc 283 181 doc/manual/en/pirepLoaded.png 9887 e27a7c87e134944787e29874c455380d 284 library/mlx/gui/weighthelp.pyc 13179 9ebfa07c41e167371380dda80b5bd72b285 library/encodings/quopri_codec.pyc 3365 01342d4d2735bcbfeb333d784297547a286 library/libcairo-2.dll 1294335 c0da2a3ab704f338f0fc6df51fd99497287 182 library/encodings/cp852.pyc 7890 7d58aa3397615349148b7885dc0e5280 288 183 doc/manual/hu/pirepLoaded.png 10573 af950f8f037d6e17a24edcb3e849d159 289 library/gio/__init__.pyc 809 bc9332556e93183a58be5c10cba18557290 184 library/pygtk.pyc 1914 814f68243c9fd447c0aa02326f1ead2b 291 doc/manual/hu/debugLogTab.png 34237 e4d91a024beec781966f7de91ffd196d292 185 doc/manual/en/cruise.png 26531 fc94f27a40dad772437494c71e3c3d73 293 l ibrary/weakref.pyc 13028 5d1c14275f47e8cf6d40bc6877fde976186 locales/es.pak 7713 1bdcb1f825bf2bf68380662427f583b2 294 187 library/encodings/utf_32_be.pyc 1747 3e8c9ef8145de502320202b1688fd2ee 295 library/nturl2path.pyc 1755 7835082f2dd6806f99cc25bed13ff7dc 296 library/email/message.pyc 27764 493826f529d17f5a21080a4c98b49369 188 library/cefpython3/cefpython_py27.pyc 600 5aecdbd2ba6e2bcdc1bd808985d7825a 297 189 library/encodings/mac_romanian.pyc 2756 a3b2a0892236bc80c8efe8940e33339e 298 library/mlx/gui/pirep.pyc 16749 2006126d65a19999a20c4a34f1e94342 299 library/mimetypes.pyc 17806 927ce6a7079707aaee925e855ed23454 300 library/_ctypes.pyc 546 2d4307addb84216cfe89da22fc9e397c 301 library/mlx/gui/faultexplain.pyc 9707 938e02beb962d574df694c77536533ca 302 sounds/F70taxi.mp3 154854 51332dc691d3519355f61ed06c959d8d 303 library/encodings/cp857.pyc 7611 1b46c8959ac097b73e1c680d464cdc32 190 library/_ctypes.pyc 546 481eb87be1fe7c202bd442fdd963f41a 191 mlx_cef_caller_secondary.sh 178 ecb35d3294a5d1e729697f802a75cde4 304 192 library/encodings/iso8859_2.pyc 2678 da65f42e1be5bec97161e8c1cc4f0fb7 305 doc/manual/hu/statusIcon1.png 6920 614cde237a5b4e2678ed15d9cd01088e306 193 doc/manual/hu/briefing.png 31774 e090e1a6fab300a2d55cac03ad71d551 307 library/pango.pyd 111616 c934763bdf125c3dc92b56db817001d4308 194 library/encodings/cp855.pyc 8071 0a4259ba854c24186f2ce61d85883b4a 309 195 doc/manual/en/time.png 26508 0267dbdd59e65692bb0b9108103c07f5 310 196 doc/manual/en/flightInfoTab.png 27718 4634da26b64d2c1a07ff5a7eec1ae29f 311 library/encodings/ascii.pyc 2081 a5fffd04734740386629fdba1113d585312 197 library/libgio-2.0-0.dll 1222182 ea1263fb4c2230284f3e30c446bfea6b 313 doc/manual/en/helpTab.png 26243 cd5c021a2fc40485805b9fde03bcd060314 198 library/encodings/cp037.pyc 2639 2981678e762ba857e30becbe27eb6614 315 199 library/email/parser.pyc 3669 b4c89014f11b6551907291d3b789f371 316 library/_MozillaCookieJar.pyc 4392 21966f49c75d0bd7827ec82d4e6e5d30317 200 library/repr.pyc 5045 82f0d89c685c3dacd941e01e4b2f31ef 318 201 library/quopri.pyc 6352 87c42d94f753dd4c8a761cfa79453bb8 319 202 library/htmlentitydefs.pyc 6347 814dc784fdb3d998dccee4c3f4c0394f 320 203 library/mlx/gui/monitor.pyc 12980 dc303c215e1380adee44b691870d45e8 204 library/selenium/webdriver/common/action_chains.pyc 12050 696113f4eb85587998c08b915d8269a4 321 205 library/encodings/latin_1.pyc 2111 52427573ccbfd06220b67d5a9dd1376e 322 library/mlx/update.pyc 16956 458d28bd83dc10d0b2cb3c1a2623bca9 323 library/encodings/gb2312.pyc 1646 466ac29d34de1ad4b3d299ca834e28d9 324 library/libgdk_pixbuf-2.0-0.dll 285194 e4c64b0e7e4c6606f3973a16c0c1ee84 325 library/encodings/big5.pyc 1630 a21b45d3e487bf09f40a08448040c97d 326 library/mlx/gui/update.pyc 11427 5698abbc9b133f18fa2c37d3bfa74bee 327 doc/manual/en/gatesTab.png 29585 00ebc96a2b4a7473dbb6a3162a04192f 206 library/mlx/update.pyc 16925 8c57d867b7f8ed088ab2b2afb2ae455c 207 library/selenium/webdriver/firefox/extension_connection.pyc 3145 5f8929a22a172a0aa71d4d4acb2aaf17 208 library/selenium/webdriver/remote/webelement.pyc 17884 6fa60da9a8bc1d2dc6e1286d9bd8f1ab 328 209 library/bdb.pyc 17708 9a8fdcaa65f595c842689247847879d9 329 l ibrary/mlx/gui/flight.pyc 126827 159f2acb2bda5ab2719affc81d8e1c7f210 locales/sl.pak 6956 f4f7de66d579c41682c64ee1ef1f11f8 330 211 library/unittest/case.pyc 37758 1d2235e74c246b562c5c00ddf73c621a 331 212 library/subprocess.pyc 38648 c9f749db06dfc9fb32079de51d6efd01 332 library/mlx/acft.pyc 39301 a2bc53905f026b474e7b50df620ee7dc 213 library/mlx/acft.pyc 40830 effafce121013f2b7631e46bf568b2ac 214 library/selenium/webdriver/firefox/firefox_binary.pyc 7758 cee737a6fd574b0f2e6ca28508844a30 333 215 library/gobject._gobject.pyd 113152 3d05dd191361f83aa247b62c700fa04e 334 216 doc/manual/hu/checklistEditor.png 27863 8c750892a52dc10ca654a9d0b2765358 335 library/keyword.pyc 2063 4d5bab044f614cfdabe89011cd3d7375336 217 library/bisect.pyc 2971 ad8ce3e265b404ed3971b842106f8179 337 doc/manual/hu/index.html 51903 4bfbb26709c699f21fe593cb4efd2d98 338 library/encodings/cp862.pyc 8003 261df6dd1a6e5ad90a83dfc739a25e0a 218 library/mlx/gui/acars.pyc 1057 27238740a8776e6d8e6c8867d23955ea 339 219 library/gtk/_lazyutils.pyc 2772 93f9aa41ad4223106d99340cd539a566 340 library/mlx/gui/statusicon.pyc 5616 03e079307c1f83f36284e1b32887b28e341 220 library/mlx/mlx.pyc 2979 876ff2c4456985567d8a8af6d156b743 221 library/selenium/webdriver/remote/utils.pyc 3073 592eeca209cae991779c97ddd322b388 342 222 library/encodings/cp864.pyc 7999 ca90afae086cb6b8f69b8419cc3cd1cb 343 223 library/pyexpat.pyd 152576 5a82e9ec95005aca6130751e5b961cc3 344 library/encodings/cp863.pyc 7868 fc7ff06dab536b93c68fcb8e7bac713f 345 library/xml/parsers/__init__.pyc 294 83f6a77ed8cd962b3c75c4779dc557ac 346 library/pyexpat.pyc 546 8554aacca112be2cb661f77bee54716f 347 doc/manual/hu/gateSelection.png 29237 bac37e7001261a40a84e4202247f6052 348 library/cmd.pyc 13512 808f813d5e354b7073a1356e44c7b554 224 library/pyexpat.pyc 546 bc188a96c9c3a69312eb9fb5d9183558 349 225 library/unittest/loader.pyc 10884 591a785be23fba35582ce33bdd3d7acd 350 226 library/ftplib.pyc 32043 5a1925388a0874e459aed6891f4cf0c1 351 227 library/libgmodule-2.0-0.dll 36986 b0b2396fc6413016a45a5e8ca2ea8152 352 library/gzip.pyc 14358 2a4a036a0b24586b6bdde419847a18f6353 228 library/libatk-1.0-0.dll 163476 c703f592ddf798472189d895b652aff4 354 doc/manual/en/route.png 25228 c1b2fb99d21cd862ea292d693400c955 355 library/email/quoprimime.pyc 8590 f6c7a8ad81d44037dd074f4871053dab 356 library/encodings/cp1140.pyc 2639 8320825626639ecf4604aac43477b65c 229 library/platform.pyc 35896 50aadbb6c4c78153f204e07704a2f892 357 230 library/unittest/suite.pyc 9838 bf2c79bd4a6b6032f1ea53fa4908748f 358 library/encodings/cp1251.pyc 2673 cb5ce7a7207c53f1d9e7cae48b3fb258359 library/encodings/koi8_u.pyc 2686 b7e5a52eaaaf6b340075b40dc7596f42360 231 library/encodings/mac_arabic.pyc 7824 820deef79b02e1f7e52eb18e9be655bf 361 library/mlx/gui/prefs.pyc 27685 9f1dd6950e694169e6e12a768fb4d2a8 362 library/atk.pyd 208384 ebe7f0929eac23a3205d17d69906e172 363 library/win32event.pyd 18432 8b65330a56e2bc60d43d6e266c3a922a 232 library/mlx/gui/prefs.pyc 27921 24af38ec7e9b5dd275557147785f3d74 364 233 library/encodings/tis_620.pyc 2748 5969b4db4f967b11ae7992cdfbf5890e 365 234 library/encodings/base64_codec.pyc 3568 1d8f13d09024bd124a9ff73a9244c0f1 366 library/_ctypes.pyd 106496 deccede0781726ce0daa75a4635bf919367 library/encodings/euc_jp.pyc 1646 c0d60e6d08161643bd7dbe651063f334368 library/encodings/utf_16_le.pyc 1854 dfa68705c26fd303adfc7ce3322166f2369 235 Microsoft.VC90.CRT/msvcr90.dll 655872 e7d91d008fe76423962b91c43c88e4eb 370 library/_socket.pyd 38400 5d273be76603399e88cf57f2605004bf 236 library/selenium/webdriver/phantomjs/__init__.pyc 128 48073c8ec42358f04a36b7f127c3db92 237 library/distutils/spawn.pyc 5292 4cbe559081b3f8cab915a083bd9ef4bd 371 238 sounds/ding.wav 80856 18e639792d3767436ac6955eb60e4f54 372 library/_socket.pyc 546 b1108e87d6be8d38c7e2c6e6cfa03992 373 library/encodings/hex_codec.pyc 3520 a8b8d5b7c8810379c7007bcbc253951c 239 library/selenium/webdriver/firefox/__init__.pyc 126 0ce57f6223e88783f1a5d4d8c4998682 374 240 library/mlx/checks.pyc 62721 759425ec78c8430f699691e5abf92c1d 375 241 doc/manual/en/statusIcon2.png 5875 71fc121823dee0a4c00715fac1b5665c 376 library/mlx/sound.pyc 8226 03b098ed1dd965db98ef4f75b07d6cae377 242 doc/manual/en/pirepViewer.png 25098 7c545e70b995ac0f9fcae93fe5d0e899 378 library/encodings/aliases.pyc 8750 75c22196420d0157fec085d285947a71379 library/glib/_glib.pyc 555 f29fe66820e637dadd911b7b8275820e380 243 library/libpangowin32-1.0-0.dll 108945 d07f128828225b7cc38e9e590eb3ba8a 381 library/encodings/iso8859_10.pyc 2693 5e6cc8f721486ddbc1c99da285e13191382 library/win32api.pyc 549 a39e5810fa1f2f7d4c0738f05e64cdac383 244 library/gobject/constants.pyc 1957 2e9cdc605e7c449ef4fc23f56128acec 384 library/libgtk-win32-2.0-0.dll 4938115 cc6dca192aca6f91bd96a5b5f86e036d385 245 doc/manual/hu/calloutsEditor.png 16026 fede870894a85e5d21ca16a026aa6a98 386 246 library/mlx/xplane.pyc 67098 a714130f818d2d0220760c98268a1e66 … … 390 250 w9xpopen.exe 49664 e6895233ad1e6f3dcdd04c7c26b0e7c0 391 251 library/locale.pyc 48754 a51d20267132acc6bc66ac6252cf870f 392 library/mlx/gui/callouts.pyc 16060 7a3055f313e693779e9d2df22bb7568a393 252 library/encodings/cp1026.pyc 2653 ced5dd0cc0da378b0968f82309b9bcfb 394 l ibrary/encodings/iso8859_15.pyc 2693 b892f358bbc25ae9d3824be158aabe28395 doc/manual/hu/prefsMessages.png 22980 6e60ec51305e95e5d057c0dd82b69460 253 locales/ms.pak 6916 b7742e34f8fff506ced8caedc5dde0ff 254 locales/lt.pak 7703 6fa4b1f4e7a936189a41811e0d0e3431 396 255 library/win32api.pyd 98816 4a1ebd35719d263205eb014913b784bf 397 256 library/encodings/utf_32_le.pyc 1747 8679f9c7cca87ad540b30c176ef914de 398 library/_abcoll.pyc 19891 a5c1881934f1533c22b22b9317ac1d68 399 library/encodings/iso8859_11.pyc 2787 a31e6d0d34e35259d7183cc9437eacca 257 library/selenium/webdriver/common/touch_actions.pyc 7806 8de07e30cc8e6b7014b6a5c80ba7bc6b 258 locales/zh-TW.pak 6505 ba45f30c77d990e9139af1f48927f717 259 library/selenium/webdriver/opera/__init__.pyc 124 7b04c3d7c320d1da1cb3cda037eba3b1 400 260 doc/manual/en/prefsSounds.png 21397 9037f17f772e554e7d9d24133acd5c4d 401 sounds/cpt_takeoff.mp3 8255 254edcf79b8b3752d1a7c191c57f615a261 library/posixpath.pyc 10734 d694316c239784c444b252c801c97efa 402 262 library/encodings/cp860.pyc 7857 59c6f69108873700081e71b2faaa29f8 403 library/mlx/__init__.pyc 103 029f80bd80f880e6ca70ef4ba46f7d06 404 library/encodings/iso8859_13.pyc 2696 f901ae0bbcfbb78f0c1783e89b2e2dc5 405 library/mlx/i18n.pyc 1972 fe45816e49cf5e380bc39942a9dfa875 406 library/xml/sax/saxutils.pyc 12382 32ed045b3b520234ebea6a508a6569fe 263 library/selenium/webdriver/support/select.pyc 8438 be8c4fccc3c268163b6800af0a83dac8 264 library/_MozillaCookieJar.pyc 4392 21966f49c75d0bd7827ec82d4e6e5d30 407 265 library/share/locale/hu/LC_MESSAGES/glib20.mo 84697 a3167f1c306a43d662f7c261abc69156 408 266 library/heapq.pyc 13109 20df4990fffba06bbdda995ce7466caa 409 doc/manual/hu/gatesTab.png 30710 a6a59e6a2660c15418489e8785e4bcee 410 library/webbrowser.pyc 18138 c85009edebad6d278fe786fec10ebbbe 267 library/selenium/webdriver/remote/mobile.pyc 2444 e666ca905ceeb2a1569a60ed6eea974a 411 268 library/sre_compile.pyc 10792 c58f94fbee661f3bb0c59ecc13c0416e 412 sounds/notify.wav 119384 108025b17f67e61946df5d7fbf713cdb413 269 library/encodings/iso8859_9.pyc 2678 88880e046738ebd2012c8034416a9adf 414 library/encodings/cp875.pyc 2636 c72faa5d1cb6105ae81c971448fea479415 270 library/encodings/mac_greek.pyc 2699 770cdf4f35a081a8ce71e776e6ecd804 416 library/dis.pyc 6068 3934ab23d64f3da393305b19df0f1fd0 417 library/difflib.pyc 60869 38d2e1340b64e22d7b1fed90a57fb83a 271 library/struct.pyc 219 421271d66b783c3f13c37ec09efa8b65 418 272 library/hashlib.pyc 4346 fc9aecaadc9607989e48449f46cbdfd1 419 conn_green.png 936 0b7fbe8ee0af2cbeefdb42110a8fdf34420 doc/manual/en/index.html 47073 66a8cdd22cfd3d819c02f3aaab48eaea421 library/encodings/cp1253.pyc 2689 52d4a723e9e86940701cb648b40ed884422 273 library/email/encoders.pyc 2092 cd83727bafdb4145b8fa43dd10ea48f3 423 274 library/email/iterators.pyc 2266 b8a0df35815bc00be1ed8ece42aac537 424 library/encodings/hz.pyc 1614 876bb7c36683358c3e95005619b10541 425 library/encodings/cp737.pyc 8102 40e61988748e4ca1742a2bad43949f4e 426 library/encodings/iso2022_jp.pyc 1683 40c2b92127f99452f84b250c2b4b2cda 427 library/libgthread-2.0-0.dll 44287 7ad6f303082b382bff7bafbab246c61f 428 library/glib._glib.pyd 58368 0de636503e43c4eb00e80927bc9bda97 429 library/mlx/config.pyc 30521 18f980c9cfecafe53ae473bb1ca69a54 430 library/atk.pyc 534 45ea15aa2ebf37b7d14f67ae940b0ba6 275 locales/pt-PT.pak 7270 731a9c54bd2331f411a5a2976d1f3622 276 library/selenium/webdriver/remote/command.pyc 5463 3e7f6443358e670e58a7fc6c97e4ab16 277 library/encodings/iso8859_10.pyc 2693 5e6cc8f721486ddbc1c99da285e13191 278 library/mlx/gui/statusicon.pyc 5616 03e079307c1f83f36284e1b32887b28e 279 library/mlx/config.pyc 32743 5a5523901d6fcb215f84e3d217c47f31 280 library/atk.pyc 534 2a53b13519b7419e8cf08f48baa4c1b6 431 281 library/gio._gio.pyd 263168 acb8c95fdc391079bebdf7d8685b0dbc 432 282 library/encodings/cp861.pyc 7868 c97a8970ce4d9f40cbafbea6576fbdca 433 283 library/encodings/cp950.pyc 1638 00b7b6457e3fef8feb173ed8e561825c 434 doc/manual/en/logTab.png 28522 305732f8485a15b7c802801038d688b7 435 doc/manual/en/prefsGeneral.png 24487 4858becb6764518a428273e5ee8ee4d5 436 library/encodings/johab.pyc 1638 5346c11a863ffbcfb21aba8f1d2236b7 437 library/encodings/cp1257.pyc 2683 d24f94b6abbda684c0ad9f3370d86956 284 library/selenium/webdriver/safari/webdriver.pyc 2470 f5e61aec420bfc43a08db515c9b75276 285 locales/cs.pak 7347 82b7a3d87a1307e65b6dac449e858721 438 286 library/__future__.pyc 4177 43d264d951ac2085334c7b9dd4558595 439 library/logging/__init__.pyc 54813 7bcdf2e8da474f5e94d8e499f6fc3ed4440 runmlx.exe 64000 c7d906aea1b4aa8b4496febdf150717d441 287 library/optparse.pyc 51253 39594a40bc1222173d57b7d5740e3d92 442 library/mlx/fs.pyc 11863 63fda2c4e0727136be69ed82f9e2bbc8443 288 doc/manual/en/takeoff.png 26128 63fb0227347eba88fe4f108d730dc8c0 444 library/unittest/result.pyc 7444 aefbb3cc79c0ff17787ce84faed7f5e8 445 library/inspect.pyc 38547 836f659fad54f5ee7e8f9d565003aacd 446 library/pickle.pyc 36348 2b55640f6f4e2fd70d95482fd16bfb73 447 library/encodings/cp1250.pyc 2676 c92e287a2aa6a1c924df287d826aa3b7 448 library/encodings/cp874.pyc 2767 fe0c510a9aafa14cae6b037955a93f0b 289 library/selenium/webdriver/safari/service.pyc 2695 e70fc7f74f77a3824804835b54bcfea4 449 290 library/cairo._cairo.pyd 69632 46d708899832abc0123c4e9cb4f61d5d 450 291 library/zlib1.dll 100352 d90dad5eea33a178bac56fff2847d4c2 451 library/glib/option.pyc 11891 bd90183c75d8f473ecf653e3d63a27f9 452 library/StringIO.pyc 11100 f4eb4a2bb3d6fb0af925681c5375c673 453 library/pango.pyc 540 516526ae5531b783342c20285ba0ee7d 454 Microsoft.VC90.CRT/msvcp90.dll 568832 6de5c66e434a9c1729575763d891c6c2 455 library/sre_parse.pyc 18380 fe2376a101668be1124f9ee316662bab 292 locales/en-GB.pak 6364 2a92f4fc905c2743129ccbcdf80d443a 456 293 library/mlx/gui/delaycodes.pyc 12929 e8c1d6f46ef6e369451be3cbde0a3127 457 294 library/encodings/raw_unicode_escape.pyc 2048 8138045029da04bf45204ab756d1bcd4 458 295 sounds/TOD.mp3 174707 92176d53d948fbfebd08c011b063179a 459 296 sounds/board.mp3 296751 bbacc6eabce97cbae49b4157ece7b8fe 297 locales/uk.pak 11136 21bcaa6fd116b4f5f23ee207e96fa156 298 library/gtk/deprecation.pyc 3104 2e6c9eef82dfa8aa3beb05abd3e274a4 299 Microsoft.VC90.CRT/msvcm90.dll 224768 4a8bc195abdc93f0db5dab7f5093c52f 300 doc/manual/hu/route.png 26601 fd1ee7c47290f4c3a2f9fd6618aeb678 301 chromedriver.exe 5009408 d662fef51894e4e5b6a6f508ed214904 302 library/encodings/iso8859_7.pyc 2686 db390f1961c1fd4181e351c330816ecd 303 library/xml/__init__.pyc 1058 8f77f254e8c6db7a3b6d9930a686d787 304 doc/manual/en/finish.png 28855 671eac74a9f5801c794f08d5861eafaa 305 doc/manual/hu/bugreport.png 12385 c71c7db56f19870ae5d6bb7f533d3679 306 locales/pt-BR.pak 7211 d0542b9b325ea58be590d021aeb7333d 307 library/libexpat-1.dll 143096 701659d3689bf4a8265b669b7d774255 308 library/mlx/gui/info.pyc 6538 78c97f25111c13dc94c6226140943916 309 library/encodings/iso8859_6.pyc 2723 c8f9aa14a6a2ebf05d977317114bc65d 310 library/xml/dom/minidom.pyc 61068 74ffa387e505b9fec2f2ad6a5dcd415d 311 library/selenium/webdriver/chrome/__init__.pyc 125 ff98e760d2c777eacfc473761486a702 312 library/mlx/gui/gui.pyc 54583 52c366560eec66413e5e7850fb5b3308 313 library/stat.pyc 2503 d3b6dc7a54e705219f04d0be75a212de 314 locales/ru.pak 10392 1b66f03dd656a2433ce643d0259fca6f 315 doc/manual/hu/landing.png 28525 2dd99249a389e9faf5c4d7b1180e8ebb 316 library/gobject/_gobject.pyc 573 e4e42f72e063e30757a0183f9b06fe39 317 libcef.dll 38585344 4dfb8a77f35c41bdbe8469877d4af853 318 library/encodings/utf_7.pyc 1747 2beeb059236527197d6c640396476ce8 319 library/atexit.pyc 2083 595a09be339c73c3c02e378d99325d2a 320 library/cookielib.pyc 52852 2a1030653dc204a9ba1fb56fd32eca68 321 library/email/charset.pyc 13200 771aee9802116e673d08b44bc0450f99 322 library/libpangocairo-1.0-0.dll 104729 d3ad38599649097a3645777ff95be08e 323 doc/manual/en/briefing.png 32129 65cf1236d009fd61c1bd6c374ffd261c 324 library/uu.pyc 4212 0073b65d26a6092e4e177c7763058fa4 325 library/encodings/iso8859_1.pyc 2678 f09ec3b7f6a348cbd7f7286b60572bd0 326 doc/manual/hu/monitorWindow.png 20577 34bfd26fe50e72706625a9203ac98217 327 library/pangocairo.pyd 17920 5fc69a7d29a6d3127710c64de440daa4 328 library/pangocairo.pyc 555 d83b002b1ec69315516867733a206a60 329 library/zipfile.pyc 37345 568c6ee7e0404625f47248340afb4524 330 locales/it.pak 7188 10ae10d8bfcffbfa1160574134e14edb 331 doc/manual/hu/helpTab.png 27961 8e7cc4aeb8d7f40fcf186c7caf53583b 332 library/sre.pyc 499 92bb633daa0bab6550ec0e3677673b5b 333 library/tokenize.pyc 13565 354d02cd79df187a28c1851a1e3bad96 334 library/win32con.pyc 140797 84d2d064066cfbcc219230f7e9c6e0b0 335 library/mlx/gui/flight.pyc 147639 f487da6516256651fdc2410dac2ed76e 336 library/xmlrpclib.pyc 40724 d4f819f9199ea21236a74c967e335c43 337 library/lib/gtk-2.0/2.10.0/engines/libwimp.dll 97984 a5bbbe46e1363aba9020a76f2d58e9d6 338 library/email/quoprimime.pyc 8590 f6c7a8ad81d44037dd074f4871053dab 339 library/copy_reg.pyc 4893 7a58bc441232056d1c123cd3375b3774 340 library/libgtk-win32-2.0-0.dll 4938115 cc6dca192aca6f91bd96a5b5f86e036d 341 doc/manual/en/debugLogTab.png 33696 5be65d41058f78554840032c51aa9d6d 342 library/dummy_thread.pyc 5094 310a3d15c9cf20259b0ca4892811dec5 343 library/gtk._gtk.pyd 1882624 bbb1d1e41bbebc6abf69bed719d50497 344 library/_hashlib.pyd 287232 a1a18de0644f481749fcbcf26005eeaf 345 locales/fi.pak 7098 70c7e2fb26c7abf09cb0f9972fb6c93a 346 doc/manual/en/monitorWindow.png 20886 42e08d10c758e21209c4c021f391dee7 347 library/_hashlib.pyc 549 d4aff375686d5501893ac1116dbaf7a1 348 library/copy.pyc 11674 30d1745c5e38ab170f8a0486fbebf305 349 locales/et.pak 6856 18a0a857e46c28b7f1cd8ff639a24aec 350 library/unittest/result.pyc 7444 aefbb3cc79c0ff17787ce84faed7f5e8 351 library/mlx/gui/__init__.pyc 107 22f268cac1c5be2f3a058810b6caead3 352 library/mlx/pirep.pyc 4623 6c485ea65ff6245ab56960a8bbec7051 353 library/json/scanner.pyc 2169 e19ee185b7c79ab5cc433b39fcd33faa 354 library/traceback.pyc 11223 50ace5c2c6c040a923082442da94cd78 355 library/mlx/flight.pyc 21066 471a24b3678e6d684d6bf5aead1ae544 356 library/urllib2.pyc 43566 7eb57ea0dcd1086d1d9073a5cefb0903 357 library/encodings/mac_farsi.pyc 2659 df751a61510129a25f7a43ae3aace4f7 358 library/encodings/iso2022_jp_3.pyc 1699 ee1c3aa11bbe19eeb4deafa238563133 359 library/cefpython3/__init__.pyc 556 38a652a0209e49e323bee4dd54a018af 360 library/mlx/common.pyc 1300 9c6f2d502b9274073cd96caaf4fb90ff 361 library/ctypes/__init__.pyc 18846 2bd183962453ae93d6887b303d3fd338 362 library/mlx/acars.pyc 1690 733d057c94683c74079d6e096f601855 363 library/encodings/cp865.pyc 7868 7d40a7ba053ac23339218be8799e5397 364 locales/bn.pak 14431 f402d363b8a07649b6787b745434daf7 365 sounds/taps.mp3 16614 d4a019c7e9342ae329aee6932d6a43c3 366 library/markupbase.pyc 9010 b33ff430e9b1adba3d540b5394ff289a 367 library/cairo/_cairo.pyc 561 fb6b7b442e46dce7a08d5875101f4a21 368 locales/te.pak 16110 c3af85e60b78273a93970cf8805ded04 369 library/lxml/cssselect.pyc 3861 2e693f0c25ab04b1d130646cddd4e081 370 library/warnings.pyc 12666 9788b5f45765e8204e04c820f2711094 371 library/selenium/webdriver/chrome/webdriver.pyc 2758 a7d3d371b22119d0327d9af9f77fd845 372 locales/sv.pak 6641 4e11abed42cc59a403ae4767d2acbeff 373 library/encodings/iso2022_jp_1.pyc 1699 faed9d5747e982cec9fa8b3ad8e1de26 374 library/email/mime/__init__.pyc 110 bae57a199e3d0998a1364b9fbae8b3cd 375 library/winerror.pyc 112982 4986a8f2df094dddedd12c9fddf4966d 376 library/encodings/cp775.pyc 7888 25bf7dd514dff294aa02d5119399b2b7 377 library/mlx/fsuipc.pyc 74670 4da0a45a9a6372a2e463ab21fdc43359 378 library/xml/sax/__init__.pyc 3579 c78222ad1fd4f3dbdea06666fe74e84e 379 doc/manual/en/connect.png 27436 5406dfe5408569cb95499c057bf0185b 380 library/selenium/webdriver/opera/service.pyc 2411 df01b6f7348ad54da47919158fe7e596 381 library/selenium/webdriver/opera/webdriver.pyc 5308 7ba71ef197d7d537635427f166da0f1c 382 library/encodings/charmap.pyc 3203 2358b8eb05c66e2a2826b5db6f214547 383 library/libgdk-win32-2.0-0.dll 931390 a2b46daac3d4140efdf86429f7aea476 384 library/mlx/gui/common.pyc 10433 e96ada4071fcdd2937398627d5d281dd 385 library/dummy_threading.pyc 1265 5ab5c897721aeb346b5bccb84066c5bd 386 doc/manual/hu/index.html 51903 4bfbb26709c699f21fe593cb4efd2d98 387 library/encodings/cp1258.pyc 2681 5c09b3b0a82036b0e785422376cb64cc 388 sounds/767taxi.mp3 160496 4cb43cda6e1214fbe15328a716827345 389 doc/manual/en/prefsAdvanced.png 16169 64c14e0842c413cac98b92926279f3e0 390 library/xml/dom/NodeFilter.pyc 1066 c5061d268ede84cbb951957f9ca3d820 391 library/calendar.pyc 26136 6f2f18efc99d759f99b2935b9dc9dbb1 392 library/encodings/aliases.pyc 8750 75c22196420d0157fec085d285947a71 393 conn_grey.png 988 7a956ebba793197f324cec56d94073e7 394 library/HTMLParser.pyc 11589 f641df5331b5bb552ebe180f79b85a6b 395 library/bz2.pyd 76800 1ca9ececd2c84b80996fe632627f857f 396 library/encodings/iso8859_16.pyc 2695 85e819a29dec2b601ce978dcd5a040fc 397 sounds/cpt_takeoff.mp3 8255 254edcf79b8b3752d1a7c191c57f615a 398 library/bz2.pyc 534 950c3961b75846807cc186203935c92d 399 library/email/utils.pyc 8840 a7be428df6fddee6121cfce55382d1f8 400 doc/manual/en/prefsGeneral.png 24487 4858becb6764518a428273e5ee8ee4d5 401 library/encodings/iso2022_jp_2.pyc 1699 4b917caa926e5779176612409c66be39 402 library/_ssl.pyd 720896 90826a140137efd0d806038828e16f8e 403 library/pango.pyc 540 4a4e27fa2068680ba2a67bb99132370a 404 locales/de.pak 7420 18ba99b07536017ed8b87cb4f77aee1c 405 library/glib/__init__.pyc 187 d44c8c2772b263a36726ac0dcfc04b42 406 library/pango.pyd 111616 c934763bdf125c3dc92b56db817001d4 407 library/libgobject-2.0-0.dll 341594 356d697647a480562c4e2e921b13f8ed 408 mlxupdate.exe 18944 b8bf9f3d22348aa1f78727f81d967f93 409 library/email/errors.pyc 3229 cdb78ab237e195ad69f059128bc03b1d 410 library/linecache.pyc 3091 666e6f81b0ea9a7637f8068493f738d5 411 sounds/malev.mp3 201247 8a00666288f14a1666eb112223c140e0 412 library/encodings/mac_iceland.pyc 2738 dfff28ea5edfda00df56b4ab9a35bc59 413 library/unittest/util.pyc 4358 1530cc34b18ae6a6c6128a1d8b1355d7 414 locales/tr.pak 6938 55435ada333db8c7c60a3223d6885558 415 doc/manual/hu/statusIcon2.png 7969 3ec6caa058848932d381da6e02c702be 416 library/getopt.pyc 6454 8f8cd6763f5339988d157d153c910bf5 417 library/encodings/cp857.pyc 7611 1b46c8959ac097b73e1c680d464cdc32 418 library/_ssl.pyc 537 9292cb548f29c21f4b0125656d34f0f0 419 library/os2emxpath.pyc 4312 0c35794eeb4739ebb4eb28b9a1daf0ca 420 library/pprint.pyc 9852 6b4724e14285c257116655b1d4ba6db1 421 library/xml/parsers/expat.pyc 259 d7be0c4de475d65e08ba7fdbabe088d3 422 python27.dll 2206720 f8f39495ed4a813e8f3049a4b9f5cff4 423 library/encodings/mac_centeuro.pyc 2747 6461bd7ed7a57683d5c36001f9ac85c9 424 library/encodings/utf_32.pyc 5336 912103fef3db6edc29a35dd0cfb5c5b9 425 library/ntpath.pyc 11407 533c9331a1b72cc80dd3f88145ba4466 426 library/json/__init__.pyc 12974 d7e08774d4fee83dd2a6d3868855a800 427 library/xml/dom/__init__.pyc 6039 5e78d16289c5ae3a9678d53f552862fd 428 library/encodings/cp1252.pyc 2676 b4c43cc72650c911cf3654dbaf565df9 429 library/unicodedata.pyd 688128 c856c31a03dc892e4f2aee93d0bfee44 430 library/unicodedata.pyc 558 dcdfa7fdce1179d8097934a44c983de1 431 library/encodings/cp1256.pyc 2675 c1bf26ed9c9b5ee0eec495138993cffb 432 doc/manual/en/index.html 47073 66a8cdd22cfd3d819c02f3aaab48eaea 433 library/email/base64mime.pyc 5221 c536d6f0c03f029bba77f15ef6ba3d99 434 logo.png 69816 4a7517b22cfd75cc9c15e3fc1b7ebeec 435 library/libpangoft2-1.0-0.dll 815421 1dbfead06e26edb81f0849490210e3ff 436 library/mlx/util.pyc 4884 7537803cf47e18210ab5f298ba9eba9e 437 library/selenium/webdriver/common/__init__.pyc 125 6c65d6e881b33e7aedb01f167184288c 438 library/_LWPCookieJar.pyc 5440 3782ae675165b232a3f78608ac2dbccd 439 library/libfontconfig-1.dll 279059 dd583bedc5efe7bbd21a8ef107dec88d 440 library/_strptime.pyc 14347 ad17a449b54061177a080e3a21507a39 441 library/mlx/singleton.pyc 9184 9eec2ed5b230e043afc56592fb13a684 442 library/mlx/airports.pyc 4350 e0fee9bae54850629841bbcf68b1b89f 443 library/socket.pyc 15488 35f8eb455d6d8df8e19826d1dd7193f2 444 sounds/notify.wav 119384 108025b17f67e61946df5d7fbf713cdb 445 doc/manual/hu/prefsAdvanced.png 16738 d39884283d7c0f25efa3dc97328749a3 446 library/encodings/euc_kr.pyc 1646 af2a5eaf1ea334c3f3bd60ea13db33a9 447 library/encodings/hz.pyc 1614 876bb7c36683358c3e95005619b10541 448 library/encodings/ptcp154.pyc 4700 377245b13f9246526c8c17b5e13bac4f 449 library/gobject/__init__.pyc 5154 944a57e672b63943bf88c5dbe459cd41 450 library/encodings/utf_8_sig.pyc 4625 1b1405db186e5819fa271ff96c1ca2c5 451 library/encodings/cp1255.pyc 2697 b265913c887f2e1c8736632b652c0093 452 library/encodings/zlib_codec.pyc 4308 319c9073aff840436a03cc1fa0b08fb5 453 locales/nl.pak 7068 939be31defbe6bd9f925331ef3987f9a 454 doc/manual/hu/connect.png 28822 929f3eb85ee3cad019e12017c923f664 455 library/encodings/palmos.pyc 2876 9284ad53dcfd82dfae0a79923b1cf91d 456 library/mlx/web.pyc 36866 96511f975c55c000b0e9c16dff3aa31b 457 library/mlx/gui/gates.pyc 5635 ea478376f306ce9d6d0ed2e759407c00 458 library/gobject/propertyhelper.pyc 8878 cc3598dab17d31ff46a6dee669ccb5ed 459 library/intl.dll 152489 eb2d4c4d4a527bc88a69a16cc99afcf5 460 library/selenium/webdriver/common/desired_capabilities.pyc 2206 9769c03bedeb640913decb1a9a23a695 461 library/xml/dom/domreg.pyc 3211 1b8e458700a5b538a4f3e18af5403666 462 library/selenium/webdriver/firefox/webdriver.pyc 2447 83d55a8eec9d18004aefe20d1622f352 463 sounds/TOC.mp3 273032 fae1be2ad25c8b54806bd1d759919705 464 library/share/locale/hu/LC_MESSAGES/gtk20.mo 58794 6ee4491ae7bc9d3dfb778578eb29a0b3 465 library/distutils/log.pyc 2546 c50dfe4041313cc366461a899a1650cf 466 locales/hr.pak 7430 a06f81a87b3fdb822a4f733abd21d1e9 467 doc/manual/hu/finish.png 31044 adb40bacabf2cc597687fffe5c3340de 468 locales/pl.pak 7227 14de2b7637dd2b260184c6ec85976091 469 library/email/__init__.pyc 2752 5e1a1ba649ac697d631b031987d09c33 470 library/share/icons/hicolor/index.theme 22255 5138b82a57488ee821b8a38c2aa1420e 471 simbrief.html 116 d158a7e9f7f34da230229a5c2aab3e66 472 library/glob.pyc 2238 d06c4386d18e2ab7f53fb866599403cc 473 library/_threading_local.pyc 6424 9dfe88d58a5811d2d56347cc381ebf0a 474 locales/fa.pak 9886 475b94417d7b2af113fb147a0c45da0f 475 locales/fr.pak 7917 bac6c149685b4b84617ca8c8c39306b7 476 doc/manual/en/payload.png 28191 b9d22d6226541b8f58df89c7c9da9a62 477 library/selenium/webdriver/support/__init__.pyc 126 b99fdca3533d28cae3e7a63624932966 478 library/sets.pyc 15775 ea560db2e34dae27d1fc9619a342ced8 479 library/doctest.pyc 79210 620422f95e18417ff5f8440534a71e91 480 library/libpango-1.0-0.dll 333729 5a14efd93ee27cfe960220fe4a904911 481 library/encodings/unicode_escape.pyc 1996 32990583f1caf874e556087da7b92971 482 library/selenium/webdriver/support/expected_conditions.pyc 14298 43b8884d089d85e074d0d9f2fbcd5e28 483 doc/manual/hu/logTab.png 28706 f48004202310bd2a1cb2f873d8064e93 484 library/win32event.pyc 555 d66e08d9b35f124fdff12cf4f8273869 485 library/win32file.pyc 552 6a3826b7caca276e9a6e1b84f20302f5 486 library/encodings/shift_jis_2004.pyc 1710 f8bb22a8b02dba2b66b7f77122c98fd6 487 library/encodings/cp856.pyc 2701 8b6649490089bedd87e9b8c56985f6b3 488 locales/hu.pak 7647 7a37ba9f9113e4f7e9de5b5b9643a48c 489 library/mlx/gui/weighthelp.pyc 13179 9ebfa07c41e167371380dda80b5bd72b 490 library/encodings/cp850.pyc 7621 20d776af743fa7acf090fbd575eea143 491 library/gio/__init__.pyc 809 bc9332556e93183a58be5c10cba18557 492 doc/manual/hu/debugLogTab.png 34237 e4d91a024beec781966f7de91ffd196d 493 library/weakref.pyc 13028 5d1c14275f47e8cf6d40bc6877fde976 494 library/mlx/gui/checklist.pyc 12279 555775aaed42b3d0687e1b0f501a9f61 495 library/mlx/fs.pyc 11863 63fda2c4e0727136be69ed82f9e2bbc8 496 locales/he.pak 8198 2486731ee9bedc244d41143a2741775f 497 doc/manual/en/statusIcon1.png 6472 10a7158dd8655de3f18ba914eb2373a5 498 library/email/message.pyc 27764 493826f529d17f5a21080a4c98b49369 499 library/mlx/gui/pirep.pyc 16749 2006126d65a19999a20c4a34f1e94342 500 library/mimetypes.pyc 17806 927ce6a7079707aaee925e855ed23454 501 library/mlx/gui/faultexplain.pyc 9707 938e02beb962d574df694c77536533ca 502 sounds/F70taxi.mp3 154854 51332dc691d3519355f61ed06c959d8d 503 mlx_cef_caller.sh 148 bd16cf4c784490bcd46d7845f2b6edf9 504 library/selenium/webdriver/support/ui.pyc 228 f4a3e26b8378ea9c87e3c97595c42246 505 doc/manual/hu/statusIcon1.png 6920 614cde237a5b4e2678ed15d9cd01088e 506 library/encodings/cp1253.pyc 2689 52d4a723e9e86940701cb648b40ed884 507 library/StringIO.pyc 11100 f4eb4a2bb3d6fb0af925681c5375c673 508 library/gtk/__init__.pyc 3025 9f6605bf84c6cbd3c20f1d37e58af969 509 doc/manual/en/helpTab.png 26243 cd5c021a2fc40485805b9fde03bcd060 510 library/encodings/cp1257.pyc 2683 d24f94b6abbda684c0ad9f3370d86956 511 library/selenium/webdriver/ie/service.pyc 3392 1f0c97b93092c2a239d70a3de49f0642 512 library/_weakrefset.pyc 9290 a56e87c491c0511cd329a3c8c4cd9563 513 library/selenium/webdriver/common/html5/application_cache.pyc 1322 934402964858ad8f330911c4a483d194 514 library/selenium/webdriver/remote/errorhandler.pyc 5753 68a4e26bde6e1f039aa737ded0c3b781 515 library/encodings/gb2312.pyc 1646 466ac29d34de1ad4b3d299ca834e28d9 516 library/libgdk_pixbuf-2.0-0.dll 285194 e4c64b0e7e4c6606f3973a16c0c1ee84 517 library/encodings/big5.pyc 1630 a21b45d3e487bf09f40a08448040c97d 518 library/mlx/gui/update.pyc 11427 5698abbc9b133f18fa2c37d3bfa74bee 519 library/encodings/cp1250.pyc 2676 c92e287a2aa6a1c924df287d826aa3b7 520 doc/manual/en/gatesTab.png 29585 00ebc96a2b4a7473dbb6a3162a04192f 521 library/libcairo-2.dll 1294335 c0da2a3ab704f338f0fc6df51fd99497 522 library/keyword.pyc 2063 4d5bab044f614cfdabe89011cd3d7375 523 locales/vi.pak 7990 f0d8ddd9bdabaef79a9c92f3fd021f25 524 library/encodings/cp862.pyc 8003 261df6dd1a6e5ad90a83dfc739a25e0a 525 library/selenium/webdriver/__init__.pyc 1011 9cce0a4d491b458d651474dc6fd09be0 526 library/selenium/webdriver/common/alert.pyc 2550 cfd59475010657b35ef31c47d8c86fc3 527 library/lxml/__init__.pyc 708 4e6d5e156fb2fe6a8103dd02a1037634 528 library/selenium/webdriver/common/by.pyc 957 9cc3d4670125998f95147624f20d05b0 529 library/encodings/cp863.pyc 7868 fc7ff06dab536b93c68fcb8e7bac713f 530 library/codecs.pyc 34722 339dc90c17d548887dbcf1bbbcae5d5b 531 doc/manual/hu/gateSelection.png 29237 bac37e7001261a40a84e4202247f6052 532 library/cmd.pyc 13512 808f813d5e354b7073a1356e44c7b554 533 locales/ko.pak 7278 41ecc83d5eef5887c7c288b3b570c7b4 534 library/gzip.pyc 14358 2a4a036a0b24586b6bdde419847a18f6 535 locales/ja.pak 8340 21ab6501f6d0c8d3e73b4921ce1b0086 536 locales/ta.pak 16595 5136010addd237205a5560f92b635589 537 library/email/feedparser.pyc 10682 4de6a63da8dc270c9881edb9c2f28508 538 doc/manual/en/route.png 25228 c1b2fb99d21cd862ea292d693400c955 539 library/freetype6.dll 538324 fe5ec4b2a07d2c20a4cd3aa09ce0c571 540 library/encodings/cp1140.pyc 2639 8320825626639ecf4604aac43477b65c 541 library/encodings/cp1251.pyc 2673 cb5ce7a7207c53f1d9e7cae48b3fb258 542 library/encodings/koi8_u.pyc 2686 b7e5a52eaaaf6b340075b40dc7596f42 543 library/selenium/__init__.pyc 187 a6b683ed0e7ff6f74be5d45717a38d10 544 library/atk.pyd 208384 ebe7f0929eac23a3205d17d69906e172 545 library/win32event.pyd 18432 8b65330a56e2bc60d43d6e266c3a922a 546 library/_ctypes.pyd 106496 deccede0781726ce0daa75a4635bf919 547 library/encodings/euc_jp.pyc 1646 c0d60e6d08161643bd7dbe651063f334 548 library/encodings/utf_16_le.pyc 1854 dfa68705c26fd303adfc7ce3322166f2 549 locales/bg.pak 11216 4b55274ffb8f7432bce15cd8b951472e 550 library/_socket.pyd 38400 5d273be76603399e88cf57f2605004bf 551 library/plistlib.pyc 18067 d8d36573e80bfdde7c73e47828f6e710 552 library/_socket.pyc 546 fb1681f80f0e722983f70a325c23b3b5 553 library/encodings/hex_codec.pyc 3520 a8b8d5b7c8810379c7007bcbc253951c 554 library/nturl2path.pyc 1755 7835082f2dd6806f99cc25bed13ff7dc 555 library/mlx/sound.pyc 8226 03b098ed1dd965db98ef4f75b07d6cae 556 library/glib/_glib.pyc 555 ab1cf44ec256636cfd820e5bbdb5cf14 557 library/win32api.pyc 549 5753c8241e91acd8cb4b02cfc18719a3 558 library/encodings/iso8859_13.pyc 2696 f901ae0bbcfbb78f0c1783e89b2e2dc5 559 library/selenium/webdriver/remote/remote_connection.pyc 21225 287db6d396dcce7180eada87e8c6ace0 560 library/mlx/gui/callouts.pyc 16060 7a3055f313e693779e9d2df22bb7568a 561 library/selenium/webdriver/opera/options.pyc 3303 243909f5d36e653ad3ad4921c8df4f78 562 library/encodings/iso8859_15.pyc 2693 b892f358bbc25ae9d3824be158aabe28 563 locales/sr.pak 10790 fd63b700458a187aca8dde86c160a059 564 doc/manual/hu/prefsMessages.png 22980 6e60ec51305e95e5d057c0dd82b69460 565 library/xml/parsers/__init__.pyc 294 83f6a77ed8cd962b3c75c4779dc557ac 566 locale/en/LC_MESSAGES/mlx.mo 68019 e360bc22970f91fa071eec517a0a173c 567 library/_abcoll.pyc 19891 a5c1881934f1533c22b22b9317ac1d68 568 library/encodings/iso8859_11.pyc 2787 a31e6d0d34e35259d7183cc9437eacca 569 library/tarfile.pyc 71654 aca50f546f1356a3e4b33db41bddb9f9 570 locales/es-419.pak 7558 6a9495a0e074a933f0a04a5e5927e2de 571 locales/da.pak 6631 1bf496bcde38f3f2899cd0fab6986959 572 library/encodings/mac_latin2.pyc 4717 564dbaf5c296a147203eb821dc2466ba 573 library/mlx/__init__.pyc 103 029f80bd80f880e6ca70ef4ba46f7d06 574 library/mlx/i18n.pyc 1972 fe45816e49cf5e380bc39942a9dfa875 575 library/xml/sax/saxutils.pyc 12382 32ed045b3b520234ebea6a508a6569fe 576 locales/sw.pak 7078 5406f21a67934bbf0e6c633d2ca573f9 577 library/encodings/mac_turkish.pyc 2739 1682e228ddfd2e74e3ccaee0b65e7261 578 doc/manual/hu/gatesTab.png 30710 a6a59e6a2660c15418489e8785e4bcee 579 library/webbrowser.pyc 18138 c85009edebad6d278fe786fec10ebbbe 580 library/mlx/pyuipc_sim.pyc 57203 e1828998919f435bae2a5cbd969ff8f3 581 library/encodings/cp875.pyc 2636 c72faa5d1cb6105ae81c971448fea479 582 library/dis.pyc 6068 3934ab23d64f3da393305b19df0f1fd0 583 library/difflib.pyc 60869 38d2e1340b64e22d7b1fed90a57fb83a 584 locales/ar.pak 11942 495ed374baef7a96d1a59629f535d084 585 conn_green.png 936 0b7fbe8ee0af2cbeefdb42110a8fdf34 586 locales/ml.pak 17867 1041f687d729ea22199a84dc6d6c8eb8 587 library/selenium/webdriver/firefox/firefox_profile.pyc 13834 6109af4f9224623f12f34284b19a2d74 588 library/selenium/webdriver/ie/__init__.pyc 121 7b4e0c9b6ffbe3385f67f09687f325e7 589 library/encodings/cp737.pyc 8102 40e61988748e4ca1742a2bad43949f4e 590 library/encodings/iso2022_jp.pyc 1683 40c2b92127f99452f84b250c2b4b2cda 591 library/libgthread-2.0-0.dll 44287 7ad6f303082b382bff7bafbab246c61f 592 locales/sk.pak 7622 dfdff6206e5a79aef8b46d0d9c2a8367 593 library/select.pyd 11776 d90bf525f9f6c9c3aa6532fa6e569b4f 594 library/pyuipc.pyc 543 906cca78dfad2ae877c0a2e1595d3d61 595 library/selenium/common/exceptions.pyc 9313 2140bc8b29eb7c3f4fc29622d0060152 596 doc/manual/en/logTab.png 28522 305732f8485a15b7c802801038d688b7 597 library/pyuipc.pyd 47616 2b4fe2d52575de71dda6f72690cf581e 598 library/encodings/johab.pyc 1638 5346c11a863ffbcfb21aba8f1d2236b7 599 library/shutil.pyc 17657 571e2606b42956f9e233242969ceec0d 600 library/encodings/quopri_codec.pyc 3365 01342d4d2735bcbfeb333d784297547a 601 library/distutils/errors.pyc 5885 fbeaddf5d59ea781ec63197dd950aa89 602 library/mlx/gui/mava_simbrief.pyc 10689 e91c026bd70fdde0432196a536017b7b 603 library/logging/__init__.pyc 54813 7bcdf2e8da474f5e94d8e499f6fc3ed4 604 library/selenium/webdriver/phantomjs/service.pyc 3263 3a56577bb9f058e0d7e5be544a8e850b 605 runmlx.exe 63488 3060aa0ed73648edc26992e224568352 606 locales/zh-CN.pak 6386 36e1df83611aef6fbfeeafd067dd4241 607 locales/hi.pak 13321 4b6b27ab4421c94685fc09051a2339f8 608 library/inspect.pyc 38547 836f659fad54f5ee7e8f9d565003aacd 609 library/pickle.pyc 36348 2b55640f6f4e2fd70d95482fd16bfb73 610 library/io.pyc 3378 197da422e1d85c483c94fa0251b5ff76 611 library/encodings/cp874.pyc 2767 fe0c510a9aafa14cae6b037955a93f0b 612 library/glib/option.pyc 11891 bd90183c75d8f473ecf653e3d63a27f9 613 library/encodings/ascii.pyc 2081 a5fffd04734740386629fdba1113d585 614 Microsoft.VC90.CRT/msvcp90.dll 568832 6de5c66e434a9c1729575763d891c6c2 615 library/sre_parse.pyc 18380 fe2376a101668be1124f9ee316662bab 460 616 library/token.pyc 3716 732fa0a0cd1c7d9ae9cc696311160fc1 461 617 library/encodings/gb18030.pyc 1654 b103fe74a6cdae113476f1fc5255550b 462 library/g tk/deprecation.pyc 3104 2e6c9eef82dfa8aa3beb05abd3e274a4463 Microsoft.VC90.CRT/msvcm90.dll 224768 4a8bc195abdc93f0db5dab7f5093c52f 618 library/glib._glib.pyd 58368 0de636503e43c4eb00e80927bc9bda97 619 locales/el.pak 12310 8f69e235eb651b5c91569cd91c69c689 464 620 library/encodings/bz2_codec.pyc 4388 d5ef2b625b70cfae3771a9601d37523b 465 621 library/unittest/main.pyc 7701 82258a486f5133466c9cf10323814fbf 466 doc/manual/hu/route.png 26601 fd1ee7c47290f4c3a2f9fd6618aeb678 622 library/encodings/iso2022_jp_ext.pyc 1715 97eda1c1468f65445951b0bf23a89570 467 623 library/mlx/watchdog.pyc 3957 4b6c34d79e730066e8af7cf71689f9ad -
locale/en/mlx.po
r634 r714 698 698 msgstr "The planned flight route in the standard format." 699 699 700 msgid "route_altn" 701 msgstr "_Alternate:" 702 703 msgid "route_altn_tooltip" 704 msgstr "The ICAO code of the alternate airport." 705 700 706 msgid "route_down_notams" 701 707 msgstr "Downloading NOTAMs..." … … 703 709 msgid "route_down_metars" 704 710 msgstr "Downloading METARs..." 711 712 msgid "simbrief_setup_title" 713 msgstr "SimBrief setup" 714 715 msgid "simbrief_setup_help" 716 msgstr "Complete the following data to start generating your SimBrief briefing." 717 718 msgid "simbrief_setup_chelp" 719 msgstr "Your SimBrief briefing was generated with the following data." 720 721 msgid "simbrief_username" 722 msgstr "_Username:" 723 724 msgid "simbrief_username_tooltip" 725 msgstr "Enter your Simbrief username" 726 727 msgid "simbrief_password" 728 msgstr "_Password:" 729 730 msgid "simbrief_password_tooltip" 731 msgstr "Enter your Simbrief password" 732 733 msgid "simbrief_remember_password" 734 msgstr "_Remember password" 735 736 msgid "simbrief_remember_tooltip" 737 msgstr "" 738 "If checked, your SimBrief password will be stored, so that you " 739 "should not have to enter it every time. Note, however, that " 740 "the password is stored as text, and anybody who can access " 741 "your files will be able to read it." 742 743 msgid "simbrief_extra_fuel" 744 msgstr "_Extra fuel:" 745 746 msgid "simbrief_extra_fuel_tooltip" 747 msgstr "Enter the amount of extra fuel in kilograms." 748 749 msgid "simbrief_takeoff_runway" 750 msgstr "_Takeoff runway:" 751 752 msgid "simbrief_takeoff_runway_tooltip" 753 msgstr "" 754 "Enter the number of the planned takeoff runway.\n" 755 "If you don't want to specify it, leave it empty" 756 757 msgid "simbrief_landing_runway" 758 msgstr "_Landing runway:" 759 760 msgid "simbrief_landing_runway_tooltip" 761 msgstr "" 762 "Enter the number of the planned landing runway.\n" 763 "If you don't want to specify it, leave it empty" 764 765 msgid "simbrief_climb_profile" 766 msgstr "_Climb profile:" 767 768 msgid "simbrief_climb_profile_tooltip" 769 msgstr "Select the climb profile." 770 771 msgid "simbrief_cruise_profile" 772 msgstr "C_ruise profile:" 773 774 msgid "simbrief_cruise_profile_tooltip" 775 msgstr "Select the cruise profile." 776 777 msgid "simbrief_descent_profile" 778 msgstr "_Descent profile:" 779 780 msgid "simbrief_descent_profile_tooltip" 781 msgstr "Select the descent profile." 782 783 msgid "simbrief_calling" 784 msgstr "Calling SimBrief..." 785 786 msgid "simbrief_progress_searching_browser" 787 msgstr "Searching browser..." 788 789 msgid "simbrief_progress_loading_form" 790 msgstr "Loading form..." 791 792 msgid "simbrief_progress_filling_form" 793 msgstr "Filling form..." 794 795 msgid "simbrief_progress_waiting_login" 796 msgstr "Waiting login..." 797 798 msgid "simbrief_progress_logging_in" 799 msgstr "Logging in..." 800 801 msgid "simbrief_progress_waiting_result" 802 msgstr "Waiting for the result..." 803 804 msgid "simbrief_progress_retrieving_briefing" 805 msgstr "Retrieving briefing..." 806 807 msgid "simbrief_progress_unknown" 808 msgstr "?????" 809 810 msgid "simbrief_result_error_other" 811 msgstr "Some error occured, see debug logs." 812 813 msgid "simbrief_result_error_no_form" 814 msgstr "No form could be loaded." 815 816 msgid "simbrief_result_error_no_popup" 817 msgstr "No login window appeared." 818 819 msgid "simbrief_result_error_login_failed" 820 msgstr "Login failed." 821 822 msgid "simbrief_result_unknown" 823 msgstr "Unknown error occured." 824 825 msgid "simbrief_cancelled" 826 msgstr "Reverting to the old-style briefing." 827 828 msgid "simbrief_credentials_title" 829 msgstr "SimBrief login" 830 831 msgid "simbrief_login_failed" 832 msgstr "" 833 "Failed to log in to SimBrief using the\n" 834 "supplied credentials. Please, enter\n" 835 "new ones, or cancel SimBrief." 705 836 706 837 msgid "briefing_title" … … 1438 1569 msgstr "sec." 1439 1570 1571 msgid "prefs_useSimBrief" 1572 msgstr "Use Sim_Brief" 1573 1574 msgid "prefs_useSimBrief_tooltip" 1575 msgstr "" 1576 "If enabled, the SimBrief dispatching system will be " 1577 "used to create your briefing.\n" 1578 "You will need a SimBrief user name and password." 1579 1440 1580 msgid "prefs_pirepDirectory" 1441 1581 msgstr "_PIREP directory:" -
locale/hu/mlx.po
r634 r716 697 697 msgstr "Az útvonal a szokásos formátumban." 698 698 699 msgid "route_altn" 700 msgstr "Ki_térő:" 701 702 msgid "route_altn_tooltip" 703 msgstr "A kitérő repülőtér ICAO kódja." 704 699 705 msgid "route_down_notams" 700 706 msgstr "NOTAM-ok letöltése..." … … 702 708 msgid "route_down_metars" 703 709 msgstr "METAR-ok letöltése..." 710 711 msgid "simbrief_setup_title" 712 msgstr "SimBrief beállítások" 713 714 msgid "simbrief_setup_help" 715 msgstr "Töltsd ki a lenti adatokat a SimBrief eligazítás előállítása céljából." 716 717 msgid "simbrief_setup_chelp" 718 msgstr "A SimBrief eligazítás az alábbi adatok alapján keszült." 719 720 msgid "simbrief_username" 721 msgstr "Fel_használónév:" 722 723 msgid "simbrief_username_tooltip" 724 msgstr "Írd be a SimBrief felhasználónevedet" 725 726 msgid "simbrief_password" 727 msgstr "Jels_zó:" 728 729 msgid "simbrief_password_tooltip" 730 msgstr "Írdbe a SimBrief jelszavadat" 731 732 msgid "simbrief_remember_password" 733 msgstr "E_mlékezz a jelszóra" 734 735 msgid "simbrief_remember_tooltip" 736 msgstr "" 737 "Ha ezt kiválasztod, a SimBrief jelszavadat eltárolja a program, így nem kell " 738 "mindig újból beírnod. Vedd azonban figyelembe, hogy a jelszót szövegként " 739 "tároljuk, ezért bárki elolvashatja, aki hozzáfér a fájljaidhoz." 740 741 msgid "simbrief_extra_fuel" 742 msgstr "E_xtra üzemanyag:" 743 744 msgid "simbrief_extra_fuel_tooltip" 745 msgstr "Írd be az extra üzemanyag mennyiségét kilogrammban." 746 747 msgid "simbrief_takeoff_runway" 748 msgstr "_Felszálló futópálya:" 749 750 msgid "simbrief_takeoff_runway_tooltip" 751 msgstr 752 "Írd be a tervezett felszálló futópálya számát.\n" 753 "Ha nem akarod megadni, hagyd üresen a mezőt." 754 755 msgid "simbrief_landing_runway" 756 msgstr "_Leszálló futópálya:" 757 758 msgid "simbrief_landing_runway_tooltip" 759 msgstr 760 "Írd be a tervezett leszálló futópálya számát.\n" 761 "Ha nem akarod megadni, hagyd üresen a mezőt." 762 763 msgid "simbrief_climb_profile" 764 msgstr "Emelke_dési profil:" 765 766 msgid "simbrief_climb_profile_tootip" 767 msgstr "Válaszd ki az emelkedési profilt" 768 769 msgid "simbrief_cruise_profile" 770 msgstr "_Utazó profil:" 771 772 msgid "simbrief_cruise_profile_tootip" 773 msgstr "Válaszd ki az utazó profilt" 774 775 msgid "simbrief_descent_profile" 776 msgstr "Süll_yedési profil:" 777 778 msgid "simbrief_descent_profile_tootip" 779 msgstr "Válaszd ki a süllyedési profilt" 780 781 msgid "simbrief_calling" 782 msgstr "A SimBrief indítása..." 783 784 msgid "simbrief_progress_searching_browser" 785 msgstr "Böngésző keresése..." 786 787 msgid "simbrief_progress_loading_form" 788 msgstr "Űrlap letöltése..." 789 790 msgid "simbrief_progress_filling_form" 791 msgstr "Űrlap kitöltése..." 792 793 msgid "simbrief_progress_waiting_login" 794 msgstr "Várakozás a bejelentkező ablakra..." 795 796 msgid "simbrief_progress_logging_in" 797 msgstr "Bejelentkezés..." 798 799 msgid "simbrief_progress_waiting_result" 800 msgstr "Várakozás az eredményre..." 801 802 msgid "simbrief_progress_retrieving_briefing" 803 msgstr "Az eligazítás letöltése..." 804 805 msgid "simbrief_progress_unknown" 806 msgstr "?????" 807 808 msgid "simbrief_result_error_other" 809 msgstr "Valamilyen hiba történt, lásd a hibanaplót." 810 811 msgid "simbrief_result_error_no_form" 812 msgstr "Nem sikerült letölteni az űrlapot." 813 814 msgid "simbrief_result_error_no_popup" 815 msgstr "Nem jelent meg a bejelentkező ablak." 816 817 msgid "simbrief_result_error_login_failed" 818 msgstr "A bejelentkezés nem sikerült." 819 820 msgid "simbrief_result_unknown" 821 msgstr "Ismeretlen hiba történt." 822 823 msgid "simbrief_cancelled" 824 msgstr "Áttérünk a régi eligazításra." 825 826 msgid "simbrief_credentials_title" 827 msgstr "SimBrief bejelentkezés" 828 829 msgid "simbrief_login_failed" 830 msgstr "" 831 "A megadott adatokkal nem tudtam\n" 832 "bejelentkezni a SimBriefbe. Adj meg\n" 833 "új adatokat, vagy hagyjuk a SimBriefet" 704 834 705 835 msgid "briefing_title" … … 1479 1609 msgstr "másodpercig." 1480 1610 1611 msgid "prefs_useSimBrief" 1612 msgstr "Sim_Brief használata" 1613 1614 msgid "prefs_useSimBrief_tooltip" 1615 msgstr "" 1616 "Ha ezt bejelölöd, az eligazítás elkészítéséhez a " 1617 "SimBrief rendszert használja a program.\n" 1618 "Szükséged lesz SimBrief felhasználónévre és jelszóra." 1619 1481 1620 msgid "prefs_pirepDirectory" 1482 1621 msgstr "_PIREP-ek könyvtára:" -
makeinst.bat
r20 r682 1 1 set MSVCRDIR=c:\windows\winsxs\x86_Microsoft.VC90.CRT*9.0.21022.8* 2 2 set GTKRTDIR=c:\Python27\Lib\site-packages\gtk-2.0\runtime 3 set CEFDIR=c:\Python27\Lib\site-packages\cefpython3 4 set CHROMEDRIVER=c:\tmp\chromedriver.exe 3 5 set NSISDIR=C:\Program Files\NSIS 4 6 5 7 python setup.py py2exe 6 8 9 del dist\library\selenium\webdriver\chrome\service.pyc 10 copy patches\library\selenium\webdriver\chrome\service.py dist\library\selenium\webdriver\chrome\service.py 11 python -m compileall dist\library\selenium\webdriver\chrome\service.py 12 del dist\library\selenium\webdriver\chrome\service.py 13 7 14 "%NSISDIR%\makensis" mlx.nsi -
setup.py
r497 r720 19 19 [os.path.join("locale", language, "LC_MESSAGES", 20 20 "mlx.mo")])) 21 data_files.append(("", ["logo.png", 22 "conn_grey.png", "conn_red.png", "conn_green.png"])) 21 data_files.append(("", ["logo.png", "simbrief.html", 22 "conn_grey.png", "conn_red.png", "conn_green.png", 23 "mlx_cef_caller.sh", "mlx_cef_caller_secondary.sh", 24 "mlx_cef_caller.bat", "mlx_cef_caller_secondary.bat"])) 25 23 26 if os.name=="nt": 24 27 import py2exe … … 26 29 data_files.append(("", ["logo.ico"])) 27 30 31 chromedriver = os.environ.get("CHROMEDRIVER") 32 if chromedriver: 33 data_files.append(("", [chromedriver])) 34 28 35 msvcrDir = os.environ["MSVCRDIR"] if "MSVCRDIR" in os.environ else None 29 36 if msvcrDir: 30 data_files.append(("Microsoft.VC90.CRT", glob(os.path.join(msvcrDir, "*.*")))) 37 data_files.append(("Microsoft.VC90.CRT", glob(os.path.join(msvcrDir, "*.*")))) 38 os.environ["PATH"] = os.environ["PATH"] + ";" + glob(os.path.join(msvcrDir))[0] 31 39 32 40 gtkRuntimeDir = os.environ["GTKRTDIR"] if "GTKRTDIR" in os.environ else None … … 47 55 glob(os.path.join(gtkRuntimeDir, path, "*")))) 48 56 57 cefDir = os.environ.get("CEFDIR") 58 if cefDir: 59 for fileName in ["icudt.dll", "subprocess.exe"]: 60 data_files.append(("", [os.path.join(cefDir, fileName)])) 61 62 data_files.append(("locales", 63 glob(os.path.join(cefDir, "locales", "*")))) 64 65 print data_files 66 49 67 with open("mlx-common.nsh", "wt") as f: 50 68 print >>f, '!define MLX_VERSION "%s"' % (mlx.const.VERSION) 51 69 f.close() 70 else: 71 for (dirpath, dirnames, filenames) in os.walk("patches"): 72 if filenames: 73 filenames = [os.path.join(dirpath, filename) 74 for filename in filenames] 75 data_files.append((dirpath, filenames)) 76 77 52 78 53 79 long_description="""MAVA Logger X … … 71 97 { "script" : "mlxupdate.py", 72 98 "uac_info" : "requireAdministrator"}], 73 options = { "py2exe" : { "includes": "gio, pango, atk, pangocairo ",99 options = { "py2exe" : { "includes": "gio, pango, atk, pangocairo, lxml._elementpath", 74 100 "skip_archive": True} }, 75 101 zipfile = "library/.", … … 80 106 81 107 if os.name=="nt": 108 os.rename(os.path.join(scriptdir, "dist", "library", "libcef.dll"), 109 os.path.join(scriptdir, "dist", "libcef.dll")) 82 110 mlx.update.buildManifest(os.path.join(scriptdir, "dist")) 83 111 with open(os.path.join(scriptdir, "dist", "Uninstall.conf"), "wt") as f: -
src/mlx/acft.py
r644 r709 85 85 #--------------------------------------------------------------------------------------- 86 86 87 class SimBriefData(object): 88 """Data to be used when creating SimBrief briefings.""" 89 def __init__(self, climbProfiles, cruiseProfiles, descentProfiles): 90 """Construct the SimBrief data with the given profiles.""" 91 self.climbProfiles = climbProfiles 92 self.cruiseProfiles = cruiseProfiles 93 self.descentProfiles = descentProfiles 94 95 #--------------------------------------------------------------------------------------- 96 87 97 class Aircraft(object): 88 98 """Base class for aircraft.""" … … 123 133 self.maxTouchDownPitch = 15.0 124 134 self.brakeCoolTime = 10.0 135 136 self.simBriefData = None 125 137 126 138 self._checkers = [] … … 720 732 self.maxTakeOffPitch = 16.2 721 733 self.maxTouchDownPitch = 14.7 734 self.simBriefData = SimBriefData(["250/280/78"], 735 ["CI", "M75", "M78", "M79", "M80", "LRC"], 736 ["78/280/250"]) 722 737 723 738 #--------------------------------------------------------------------------------------- … … 733 748 self.maxTakeOffPitch = 14.7 734 749 self.maxTouchDownPitch = 13.2 750 self.simBriefData = SimBriefData(["250/280/78"], 751 ["CI", "M75", "M78", "M79", "M80", "LRC"], 752 ["78/280/250", "78/250/250"]) 735 753 736 754 #--------------------------------------------------------------------------------------- … … 746 764 self.maxTakeOffPitch = 11 747 765 self.maxTouchDownPitch = 9.5 766 self.simBriefData = SimBriefData(["250/280/78"], 767 ["CI", "M76", "M78", "M79", "M80", "LRC"], 768 ["78/280/250", "78/250/250"]) 748 769 749 770 #--------------------------------------------------------------------------------------- … … 754 775 super(B738Charter, self).__init__(flight) 755 776 self.mtow = 77791 777 self.simBriefData = SimBriefData(["AUTO"], 778 ["280/M74"], 779 ["AUTO"]) 756 780 757 781 #--------------------------------------------------------------------------------------- … … 826 850 self.maxTakeOffPitch = 8.0 827 851 self.maxTouchDownPitch = 7.0 852 self.simBriefData = SimBriefData(["I-900", "II-900", "III-900", 853 "I-850", "II-850", "III-850"], 854 ["MCR", "ISC", "LRC", "HSC"], 855 ["I-850", "II-850", "III-850"]) 828 856 829 857 #--------------------------------------------------------------------------------------- … … 878 906 self.maxTakeOffPitch = 9.6 879 907 self.maxTouchDownPitch = 8.1 908 self.simBriefData = SimBriefData(["250/290/78"], 909 ["CI", "M76", "M78", "M80", "M82", "M84", "LRC"], 910 ["78/290/250"]) 880 911 881 912 #--------------------------------------------------------------------------------------- … … 902 933 self.maxTakeOffPitch = 18.0 903 934 self.maxTouchDownPitch = 18.0 935 self.simBriefData = SimBriefData(["250/70", "290/74"], 936 ["CI", "LRC", "M70", "M72", "M74", "M77", "M80"], 937 ["74/290/250", "77/320/250"]) 904 938 905 939 #--------------------------------------------------------------------------------------- … … 1045 1079 self.maxTakeOffPitch = 16.0 1046 1080 self.maxTouchDownPitch = 16.0 1081 self.simBriefData = SimBriefData(["AUTO"], 1082 ["300/M80"], 1083 ["AUTO"]) 1047 1084 1048 1085 @property -
src/mlx/common.py
r585 r651 18 18 #------------------------------------------------------------------------------- 19 19 20 if os.name=="nt" or "FORCE_PYGTK" in os.environ: 20 # Due to CEF, PyGTK is the default 21 if "FORCE_PYGOBJECT" not in os.environ: 21 22 print "Using PyGTK" 22 23 pygobject = False -
src/mlx/config.py
r503 r689 211 211 class Config(object): 212 212 """Our configuration.""" 213 DEFAULT_UPDATE_URL = "http://mlx.varadiistvan.hu/update "213 DEFAULT_UPDATE_URL = "http://mlx.varadiistvan.hu/update/cef" 214 214 215 215 _messageTypesSection = "messageTypes" … … 233 233 self._vsSmoothingLength = -2 234 234 235 self._useSimBrief = False 236 self._simBriefUserName = "" 237 self._simBriefPassword = "" 238 self._rememberSimBriefPassword = False 239 235 240 self._pirepDirectory = None 236 241 self._pirepAutoSave = False … … 442 447 if vsSmoothingLength!=self._vsSmoothingLength: 443 448 self._vsSmoothingLength = vsSmoothingLength 449 self._modified = True 450 451 @property 452 def useSimBrief(self): 453 """Check if SimBrief should be used.""" 454 return self._useSimBrief 455 456 @useSimBrief.setter 457 def useSimBrief(self, useSimBrief): 458 """Check if SimBrief should be used.""" 459 if self._useSimBrief != useSimBrief: 460 self._useSimBrief = useSimBrief 461 self._modified = True 462 463 @property 464 def simBriefUserName(self): 465 """Get the SimBrief user name last used""" 466 return self._simBriefUserName 467 468 @simBriefUserName.setter 469 def simBriefUserName(self, simBriefUserName): 470 """Set the SimBrief user name to be used next.""" 471 if self._simBriefUserName != simBriefUserName: 472 self._simBriefUserName = simBriefUserName 473 self._modified = True 474 475 @property 476 def simBriefPassword(self): 477 """Get the SimBrief password last used""" 478 return self._simBriefPassword 479 480 @simBriefPassword.setter 481 def simBriefPassword(self, simBriefPassword): 482 """Set the SimBrief password to be used next.""" 483 if self._simBriefPassword != simBriefPassword: 484 self._simBriefPassword = simBriefPassword 485 self._modified = True 486 487 @property 488 def rememberSimBriefPassword(self): 489 """Get if we should remember the SimBrief password.""" 490 return self._rememberSimBriefPassword 491 492 @rememberSimBriefPassword.setter 493 def rememberSimBriefPassword(self, rememberSimBriefPassword): 494 """Set if we should remember the SimBrief password.""" 495 if rememberSimBriefPassword!=self._rememberSimBriefPassword: 496 self._rememberSimBriefPassword = rememberSimBriefPassword 444 497 self._modified = True 445 498 … … 678 731 "vsSmoothingLength", 679 732 -2)) 733 734 self._useSimBrief = self._getBoolean(config, "simbrief", 735 "use", False) 736 self._simBriefUserName = self._get(config, "simbrief", 737 "username", "") 738 self._simBriefPassword = self._get(config, "simbrief", 739 "password", "") 740 self._rememberSimBriefPassword = self._getBoolean(config, "simbrief", 741 "rememberPassword", 742 False) 743 680 744 self._pirepDirectory = self._get(config, "general", 681 745 "pirepDirectory", None) … … 758 822 str(self._vsSmoothingLength)) 759 823 824 config.add_section("simbrief") 825 config.set("simbrief", "use", 826 "yes" if self._useSimBrief else "no") 827 config.set("simbrief", "username", self._simBriefUserName) 828 config.set("simbrief", "password", self._simBriefPassword) 829 config.set("simbrief", "rememberPassword", 830 "yes" if self._rememberSimBriefPassword else "no") 831 760 832 if self._pirepDirectory is not None: 761 833 config.set("general", "pirepDirectory", self._pirepDirectory) … … 907 979 print " vsSmoothingLength:", self._vsSmoothingLength 908 980 981 print " useSimBrief:", self._useSimBrief 982 print " simBriefUserName:", self._simBriefUserName 983 print " rememberSimBriefPassword:", self._rememberSimBriefPassword 984 909 985 print " pirepDirectory:", self._pirepDirectory 910 986 print " pirepAutoSave:", self._pirepAutoSave -
src/mlx/const.py
r722 r726 11 11 12 12 ## The version of the program 13 VERSION="0.36 "13 VERSION="0.36cef" 14 14 15 15 #------------------------------------------------------------------------------- -
src/mlx/gui/common.py
r604 r682 32 32 pygobject = False 33 33 import pygtk 34 pygtk.require("2.0") 34 35 import gtk.gdk as gdk 35 36 import gtk -
src/mlx/gui/flight.py
r675 r719 1 1 2 2 from mlx.gui.common import * 3 import mlx.gui.cef as cef 3 4 4 5 import mlx.const as const … … 17 18 import time 18 19 import os 20 import tempfile 21 import threading 19 22 20 23 #----------------------------------------------------------------------------- … … 1425 1428 #----------------------------------------------------------------------------- 1426 1429 1430 class RoutePage(Page): 1431 """The page containing the route and the flight level.""" 1432 def __init__(self, wizard): 1433 """Construct the page.""" 1434 super(RoutePage, self).__init__(wizard, xstr("route_title"), 1435 xstr("route_help"), 1436 completedHelp = xstr("route_chelp")) 1437 1438 alignment = gtk.Alignment(xalign = 0.5, yalign = 0.5, 1439 xscale = 0.0, yscale = 0.0) 1440 1441 mainBox = gtk.VBox() 1442 alignment.add(mainBox) 1443 self.setMainWidget(alignment) 1444 1445 levelBox = gtk.HBox() 1446 1447 label = gtk.Label(xstr("route_level")) 1448 label.set_use_underline(True) 1449 levelBox.pack_start(label, True, True, 0) 1450 1451 self._cruiseLevel = gtk.SpinButton() 1452 self._cruiseLevel.set_increments(step = 10, page = 100) 1453 self._cruiseLevel.set_range(min = 0, max = 500) 1454 self._cruiseLevel.set_tooltip_text(xstr("route_level_tooltip")) 1455 self._cruiseLevel.set_numeric(True) 1456 self._cruiseLevel.connect("changed", self._cruiseLevelChanged) 1457 self._cruiseLevel.connect("value-changed", self._cruiseLevelChanged) 1458 label.set_mnemonic_widget(self._cruiseLevel) 1459 1460 levelBox.pack_start(self._cruiseLevel, False, False, 8) 1461 1462 alignment = gtk.Alignment(xalign = 0.0, yalign = 0.5, 1463 xscale = 0.0, yscale = 0.0) 1464 alignment.add(levelBox) 1465 1466 mainBox.pack_start(alignment, False, False, 0) 1467 1468 1469 routeBox = gtk.VBox() 1470 1471 alignment = gtk.Alignment(xalign = 0.0, yalign = 0.5, 1472 xscale = 0.0, yscale = 0.0) 1473 label = gtk.Label(xstr("route_route")) 1474 label.set_use_underline(True) 1475 alignment.add(label) 1476 routeBox.pack_start(alignment, True, True, 0) 1477 1478 routeWindow = gtk.ScrolledWindow() 1479 routeWindow.set_size_request(400, 80) 1480 routeWindow.set_shadow_type(gtk.ShadowType.IN if pygobject 1481 else gtk.SHADOW_IN) 1482 routeWindow.set_policy(gtk.PolicyType.AUTOMATIC if pygobject 1483 else gtk.POLICY_AUTOMATIC, 1484 gtk.PolicyType.AUTOMATIC if pygobject 1485 else gtk.POLICY_AUTOMATIC) 1486 1487 self._uppercasingRoute = False 1488 1489 self._route = gtk.TextView() 1490 self._route.set_tooltip_text(xstr("route_route_tooltip")) 1491 self._route.set_wrap_mode(WRAP_WORD) 1492 self._route.get_buffer().connect("changed", self._routeChanged) 1493 self._route.get_buffer().connect_after("insert-text", self._routeInserted) 1494 routeWindow.add(self._route) 1495 1496 label.set_mnemonic_widget(self._route) 1497 routeBox.pack_start(routeWindow, True, True, 0) 1498 1499 mainBox.pack_start(routeBox, True, True, 8) 1500 1501 alternateBox = gtk.HBox() 1502 1503 label = gtk.Label(xstr("route_altn")) 1504 label.set_use_underline(True) 1505 alternateBox.pack_start(label, True, True, 0) 1506 1507 self._alternate = gtk.Entry() 1508 self._alternate.set_width_chars(6) 1509 self._alternate.connect("changed", self._alternateChanged) 1510 self._alternate.set_tooltip_text(xstr("route_altn_tooltip")) 1511 label.set_mnemonic_widget(self._alternate) 1512 1513 alternateBox.pack_start(self._alternate, False, False, 8) 1514 1515 alignment = gtk.Alignment(xalign = 0.0, yalign = 0.5, 1516 xscale = 0.0, yscale = 0.0) 1517 alignment.add(alternateBox) 1518 1519 mainBox.pack_start(alignment, False, False, 0) 1520 1521 self.addCancelFlightButton() 1522 1523 self._backButton = self.addPreviousButton(clicked = self._backClicked) 1524 self._button = self.addNextButton(clicked = self._forwardClicked) 1525 1526 @property 1527 def filedCruiseLevel(self): 1528 """Get the filed cruise level.""" 1529 return self._cruiseLevel.get_value_as_int() 1530 1531 @property 1532 def route(self): 1533 """Get the route.""" 1534 return self._getRoute() 1535 1536 @property 1537 def alternate(self): 1538 """Get the ICAO code of the alternate airport.""" 1539 return self._alternate.get_text() 1540 1541 def activate(self): 1542 """Setup the route from the booked flight.""" 1543 self._cruiseLevel.set_value(0) 1544 self._cruiseLevel.set_text("") 1545 self._route.get_buffer().set_text(self._wizard._bookedFlight.route) 1546 self._alternate.set_text("") 1547 self._updateForwardButton() 1548 1549 def _getRoute(self): 1550 """Get the text of the route.""" 1551 buffer = self._route.get_buffer() 1552 return buffer.get_text(buffer.get_start_iter(), 1553 buffer.get_end_iter(), True) 1554 1555 def _updateForwardButton(self): 1556 """Update the sensitivity of the forward button.""" 1557 cruiseLevelText = self._cruiseLevel.get_text() 1558 cruiseLevel = int(cruiseLevelText) if cruiseLevelText else 0 1559 alternate = self._alternate.get_text() 1560 self._button.set_sensitive(cruiseLevel>=50 and self._getRoute()!="" and 1561 len(alternate)==4) 1562 1563 def _cruiseLevelChanged(self, *arg): 1564 """Called when the cruise level has changed.""" 1565 self._updateForwardButton() 1566 1567 def _routeChanged(self, textBuffer): 1568 """Called when the route has changed.""" 1569 if not self._uppercasingRoute: 1570 self._updateForwardButton() 1571 1572 def _routeInserted(self, textBuffer, iter, text, length): 1573 """Called when new characters are inserted into the route. 1574 1575 It uppercases all characters.""" 1576 if not self._uppercasingRoute: 1577 self._uppercasingRoute = True 1578 1579 iter1 = iter.copy() 1580 iter1.backward_chars(length) 1581 textBuffer.delete(iter, iter1) 1582 1583 textBuffer.insert(iter, text.upper()) 1584 1585 self._uppercasingRoute = False 1586 1587 def _alternateChanged(self, entry): 1588 """Called when the alternate airport has changed.""" 1589 entry.set_text(entry.get_text().upper()) 1590 self._updateForwardButton() 1591 1592 def _backClicked(self, button): 1593 """Called when the Back button is pressed.""" 1594 self.goBack() 1595 1596 def _forwardClicked(self, button): 1597 """Called when the Forward button is clicked.""" 1598 if self._wizard.gui.flight.aircraft.simBriefData is None: 1599 self._wizard.usingSimBrief = False 1600 if self._wizard.gui.config.useSimBrief and \ 1601 self._wizard.usingSimBrief is not False: 1602 self._wizard.nextPage() 1603 else: 1604 self._wizard.usingSimBrief = False 1605 self._wizard.jumpPage(3) 1606 1607 #----------------------------------------------------------------------------- 1608 1609 class SimBriefCredentialsDialog(gtk.Dialog): 1610 """A dialog window to ask for SimBrief credentials.""" 1611 def __init__(self, gui, userName, password, rememberPassword): 1612 """Construct the dialog.""" 1613 super(SimBriefCredentialsDialog, self).__init__(WINDOW_TITLE_BASE + " - " + 1614 xstr("simbrief_credentials_title"), 1615 gui.mainWindow, 1616 DIALOG_MODAL) 1617 self.add_button(xstr("button_cancel"), RESPONSETYPE_CANCEL) 1618 self.add_button(xstr("button_ok"), RESPONSETYPE_OK) 1619 1620 contentArea = self.get_content_area() 1621 1622 contentAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5, 1623 xscale = 0.0, yscale = 0.0) 1624 contentAlignment.set_padding(padding_top = 4, padding_bottom = 16, 1625 padding_left = 8, padding_right = 8) 1626 1627 contentArea.pack_start(contentAlignment, False, False, 0) 1628 1629 contentVBox = gtk.VBox() 1630 contentAlignment.add(contentVBox) 1631 1632 label = gtk.Label(xstr("simbrief_login_failed")) 1633 label.set_alignment(0.0, 0.0) 1634 1635 contentVBox.pack_start(label, False, False, 0) 1636 1637 tableAlignment = gtk.Alignment(xalign = 0.5, yalign = 0.5, 1638 xscale = 0.0, yscale = 0.0) 1639 tableAlignment.set_padding(padding_top = 24, padding_bottom = 0, 1640 padding_left = 0, padding_right = 0) 1641 1642 table = gtk.Table(3, 2) 1643 table.set_row_spacings(4) 1644 table.set_col_spacings(16) 1645 table.set_homogeneous(False) 1646 1647 tableAlignment.add(table) 1648 contentVBox.pack_start(tableAlignment, True, True, 0) 1649 1650 label = gtk.Label(xstr("simbrief_username")) 1651 label.set_use_underline(True) 1652 label.set_alignment(0.0, 0.5) 1653 table.attach(label, 0, 1, 0, 1) 1654 1655 self._userName = gtk.Entry() 1656 self._userName.set_width_chars(16) 1657 #self._userName.connect("changed", 1658 # lambda button: self._updateForwardButton()) 1659 self._userName.set_tooltip_text(xstr("simbrief_username_tooltip")) 1660 self._userName.set_text(userName) 1661 table.attach(self._userName, 1, 2, 0, 1) 1662 label.set_mnemonic_widget(self._userName) 1663 1664 label = gtk.Label(xstr("simbrief_password")) 1665 label.set_use_underline(True) 1666 label.set_alignment(0.0, 0.5) 1667 table.attach(label, 0, 1, 1, 2) 1668 1669 self._password = gtk.Entry() 1670 self._password.set_visibility(False) 1671 #self._password.connect("changed", 1672 # lambda button: self._updateForwardButton()) 1673 self._password.set_tooltip_text(xstr("simbrief_password_tooltip")) 1674 self._password.set_text(password) 1675 table.attach(self._password, 1, 2, 1, 2) 1676 label.set_mnemonic_widget(self._password) 1677 1678 self._rememberButton = gtk.CheckButton(xstr("simbrief_remember_password")) 1679 self._rememberButton.set_use_underline(True) 1680 self._rememberButton.set_tooltip_text(xstr("simbrief_remember_tooltip")) 1681 self._rememberButton.set_active(rememberPassword) 1682 table.attach(self._rememberButton, 1, 2, 2, 3, ypadding = 8) 1683 1684 @property 1685 def userName(self): 1686 """Get the user name entered.""" 1687 return self._userName.get_text() 1688 1689 @property 1690 def password(self): 1691 """Get the password entered.""" 1692 return self._password.get_text() 1693 1694 @property 1695 def rememberPassword(self): 1696 """Get whether the password is to be remembered.""" 1697 return self._rememberButton.get_active() 1698 1699 def run(self): 1700 """Run the dialog.""" 1701 self.show_all() 1702 1703 response = super(SimBriefCredentialsDialog, self).run() 1704 1705 self.hide() 1706 1707 return response 1708 1709 #----------------------------------------------------------------------------- 1710 1711 class SimBriefSetupPage(Page): 1712 """Page for setting up some parameters for SimBrief.""" 1713 monthNum2Name = [ 1714 "JAN", 1715 "FEB", 1716 "MAR", 1717 "APR", 1718 "MAY", 1719 "JUN", 1720 "JUL", 1721 "AUG", 1722 "SEP", 1723 "OCT", 1724 "NOV", 1725 "DEC" 1726 ] 1727 1728 progress2Message = { 1729 cef.SIMBRIEF_PROGRESS_SEARCHING_BROWSER: "simbrief_progress_searching_browser", 1730 cef.SIMBRIEF_PROGRESS_LOADING_FORM: "simbrief_progress_loading_form", 1731 cef.SIMBRIEF_PROGRESS_FILLING_FORM: "simbrief_progress_filling_form", 1732 cef.SIMBRIEF_PROGRESS_WAITING_LOGIN: "simbrief_progress_waiting_login", 1733 cef.SIMBRIEF_PROGRESS_LOGGING_IN: "simbrief_progress_logging_in", 1734 cef.SIMBRIEF_PROGRESS_WAITING_RESULT: "simbrief_progress_waiting_result", 1735 cef.SIMBRIEF_PROGRESS_RETRIEVING_BRIEFING: "simbrief_progress_retrieving_briefing" 1736 } 1737 1738 result2Message = { 1739 cef.SIMBRIEF_RESULT_ERROR_OTHER: "simbrief_result_error_other", 1740 cef.SIMBRIEF_RESULT_ERROR_NO_FORM: "simbrief_result_error_no_form", 1741 cef.SIMBRIEF_RESULT_ERROR_NO_POPUP: "simbrief_result_error_no_popup", 1742 cef.SIMBRIEF_RESULT_ERROR_LOGIN_FAILED: "simbrief_result_error_login_failed" 1743 } 1744 1745 @staticmethod 1746 def getHTMLFilePath(): 1747 """Get the path of the HTML file to contain the generated flight 1748 plan.""" 1749 if os.name=="nt": 1750 return os.path.join(tempfile.gettempdir(), 1751 "mlx_simbrief" + 1752 (".secondary" if secondaryInstallation else "") + 1753 ".html") 1754 else: 1755 import pwd 1756 return os.path.join(tempfile.gettempdir(), 1757 "mlx_simbrief." + pwd.getpwuid(os.getuid())[0] + "" + 1758 (".secondary" if secondaryInstallation else "") + 1759 ".html") 1760 1761 def __init__(self, wizard): 1762 """Construct the setup page.""" 1763 1764 super(SimBriefSetupPage, self).__init__(wizard, 1765 xstr("simbrief_setup_title"), 1766 xstr("simbrief_setup_help"), 1767 xstr("simbrief_setup_chelp")) 1768 1769 alignment = gtk.Alignment(xalign = 0.5, yalign = 0.5, 1770 xscale = 0.0, yscale = 0.0) 1771 1772 table = gtk.Table(9, 3) 1773 table.set_row_spacings(4) 1774 table.set_col_spacings(16) 1775 table.set_homogeneous(False) 1776 alignment.add(table) 1777 self.setMainWidget(alignment) 1778 1779 label = gtk.Label(xstr("simbrief_username")) 1780 label.set_use_underline(True) 1781 label.set_alignment(0.0, 0.5) 1782 table.attach(label, 0, 1, 0, 1) 1783 1784 self._userName = gtk.Entry() 1785 self._userName.set_width_chars(16) 1786 self._userName.connect("changed", 1787 lambda button: self._updateForwardButton()) 1788 self._userName.set_tooltip_text(xstr("simbrief_username_tooltip")) 1789 table.attach(self._userName, 1, 2, 0, 1) 1790 label.set_mnemonic_widget(self._userName) 1791 1792 label = gtk.Label(xstr("simbrief_password")) 1793 label.set_use_underline(True) 1794 label.set_alignment(0.0, 0.5) 1795 table.attach(label, 0, 1, 1, 2) 1796 1797 self._password = gtk.Entry() 1798 self._password.set_visibility(False) 1799 self._password.connect("changed", 1800 lambda button: self._updateForwardButton()) 1801 self._password.set_tooltip_text(xstr("simbrief_password_tooltip")) 1802 table.attach(self._password, 1, 2, 1, 2) 1803 label.set_mnemonic_widget(self._password) 1804 1805 self._rememberButton = gtk.CheckButton(xstr("simbrief_remember_password")) 1806 self._rememberButton.set_use_underline(True) 1807 self._rememberButton.set_tooltip_text(xstr("simbrief_remember_tooltip")) 1808 table.attach(self._rememberButton, 1, 2, 2, 3, ypadding = 8) 1809 1810 self._credentialsCondition = threading.Condition() 1811 self._credentialsAvailable = False 1812 self._credentialsUserName = None 1813 self._credentialsPassword = None 1814 1815 label = gtk.Label(xstr("simbrief_extra_fuel")) 1816 label.set_use_underline(True) 1817 label.set_alignment(0.0, 0.5) 1818 table.attach(label, 0, 1, 3, 4) 1819 1820 self._extraFuel = IntegerEntry(defaultValue = 0) 1821 self._extraFuel.set_width_chars(6) 1822 self._extraFuel.set_tooltip_text(xstr("simbrief_extra_fuel_tooltip")) 1823 table.attach(self._extraFuel, 1, 2, 3, 4) 1824 label.set_mnemonic_widget(self._extraFuel) 1825 1826 table.attach(gtk.Label("kg"), 2, 3, 3, 4) 1827 1828 label = gtk.Label(xstr("simbrief_takeoff_runway")) 1829 label.set_use_underline(True) 1830 label.set_alignment(0.0, 0.5) 1831 table.attach(label, 0, 1, 4, 5) 1832 1833 self._takeoffRunway = gtk.Entry() 1834 self._takeoffRunway.set_width_chars(10) 1835 self._takeoffRunway.set_tooltip_text(xstr("simbrief_takeoff_runway_tooltip")) 1836 self._takeoffRunway.connect("changed", self._upperChanged) 1837 table.attach(self._takeoffRunway, 1, 2, 4, 5) 1838 label.set_mnemonic_widget(self._takeoffRunway) 1839 1840 label = gtk.Label(xstr("simbrief_landing_runway")) 1841 label.set_use_underline(True) 1842 label.set_alignment(0.0, 0.5) 1843 table.attach(label, 0, 1, 5, 6) 1844 1845 self._landingRunway = gtk.Entry() 1846 self._landingRunway.set_width_chars(10) 1847 self._landingRunway.set_tooltip_text(xstr("simbrief_takeoff_runway_tooltip")) 1848 self._landingRunway.connect("changed", self._upperChanged) 1849 table.attach(self._landingRunway, 1, 2, 5, 6) 1850 label.set_mnemonic_widget(self._landingRunway) 1851 1852 label = gtk.Label(xstr("simbrief_climb_profile")) 1853 label.set_use_underline(True) 1854 label.set_alignment(0.0, 0.5) 1855 table.attach(label, 0, 1, 6, 7) 1856 1857 self._climbProfile = gtk.ComboBox() 1858 renderer = gtk.CellRendererText() 1859 self._climbProfile.pack_start(renderer, True) 1860 self._climbProfile.add_attribute(renderer, "text", 0) 1861 self._climbProfile.set_tooltip_text(xstr("simbrief_climb_profile_tooltip")) 1862 table.attach(self._climbProfile, 1, 2, 6, 7) 1863 label.set_mnemonic_widget(self._climbProfile) 1864 1865 label = gtk.Label(xstr("simbrief_cruise_profile")) 1866 label.set_use_underline(True) 1867 label.set_alignment(0.0, 0.5) 1868 table.attach(label, 0, 1, 7, 8) 1869 1870 self._cruiseProfile = gtk.ComboBox() 1871 renderer = gtk.CellRendererText() 1872 self._cruiseProfile.pack_start(renderer, True) 1873 self._cruiseProfile.add_attribute(renderer, "text", 0) 1874 self._cruiseProfile.set_tooltip_text(xstr("simbrief_cruise_profile_tooltip")) 1875 table.attach(self._cruiseProfile, 1, 2, 7, 8) 1876 label.set_mnemonic_widget(self._cruiseProfile) 1877 1878 label = gtk.Label(xstr("simbrief_descent_profile")) 1879 label.set_use_underline(True) 1880 label.set_alignment(0.0, 0.5) 1881 table.attach(label, 0, 1, 8, 9) 1882 1883 self._descentProfile = gtk.ComboBox() 1884 renderer = gtk.CellRendererText() 1885 self._descentProfile.pack_start(renderer, True) 1886 self._descentProfile.add_attribute(renderer, "text", 0) 1887 self._descentProfile.set_tooltip_text(xstr("simbrief_descent_profile_tooltip")) 1888 table.attach(self._descentProfile, 1, 2, 8, 9) 1889 label.set_mnemonic_widget(self._descentProfile) 1890 1891 self.addCancelFlightButton() 1892 1893 self._backButton = self.addPreviousButton(clicked = self._backClicked) 1894 self._button = self.addNextButton(clicked = self._forwardClicked) 1895 1896 def activate(self): 1897 """Activate the SimBrief setup page""" 1898 config = self._wizard.gui.config 1899 1900 self._userName.set_text(config.simBriefUserName) 1901 self._userName.set_sensitive(True) 1902 1903 self._password.set_text(config.simBriefPassword) 1904 self._password.set_sensitive(True) 1905 1906 self._rememberButton.set_active(config.rememberSimBriefPassword) 1907 self._rememberButton.set_sensitive(True) 1908 1909 self._extraFuel.set_int(0) 1910 self._extraFuel.set_sensitive(True) 1911 1912 self._takeoffRunway.set_text("") 1913 self._takeoffRunway.set_sensitive(True) 1914 1915 self._landingRunway.set_text("") 1916 self._landingRunway.set_sensitive(True) 1917 1918 simBriefData = self._wizard.gui.flight.aircraft.simBriefData 1919 for (control, profiles) in [(self._climbProfile, 1920 simBriefData.climbProfiles), 1921 (self._cruiseProfile, 1922 simBriefData.cruiseProfiles), 1923 (self._descentProfile, 1924 simBriefData.descentProfiles)]: 1925 model = gtk.ListStore(str) 1926 for profile in profiles: 1927 model.append([profile]) 1928 control.set_model(model) 1929 control.set_sensitive(True) 1930 1931 self._climbProfile.set_active(0) 1932 self._cruiseProfile.set_active(0) 1933 self._descentProfile.set_active(0) 1934 1935 self._updateForwardButton() 1936 1937 def _updateForwardButton(self): 1938 """Update the sensitivity of the forward button.""" 1939 self._button.set_sensitive(len(self._userName.get_text())>0 and 1940 len(self._password.get_text())>0) 1941 1942 def _backClicked(self, button): 1943 """Called when the Back button is pressed.""" 1944 self.goBack() 1945 1946 def _forwardClicked(self, button): 1947 if self._completed: 1948 self._wizard.nextPage() 1949 else: 1950 config = self._wizard.gui.config 1951 1952 config.simBriefUserName = self._userName.get_text() 1953 1954 rememberPassword = self._rememberButton.get_active() 1955 config.simBriefPassword = \ 1956 self._password.get_text() if rememberPassword else "" 1957 config.rememberSimBriefPassword = rememberPassword 1958 1959 config.save() 1960 1961 plan = self._getPlan() 1962 print "plan:", plan 1963 1964 takeoffRunway = self._takeoffRunway.get_text() 1965 if takeoffRunway: 1966 self._wizard.takeoffRunway = takeoffRunway 1967 1968 landingRunway = self._landingRunway.get_text() 1969 if landingRunway: 1970 self._wizard.landingRunway = landingRunway 1971 1972 self._userName.set_sensitive(False) 1973 self._password.set_sensitive(False) 1974 self._rememberButton.set_sensitive(False) 1975 self._extraFuel.set_sensitive(False) 1976 self._takeoffRunway.set_sensitive(False) 1977 self._landingRunway.set_sensitive(False) 1978 1979 self._climbProfile.set_sensitive(False) 1980 self._cruiseProfile.set_sensitive(False) 1981 self._descentProfile.set_sensitive(False) 1982 1983 self._wizard.gui.beginBusy(xstr("simbrief_calling")) 1984 1985 cef.startFastTimeout() 1986 cef.callSimBrief(plan, 1987 self._getCredentialsCallback, 1988 self._simBriefProgressCallback, 1989 SimBriefSetupPage.getHTMLFilePath()) 1990 1991 startSound(const.SOUND_NOTAM) 1992 1993 def _getCredentialsCallback(self, count): 1994 """Called when the SimBrief home page requests the credentials.""" 1995 with self._credentialsCondition: 1996 self._credentialsAvailable = False 1997 1998 gobject.idle_add(self._getCredentials, count) 1999 2000 while not self._credentialsAvailable: 2001 self._credentialsCondition.wait() 2002 2003 return (self._credentialsUserName, self._credentialsPassword) 2004 2005 def _getCredentials(self, count): 2006 """Get the credentials. 2007 2008 If count is 0, the user name and password entered into the setup page 2009 are returned. Otherwise a dialog box is displayed informing the user of 2010 invalid credentials and requesting another set of them.""" 2011 with self._credentialsCondition: 2012 if count==0: 2013 self._credentialsUserName = self._userName.get_text() 2014 self._credentialsPassword = self._password.get_text() 2015 else: 2016 gui = self._wizard.gui 2017 config = gui.config 2018 2019 dialog = SimBriefCredentialsDialog(gui, 2020 config.simBriefUserName, 2021 config.simBriefPassword, 2022 config.rememberSimBriefPassword) 2023 response = dialog.run() 2024 2025 if response==RESPONSETYPE_OK: 2026 self._credentialsUserName = dialog.userName 2027 self._userName.set_text(self._credentialsUserName) 2028 self._credentialsPassword = dialog.password 2029 self._password.set_text(self._credentialsPassword) 2030 rememberPassword = dialog.rememberPassword 2031 2032 config.simBriefUserName = self._credentialsUserName 2033 2034 config.simBriefPassword = \ 2035 self._credentialsPassword if rememberPassword else "" 2036 config.rememberSimBriefPassword = rememberPassword 2037 2038 config.save() 2039 else: 2040 self._credentialsUserName = None 2041 self._credentialsPassword = None 2042 2043 self._credentialsAvailable = True 2044 self._credentialsCondition.notify() 2045 2046 def _simBriefProgressCallback(self, progress, result, flightInfo): 2047 """Called by the SimBrief handling thread.""" 2048 gobject.idle_add(self._simBriefProgress, progress, result, flightInfo) 2049 2050 def _simBriefProgress(self, progress, result, flightInfo): 2051 """The real SimBrief progress handler.""" 2052 print "_simBriefProgress", progress, result, flightInfo 2053 if result==cef.SIMBRIEF_RESULT_NONE: 2054 message = SimBriefSetupPage.progress2Message.get(progress, 2055 "simbrief_progress_unknown") 2056 self._wizard.gui.updateBusyState(xstr(message)) 2057 else: 2058 cef.stopFastTimeout() 2059 self._wizard.gui.endBusy() 2060 2061 if result==cef.SIMBRIEF_RESULT_OK: 2062 self._wizard.departureMETARChanged(flightInfo["orig_metar"], 2063 self) 2064 self._wizard.arrivalMETARChanged(flightInfo["dest_metar"], self) 2065 self._wizard.nextPage() 2066 else: 2067 message = SimBriefSetupPage.result2Message.get(result, 2068 "simbrief_result_unknown") 2069 dialog = gtk.MessageDialog(parent = self._wizard.gui.mainWindow, 2070 type = MESSAGETYPE_ERROR, 2071 message_format = 2072 xstr(message) + "\n"+ 2073 xstr("simbrief_cancelled")) 2074 2075 dialog.add_button(xstr("button_ok"), RESPONSETYPE_OK) 2076 dialog.set_title(WINDOW_TITLE_BASE) 2077 secondary = xstr("flightsel_save_failed_sec") 2078 dialog.format_secondary_markup(secondary) 2079 dialog.run() 2080 dialog.hide() 2081 2082 self._wizard.usingSimBrief = False 2083 self._wizard.jumpPage(2, fromPageShift = 1) 2084 2085 def _getPlan(self): 2086 """Get the flight plan data for SimBrief.""" 2087 plan = { 2088 "airline": "MAH", 2089 "selcal": "XXXX", 2090 "fuelfactor": "P000", 2091 "contpct": "0.05", 2092 "resvrule": "45", 2093 "taxiout": "10", 2094 "taxiin": "10", 2095 "civalue": "AUTO" 2096 } 2097 2098 wizard = self._wizard 2099 gui = wizard.gui 2100 2101 loginResult = wizard.loginResult 2102 plan["cpt"] = loginResult.pilotName 2103 plan["pid"] = loginResult.pilotID 2104 2105 bookedFlight = wizard.bookedFlight 2106 plan["fltnum"] = wizard.bookedFlight.callsign[2:] 2107 plan["type"] = const.icaoCodes[bookedFlight.aircraftType] 2108 plan["orig"] = bookedFlight.departureICAO 2109 plan["dest"] = bookedFlight.arrivalICAO 2110 plan["reg"] = bookedFlight.tailNumber 2111 plan["fin"] = bookedFlight.tailNumber[3:] 2112 plan["pax"] = str(bookedFlight.numPassengers) 2113 2114 departureTime = bookedFlight.departureTime 2115 plan["date"] = "%d%s%d" % (departureTime.day, 2116 SimBriefSetupPage.monthNum2Name[departureTime.month-1], 2117 departureTime.year%100) 2118 plan["deph"] = str(departureTime.hour) 2119 plan["depm"] = str(departureTime.minute) 2120 2121 arrivalTime = bookedFlight.arrivalTime 2122 plan["steh"] = str(arrivalTime.hour) 2123 plan["stem"] = str(arrivalTime.minute) 2124 2125 plan["manualzfw"] = str(wizard.zfw / 1000.0) 2126 plan["cargo"] = str((wizard.bagWeight + wizard.cargoWeight + wizard.mailWeight)/1000.0) 2127 2128 plan["route"] = wizard.route 2129 plan["fl"] = str(wizard.filedCruiseAltitude) 2130 plan["altn"] = wizard.alternate 2131 2132 plan["addedfuel"] = str(self._extraFuel.get_int() / 1000.0) 2133 plan["origrwy"] = self._takeoffRunway.get_text() 2134 plan["destrwy"] = self._landingRunway.get_text() 2135 2136 for (key, control) in [("climb", self._climbProfile), 2137 ("cruise", self._cruiseProfile), 2138 ("descent", self._descentProfile)]: 2139 model = control.get_model() 2140 active = control.get_active_iter() 2141 value = model.get_value(active, 0) 2142 plan[key] = value 2143 2144 return plan 2145 2146 def _upperChanged(self, entry, arg = None): 2147 """Called when the value of some entry widget has changed and the value 2148 should be converted to uppercase.""" 2149 entry.set_text(entry.get_text().upper()) 2150 2151 #----------------------------------------------------------------------------- 2152 2153 class SimBriefingPage(Page): 2154 """Page to display the SimBrief HTML briefing.""" 2155 class BrowserLifeSpanHandler(object): 2156 """The life-span handler of a browser.""" 2157 def __init__(self, simBriefingPage): 2158 """Construct the life-span handler for the given page.""" 2159 self._simBriefingPage = simBriefingPage 2160 2161 def OnBeforeClose(self, browser): 2162 """Called before closing the browser.""" 2163 self._simBriefingPage._invalidateBrowser() 2164 2165 def __init__(self, wizard): 2166 """Construct the setup page.""" 2167 2168 super(SimBriefingPage, self).__init__(wizard, 2169 "SimBrief flight plan", "") 2170 2171 self._alignment = gtk.Alignment(xalign = 0.5, yalign = 0.5, 2172 xscale = 1.0, yscale = 1.0) 2173 2174 self._container = cef.getContainer() 2175 self._alignment.add(self._container) 2176 2177 self.setMainWidget(self._alignment) 2178 2179 self._browser = None 2180 2181 self.addCancelFlightButton() 2182 2183 self.addPreviousButton(clicked = self._backClicked) 2184 2185 self._button = self.addNextButton(clicked = self._forwardClicked) 2186 self._button.set_label(xstr("briefing_button")) 2187 self._button.set_has_tooltip(False) 2188 self._button.set_use_stock(False) 2189 2190 def activate(self): 2191 """Activate the SimBrief flight plan page""" 2192 if self._browser is None: 2193 self._startBrowser() 2194 else: 2195 self._browser.Reload() 2196 2197 def grabDefault(self): 2198 """If the page has a default button, make it the default one.""" 2199 super(SimBriefingPage, self).grabDefault() 2200 2201 if self._browser is None: 2202 self._startBrowser() 2203 2204 def _backClicked(self, button): 2205 """Called when the Back button has been pressed.""" 2206 self.goBack() 2207 2208 def _forwardClicked(self, button): 2209 """Called when the Forward button has been pressed.""" 2210 if not self._completed: 2211 self._button.set_label(xstr("button_next")) 2212 self._button.set_tooltip_text(xstr("button_next_tooltip")) 2213 self._wizard.usingSimBrief = True 2214 self.complete() 2215 2216 self._wizard.nextPage() 2217 2218 def _startBrowser(self): 2219 """Start the browser. 2220 2221 If a container is needed, create one.""" 2222 if self._container is None: 2223 self._container = cef.getContainer() 2224 self._alignment.add(self._container) 2225 2226 url = "file://" + SimBriefSetupPage.getHTMLFilePath() 2227 self._browser = cef.startInContainer(self._container, url) 2228 2229 lifeSpanHandler = SimBriefingPage.BrowserLifeSpanHandler(self) 2230 self._browser.SetClientHandler(lifeSpanHandler) 2231 2232 def _invalidateBrowser(self): 2233 """Invalidate the browser (and associated stuff).""" 2234 self._alignment.remove(self._container) 2235 self._container = None 2236 self._browser = None 2237 2238 #----------------------------------------------------------------------------- 2239 1427 2240 class FuelTank(gtk.VBox): 1428 2241 """Widget for the fuel tank.""" … … 1660 2473 self._wizard.gui.beginBusy(xstr("fuel_pump_busy")) 1661 2474 self._pump() 2475 elif self._wizard.usingSimBrief: 2476 self._wizard.jumpPage(3) 1662 2477 else: 1663 2478 self._wizard.nextPage() … … 1705 2520 if fuelTank is None: 1706 2521 self._wizard.gui.endBusy() 1707 self._wizard.nextPage() 2522 if self._wizard.usingSimBrief: 2523 self._wizard.gui.startMonitoring() 2524 self._wizard.jumpPage(3) 2525 else: 2526 bookedFlight = self._wizard._bookedFlight 2527 self._wizard.gui.beginBusy(xstr("route_down_notams")) 2528 self._wizard.gui.webHandler.getNOTAMs(self._notamsCallback, 2529 bookedFlight.departureICAO, 2530 bookedFlight.arrivalICAO) 2531 startSound(const.SOUND_NOTAM) 1708 2532 else: 1709 2533 currentLevel = fuelTank.currentWeight / fuelTank.capacity … … 1719 2543 currentLevel)]) 1720 2544 gobject.timeout_add(50, self._pump) 1721 1722 #-----------------------------------------------------------------------------1723 1724 class RoutePage(Page):1725 """The page containing the route and the flight level."""1726 def __init__(self, wizard):1727 """Construct the page."""1728 super(RoutePage, self).__init__(wizard, xstr("route_title"),1729 xstr("route_help"),1730 completedHelp = xstr("route_chelp"))1731 1732 alignment = gtk.Alignment(xalign = 0.5, yalign = 0.5,1733 xscale = 0.0, yscale = 0.0)1734 1735 mainBox = gtk.VBox()1736 alignment.add(mainBox)1737 self.setMainWidget(alignment)1738 1739 levelBox = gtk.HBox()1740 1741 label = gtk.Label(xstr("route_level"))1742 label.set_use_underline(True)1743 levelBox.pack_start(label, True, True, 0)1744 1745 self._cruiseLevel = gtk.SpinButton()1746 self._cruiseLevel.set_increments(step = 10, page = 100)1747 self._cruiseLevel.set_range(min = 0, max = 500)1748 self._cruiseLevel.set_tooltip_text(xstr("route_level_tooltip"))1749 self._cruiseLevel.set_numeric(True)1750 self._cruiseLevel.connect("changed", self._cruiseLevelChanged)1751 self._cruiseLevel.connect("value-changed", self._cruiseLevelChanged)1752 label.set_mnemonic_widget(self._cruiseLevel)1753 1754 levelBox.pack_start(self._cruiseLevel, False, False, 8)1755 1756 alignment = gtk.Alignment(xalign = 0.0, yalign = 0.5,1757 xscale = 0.0, yscale = 0.0)1758 alignment.add(levelBox)1759 1760 mainBox.pack_start(alignment, False, False, 0)1761 1762 1763 routeBox = gtk.VBox()1764 1765 alignment = gtk.Alignment(xalign = 0.0, yalign = 0.5,1766 xscale = 0.0, yscale = 0.0)1767 label = gtk.Label(xstr("route_route"))1768 label.set_use_underline(True)1769 alignment.add(label)1770 routeBox.pack_start(alignment, True, True, 0)1771 1772 routeWindow = gtk.ScrolledWindow()1773 routeWindow.set_size_request(400, 80)1774 routeWindow.set_shadow_type(gtk.ShadowType.IN if pygobject1775 else gtk.SHADOW_IN)1776 routeWindow.set_policy(gtk.PolicyType.AUTOMATIC if pygobject1777 else gtk.POLICY_AUTOMATIC,1778 gtk.PolicyType.AUTOMATIC if pygobject1779 else gtk.POLICY_AUTOMATIC)1780 1781 self._uppercasingRoute = False1782 1783 self._route = gtk.TextView()1784 self._route.set_tooltip_text(xstr("route_route_tooltip"))1785 self._route.set_wrap_mode(WRAP_WORD)1786 self._route.get_buffer().connect("changed", self._routeChanged)1787 self._route.get_buffer().connect_after("insert-text", self._routeInserted)1788 routeWindow.add(self._route)1789 1790 label.set_mnemonic_widget(self._route)1791 routeBox.pack_start(routeWindow, True, True, 0)1792 1793 mainBox.pack_start(routeBox, True, True, 8)1794 1795 self.addCancelFlightButton()1796 1797 self._backButton = self.addPreviousButton(clicked = self._backClicked)1798 self._button = self.addNextButton(clicked = self._forwardClicked)1799 1800 @property1801 def filedCruiseLevel(self):1802 """Get the filed cruise level."""1803 return self._cruiseLevel.get_value_as_int()1804 1805 @property1806 def route(self):1807 """Get the route."""1808 return self._getRoute()1809 1810 def activate(self):1811 """Setup the route from the booked flight."""1812 self._cruiseLevel.set_value(0)1813 self._cruiseLevel.set_text("")1814 self._route.get_buffer().set_text(self._wizard._bookedFlight.route)1815 self._updateForwardButton()1816 1817 def _getRoute(self):1818 """Get the text of the route."""1819 buffer = self._route.get_buffer()1820 return buffer.get_text(buffer.get_start_iter(),1821 buffer.get_end_iter(), True)1822 1823 def _updateForwardButton(self):1824 """Update the sensitivity of the forward button."""1825 cruiseLevelText = self._cruiseLevel.get_text()1826 cruiseLevel = int(cruiseLevelText) if cruiseLevelText else 01827 self._button.set_sensitive(cruiseLevel>=50 and self._getRoute()!="")1828 1829 def _cruiseLevelChanged(self, *arg):1830 """Called when the cruise level has changed."""1831 self._updateForwardButton()1832 1833 def _routeChanged(self, textBuffer):1834 """Called when the route has changed."""1835 if not self._uppercasingRoute:1836 self._updateForwardButton()1837 1838 def _routeInserted(self, textBuffer, iter, text, length):1839 """Called when new characters are inserted into the route.1840 1841 It uppercases all characters."""1842 if not self._uppercasingRoute:1843 self._uppercasingRoute = True1844 1845 iter1 = iter.copy()1846 iter1.backward_chars(length)1847 textBuffer.delete(iter, iter1)1848 1849 textBuffer.insert(iter, text.upper())1850 1851 self._uppercasingRoute = False1852 1853 def _backClicked(self, button):1854 """Called when the Back button is pressed."""1855 self.goBack()1856 1857 def _forwardClicked(self, button):1858 """Called when the Forward button is clicked."""1859 if self._completed:1860 self._wizard.nextPage()1861 else:1862 bookedFlight = self._wizard._bookedFlight1863 self._wizard.gui.beginBusy(xstr("route_down_notams"))1864 self._wizard.gui.webHandler.getNOTAMs(self._notamsCallback,1865 bookedFlight.departureICAO,1866 bookedFlight.arrivalICAO)1867 startSound(const.SOUND_NOTAM)1868 2545 1869 2546 def _notamsCallback(self, returned, result): … … 2338 3015 self._updatingMETAR = False 2339 3016 2340 self._runway.set_text("") 3017 if self._wizard.takeoffRunway is None: 3018 self._runway.set_text("") 3019 else: 3020 self._runway.set_text(self._wizard.takeoffRunway) 2341 3021 self._runway.set_sensitive(True) 2342 3022 self._sid.set_active(0) … … 2897 3577 self._transition.set_sensitive(True) 2898 3578 2899 self._runway.set_text("") 3579 if self._wizard.landingRunway is None: 3580 self._runway.set_text("") 3581 else: 3582 self._runway.set_text(self._wizard.landingRunway) 2900 3583 self._runway.set_sensitive(True) 2901 3584 … … 3578 4261 self._payloadIndex = len(self._pages) 3579 4262 self._pages.append(TimePage(self)) 3580 self._pages.append(FuelPage(self))3581 4263 self._routePage = RoutePage(self) 3582 4264 self._pages.append(self._routePage) 4265 self._simBriefSetupPage = SimBriefSetupPage(self) 4266 self._pages.append(self._simBriefSetupPage) 4267 self._simBriefingPage = SimBriefingPage(self) 4268 self._pages.append(self._simBriefingPage) 4269 self._pages.append(FuelPage(self)) 3583 4270 self._departureBriefingPage = BriefingPage(self, True) 3584 4271 self._pages.append(self._departureBriefingPage) … … 3653 4340 return self._loginResult 3654 4341 3655 def setCurrentPage(self, index, finalize = False): 3656 """Set the current page to the one with the given index.""" 4342 def setCurrentPage(self, index, finalize = False, fromPageShift = None): 4343 """Set the current page to the one with the given index. 4344 4345 @param fromPageShift if given, the relative index of one of the 4346 previous pages that should be used as the from-page of the next 4347 page. E.g. if fromPageShift is 1, the previous page will be the 4348 from-page.""" 3657 4349 assert index < len(self._pages) 3658 4350 … … 3663 4355 page.complete() 3664 4356 self.remove(page) 4357 if fromPageShift is not None: 4358 fromPage -= fromPageShift 3665 4359 3666 4360 self._currentPage = index … … 3741 4435 3742 4436 @property 4437 def alternate(self): 4438 """Get the ICAO code of the alternate airport.""" 4439 return self._routePage.alternate 4440 4441 @property 3743 4442 def departureMETAR(self): 3744 4443 """Get the METAR of the departure airport.""" … … 3840 4539 return self._finishPage.online 3841 4540 4541 @property 4542 def usingSimBrief(self): 4543 """Indicate if we are using a SimBrief briefing or not.""" 4544 return self._usingSimBrief 4545 4546 @usingSimBrief.setter 4547 def usingSimBrief(self, x): 4548 """Set whether we are using a SimBrief briefing or not.""" 4549 self._usingSimBrief = x 4550 3842 4551 def nextPage(self, finalize = True): 3843 4552 """Go to the next page.""" 3844 4553 self.jumpPage(1, finalize) 3845 4554 3846 def jumpPage(self, count, finalize = True ):4555 def jumpPage(self, count, finalize = True, fromPageShift = None): 3847 4556 """Go to the page which is 'count' pages after the current one.""" 3848 self.setCurrentPage(self._currentPage + count, finalize = finalize) 4557 self.setCurrentPage(self._currentPage + count, 4558 finalize = finalize, fromPageShift = fromPageShift) 3849 4559 3850 4560 def grabDefault(self): … … 3895 4605 self._arrivalNOTAMs = None 3896 4606 self._arrivalMETAR = None 4607 self._usingSimBrief = None 4608 self.takeoffRunway = None 4609 self.landingRunway = None 3897 4610 3898 4611 firstPage = 0 if self._loginResult is None else 1 … … 3938 4651 metar = metar.upper() 3939 4652 if originator in [self._departureBriefingPage, self._takeoffPage]: 3940 self. _departureMETARChanged(metar, originator)4653 self.departureMETARChanged(metar, originator) 3941 4654 else: 3942 self. _arrivalMETARChanged(metar, originator)3943 3944 def _departureMETARChanged(self, metar, originator):4655 self.arrivalMETARChanged(metar, originator) 4656 4657 def departureMETARChanged(self, metar, originator): 3945 4658 """Called when the departure METAR has been edited on one of the 3946 4659 pages. … … 3952 4665 page.changeMETAR(metar) 3953 4666 3954 def _arrivalMETARChanged(self, metar, originator):4667 def arrivalMETARChanged(self, metar, originator): 3955 4668 """Called when the arrival METAR has been edited on one of the 3956 4669 pages. -
src/mlx/gui/gui.py
r620 r687 15 15 from mlx.gui.pirep import PIREPViewer 16 16 from mlx.gui.bugreport import BugReportDialog 17 from mlx.gui.acars import ACARS 18 import cef 17 19 18 20 import mlx.const as const … … 102 104 window.connect("delete-event", self.deleteMainWindow) 103 105 window.connect("window-state-event", self._handleMainWindowState) 106 if os.name=="nt": 107 window.connect("leave-notify-event", self._handleLeaveNotify) 104 108 accelGroup = gtk.AccelGroup() 105 109 window.add_accel_group(accelGroup) 110 window.realize() 106 111 107 112 mainVBox = gtk.VBox() … … 151 156 self._notebook.append_page(self._fleetGateStatus, label) 152 157 158 self._acars = ACARS(self) 159 label = gtk.Label("ACARS") 160 label.set_use_underline(True) 161 self._notebook.append_page(self._acars, label) 162 153 163 (self._debugLogWidget, self._debugLogView) = self._buildLogWidget() 154 164 self._debugLogWidget.show_all() … … 170 180 171 181 window.show_all() 182 if os.name=="nt": 183 window.get_window().focus() 172 184 173 185 self._wizard.grabDefault() … … 427 439 self._updater = Updater(self, 428 440 self._programDirectory, 429 self.config. updateURL,441 self.config.DEFAULT_UPDATE_URL, 430 442 self._mainWindow) 431 443 self._updater.start() 444 445 cef.initialize(self._programDirectory, self._cefInitialized) 432 446 433 447 singleton.raiseCallback = self.raiseCallback 434 448 gtk.main() 435 449 singleton.raiseCallback = None 450 451 cef.finalize() 436 452 437 453 self._disconnect() … … 688 704 self._mainWindow.present() 689 705 706 def _handleLeaveNotify(self, widget, event): 707 """Handle the leave-notify event. 708 709 Here we reset the focus to the main window as CEF might have acquired 710 it earlier.""" 711 self._mainWindow.get_window().focus() 712 690 713 def raiseCallback(self): 691 714 """Callback for the singleton handling code.""" … … 788 811 self._weightHelp.set_sensitive(False) 789 812 self._mainWindow.get_window().set_cursor(self._busyCursor) 813 self._statusbar.updateBusyState(message) 814 815 def updateBusyState(self, message): 816 """Update the busy state.""" 790 817 self._statusbar.updateBusyState(message) 791 818 … … 1464 1491 summary, description, email) 1465 1492 1493 def _cefInitialized(self): 1494 """Called when CEF has been initialized.""" 1495 self._acars.start() 1496 cef.initializeSimBrief() 1497 1466 1498 def _bugReportSentCallback(self, returned, result): 1467 1499 """Callback function for the bug report sending result.""" -
src/mlx/gui/prefs.py
r392 r684 243 243 self._setSmoothing(self._vsSmoothingEnabled, self._vsSmoothingLength, 244 244 config.vsSmoothingLength) 245 246 self._useSimBrief.set_active(config.useSimBrief) 245 247 246 248 pirepDirectory = config.pirepDirectory … … 291 293 config.vsSmoothingLength = self._getSmoothing(self._vsSmoothingEnabled, 292 294 self._vsSmoothingLength) 295 config.useSimBrief = self._useSimBrief.get_active() 293 296 config.pirepDirectory = text2unicode(self._pirepDirectory.get_text()) 294 297 config.pirepAutoSave = self._pirepAutoSave.get_active() … … 406 409 xstr("prefs_vsSmoothingEnabledTooltip")) 407 410 simulatorBox.pack_start(vsSmoothingBox, False, False, 4) 411 412 self._useSimBrief = gtk.CheckButton(xstr("prefs_useSimBrief")) 413 self._useSimBrief.set_use_underline(True) 414 self._useSimBrief.set_tooltip_text(xstr("prefs_useSimBrief_tooltip")) 415 mainBox.pack_start(self._useSimBrief, False, False, 0) 408 416 409 417 pirepBox = gtk.HBox() -
src/mlx/update.py
r672 r681 525 525 return 526 526 527 print "update: result:", result528 529 527 (manifest, updateManifest, modifiedAndNew, removed) = result 530 528 localRemoved = getToremoveFiles(directory)
Note:
See TracChangeset
for help on using the changeset viewer.