# Hungarian translation for QEMU.
# This file is put in the public domain.
# Ákos Kovács <akoskovacs@gmx.com>, 2013.
#
msgid ""
msgstr ""
"Project-Id-Version: QEMU 1.4.50\n"
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
"POT-Creation-Date: 2015-12-10 13:29+0000\n"
"PO-Revision-Date: 2013-05-06 20:42+0200\n"
"Last-Translator: Ákos Kovács <akoskovacs@gmx.com>\n"
"Language-Team: Hungarian <hu@li.org>\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: ui/gtk.c:271
msgid " - Press Ctrl+Alt+G to release grab"
msgstr " - Nyomj Ctrl+Alt+G-t a bemeneti eszközök elengedéséhez"

#: ui/gtk.c:275
msgid " [Paused]"
msgstr " [Megállítva]"

#: ui/gtk.c:1783
msgid "_Pause"
msgstr "_Megállítás"

#: ui/gtk.c:1789
msgid "_Reset"
msgstr "Új_raindítás"

#: ui/gtk.c:1792
msgid "Power _Down"
msgstr "_Leállítás"

#: ui/gtk.c:1798
msgid "_Quit"
msgstr ""

#: ui/gtk.c:1890
msgid "_Fullscreen"
msgstr ""

#: ui/gtk.c:1904
#, fuzzy
msgid "Zoom _In"
msgstr "Ablakmérethez _igazítás"

#: ui/gtk.c:1911
#, fuzzy
msgid "Zoom _Out"
msgstr "Ablakmérethez _igazítás"

#: ui/gtk.c:1918
msgid "Best _Fit"
msgstr ""

#: ui/gtk.c:1925
msgid "Zoom To _Fit"
msgstr "Ablakmérethez _igazítás"

#: ui/gtk.c:1931
msgid "Grab On _Hover"
msgstr "Automatikus _elfogás"

#: ui/gtk.c:1934
msgid "_Grab Input"
msgstr "_Bemeneti eszközök megragadása"

#: ui/gtk.c:1963
msgid "Show _Tabs"
msgstr "_Fülek megjelenítése"

#: ui/gtk.c:1966
msgid "Detach Tab"
msgstr ""

#: ui/gtk.c:1978
msgid "_Machine"
msgstr "_Gép"

#: ui/gtk.c:1983
msgid "_View"
msgstr "_Nézet"

#~ msgid "_File"
#~ msgstr "_File"
