source: src/mlx/i18n.py@ 151:a2584357ff6c

Last change on this file since 151:a2584357ff6c was 151:a2584357ff6c, checked in by István Váradi <ivaradi@…>, 12 years ago

Added support for saving and loading PIREPs

File size: 64.4 KB
Line 
1# Internationalization support
2# -*- coding: utf-8 -*-
3
4#------------------------------------------------------------------------------
5
6_strings = None
7_fallback = None
8
9#------------------------------------------------------------------------------
10
11def setLanguage(language):
12 """Setup the internationalization support for the given language."""
13 print "i18n.setLanguage", language
14 _Strings.set(language)
15
16#------------------------------------------------------------------------------
17
18def xstr(key):
19 """Get the string for the given key in the current language.
20
21 If not found, the fallback language is searched. If that is not found
22 either, the key itself is returned within curly braces."""
23 s = _Strings.current()[key]
24 if s is None:
25 s = _Strings.fallback()[key]
26 return "{" + key + "}" if s is None else s
27
28#------------------------------------------------------------------------------
29
30class _Strings(object):
31 """A collection of strings belonging to a certain language."""
32 # The registry of the string collections. This is a mapping from
33 # language codes to the actual collection objects
34 _instances = {}
35
36 # The fallback instance
37 _fallback = None
38
39 # The currently used instance.
40 _current = None
41
42 @staticmethod
43 def _find(language):
44 """Find an instance for the given language.
45
46 First the language is searched for as is. If not found, it is truncated
47 from the end until the last underscore and that is searched for. And so
48 on, until no underscore remains.
49
50 If nothing is found this way, the
51 """
52 while language:
53 if language in _Strings._instances:
54 return _Strings._instances[language]
55 underscoreIndex = language.rfind("_")
56 language = language[:underscoreIndex] if underscoreIndex>0 else ""
57 return _Strings._fallback
58
59 @staticmethod
60 def set(language):
61 """Set the string for the given language.
62
63 A String instance is searched for the given language (see
64 _Strings._find()). Otherwise the fallback language is used."""
65 strings = _Strings._find(language)
66 assert strings is not None
67 if _Strings._current is not None and \
68 _Strings._current is not _Strings._fallback:
69 _Strings._current.finalize()
70 if strings is not _Strings._fallback:
71 strings.initialize()
72 _Strings._current = strings
73
74 @staticmethod
75 def fallback():
76 """Get the fallback."""
77 return _Strings._fallback
78
79 @staticmethod
80 def current():
81 """Get the current."""
82 return _Strings._current
83
84 def __init__(self, languages, fallback = False):
85 """Construct an empty strings object."""
86 self._strings = {}
87 for language in languages:
88 _Strings._instances[language] = self
89 if fallback:
90 _Strings._fallback = self
91 self.initialize()
92
93 def initialize(self):
94 """Initialize the strings.
95
96 This should be overridden in children to setup the strings."""
97 pass
98
99 def finalize(self):
100 """Finalize the object.
101
102 This releases the string dictionary to free space."""
103 self._strings = {}
104
105 def add(self, id, s):
106 """Add the given text as the string with the given ID.
107
108 If the ID is already in the object, that is an assertion failure!"""
109 assert id not in self._strings
110 self._strings[id] = s
111
112 def __getitem__(self, key):
113 """Get the string with the given key."""
114 return self._strings[key] if key in self._strings else None
115
116#------------------------------------------------------------------------------
117
118class _English(_Strings):
119 """The strings for the English language."""
120 def __init__(self):
121 """Construct the object."""
122 super(_English, self).__init__(["en_GB", "en"], fallback = True)
123
124 def initialize(self):
125 """Initialize the strings."""
126 self.add("button_ok", "_OK")
127 self.add("button_cancel", "_Cancel")
128 self.add("button_yes", "_Yes")
129 self.add("button_no", "_No")
130 self.add("button_browse", "Browse...")
131
132 self.add("menu_file", "File")
133 self.add("menu_file_loadPIREP", "_Load PIREP...")
134 self.add("menu_file_loadPIREP_key", "l")
135 self.add("menu_file_quit", "_Quit")
136 self.add("menu_file_quit_key", "q")
137 self.add("quit_question", "Are you sure to quit the logger?")
138
139 self.add("menu_tools", "Tools")
140 self.add("menu_tools_prefs", "_Preferences")
141 self.add("menu_tools_prefs_key", "p")
142
143 self.add("menu_view", "View")
144 self.add("menu_view_monitor", "Show _monitor window")
145 self.add("menu_view_monitor_key", "m")
146 self.add("menu_view_debug", "Show _debug log")
147 self.add("menu_view_debug_key", "d")
148
149 self.add("tab_flight", "_Flight")
150 self.add("tab_flight_tooltip", "Flight wizard")
151 self.add("tab_flight_info", "Flight _info")
152 self.add("tab_flight_info_tooltip", "Further information regarding the flight")
153 self.add("tab_weight_help", "_Help")
154 self.add("tab_weight_help_tooltip", "Help to calculate the weights")
155 self.add("tab_log", "_Log")
156 self.add("tab_log_tooltip",
157 "The log of your flight that will be sent to the MAVA website")
158 self.add("tab_gates", "_Gates")
159 self.add("tab_gates_tooltip", "The status of the MAVA fleet and the gates at LHBP")
160 self.add("tab_debug_log", "_Debug log")
161 self.add("tab_debug_log_tooltip", "Log with debugging information.")
162
163 self.add("conn_failed", "Cannot connect to the simulator.")
164 self.add("conn_failed_sec",
165 "Rectify the situation, and press <b>Try again</b> "
166 "to try the connection again, "
167 "or <b>Cancel</b> to cancel the flight.")
168 self.add("conn_broken",
169 "The connection to the simulator failed unexpectedly.")
170 self.add("conn_broken_sec",
171 "If the simulator has crashed, restart it "
172 "and restore your flight as much as possible "
173 "to the state it was in before the crash. "
174 "Then press <b>Reconnect</b> to reconnect.\n\n"
175 "If you want to cancel the flight, press <b>Cancel</b>.")
176 self.add("button_tryagain", "_Try again")
177 self.add("button_reconnect", "_Reconnect")
178
179 self.add("login", "Login")
180 self.add("loginHelp",
181 "Enter your MAVA pilot's ID and password to\n" \
182 "log in to the MAVA website and download\n" \
183 "your booked flights.")
184 self.add("label_pilotID", "Pil_ot ID:")
185 self.add("login_pilotID_tooltip",
186 "Enter your MAVA pilot's ID. This usually starts with a "
187 "'P' followed by 3 digits.")
188 self.add("label_password", "_Password:")
189 self.add("login_password_tooltip",
190 "Enter the password for your pilot's ID")
191 self.add("remember_password", "_Remember password")
192 self.add("login_remember_tooltip",
193 "If checked, your password will be stored, so that you should "
194 "not have to enter it every time. Note, however, that the password "
195 "is stored as text, and anybody who can access your files will "
196 "be able to read it.")
197 self.add("button_login", "Logi_n")
198 self.add("login_button_tooltip", "Click to log in.")
199 self.add("login_busy", "Logging in...")
200 self.add("login_invalid", "Invalid pilot's ID or password.")
201 self.add("login_invalid_sec",
202 "Check the ID and try to reenter the password.")
203 self.add("login_failconn",
204 "Failed to connect to the MAVA website.")
205 self.add("login_failconn_sec", "Try again in a few minutes.")
206
207 self.add("button_next", "_Next")
208 self.add("button_next_tooltip", "Click to go to the next page.")
209 self.add("button_previous", "_Previous")
210 self.add("button_previous_tooltip", "Click to go to the previous page.")
211
212 self.add("flightsel_title", "Flight selection")
213 self.add("flightsel_help", "Select the flight you want to perform.")
214 self.add("flightsel_chelp", "You have selected the flight highlighted below.")
215 self.add("flightsel_no", "Flight no.")
216 self.add("flightsel_deptime", "Departure time [UTC]")
217 self.add("flightsel_from", "From")
218 self.add("flightsel_to", "To")
219
220 self.add("fleet_busy", "Retrieving fleet...")
221 self.add("fleet_failed",
222 "Failed to retrieve the information on the fleet.")
223 self.add("fleet_update_busy", "Updating plane status...")
224 self.add("fleet_update_failed",
225 "Failed to update the status of the airplane.")
226
227 self.add("gatesel_title", "LHBP gate selection")
228 self.add("gatesel_help",
229 "The airplane's gate position is invalid.\n\n" \
230 "Select the gate from which you\n" \
231 "would like to begin the flight.")
232 self.add("gatesel_conflict", "Gate conflict detected again.")
233 self.add("gatesel_conflict_sec",
234 "Try to select a different gate.")
235
236 self.add("connect_title", "Connect to the simulator")
237 self.add("connect_help",
238 "Load the aircraft below into the simulator and park it\n" \
239 "at the given airport, at the gate below, if present.\n\n" \
240 "Then press the Connect button to connect to the simulator.")
241 self.add("connect_chelp",
242 "The basic data of your flight can be read below.")
243 self.add("connect_flightno", "Flight number:")
244 self.add("connect_acft", "Aircraft:")
245 self.add("connect_tailno", "Tail number:")
246 self.add("connect_airport", "Airport:")
247 self.add("connect_gate", "Gate:")
248 self.add("button_connect", "_Connect")
249 self.add("button_connect_tooltip", "Click to connect to the simulator.")
250 self.add("connect_busy", "Connecting to the simulator...")
251
252 self.add("payload_title", "Payload")
253 self.add("payload_help",
254 "The briefing contains the weights below.\n" \
255 "Setup the cargo weight here and the payload weight "
256 "in the simulator.\n\n" \
257 "You can also check here what the simulator reports as ZFW.")
258 self.add("payload_chelp",
259 "You can see the weights in the briefing\n" \
260 "and the cargo weight you have selected below.\n\n" \
261 "You can also query the ZFW reported by the simulator.")
262 self.add("payload_crew", "Crew:")
263 self.add("payload_pax", "Passengers:")
264 self.add("payload_bag", "Baggage:")
265 self.add("payload_cargo", "_Cargo:")
266 self.add("payload_cargo_tooltip",
267 "The weight of the cargo for your flight.")
268 self.add("payload_mail", "Mail:")
269 self.add("payload_zfw", "Calculated ZFW:")
270 self.add("payload_fszfw", "_ZFW from FS:")
271 self.add("payload_fszfw_tooltip",
272 "Click here to refresh the ZFW value from the simulator.")
273 self.add("payload_zfw_busy", "Querying ZFW...")
274
275 self.add("time_title", "Time")
276 self.add("time_help",
277 "The departure and arrival times are displayed below in UTC.\n\n" \
278 "You can also query the current UTC time from the simulator.\n" \
279 "Ensure that you have enough time to properly prepare for the flight.")
280 self.add("time_chelp",
281 "The departure and arrival times are displayed below in UTC.\n\n" \
282 "You can also query the current UTC time from the simulator.\n")
283 self.add("time_departure", "Departure:")
284 self.add("time_arrival", "Arrival:")
285 self.add("time_fs", "_Time from FS:")
286 self.add("time_fs_tooltip",
287 "Click here to query the current UTC time from the simulator.")
288 self.add("time_busy", "Querying time...")
289
290 self.add("fuel_title", "Fuel")
291 self.add("fuel_help",
292 "Enter the amount of fuel in kilograms that need to be "
293 "present in each tank below.\n\n"
294 "When you press <b>Next</b>, the necessary amount of fuel\n"
295 "will be pumped into or out of the tanks.")
296 self.add("fuel_chelp",
297 "The amount of fuel tanked into your aircraft at the\n"
298 "beginning of the flight can be seen below.")
299
300 self.add("fuel_tank_centre", "_Centre\n")
301 self.add("fuel_tank_left", "L_eft\n")
302 self.add("fuel_tank_right", "_Right\n")
303 self.add("fuel_tank_left_aux", "Left\nA_ux")
304 self.add("fuel_tank_right_aux", "Right\nAu_x")
305 self.add("fuel_tank_left_tip", "Left\n_Tip")
306 self.add("fuel_tank_right_tip", "Right\nTip")
307 self.add("fuel_tank_external1", "External\n_1")
308 self.add("fuel_tank_external2", "External\n_2")
309 self.add("fuel_tank_centre2", "Ce_ntre\n2")
310 self.add("fuel_get_busy", "Querying fuel information...")
311 self.add("fuel_pump_busy", "Pumping fuel...")
312 self.add("fuel_tank_tooltip",
313 "This part displays the current level of the fuel in the "
314 "compared to its capacity. The "
315 '<span color="turquoise">turquoise</span> '
316 "slider shows the level that should be loaded into the tank "
317 "for the flight. You can click anywhere in the widget to "
318 "move the slider there. Or you can grab it by holding down "
319 "the left button of your mouse, and move the pointer up or "
320 "down. The scroll wheel on your mouse also increments or "
321 "decrements the amount of fuel by 10. If you hold down "
322 "the <b>Shift</b> key while scrolling, the steps will be "
323 "100, or with the <b>Control</b> key, 1.")
324
325 self.add("route_title", "Route")
326 self.add("route_help",
327 "Set your cruise flight level below, and\n" \
328 "if necessary, edit the flight plan.")
329 self.add("route_chelp",
330 "If necessary, you can modify the cruise level and\n" \
331 "the flight plan below during flight.\n" \
332 "If so, please, add a comment on why " \
333 "the modification became necessary.")
334 self.add("route_level", "_Cruise level:")
335 self.add("route_level_tooltip",
336 "The cruise flight level. Click on the arrows to increment "
337 "or decrement by 10, or enter the number on the keyboard.")
338 self.add("route_route", "_Route")
339 self.add("route_route_tooltip",
340 "The planned flight route in the standard format.")
341 self.add("route_down_notams", "Downloading NOTAMs...")
342 self.add("route_down_metars", "Downloading METARs...")
343
344 self.add("briefing_title", "Briefing (%d/2): %s")
345 self.add("briefing_departure", "departure")
346 self.add("briefing_arrival", "arrival")
347 self.add("briefing_help",
348 "Read carefully the NOTAMs and METAR below.\n\n" \
349 "You can edit the METAR if your simulator or network\n" \
350 "provides different weather.")
351 self.add("briefing_chelp",
352 "If your simulator or network provides a different\n" \
353 "weather, you can edit the METAR below.")
354 self.add("briefing_notams_init", "LHBP NOTAMs")
355 self.add("briefing_metar_init", "LHBP METAR")
356 self.add("briefing_button",
357 "I have read the briefing and am _ready to fly!")
358 self.add("briefing_notams_template", "%s NOTAMs")
359 self.add("briefing_metar_template", "%s _METAR")
360 self.add("briefing_notams_failed", "Could not download NOTAMs")
361 self.add("briefing_notams_missing",
362 "Could not download NOTAM for this airport")
363 self.add("briefing_metar_failed", "Could not download METAR")
364
365 self.add("takeoff_title", "Takeoff")
366 self.add("takeoff_help",
367 "Enter the runway and SID used, as well as the speeds.")
368 self.add("takeoff_chelp",
369 "The runway, SID and takeoff speeds logged can be seen below.")
370 self.add("takeoff_runway", "Run_way:")
371 self.add("takeoff_runway_tooltip",
372 "The runway the takeoff is performed from.")
373 self.add("takeoff_sid", "_SID:")
374 self.add("takeoff_sid_tooltip",
375 "The name of the Standard Instrument Deparature procedure followed.")
376 self.add("takeoff_v1", "V<sub>_1</sub>:")
377 self.add("takeoff_v1_tooltip", "The takeoff decision speed in knots.")
378 self.add("label_knots", "knots")
379 self.add("takeoff_vr", "V<sub>_R</sub>:")
380 self.add("takeoff_vr_tooltip", "The takeoff rotation speed in knots.")
381 self.add("takeoff_v2", "V<sub>_2</sub>:")
382 self.add("takeoff_v2_tooltip", "The takeoff safety speed in knots.")
383
384 self.add("landing_title", "Landing")
385 self.add("landing_help",
386 "Enter the STAR and/or transition, runway,\n" \
387 "approach type and V<sub>Ref</sub> used.")
388 self.add("landing_chelp",
389 "The STAR and/or transition, runway, approach\n" \
390 "type and V<sub>Ref</sub> logged can be seen below.")
391 self.add("landing_star", "_STAR:")
392 self.add("landing_star_tooltip",
393 "The name of Standard Terminal Arrival Route followed.")
394 self.add("landing_transition", "_Transition:")
395 self.add("landing_transition_tooltip",
396 "The name of transition executed or VECTORS if vectored by ATC.")
397 self.add("landing_runway", "Run_way:")
398 self.add("landing_runway_tooltip",
399 "The runway the landing is performed on.")
400 self.add("landing_approach", "_Approach type:")
401 self.add("landing_approach_tooltip",
402 "The type of the approach, e.g. ILS or VISUAL.")
403 self.add("landing_vref", "V<sub>_Ref</sub>:")
404 self.add("landing_vref_tooltip",
405 "The landing reference speed in knots.")
406
407 self.add("flighttype_scheduled", "scheduled")
408 self.add("flighttype_ot", "old-timer")
409 self.add("flighttype_vip", "VIP")
410 self.add("flighttype_charter", "charter")
411
412 self.add("finish_title", "Finish")
413 self.add("finish_help",
414 "There are some statistics about your flight below.\n\n" \
415 "Review the data, also on earlier pages, and if you are\n" \
416 "satisfied, you can save or send your PIREP.")
417 self.add("finish_rating", "Flight rating:")
418 self.add("finish_flight_time", "Flight time:")
419 self.add("finish_block_time", "Block time:")
420 self.add("finish_distance", "Distance flown:")
421 self.add("finish_fuel", "Fuel used:")
422 self.add("finish_type", "_Type:")
423 self.add("finish_type_tooltip", "Select the type of the flight.")
424 self.add("finish_online", "_Online flight")
425 self.add("finish_online_tooltip",
426 "Check if your flight was online, uncheck otherwise.")
427 self.add("finish_gate", "_Arrival gate:")
428 self.add("finish_gate_tooltip",
429 "Select the gate or stand at which you have arrived to LHBP.")
430 self.add("finish_save", "Sa_ve PIREP...")
431 self.add("finish_save_tooltip",
432 "Click to save the PIREP into a file on your computer. " \
433 "The PIREP can be loaded and sent later.")
434 self.add("finish_save_title", "Save PIREP into")
435 self.add("finish_save_done", "The PIREP was saved successfully")
436 self.add("finish_save_failed", "Failed to save the PIREP")
437 self.add("finish_save_failed_sec", "See the debug log for the details.")
438
439 # C D
440
441 self.add("info_comments", "_Comments")
442 self.add("info_defects", "Flight _defects")
443 self.add("info_delay", "Delay codes")
444
445 # O V N E Y T R A W P
446
447 self.add("info_delay_loading", "L_oading problems")
448 self.add("info_delay_vatsim", "_VATSIM problem")
449 self.add("info_delay_net", "_Net problems")
450 self.add("info_delay_atc", "Controll_er's fault")
451 self.add("info_delay_system", "S_ystem crash/freeze")
452 self.add("info_delay_nav", "Naviga_tion problem")
453 self.add("info_delay_traffic", "T_raffic problems")
454 self.add("info_delay_apron", "_Apron navigation problem")
455 self.add("info_delay_weather", "_Weather problems")
456 self.add("info_delay_personal", "_Personal reasons")
457
458 self.add("statusbar_conn_tooltip",
459 'The state of the connection.\n'
460 '<span foreground="grey">Grey</span> means idle.\n'
461 '<span foreground="red">Red</span> means trying to connect.\n'
462 '<span foreground="green">Green</span> means connected.')
463 self.add("statusbar_stage_tooltip", "The flight stage")
464 self.add("statusbar_time_tooltip", "The simulator time in UTC")
465 self.add("statusbar_rating_tooltip", "The flight rating")
466 self.add("statusbar_busy_tooltip", "The status of the background tasks.")
467
468 self.add("flight_stage_boarding", "boarding")
469 self.add("flight_stage_pushback and taxi", "pushback and taxi")
470 self.add("flight_stage_takeoff", "takeoff")
471 self.add("flight_stage_RTO", "RTO")
472 self.add("flight_stage_climb", "climb")
473 self.add("flight_stage_cruise", "cruise")
474 self.add("flight_stage_descent", "descent")
475 self.add("flight_stage_landing", "landing")
476 self.add("flight_stage_taxi", "taxi")
477 self.add("flight_stage_parking", "parking")
478 self.add("flight_stage_go-around", "go-around")
479 self.add("flight_stage_end", "end")
480
481 self.add("statusicon_showmain", "Show main window")
482 self.add("statusicon_showmonitor", "Show monitor window")
483 self.add("statusicon_quit", "Quit")
484 self.add("statusicon_stage", "Stage")
485 self.add("statusicon_rating", "Rating")
486
487 self.add("update_title", "Update")
488 self.add("update_needsudo",
489 "There is an update available, but the program cannot write\n"
490 "its directory due to insufficient privileges.\n\n"
491 "Click OK, if you want to run a helper program\n"
492 "with administrator privileges "
493 "to complete the update,\n"
494 "Cancel otherwise.")
495 self.add("update_manifest_progress", "Downloading manifest...")
496 self.add("update_manifest_done", "Downloaded manifest...")
497 self.add("update_files_progress", "Downloading files...")
498 self.add("update_files_bytes", "Downloaded %d of %d bytes")
499 self.add("update_renaming", "Renaming downloaded files...")
500 self.add("update_renamed", "Renamed %s")
501 self.add("update_removing", "Removing files...")
502 self.add("update_removed", "Removed %s")
503 self.add("update_writing_manifest", "Writing the new manifest")
504 self.add("update_finished",
505 "Finished updating. Press OK to restart the program.")
506 self.add("update_nothing", "There was nothing to update")
507 self.add("update_failed", "Failed, see the debug log for details.")
508
509 self.add("weighthelp_usinghelp", "_Using help")
510 self.add("weighthelp_usinghelp_tooltip",
511 "If you check this, some help will be displayed on how "
512 "to calculate the payload weight for your flight. "
513 "Note, that the usage of this facility will be logged.")
514 self.add("weighthelp_header_calculated", "Requested/\ncalculated")
515 self.add("weighthelp_header_simulator", "Simulator\ndata")
516 self.add("weighthelp_header_simulator_tooltip",
517 "Click this button to retrieve the weight values from the "
518 "simulator, which will be displayed below. If a value is "
519 "within 10% of the tolerance, it is displayed in "
520 '<b><span foreground="darkgreen">green</span></b>, '
521 "if it is out of the tolerance, it is displayed in "
522 '<b><span foreground="red">red</span></b>, '
523 "otherwise in"
524 '<b><span foreground="orange">yellow</span></b>.')
525 self.add("weighthelp_crew", "Crew (%s):")
526 self.add("weighthelp_pax", "Passengers (%s):")
527 self.add("weighthelp_baggage", "Baggage:")
528 self.add("weighthelp_cargo", "Cargo:")
529 self.add("weighthelp_mail", "Mail:")
530 self.add("weighthelp_payload", "Payload:")
531 self.add("weighthelp_dow", "DOW:")
532 self.add("weighthelp_zfw", "ZFW:")
533 self.add("weighthelp_gross", "Gross weight:")
534 self.add("weighthelp_mzfw", "MZFW:")
535 self.add("weighthelp_mtow", "MTOW:")
536 self.add("weighthelp_mlw", "MLW:")
537 self.add("weighthelp_busy", "Querying weight data...")
538
539 self.add("gates_fleet_title", "Fl_eet")
540 self.add("gates_gates_title", "LHBP gates")
541 self.add("gates_tailno", "Tail nr.")
542 self.add("gates_planestatus", "Status")
543 self.add("gates_refresh", "_Refresh data")
544 self.add("gates_refresh_tooltip",
545 "Click this button to refresh the status data above")
546 self.add("gates_planes_tooltip",
547 "This table lists all the planes in the MAVA fleet and their "
548 "last known location. If a plane is conflicting with another "
549 "because of occupying the same gate its data is displayed in "
550 "<b><span foreground=\"red\">red</span></b>.")
551 self.add("gates_gates_tooltip",
552 "The numbers of the gates occupied by MAVA planes are "
553 "displayed in "
554 '<b><span foreground="orange">yellow</span></b>, '
555 "while available gates in black.")
556 self.add("gates_plane_away", "AWAY")
557 self.add("gates_plane_parking", "PARKING")
558 self.add("gates_plane_unknown", "UNKNOWN")
559
560 self.add("prefs_title", "Preferences")
561 self.add("prefs_tab_general", "_General")
562 self.add("prefs_tab_general_tooltip", "General preferences")
563 self.add("prefs_tab_messages", "_Messages")
564 self.add("prefs_tab_message_tooltip",
565 "Enable/disable message notifications in FS and/or by sound")
566 self.add("prefs_tab_advanced", "_Advanced")
567 self.add("prefs_tab_advanced_tooltip",
568 "Advanced preferences, edit with care!")
569 self.add("prefs_language", "_Language:")
570 self.add("prefs_language_tooltip",
571 "The language of the program")
572 self.add("prefs_restart",
573 "Restart needed")
574 self.add("prefs_language_restart_sec",
575 "If you change the language, the program should be restarted "
576 "so that the change has an effect.")
577 self.add("prefs_lang_$system", "system default")
578 self.add("prefs_lang_en_GB", "English")
579 self.add("prefs_lang_hu_HU", "Hungarian")
580 self.add("prefs_hideMinimizedWindow",
581 "_Hide the main window when minimized")
582 self.add("prefs_hideMinimizedWindow_tooltip",
583 "If checked, the main window will be hidden completely "
584 "when minimized. You can still make it appear by "
585 "clicking on the status icon or using its popup menu.")
586 self.add("prefs_onlineGateSystem",
587 "_Use the Online Gate System")
588 self.add("prefs_onlineGateSystem_tooltip",
589 "If this is checked, the logger will query and update the "
590 "LHBP Online Gate System.")
591 self.add("prefs_onlineACARS",
592 "Use the Online ACA_RS System")
593 self.add("prefs_onlineACARS_tooltip",
594 "If this is checked, the logger will continuously update "
595 "the MAVA Online ACARS System with your flight's data.")
596 self.add("prefs_flaretimeFromFS",
597 "Take flare _time from the simulator")
598 self.add("prefs_flaretimeFromFS_tooltip",
599 "If this is checked, the time of the flare will be calculated "
600 "from timestamps returned by the simulator.")
601 self.add("prefs_syncFSTime",
602 "_Synchronize the time in FS with the computer's clock")
603 self.add("prefs_syncFSTime_tooltip",
604 "If this is checked the flight simulator's internal clock "
605 "will always be synchronized to the computer's clock.")
606 self.add("prefs_pirepDirectory",
607 "_PIREP directory:")
608 self.add("prefs_pirepDirectory_tooltip",
609 "The directory that will be offered by default when "
610 "saving a PIREP.")
611 self.add("prefs_pirepDirectory_browser_title",
612 "Select PIREP directory")
613 self.add("prefs_update_auto", "Update the program auto_matically")
614 self.add("prefs_update_auto_tooltip",
615 "If checked the program will look for updates when "
616 "it is starting, and if new updates are found, they "
617 "will be downloaded and installed. This ensures that "
618 "the PIREP you send will always conform to the latest "
619 "expectations of the airline.")
620 self.add("prefs_update_auto_warning",
621 "Disabling automatic updates may result in "
622 "your version of the program becoming out of date "
623 "and your PIREPs not being accepted.")
624 self.add("prefs_update_url", "Update _URL:")
625 self.add("prefs_update_url_tooltip",
626 "The URL from which to download the updates. Change this "
627 "only if you know what you are doing!")
628
629 # A C G M O S
630
631 self.add("prefs_msgs_fs", "Displayed in FS")
632 self.add("prefs_msgs_sound", "Sound alert")
633 self.add("prefs_msgs_type_loggerError", "Logger _Error Messages")
634 self.add("prefs_msgs_type_information",
635 "_Information Messages\n(e.g. flight status)")
636 self.add("prefs_msgs_type_fault",
637 "_Fault Messages\n(e.g. strobe light fault)")
638 self.add("prefs_msgs_type_nogo",
639 "_NOGO Fault messages\n(e.g. MTOW NOGO)")
640 self.add("prefs_msgs_type_gateSystem",
641 "Ga_te System Messages\n(e.g. available gates)")
642 self.add("prefs_msgs_type_environment",
643 "Envi_ronment Messages\n(e.g. \"welcome to XY aiport\")")
644 self.add("prefs_msgs_type_help",
645 "_Help Messages\n(e.g. \"don't forget to set VREF\")")
646 self.add("prefs_msgs_type_visibility",
647 "_Visibility Messages")
648
649 self.add("loadPIREP_browser_title", "Select the PIREP to load")
650 self.add("loadPIREP_filter_pireps", "PIREP files")
651 self.add("loadPIREP_filter_all", "All files")
652 self.add("loadPIREP_failed", "Failed to load the PIREP")
653 self.add("loadPIREP_failed_sec", "See the debug log for the details.")
654 self.add("loadPIREP_send_title", "PIREP")
655 self.add("loadPIREP_send_help",
656 "The main data of the PIREP loaded:")
657 self.add("loadPIREP_send_flightno", "Flight number:")
658 self.add("loadPIREP_send_date", "Date:")
659 self.add("loadPIREP_send_from", "From:")
660 self.add("loadPIREP_send_to", "To:")
661 self.add("loadPIREP_send_rating", "Rating:")
662
663 self.add("sendPIREP", "_Send PIREP...")
664 self.add("sendPIREP_tooltip",
665 "Click to send the PIREP to the MAVA website for further review.")
666 self.add("sendPIREP_busy", "Sending PIREP...")
667 self.add("sendPIREP_success",
668 "The PIREP was sent successfully.")
669 self.add("sendPIREP_success_sec",
670 "Await the thorough scrutiny by our fearless PIREP reviewers! :)")
671 self.add("sendPIREP_already",
672 "The PIREP for this flight has already been sent!")
673 self.add("sendPIREP_already_sec",
674 "You may clear the old PIREP on the MAVA website.")
675 self.add("sendPIREP_notavail",
676 "This flight is not available anymore!")
677 self.add("sendPIREP_unknown",
678 "The MAVA website returned with an unknown error.")
679 self.add("sendPIREP_unknown_sec",
680 "See the debug log for more information.")
681 self.add("sendPIREP_failed",
682 "Could not send the PIREP to the MAVA website.")
683 self.add("sendPIREP_failed_sec",
684 "This can be a network problem, in which case\n" \
685 "you may try again later. Or it can be a bug;\n" \
686 "see the debug log for more information.")
687
688#------------------------------------------------------------------------------
689
690class _Hungarian(_Strings):
691 """The strings for the Hungarian language."""
692 def __init__(self):
693 """Construct the object."""
694 super(_Hungarian, self).__init__(["hu_HU", "hu"])
695
696 def initialize(self):
697 """Initialize the strings."""
698 self.add("button_ok", "_OK")
699 self.add("button_cancel", "_Mégse")
700 self.add("button_yes", "_Igen")
701 self.add("button_no", "_Nem")
702 self.add("button_browse", "Keresés...")
703
704 self.add("menu_file", "Fájl")
705 self.add("menu_file_loadPIREP", "PIREP be_töltése...")
706 self.add("menu_file_loadPIREP_key", "t")
707 self.add("menu_file_quit", "_Kilépés")
708 self.add("menu_file_quit_key", "k")
709 self.add("quit_question", "Biztosan ki akarsz lépni?")
710
711 self.add("menu_tools", "Eszközök")
712 self.add("menu_tools_prefs", "_Beállítások")
713 self.add("menu_tools_prefs_key", "b")
714
715 self.add("menu_view", "Nézet")
716 self.add("menu_view_monitor", "Mutasd a _monitor ablakot")
717 self.add("menu_view_monitor_key", "m")
718 self.add("menu_view_debug", "Mutasd a _debug naplót")
719 self.add("menu_view_debug_key", "d")
720
721 self.add("tab_flight", "_Járat")
722 self.add("tab_flight_tooltip", "Járat varázsló")
723 self.add("tab_flight_info", "Járat _info")
724 self.add("tab_flight_info_tooltip", "Egyéb információk a járat teljesítésével kapcsolatban")
725 self.add("tab_weight_help", "_Segítség")
726 self.add("tab_weight_help_tooltip", "Segítség a súlyszámításhoz")
727 self.add("tab_log", "_Napló")
728 self.add("tab_log_tooltip",
729 "A járat naplója, amit majd el lehet küldeni a MAVA szerverére")
730 self.add("tab_gates", "_Kapuk")
731 self.add("tab_gates_tooltip", "A MAVA flotta és LHBP kapuinak állapota")
732 self.add("tab_debug_log", "_Debug napló")
733 self.add("tab_debug_log_tooltip",
734 "Hibakereséshez használható információkat tartalmazó napló.")
735
736 self.add("conn_failed", "Nem tudtam kapcsolódni a szimulátorhoz.")
737 self.add("conn_failed_sec",
738 "Korrigáld a problémát, majd nyomd meg az "
739 "<b>Próbáld újra</b> gombot a újrakapcsolódáshoz, "
740 "vagy a <b>Mégse</b> gombot a járat megszakításához.")
741 self.add("conn_broken",
742 "A szimulátorral való kapcsolat váratlanul megszakadt.")
743 self.add("conn_broken_sec",
744 "Ha a szimulátor elszállt, indítsd újra "
745 "és állítsd vissza a repülésed elszállás előtti "
746 "állapotát amennyire csak lehet. "
747 "Ezután nyomd meg az <b>Újrakapcsolódás</b> gombot "
748 "a kapcsolat ismételt felvételéhez.\n\n"
749 "Ha meg akarod szakítani a repülést, nyomd meg a "
750 "<b>Mégse</b> gombot.")
751 self.add("button_tryagain", "_Próbáld újra")
752 self.add("button_reconnect", "Újra_kapcsolódás")
753
754 self.add("login", "Bejelentkezés")
755 self.add("loginHelp",
756 "Írd be a MAVA pilóta azonosítódat és a\n" \
757 "bejelentkezéshez használt jelszavadat,\n" \
758 "hogy választhass a foglalt járataid közül.")
759 self.add("label_pilotID", "_Azonosító:")
760 self.add("login_pilotID_tooltip",
761 "Írd be a MAVA pilóta azonosítódat. Ez általában egy 'P' "
762 "betűvel kezdődik, melyet 3 számjegy követ.")
763 self.add("label_password", "Je_lszó:")
764 self.add("login_password_tooltip",
765 "Írd be a pilóta azonosítódhoz tartozó jelszavadat.")
766 self.add("remember_password", "_Emlékezz a jelszóra")
767 self.add("login_remember_tooltip",
768 "Ha ezt kiválasztod, a jelszavadat eltárolja a program, így "
769 "nem kell mindig újból beírnod. Vedd azonban figyelembe, "
770 "hogy a jelszót szövegként tároljuk, így bárki elolvashatja, "
771 "aki hozzáfér a fájljaidhoz.")
772 self.add("button_login", "_Bejelentkezés")
773 self.add("login_button_tooltip", "Kattints ide a bejelentkezéshez.")
774 self.add("login_busy", "Bejelentkezés...")
775 self.add("login_invalid", "Érvénytelen azonosító vagy jelszó.")
776 self.add("login_invalid_sec",
777 "Ellenőrízd az azonosítót, és próbáld meg újra beírni a jelszót.")
778 self.add("login_failconn",
779 "Nem sikerült kapcsolódni a MAVA honlaphoz.")
780 self.add("login_failconn_sec", "Próbáld meg pár perc múlva.")
781
782 self.add("button_next", "_Előre")
783 self.add("button_next_tooltip",
784 "Kattints ide, hogy a következő lapra ugorj.")
785 self.add("button_previous", "_Vissza")
786 self.add("button_previous_tooltip",
787 "Kattints ide, hogy az előző lapra ugorj.")
788
789 self.add("flightsel_title", "Járatválasztás")
790 self.add("flightsel_help", "Válaszd ki a járatot, amelyet le szeretnél repülni.")
791 self.add("flightsel_chelp", "A lent kiemelt járatot választottad.")
792 self.add("flightsel_no", "Járatszám")
793 self.add("flightsel_deptime", "Indulás ideje [UTC]")
794 self.add("flightsel_from", "Honnan")
795 self.add("flightsel_to", "Hová")
796
797 self.add("fleet_busy", "Flottaadatok letöltése...")
798 self.add("fleet_failed",
799 "Nem sikerült letöltenem a flotta adatait.")
800 self.add("fleet_update_busy", "Repülőgép pozíció frissítése...")
801 self.add("fleet_update_failed",
802 "Nem sikerült frissítenem a repülőgép pozícióját.")
803
804 self.add("gatesel_title", "LHBP kapuválasztás")
805 self.add("gatesel_help",
806 "A repülőgép kapu pozíciója érvénytelen.\n\n" \
807 "Válaszd ki azt a kaput, ahonnan\n" \
808 "el szeretnéd kezdeni a járatot.")
809 self.add("gatesel_conflict", "Ismét kapuütközés történt.")
810 self.add("gatesel_conflict_sec",
811 "Próbálj egy másik kaput választani.")
812
813 self.add("connect_title", "Kapcsolódás a szimulátorhoz")
814 self.add("connect_help",
815 "Tölsd be a lent látható repülőgépet a szimulátorba\n" \
816 "az alább megadott reptérre és kapuhoz.\n\n" \
817 "Ezután nyomd meg a Kapcsolódás gombot a kapcsolódáshoz.")
818 self.add("connect_chelp",
819 "A járat alapadatai lent olvashatók.")
820 self.add("connect_flightno", "Járatszám:")
821 self.add("connect_acft", "Típus:")
822 self.add("connect_tailno", "Lajstromjel:")
823 self.add("connect_airport", "Repülőtér:")
824 self.add("connect_gate", "Kapu:")
825 self.add("button_connect", "K_apcsolódás")
826 self.add("button_connect_tooltip",
827 "Kattints ide a szimulátorhoz való kapcsolódáshoz.")
828 self.add("connect_busy", "Kapcsolódás a szimulátorhoz...")
829
830 self.add("payload_title", "Terhelés")
831 self.add("payload_help",
832 "Az eligazítás az alábbi tömegeket tartalmazza.\n" \
833 "Allítsd be a teherszállítmány tömegét itt, a hasznos "
834 "terhet pedig a szimulátorban.\n\n" \
835 "Azt is ellenőrízheted, hogy a szimulátor milyen ZFW-t jelent.")
836 self.add("payload_chelp",
837 "Lent láthatók az eligazításban szereplő tömegek, valamint\n" \
838 "a teherszállítmány általad megadott tömege.\n\n" \
839 "Azt is ellenőrízheted, hogy a szimulátor milyen ZFW-t jelent.")
840 self.add("payload_crew", "Legénység:")
841 self.add("payload_pax", "Utasok:")
842 self.add("payload_bag", "Poggyász:")
843 self.add("payload_cargo", "_Teher:")
844 self.add("payload_cargo_tooltip",
845 "A teherszállítmány tömege.")
846 self.add("payload_mail", "Posta:")
847 self.add("payload_zfw", "Kiszámolt ZFW:")
848 self.add("payload_fszfw", "_ZFW a szimulátorból:")
849 self.add("payload_fszfw_tooltip",
850 "Kattints ide, hogy frissítsd a ZFW értékét a szimulátorból.")
851 self.add("payload_zfw_busy", "ZFW lekérdezése...")
852
853 self.add("time_title", "Menetrend")
854 self.add("time_help",
855 "Az indulás és az érkezés ideje lent látható UTC szerint.\n\n" \
856 "A szimulátor aktuális UTC szerinti idejét is lekérdezheted.\n" \
857 "Győzödj meg arról, hogy elég időd van a repülés előkészítéséhez.")
858 self.add("time_chelp",
859 "Az indulás és az érkezés ideje lent látható UTC szerint.\n\n" \
860 "A szimulátor aktuális UTC szerinti idejét is lekérdezheted.")
861 self.add("time_departure", "Indulás:")
862 self.add("time_arrival", "Érkezés:")
863 self.add("time_fs", "Idő a s_zimulátorból:")
864 self.add("time_fs_tooltip",
865 "Kattings ide, hogy frissítsd a szimulátor aktuális UTC szerint idejét.")
866 self.add("time_busy", "Idő lekérdezése...")
867
868 self.add("fuel_title", "Üzemanyag")
869 self.add("fuel_help",
870 "Írd be az egyes tartályokba szükséges üzemanyag "
871 "mennyiségét kilogrammban.\n\n"
872 "Ha megnyomod az <b>Előre</b> gombot, a megadott mennyiségű\n"
873 "üzemanyag bekerül a tartályokba.")
874 self.add("fuel_chelp",
875 "A repülés elején az egyes tartályokba tankolt\n"
876 "üzemanyag mennyisége lent látható.")
877
878 # A B D E I G J K N O P S T V Y Z
879
880 self.add("fuel_tank_centre", "Kö_zépső\n")
881 self.add("fuel_tank_left", "_Bal\n")
882 self.add("fuel_tank_right", "J_obb\n")
883 self.add("fuel_tank_left_aux", "Bal\nkie_gészítő")
884 self.add("fuel_tank_right_aux", "Jobb\nkiegészí_tő")
885 self.add("fuel_tank_left_tip", "B_al\nszárnyvég")
886 self.add("fuel_tank_right_tip", "Jobb\nszárn_yvég")
887 self.add("fuel_tank_external1", "Külső\n_1")
888 self.add("fuel_tank_external2", "Külső\n_2")
889 self.add("fuel_tank_centre2", "Közé_pső\n2")
890 self.add("fuel_get_busy", "Az üzemanyag lekérdezése...")
891 self.add("fuel_pump_busy", "Az üzemanyag pumpálása...")
892 self.add("fuel_tank_tooltip",
893 "Ez mutatja az üzemanyag szintjét a tartályban annak "
894 "kapacitásához mérve. A "
895 '<span color="turquoise">türkizkék</span> '
896 "csúszka mutatja a repüléshez kívánt szintet. "
897 "Ha a bal gombbal bárhová kattintasz az ábrán, a csúszka "
898 "odaugrik. Ha a gombot lenyomva tartod, és az egérmutatót "
899 "föl-le mozgatod, a csúszka követi azt. Az egered görgőjével "
900 "is kezelheted a csúszkát. Alaphelyzetben az üzemanyag "
901 "mennyisége 10-zel nő, illetve csökken a görgetés irányától "
902 "függően. Ha a <b>Shift</b> billentyűt lenyomva tartod, "
903 "növekmény 100, a <b>Control</b> billentyűvel pedig 1 lesz.")
904
905 self.add("route_title", "Útvonal")
906 self.add("route_help",
907 "Állítsd be az utazószintet lent, és ha szükséges,\n" \
908 "módosítsd az útvonaltervet.")
909 self.add("route_chelp",
910 "Ha szükséges, lent módosíthatod az utazószintet és\n" \
911 "az útvonaltervet repülés közben is.\n" \
912 "Ha így teszel, légy szíves a megjegyzés mezőben " \
913 "ismertesd ennek okát.")
914 self.add("route_level", "_Utazószint:")
915 self.add("route_level_tooltip", "Az utazószint.")
916 self.add("route_route", "Út_vonal")
917 self.add("route_route_tooltip", "Az útvonal a szokásos formátumban.")
918 self.add("route_down_notams", "NOTAM-ok letöltése...")
919 self.add("route_down_metars", "METAR-ok letöltése...")
920
921 self.add("briefing_title", "Eligazítás (%d/2): %s")
922 self.add("briefing_departure", "indulás")
923 self.add("briefing_arrival", "érkezés")
924 self.add("briefing_help",
925 "Olvasd el figyelmesen a lenti NOTAM-okat és METAR-t.\n\n" \
926 "Ha a szimulátor vagy hálózat más időjárást ad,\n" \
927 "a METAR-t módosíthatod.")
928 self.add("briefing_chelp",
929 "Ha a szimulátor vagy hálózat más időjárást ad,\n" \
930 "a METAR-t módosíthatod.")
931 self.add("briefing_notams_init", "LHBP NOTAM-ok")
932 self.add("briefing_metar_init", "LHBP METAR")
933 self.add("briefing_button",
934 "Elolvastam az eligazítást, és készen állok a _repülésre!")
935 self.add("briefing_notams_template", "%s NOTAM-ok")
936 self.add("briefing_metar_template", "%s _METAR")
937 self.add("briefing_notams_failed", "Nem tudtam letölteni a NOTAM-okat.")
938 self.add("briefing_notams_missing",
939 "Ehhez a repülőtérhez nem találtam NOTAM-ot.")
940 self.add("briefing_metar_failed", "Nem tudtam letölteni a METAR-t.")
941
942 self.add("takeoff_title", "Felszállás")
943 self.add("takeoff_help",
944 "Írd be a felszállásra használt futópálya és SID nevét, valamint a sebességeket.")
945 self.add("takeoff_chelp",
946 "A naplózott futópálya, SID és a sebességek lent olvashatók.")
947 self.add("takeoff_runway", "_Futópálya:")
948 self.add("takeoff_runway_tooltip",
949 "A felszállásra használt futópálya.")
950 self.add("takeoff_sid", "_SID:")
951 self.add("takeoff_sid_tooltip",
952 "Az alkalmazott szabványos műszeres indulási eljárás neve.")
953 self.add("takeoff_v1", "V<sub>_1</sub>:")
954 self.add("takeoff_v1_tooltip", "Az elhatározási sebesség csomóban.")
955 self.add("label_knots", "csomó")
956 self.add("takeoff_vr", "V<sub>_R</sub>:")
957 self.add("takeoff_vr_tooltip", "Az elemelkedési sebesség csomóban.")
958 self.add("takeoff_v2", "V<sub>_2</sub>:")
959 self.add("takeoff_v2_tooltip", "A biztonságos emelkedési sebesség csomóban.")
960
961 self.add("landing_title", "Leszállás")
962 self.add("landing_help",
963 "Írd be az alkalmazott STAR és/vagy bevezetési eljárás nevét,\n"
964 "a használt futópályát, a megközelítés módját, és a V<sub>Ref</sub>-et.")
965 self.add("landing_chelp",
966 "Az alkalmazott STAR és/vagy bevezetési eljárás neve, a használt\n"
967 "futópálya, a megközelítés módja és a V<sub>Ref</sub> lent olvasható.")
968 self.add("landing_star", "_STAR:")
969 self.add("landing_star_tooltip",
970 "A követett szabványos érkezési eljárás neve.")
971 self.add("landing_transition", "_Bevezetés:")
972 self.add("landing_transition_tooltip",
973 "Az alkalmazott bevezetési eljárás neve, vagy VECTORS, "
974 "ha az irányítás vezetett be.")
975 self.add("landing_runway", "_Futópálya:")
976 self.add("landing_runway_tooltip",
977 "A leszállásra használt futópálya.")
978 self.add("landing_approach", "_Megközelítés típusa:")
979 self.add("landing_approach_tooltip",
980 "A megközelítgés típusa, pl. ILS vagy VISUAL.")
981 self.add("landing_vref", "V<sub>_Ref</sub>:")
982 self.add("landing_vref_tooltip",
983 "A leszállási sebesség csomóban.")
984
985 self.add("flighttype_scheduled", "menetrendszerinti")
986 self.add("flighttype_ot", "old-timer")
987 self.add("flighttype_vip", "VIP")
988 self.add("flighttype_charter", "charter")
989
990 self.add("finish_title", "Lezárás")
991 self.add("finish_help",
992 "Lent olvasható némi statisztika a járat teljesítéséről.\n\n" \
993 "Ellenőrízd az adatokat, az előző oldalakon is, és ha\n" \
994 "megfelelnek, elmentheted vagy elküldheted a PIREP-et.")
995 self.add("finish_rating", "Pontszám:")
996 self.add("finish_flight_time", "Repülési idő:")
997 self.add("finish_block_time", "Blokk idő:")
998 self.add("finish_distance", "Repült táv:")
999 self.add("finish_fuel", "Elhasznált üzemanyag:")
1000 self.add("finish_type", "_Típus:")
1001 self.add("finish_type_tooltip", "Válaszd ki a repülés típusát.")
1002 self.add("finish_online", "_Online repülés")
1003 self.add("finish_online_tooltip",
1004 "Jelöld be, ha a repülésed a hálózaton történt, egyébként " \
1005 "szűntesd meg a kijelölést.")
1006 self.add("finish_gate", "_Érkezési kapu:")
1007 self.add("finish_gate_tooltip",
1008 "Válaszd ki azt a kaput vagy állóhelyet, ahová érkeztél LHBP-n.")
1009 self.add("finish_save", "PIREP _mentése...")
1010 self.add("finish_save_tooltip",
1011 "Kattints ide, hogy elmenthesd a PIREP-et egy fájlba a számítógépeden. " \
1012 "A PIREP-et később be lehet tölteni és el lehet küldeni.")
1013 self.add("finish_save_title", "PIREP mentése")
1014 self.add("finish_save_done", "A PIREP mentése sikerült")
1015 self.add("finish_save_failed", "A PIREP mentése nem sikerült")
1016 self.add("finish_save_failed_sec", "A részleteket lásd a debug naplóban.")
1017
1018 # M A
1019
1020 self.add("info_comments", "_Megjegyzések")
1021 self.add("info_defects", "Hib_ajelenségek")
1022 self.add("info_delay", "Késés kódok")
1023
1024 # B V H Y R G F E P Z
1025
1026 self.add("info_delay_loading", "_Betöltési problémák")
1027 self.add("info_delay_vatsim", "_VATSIM probléma")
1028 self.add("info_delay_net", "_Hálózati problémák")
1029 self.add("info_delay_atc", "Irán_yító hibája")
1030 self.add("info_delay_system", "_Rendszer elszállás/fagyás")
1031 self.add("info_delay_nav", "Navi_gációs probléma")
1032 self.add("info_delay_traffic", "_Forgalmi problémák")
1033 self.add("info_delay_apron", "_Előtér navigációs probléma")
1034 self.add("info_delay_weather", "Időjárási _problémák")
1035 self.add("info_delay_personal", "S_zemélyes okok")
1036
1037 self.add("statusbar_conn_tooltip",
1038 'A kapcsolat állapota.\n'
1039 '<span foreground="grey">Szürke</span>: nincs kapcsolat.\n'
1040 '<span foreground="red">Piros</span>: kapcsolódás folyamatban.\n'
1041 '<span foreground="green">Zöld</span>: a kapcsolat él.')
1042 self.add("statusbar_stage_tooltip", "A repülés fázisa")
1043 self.add("statusbar_time_tooltip", "A szimulátor ideje UTC-ben")
1044 self.add("statusbar_rating_tooltip", "A repülés pontszáma")
1045 self.add("statusbar_busy_tooltip", "A háttérfolyamatok állapota.")
1046
1047 self.add("flight_stage_boarding", u"beszállás")
1048 self.add("flight_stage_pushback and taxi", u"hátratolás és kigurulás")
1049 self.add("flight_stage_takeoff", u"felszállás")
1050 self.add("flight_stage_RTO", u"megszakított felszállás")
1051 self.add("flight_stage_climb", u"emelkedés")
1052 self.add("flight_stage_cruise", u"utazó")
1053 self.add("flight_stage_descent", u"süllyedés")
1054 self.add("flight_stage_landing", u"leszállás")
1055 self.add("flight_stage_taxi", u"begurulás")
1056 self.add("flight_stage_parking", u"parkolás")
1057 self.add("flight_stage_go-around", u"átstartolás")
1058 self.add("flight_stage_end", u"kész")
1059
1060 self.add("statusicon_showmain", "Mutasd a főablakot")
1061 self.add("statusicon_showmonitor", "Mutasd a monitor ablakot")
1062 self.add("statusicon_quit", "Kilépés")
1063 self.add("statusicon_stage", u"Fázis")
1064 self.add("statusicon_rating", u"Pontszám")
1065
1066 self.add("update_title", "Frissítés")
1067 self.add("update_needsudo",
1068 "Lenne mit frissíteni, de a program hozzáférési jogok\n"
1069 "hiányában nem tud írni a saját könyvtárába.\n\n"
1070 "Kattints az OK gombra, ha el szeretnél indítani egy\n"
1071 "segédprogramot adminisztrátori jogokkal, amely\n"
1072 "befejezné a frissítést, egyébként a Mégse gombra.")
1073 self.add("update_manifest_progress", "A manifesztum letöltése...")
1074 self.add("update_manifest_done", "A manifesztum letöltve...")
1075 self.add("update_files_progress", "Fájlok letöltése...")
1076 self.add("update_files_bytes", "%d bájtot töltöttem le %d bájtból")
1077 self.add("update_renaming", "A letöltött fájlok átnevezése...")
1078 self.add("update_renamed", "Átneveztem a(z) %s fájlt")
1079 self.add("update_removing", "Fájlok törlése...")
1080 self.add("update_removed", "Letöröltem a(z) %s fájlt")
1081 self.add("update_writing_manifest", "Az új manifesztum írása")
1082 self.add("update_finished",
1083 "A frissítés sikerült. Kattints az OK-ra a program újraindításához.")
1084 self.add("update_nothing", "Nem volt mit frissíteni")
1085 self.add("update_failed", "Nem sikerült, a részleteket lásd a debug naplóban.")
1086
1087 self.add("weighthelp_usinghelp", "_Használom a segítséget")
1088 self.add("weighthelp_usinghelp_tooltip",
1089 "Ha bejelölöd, az alábbiakban kapsz egy kis segítséget "
1090 "a járathoz szükséges hasznos teher megállapításához. "
1091 "Ha igénybe veszed ezt a szolgáltatást, ez a tény "
1092 "a naplóba bekerül.")
1093 self.add("weighthelp_header_calculated", "Elvárt/\nszámított")
1094 self.add("weighthelp_header_simulator", "Szimulátor\nadatok")
1095 self.add("weighthelp_header_simulator_tooltip",
1096 "Kattints erre a gombra a súlyadatoknak a szimulátortól "
1097 "való lekérdezéséhez. Az értékek lent jelennek meg. Ha "
1098 "egy érték a tűrés 10%-án belül van, akkor az "
1099 '<b><span foreground="darkgreen">zöld</span></b> '
1100 "színnel jelenik meg. Ha nem fér bele a tűrésbe, akkor "
1101 '<b><span foreground="red">piros</span></b>, '
1102 "egyébként "
1103 '<b><span foreground="orange">sárga</span></b> '
1104 "színben olvasható.")
1105 self.add("weighthelp_crew", "Legénység (%s):")
1106 self.add("weighthelp_pax", "Utasok (%s):")
1107 self.add("weighthelp_baggage", "Poggyász:")
1108 self.add("weighthelp_cargo", "Teher:")
1109 self.add("weighthelp_mail", "Posta:")
1110 self.add("weighthelp_payload", "Hasznos teher:")
1111 self.add("weighthelp_dow", "DOW:")
1112 self.add("weighthelp_zfw", "ZFW:")
1113 self.add("weighthelp_gross", "Teljes tömeg:")
1114 self.add("weighthelp_mzfw", "MZFW:")
1115 self.add("weighthelp_mtow", "MTOW:")
1116 self.add("weighthelp_mlw", "MLW:")
1117 self.add("weighthelp_busy", "A tömegadatok lekérdezése...")
1118
1119 self.add("gates_fleet_title", "_Flotta")
1120 self.add("gates_gates_title", "LHBP kapuk")
1121 self.add("gates_tailno", "Lajstromjel")
1122 self.add("gates_planestatus", "Állapot")
1123 self.add("gates_refresh", "_Adatok frissítése")
1124 self.add("gates_refresh_tooltip",
1125 "Kattints erre a gombra a fenti adatok frissítéséhez")
1126 self.add("gates_planes_tooltip",
1127 "Ez a táblázat tartalmazza a MAVA flottája összes "
1128 "repülőgépének lajstromjelét és utolsó ismert helyét. "
1129 "Ha egy repülőgép olyan kapun áll, amelyet másik gép is "
1130 "elfoglal, akkor annak a repülőgépnek az adatai "
1131 "<b><span foreground=\"red\">piros</span></b> "
1132 "színnel jelennek meg.")
1133 self.add("gates_gates_tooltip",
1134 "A MAVA repülőgépei által elfoglalt kapuk száma "
1135 '<b><span foreground="orange">sárga</span></b> színnel,'
1136 "a többié feketén jelenik meg.")
1137 self.add("gates_plane_away", "TÁVOL")
1138 self.add("gates_plane_parking", "PARKOL")
1139 self.add("gates_plane_unknown", "ISMERETLEN")
1140
1141 self.add("prefs_title", "Beállítások")
1142 self.add("prefs_tab_general", "_Általános")
1143 self.add("prefs_tab_general_tooltip", "Általános beállítások")
1144 self.add("prefs_tab_messages", "_Üzenetek")
1145 self.add("prefs_tab_message_tooltip",
1146 "A szimulátorba és/vagy hangjelzés általi üzenetküldés be- "
1147 "és kikapcsolása")
1148 self.add("prefs_tab_advanced", "H_aladó")
1149 self.add("prefs_tab_advanced_tooltip",
1150 "Haladó beállítások: óvatosan módosítsd őket!")
1151 self.add("prefs_language", "_Nyelv:")
1152 self.add("prefs_language_tooltip",
1153 "A program által használt nyelv")
1154 self.add("prefs_restart",
1155 "Újraindítás szükséges")
1156 self.add("prefs_language_restart_sec",
1157 "A program nyelvének megváltoztatása csak egy újraindítást "
1158 "követően jut érvényre.")
1159 self.add("prefs_lang_$system", "alapértelmezett")
1160 self.add("prefs_lang_en_GB", "angol")
1161 self.add("prefs_lang_hu_HU", "magyar")
1162 self.add("prefs_hideMinimizedWindow",
1163 "A főablak _eltüntetése minimalizáláskor")
1164 self.add("prefs_hideMinimizedWindow_tooltip",
1165 "Ha ezt kijelölöd, a főablak teljesen eltűnik, "
1166 "ha minimalizálod. A státuszikonra kattintással vagy annak "
1167 "menüje segítségével újra meg tudod jeleníteni.")
1168 self.add("prefs_onlineGateSystem",
1169 "Az Online _Gate System használata")
1170 self.add("prefs_onlineGateSystem_tooltip",
1171 "Ha ezt bejelölöd, a logger lekérdezi és frissíti az "
1172 "LHBP Online Gate System adatait.")
1173 self.add("prefs_onlineACARS",
1174 "Az Online ACA_RS rendszer használata")
1175 self.add("prefs_onlineACARS_tooltip",
1176 "Ha ezt bejölöd, a logger folyamatosan közli a repülésed "
1177 "adatait a MAVA Online ACARS rendszerrel.")
1178 self.add("prefs_flaretimeFromFS",
1179 "A ki_lebegtetés idejét vedd a szimulátorból")
1180 self.add("prefs_flaretimeFromFS_tooltip",
1181 "Ha ezt bejelölöd, a kilebegtetés idejét a szimulátor "
1182 "által visszaadott időbélyegek alapján számolja a program.")
1183 self.add("prefs_syncFSTime",
1184 "_Szinkronizáld a szimulátor idéjét a számítógépével")
1185 self.add("prefs_syncFSTime_tooltip",
1186 "Ha ez bejelölöd, a szimulátor belső óráját a program "
1187 "szinkronban tartja a számítógép órájával.")
1188 self.add("prefs_pirepDirectory",
1189 "_PIREP-ek könyvtára:")
1190 self.add("prefs_pirepDirectory_tooltip",
1191 "Az itt megadott könyvtárt ajánlja majd fel a program "
1192 "a PIREP-ek mentésekor.")
1193 self.add("prefs_pirepDirectory_browser_title",
1194 "Válaszd ki a PIREP-ek könyvtárát")
1195 self.add("prefs_update_auto",
1196 "Frissítsd a programot _automatikusan")
1197 self.add("prefs_update_auto_tooltip",
1198 "Ha ez be van jelölve, a program induláskor frissítést "
1199 "keres, és ha talál, azokat letölti és telepíti. Ez "
1200 "biztosítja, hogy az elküldött PIREP minden megfelel "
1201 "a legújabb elvárásoknak.")
1202 self.add("prefs_update_auto_warning",
1203 "Az automatikus frissítés kikapcsolása azt okozhatja, "
1204 "hogy a program Nálad lévő verziója elavulttá válik, "
1205 "és a PIREP-jeidet így nem fogadják el.")
1206 self.add("prefs_update_url", "Frissítés _URL-je:")
1207 self.add("prefs_update_url_tooltip",
1208 "Az URL, ahol a frissítéseket keresi a program. Csak akkor "
1209 "változtasd meg, ha biztos vagy a dolgodban!")
1210
1211 # A Á H M O Ü
1212
1213 self.add("prefs_msgs_fs", "Szimulátorban\nmegjelenítés")
1214 self.add("prefs_msgs_sound", "Hangjelzés")
1215 self.add("prefs_msgs_type_loggerError", "_Logger hibaüzenetek")
1216 self.add("prefs_msgs_type_information",
1217 "_Információs üzenetek\n(pl. a repülés fázisa)")
1218 self.add("prefs_msgs_type_fault",
1219 "Hi_baüzenetek\n(pl. a villogó fény hiba)")
1220 self.add("prefs_msgs_type_nogo",
1221 "_NOGO hibaüzenetek\n(pl. MTOW NOGO)")
1222 self.add("prefs_msgs_type_gateSystem",
1223 "_Kapukezelő rendszer üzenetei\n(pl. a szabad kapuk listája)")
1224 self.add("prefs_msgs_type_environment",
1225 "Kö_rnyezeti üzenetek\n(pl. \"welcome to XY aiport\")")
1226 self.add("prefs_msgs_type_help",
1227 "_Segítő üzenetek\n(pl. \"don't forget to set VREF\")")
1228 self.add("prefs_msgs_type_visibility",
1229 "Lá_tótávolság üzenetek")
1230
1231 self.add("loadPIREP_browser_title", "Válaszd ki a betöltendő PIREP-et")
1232 self.add("loadPIREP_filter_pireps", "PIREP fájlok")
1233 self.add("loadPIREP_filter_all", "Összes fájl")
1234 self.add("loadPIREP_failed", "Nem tudtam betölteni a PIREP-et")
1235 self.add("loadPIREP_failed_sec",
1236 "A részleteket lásd a debug naplóban.")
1237 self.add("loadPIREP_send_title", "PIREP")
1238 self.add("loadPIREP_send_help",
1239 "A betöltött PIREP főbb adatai:")
1240 self.add("loadPIREP_send_flightno", "Járatszám:")
1241 self.add("loadPIREP_send_date", "Dátum:")
1242 self.add("loadPIREP_send_from", "Honnan:")
1243 self.add("loadPIREP_send_to", "Hová:")
1244 self.add("loadPIREP_send_rating", "Pontszám:")
1245
1246 self.add("sendPIREP", "PIREP _elküldése...")
1247 self.add("sendPIREP_tooltip",
1248 "Kattints ide, hogy elküldd a PIREP-et a MAVA szerverére javításra.")
1249 self.add("sendPIREP_busy", "PIREP küldése...")
1250 self.add("sendPIREP_success",
1251 "A PIREP elküldése sikeres volt.")
1252 self.add("sendPIREP_success_sec",
1253 "Várhatod félelmet nem ismerő PIREP javítóink alapos észrevételeit! :)")
1254 self.add("sendPIREP_already",
1255 "Ehhez a járathoz már küldtél be PIREP-et!")
1256 self.add("sendPIREP_already_sec",
1257 "A korábban beküldött PIREP-et törölheted a MAVA honlapján.")
1258 self.add("sendPIREP_notavail",
1259 "Ez a járat már nem elérhető!")
1260 self.add("sendPIREP_unknown",
1261 "A MAVA szervere ismeretlen hibaüzenettel tért vissza.")
1262 self.add("sendPIREP_unknown_sec",
1263 "A debug naplóban részletesebb információt találsz.")
1264 self.add("sendPIREP_failed",
1265 "Nem tudtam elküldeni a PIREP-et a MAVA szerverére.")
1266 self.add("sendPIREP_failed_sec",
1267 "Lehet, hogy hálózati probléma áll fenn, amely esetben később\n" \
1268 "újra próbálkozhatsz. Lehet azonban hiba is a loggerben:\n" \
1269 "részletesebb információt találhatsz a debug naplóban.")
1270
1271#------------------------------------------------------------------------------
1272
1273# The fallback language is English
1274_English()
1275
1276# We also support Hungarian
1277_Hungarian()
1278
1279#------------------------------------------------------------------------------
Note: See TracBrowser for help on using the repository browser.