Merge branch 'master' into tmbinc/FixTimingBugs
authorFelix Domke <tmbinc@elitedvb.net>
Mon, 17 Nov 2008 14:42:54 +0000 (15:42 +0100)
committerFelix Domke <tmbinc@elitedvb.net>
Mon, 17 Nov 2008 14:42:54 +0000 (15:42 +0100)
Conflicts:

lib/dvb/sec.cpp
lib/python/Components/Network.py
lib/python/Components/Playlist.py
lib/python/Plugins/Extensions/DVDBurn/Process.py
lib/python/Plugins/Extensions/MediaPlayer/plugin.py
lib/python/Screens/TimerEdit.py
po/lt.po
po/nl.po
po/tr.po

115 files changed:
Navigation.py
RecordTimer.py
data/countries/ua.png [new file with mode: 0644]
data/keymap.xml
data/menu.xml
data/skin_default.xml [changed mode: 0644->0755]
data/skin_default/vkey_backspace.png [new file with mode: 0755]
data/skin_default/vkey_bg.png [new file with mode: 0755]
data/skin_default/vkey_clr.png [new file with mode: 0755]
data/skin_default/vkey_esc.png [new file with mode: 0755]
data/skin_default/vkey_icon.png [new file with mode: 0755]
data/skin_default/vkey_left.png [new file with mode: 0755]
data/skin_default/vkey_ok.png [new file with mode: 0755]
data/skin_default/vkey_right.png [new file with mode: 0755]
data/skin_default/vkey_sel.png [new file with mode: 0755]
data/skin_default/vkey_shift.png [new file with mode: 0755]
data/skin_default/vkey_shift_sel.png [new file with mode: 0755]
data/skin_default/vkey_space.png [new file with mode: 0755]
data/skin_default/vkey_text.png [new file with mode: 0755]
e2reactor.py
lib/dvb/db.cpp
lib/dvb/decoder.cpp
lib/dvb/dvb.cpp
lib/dvb/dvb.h
lib/dvb/frontend.cpp
lib/dvb/idvb.h
lib/dvb/pmt.cpp
lib/dvb/pmt.h
lib/dvb/pvrparse.cpp
lib/dvb/scan.cpp
lib/dvb/sec.cpp
lib/dvb/sec.h
lib/gdi/lcd.cpp
lib/gdi/picload.cpp
lib/gdi/picload.h
lib/gui/epositiongauge.cpp
lib/python/Components/HelpMenuList.py [changed mode: 0644->0755]
lib/python/Components/Language.py
lib/python/Components/Lcd.py
lib/python/Components/MediaPlayer.py
lib/python/Components/MovieList.py
lib/python/Components/Network.py [changed mode: 0644->0755]
lib/python/Components/NimManager.py
lib/python/Components/Playlist.py
lib/python/Components/TimerSanityCheck.py
lib/python/Components/UsageConfig.py
lib/python/Components/config.py [changed mode: 0644->0755]
lib/python/Plugins/DemoPlugins/TestPlugin/Makefile.am
lib/python/Plugins/DemoPlugins/TestPlugin/maintainer.info [new file with mode: 0644]
lib/python/Plugins/DemoPlugins/TestPlugin/plugin.py
lib/python/Plugins/Extensions/DVDBurn/DVDProject.py
lib/python/Plugins/Extensions/DVDBurn/DVDTitle.py
lib/python/Plugins/Extensions/DVDBurn/DVDToolbox.py
lib/python/Plugins/Extensions/DVDBurn/DreamboxDVDtemplate.ddvdp.xml
lib/python/Plugins/Extensions/DVDBurn/Makefile.am
lib/python/Plugins/Extensions/DVDBurn/Process.py
lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py
lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py
lib/python/Plugins/Extensions/DVDBurn/TitleList.py
lib/python/Plugins/Extensions/DVDBurn/TitleProperties.py [new file with mode: 0644]
lib/python/Plugins/Extensions/DVDBurn/keymap.xml
lib/python/Plugins/Extensions/DVDBurn/plugin.py
lib/python/Plugins/Extensions/DVDPlayer/plugin.py
lib/python/Plugins/Extensions/GraphMultiEPG/plugin.py
lib/python/Plugins/Extensions/MediaPlayer/Makefile.am
lib/python/Plugins/Extensions/MediaPlayer/plugin.py
lib/python/Plugins/Extensions/MediaPlayer/settings.py [new file with mode: 0644]
lib/python/Plugins/Extensions/PicturePlayer/plugin.py
lib/python/Plugins/Plugin.py
lib/python/Plugins/SystemPlugins/Hotplug/plugin.py
lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/plugin.py
lib/python/Screens/InfoBarGenerics.py
lib/python/Screens/InputBox.py
lib/python/Screens/LocationBox.py
lib/python/Screens/Makefile.am [changed mode: 0644->0755]
lib/python/Screens/MovieSelection.py
lib/python/Screens/NetworkSetup.py [changed mode: 0644->0755]
lib/python/Screens/Satconfig.py
lib/python/Screens/ScanSetup.py
lib/python/Screens/TimerEdit.py
lib/python/Screens/TimerEntry.py
lib/python/Screens/VirtualKeyBoard.py [new file with mode: 0755]
lib/python/Screens/Wizard.py
lib/python/enigma_python.i
lib/service/iservice.h
lib/service/service.cpp
lib/service/servicedvb.cpp
lib/service/servicedvb.h
main/bsod.cpp
mytest.py
po/Makefile.am
po/ar.po
po/ca.po
po/cs.po
po/da.po
po/de.po [changed mode: 0644->0755]
po/el.po
po/en.po
po/enigma2.pot
po/es.po
po/fi.po
po/fr.po
po/hr.po
po/hu.po
po/is.po [changed mode: 0755->0644]
po/it.po
po/lt.po
po/nl.po
po/no.po
po/pl.po
po/pt.po
po/ru.po
po/sv.po [changed mode: 0755->0644]
po/tr.po
po/uk.po [new file with mode: 0644]

index bda6f58..42733cb 100644 (file)
@@ -79,14 +79,14 @@ class Navigation:
        def getCurrentlyPlayingServiceReference(self):
                return self.currentlyPlayingServiceReference
        
-       def recordService(self, ref):
+       def recordService(self, ref, simulate=False):
                service = None
                print "recording service: %s" % (str(ref))
                if isinstance(ref, ServiceReference.ServiceReference):
                        ref = ref.ref
                if ref:
                        if ref.flags & eServiceReference.isGroup:
-                               ref = getBestPlayableServiceReference(ref, eServiceReference())
+                               ref = getBestPlayableServiceReference(ref, eServiceReference(), simulate)
                        service = ref and self.pnav and self.pnav.recordService(ref)
                        if service is None:
                                print "record returned non-zero"
index 397ff8a..28b878a 100644 (file)
@@ -91,7 +91,7 @@ class RecordTimerEntry(timer.TimerEntry, object):
                        Notifications.AddNotification(Screens.Standby.TryQuitMainloop, 1, onSessionOpenCallback=RecordTimerEntry.stopTryQuitMainloop, default_yes = default_yes)
 #################################################################
 
-       def __init__(self, serviceref, begin, end, name, description, eit, disabled = False, justplay = False, afterEvent = AFTEREVENT.NONE, checkOldTimers = False, dirname = None):
+       def __init__(self, serviceref, begin, end, name, description, eit, disabled = False, justplay = False, afterEvent = AFTEREVENT.NONE, checkOldTimers = False, dirname = None, tags = None):
                timer.TimerEntry.__init__(self, int(begin), int(end))
 
                if checkOldTimers == True:
@@ -117,6 +117,7 @@ class RecordTimerEntry(timer.TimerEntry, object):
                self.dirname = dirname
                self.dirnameHadToFallback = False
                self.autoincrease = False
+               self.tags = tags or []
 
                self.log_entries = []
                self.resetState()
@@ -192,6 +193,7 @@ class RecordTimerEntry(timer.TimerEntry, object):
                                f.write(self.name + "\n")
                                f.write(self.description + "\n")
                                f.write(str(self.begin) + "\n")
+                               f.write(' '.join(self.tags))
                                f.close()
                        except IOError:
                                self.log(4, "failed to write meta information")
@@ -368,10 +370,14 @@ def createTimer(xml):
                location = xml.getAttribute("location").encode("utf-8")
        else:
                location = None
+       if xml.hasAttribute("tags") and xml.getAttribute("tags"):
+               tags = xml.getAttribute("tags").encode("utf-8").split(' ')
+       else:
+               tags = None
 
        name = xml.getAttribute("name").encode("utf-8")
        #filename = xml.getAttribute("filename").encode("utf-8")
-       entry = RecordTimerEntry(serviceref, begin, end, name, description, eit, disabled, justplay, afterevent, dirname = location)
+       entry = RecordTimerEntry(serviceref, begin, end, name, description, eit, disabled, justplay, afterevent, dirname = location, tags = tags)
        entry.repeated = int(repeated)
        
        for l in elementsWithTag(xml.childNodes, "log"):
@@ -492,6 +498,8 @@ class RecordTimer(timer.Timer):
                                list.append(' eit="' + str(timer.eit) + '"')
                        if timer.dirname is not None:
                                list.append(' location="' + str(stringToXML(timer.dirname)) + '"')
+                       if timer.tags is not None:
+                               list.append(' tags="' + str(stringToXML(' '.join(timer.tags))) + '"')
                        list.append(' disabled="' + str(int(timer.disabled)) + '"')
                        list.append(' justplay="' + str(int(timer.justplay)) + '"')
                        list.append('>\n')
diff --git a/data/countries/ua.png b/data/countries/ua.png
new file mode 100644 (file)
index 0000000..fa8751e
Binary files /dev/null and b/data/countries/ua.png differ
index 5e73490..6b8b583 100644 (file)
@@ -77,8 +77,8 @@
        </map>
 
        <map context="InfobarEPGActions">
-               <key id="KEY_INFO" mapto="showEventInfo" flags="b" />
-               <key id="KEY_INFO" mapto="showSingleServiceEPG" flags="l" />
+               <key id="KEY_INFO" mapto="showEventView" flags="b" />
+               <key id="KEY_INFO" mapto="showEventInfoPlugin" flags="l" />
        </map>
        
        <map context="InfobarInstantRecord">
index 93455b2..369b20e 100644 (file)
@@ -70,6 +70,7 @@
                                        <item level="1" text="Device Setup..." entryID="device_setup"><screen module="NetworkSetup" screen="NetworkAdapterSelection"/></item>
                                        <item level="1" text="Nameserver Setup..." entryID="dns_setup"><screen module="NetworkSetup" screen="NameserverSetup"/></item>
                                </menu>-->
+                               <item level="2" text="Timeshift path..." entryId="timeshift_path"><screen module="LocationBox" screen="TimeshiftLocationBox" /></item>
                        </menu>
                        <item level="1" text="Common Interface" entryID="ci_setup" requires="CommonInterface"><screen module="Ci" screen="CiSelection" /></item>
                        <item level="0" text="Parental control" entryID="parental_setup"><screen module="ParentalControlSetup" screen="ParentalControlSetup" /></item>
old mode 100644 (file)
new mode 100755 (executable)
index 88cf8b4..993fd32
                <widget name="BottomBG" pixmap="skin_default/bottombar.png" position="5,310" size="540,120" zPosition="1" transparent="1" alphatest="on" />
                <widget name="Adaptertext" position="20,325" size="100,21" zPosition="10" font="Regular;19" transparent="1" />
                <widget name="Adapter" position="110,325" size="300,21" zPosition="10" font="Regular;19" transparent="1" />
-               <widget name="introduction2" position="110,360" size="300,20" zPosition="10" font="Regular;21" halign="center" transparent="1" />
+               <widget name="introduction2" position="90,360" size="300,20" zPosition="10" font="Regular;21" halign="center" transparent="1" />
                <widget name="ButtonRedtext" position="410,325" size="140,21" zPosition="10" font="Regular;21" transparent="1" />
                <widget name="ButtonRed" pixmap="skin_default/buttons/button_red.png" position="390,325" zPosition="10" size="15,16" transparent="1" alphatest="on" />
                <widget name="ButtonBluetext" position="410,360" size="140,21" zPosition="10" font="Regular;21" transparent="1" />
                <widget name="ButtonBlue" pixmap="skin_default/buttons/button_blue.png" position="390,360" zPosition="10" size="15,16" transparent="1" alphatest="on" />
+               <widget name="ButtonGreen" pixmap="skin_default/buttons/button_green.png" position="20,360" zPosition="10" size="15,16" transparent="1" alphatest="on" />
+               <widget name="VKeyIcon" pixmap="skin_default/vkey_icon.png" position="35,340" zPosition="10" size="60,48" transparent="1" alphatest="on" />
+               <widget name="HelpWindow" pixmap="skin_default/vkey_icon.png" position="120,245" zPosition="1" size="1,1" transparent="1" alphatest="on" />     
        </screen>
        <screen name="AdapterSetupConfiguration" position="90,100" size="550,400" title="Network Configuration..." >
                <ePixmap pixmap="skin_default/border_menu.png" position="10,10" zPosition="1" size="250,300" transparent="1" alphatest="on" />
@@ -568,7 +571,7 @@ self.instance.move(ePoint(orgpos.x() + (orgwidth - newwidth)/2, orgpos.y()))
                <widget name="ButtonRedtext" position="430,325" size="120,21" zPosition="10" font="Regular;21" transparent="1" />
                <ePixmap pixmap="skin_default/buttons/button_red.png" position="410,325" zPosition="10" size="15,16" transparent="1" alphatest="on" />
                <widget name="ButtonBluetext" position="60,325" size="300,21" zPosition="10" font="Regular;21" transparent="1" />
-               <ePixmap pixmap="skin_default/buttons/button_blue.png" position="30,325" zPosition="10" size="15,16" transparent="1" alphatest="on" />
+               <widget name="ButtonBlue" pixmap="skin_default/buttons/button_blue.png" position="30,325" zPosition="10" size="15,16" transparent="1" alphatest="on" />
                <widget name="introduction" position="140,360" size="300,21" zPosition="10" font="Regular;21" halign="center" transparent="1" />
        </screen>
        <!-- Network adapter test Black = "#000000" Grey = "#8c8c93" Green = "#1cff1c" Red = #f23d21-->
@@ -1157,4 +1160,10 @@ self.instance.move(ePoint(orgpos.x() + (orgwidth - newwidth)/2, orgpos.y()))
                        <convert type="ProgressToText" />
                </widget>
        </screen>
+       <screen name="VirtualKeyBoard" position="80,150" size="560,350" zPosition="99" title="Virtual KeyBoard">
+               <ePixmap pixmap="skin_default/vkey_text.png" position="9,35" zPosition="-4" size="542,52" alphatest="on" />
+               <widget name="header" position="10,10" size="500,20" font="Regular;20" transparent="1" noWrap="1" />
+               <widget name="text" position="12,35" size="536,46" font="Regular;46" transparent="1" noWrap="1" halign="right" />
+               <widget name="list" position="10,100" size="540,225" selectionDisabled="1" transparent="1" />
+       </screen>
 </skin>
diff --git a/data/skin_default/vkey_backspace.png b/data/skin_default/vkey_backspace.png
new file mode 100755 (executable)
index 0000000..ed49159
Binary files /dev/null and b/data/skin_default/vkey_backspace.png differ
diff --git a/data/skin_default/vkey_bg.png b/data/skin_default/vkey_bg.png
new file mode 100755 (executable)
index 0000000..5151da4
Binary files /dev/null and b/data/skin_default/vkey_bg.png differ
diff --git a/data/skin_default/vkey_clr.png b/data/skin_default/vkey_clr.png
new file mode 100755 (executable)
index 0000000..0c7734b
Binary files /dev/null and b/data/skin_default/vkey_clr.png differ
diff --git a/data/skin_default/vkey_esc.png b/data/skin_default/vkey_esc.png
new file mode 100755 (executable)
index 0000000..56c52d3
Binary files /dev/null and b/data/skin_default/vkey_esc.png differ
diff --git a/data/skin_default/vkey_icon.png b/data/skin_default/vkey_icon.png
new file mode 100755 (executable)
index 0000000..f27b7f8
Binary files /dev/null and b/data/skin_default/vkey_icon.png differ
diff --git a/data/skin_default/vkey_left.png b/data/skin_default/vkey_left.png
new file mode 100755 (executable)
index 0000000..2e77e71
Binary files /dev/null and b/data/skin_default/vkey_left.png differ
diff --git a/data/skin_default/vkey_ok.png b/data/skin_default/vkey_ok.png
new file mode 100755 (executable)
index 0000000..2c0c7e8
Binary files /dev/null and b/data/skin_default/vkey_ok.png differ
diff --git a/data/skin_default/vkey_right.png b/data/skin_default/vkey_right.png
new file mode 100755 (executable)
index 0000000..fefb17c
Binary files /dev/null and b/data/skin_default/vkey_right.png differ
diff --git a/data/skin_default/vkey_sel.png b/data/skin_default/vkey_sel.png
new file mode 100755 (executable)
index 0000000..b612b94
Binary files /dev/null and b/data/skin_default/vkey_sel.png differ
diff --git a/data/skin_default/vkey_shift.png b/data/skin_default/vkey_shift.png
new file mode 100755 (executable)
index 0000000..477f8db
Binary files /dev/null and b/data/skin_default/vkey_shift.png differ
diff --git a/data/skin_default/vkey_shift_sel.png b/data/skin_default/vkey_shift_sel.png
new file mode 100755 (executable)
index 0000000..339ddb4
Binary files /dev/null and b/data/skin_default/vkey_shift_sel.png differ
diff --git a/data/skin_default/vkey_space.png b/data/skin_default/vkey_space.png
new file mode 100755 (executable)
index 0000000..5151da4
Binary files /dev/null and b/data/skin_default/vkey_space.png differ
diff --git a/data/skin_default/vkey_text.png b/data/skin_default/vkey_text.png
new file mode 100755 (executable)
index 0000000..6bdb8c8
Binary files /dev/null and b/data/skin_default/vkey_text.png differ
index a3d8ce1..cca2f35 100644 (file)
@@ -36,7 +36,10 @@ class E2SharedPoll:
                del self.dict[fd]
        
        def poll(self, timeout = None):
-               r = self.eApp.poll(timeout, self.dict)
+               try:
+                       r = self.eApp.poll(timeout, self.dict)
+               except KeyboardInterrupt:
+                       return None
                return r
 
 poller = E2SharedPoll()
index 02ecc1d..1c33203 100644 (file)
@@ -151,7 +151,7 @@ RESULT eDVBService::getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &
        return eEPGCache::getInstance()->lookupEventTime(ref, start_time, ptr);
 }
 
-int eDVBService::isPlayable(const eServiceReference &ref, const eServiceReference &ignore)
+int eDVBService::isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate)
 {
        ePtr<eDVBResourceManager> res_mgr;
        if ( eDVBResourceManager::getInstance( res_mgr ) )
@@ -161,7 +161,7 @@ int eDVBService::isPlayable(const eServiceReference &ref, const eServiceReferenc
                eDVBChannelID chid, chid_ignore;
                ((const eServiceReferenceDVB&)ref).getChannelID(chid);
                ((const eServiceReferenceDVB&)ignore).getChannelID(chid_ignore);
-               return res_mgr->canAllocateChannel(chid, chid_ignore);
+               return res_mgr->canAllocateChannel(chid, chid_ignore, simulate);
        }
        return 0;
 }
@@ -497,7 +497,7 @@ void eDVBDB::saveServicelist(const char *file)
                {
                        if (sat.system == eDVBFrontendParametersSatellite::System::DVB_S2)
                        {
-                               fprintf(f, "\ts %d:%d:%d:%d:%d:%d:%d:%d:%d:%d",
+                               fprintf(f, "\ts %d:%d:%d:%d:%d:%d:%d:%d:%d:%d:%d",
                                        sat.frequency, sat.symbol_rate,
                                        sat.polarisation, sat.fec,
                                        sat.orbital_position > 1800 ? sat.orbital_position - 3600 : sat.orbital_position,
@@ -505,11 +505,8 @@ void eDVBDB::saveServicelist(const char *file)
                                        flags,
                                        sat.system,
                                        sat.modulation,
-                                       sat.rolloff);
-                               if (sat.modulation == eDVBFrontendParametersSatellite::Modulation::M8PSK)
-                                       fprintf(f, ":%d\n", sat.pilot);
-                               else
-                                       fprintf(f, "\n");
+                                       sat.rolloff,
+                                       sat.pilot);
                        }
                        else
                        {
index 0ce59d0..6ad3922 100644 (file)
@@ -836,37 +836,40 @@ int eTSMPEGDecoder::setState()
                if (m_pcr)
                        m_pcr->stop();
                m_pcr = 0;
-               if ((m_pcrpid >= 0) && (m_pcrpid < 0x1FFF))
-               {
-                       m_pcr = new eDVBPCR(m_demux);
-                       if (m_pcr->startPid(m_pcrpid))
-                               res = -1;
-               }
-               m_changed &= ~changePCR;
        }
        if (m_changed & changeVideo)
        {
-               eDebug("VIDEO CHANGED (to %04x)", m_vpid);
                if (m_video)
                {
                        m_video->stop();
                        m_video = 0;
                        m_video_event_conn = 0;
                }
-               if ((m_vpid >= 0) && (m_vpid < 0x1FFF))
-               {
-                       m_video = new eDVBVideo(m_demux, m_decoder);
-                       m_video->connectEvent(slot(*this, &eTSMPEGDecoder::video_event), m_video_event_conn);
-                       if (m_video->startPid(m_vpid, m_vtype))
-                               res = -1;
-               }
-               m_changed &= ~changeVideo;
        }
        if (m_changed & changeAudio)
        {
                if (m_audio)
                        m_audio->stop();
                m_audio = 0;
+       }
+       if (m_changed & changeText)
+       {
+               if (m_text)
+                       m_text->stop();
+               m_text = 0;
+       }
+       if (m_changed & changePCR)
+       {
+               if ((m_pcrpid >= 0) && (m_pcrpid < 0x1FFF))
+               {
+                       m_pcr = new eDVBPCR(m_demux);
+                       if (m_pcr->startPid(m_pcrpid))
+                               res = -1;
+               }
+               m_changed &= ~changePCR;
+       }
+       if (m_changed & changeAudio)
+       {
                if ((m_apid >= 0) && (m_apid < 0x1FFF) && !noaudio)
                {
                        m_audio = new eDVBAudio(m_demux, m_decoder);
@@ -875,11 +878,19 @@ int eTSMPEGDecoder::setState()
                }
                m_changed &= ~changeAudio;
        }
+       if (m_changed & changeVideo)
+       {
+               if ((m_vpid >= 0) && (m_vpid < 0x1FFF))
+               {
+                       m_video = new eDVBVideo(m_demux, m_decoder);
+                       m_video->connectEvent(slot(*this, &eTSMPEGDecoder::video_event), m_video_event_conn);
+                       if (m_video->startPid(m_vpid, m_vtype))
+                               res = -1;
+               }
+               m_changed &= ~changeVideo;
+       }
        if (m_changed & changeText)
        {
-               if (m_text)
-                       m_text->stop();
-               m_text = 0;
                if ((m_textpid >= 0) && (m_textpid < 0x1FFF) && !nott)
                {
                        m_text = new eDVBTText(m_demux);
@@ -1069,6 +1080,7 @@ RESULT eTSMPEGDecoder::setFastForward(int frames_to_skip)
        m_is_ff = frames_to_skip != 0;
 
        setState();
+       unfreeze(); // audio might be restarted and still in preroll (freezed) state.
 
        if (m_video)
                return m_video->setFastForward(frames_to_skip);
@@ -1081,6 +1093,7 @@ RESULT eTSMPEGDecoder::setSlowMotion(int repeat)
        m_is_sm = repeat != 0;
 
        setState();
+       unfreeze(); // audio might be restarted and still in preroll (freezed) state.
 
        if (m_video)
                return m_video->setSlowMotion(repeat);
index 8afa70d..3ad086d 100644 (file)
@@ -713,12 +713,13 @@ RESULT eDVBResourceManager::connectChannelAdded(const Slot1<void,eDVBChannel*> &
        return 0;
 }
 
-int eDVBResourceManager::canAllocateFrontend(ePtr<iDVBFrontendParameters> &feparm)
+int eDVBResourceManager::canAllocateFrontend(ePtr<iDVBFrontendParameters> &feparm, bool simulate)
 {
+       eSmartPtrList<eDVBRegisteredFrontend> &frontends = simulate ? m_simulate_frontend : m_frontend;
        ePtr<eDVBRegisteredFrontend> best;
        int bestval = 0;
 
-       for (eSmartPtrList<eDVBRegisteredFrontend>::iterator i(m_frontend.begin()); i != m_frontend.end(); ++i)
+       for (eSmartPtrList<eDVBRegisteredFrontend>::iterator i(frontends.begin()); i != frontends.end(); ++i)
                if (!i->m_inuse)
                {
                        int c = i->m_frontend->isCompatibleWith(feparm);
@@ -755,10 +756,11 @@ int tuner_type_channel_default(ePtr<iDVBChannelList> &channellist, const eDVBCha
        return 0;
 }
 
-int eDVBResourceManager::canAllocateChannel(const eDVBChannelID &channelid, const eDVBChannelID& ignore)
+int eDVBResourceManager::canAllocateChannel(const eDVBChannelID &channelid, const eDVBChannelID& ignore, bool simulate)
 {
+       std::list<active_channel> &active_channels = simulate ? m_active_simulate_channels : m_active_channels;
        int ret=0;
-       if (m_cached_channel)
+       if (!simulate && m_cached_channel)
        {
                eDVBChannel *cache_chan = (eDVBChannel*)&(*m_cached_channel);
                if(channelid==cache_chan->getChannelID())
@@ -767,7 +769,7 @@ int eDVBResourceManager::canAllocateChannel(const eDVBChannelID &channelid, cons
 
                /* first, check if a channel is already existing. */
 //     eDebug("allocate channel.. %04x:%04x", channelid.transport_stream_id.get(), channelid.original_network_id.get());
-       for (std::list<active_channel>::iterator i(m_active_channels.begin()); i != m_active_channels.end(); ++i)
+       for (std::list<active_channel>::iterator i(active_channels.begin()); i != active_channels.end(); ++i)
        {
 //             eDebug("available channel.. %04x:%04x", i->m_channel_id.transport_stream_id.get(), i->m_channel_id.original_network_id.get());
                if (i->m_channel_id == channelid)
@@ -780,8 +782,9 @@ int eDVBResourceManager::canAllocateChannel(const eDVBChannelID &channelid, cons
        int *decremented_cached_channel_fe_usecount=NULL,
                *decremented_fe_usecount=NULL;
 
-       for (std::list<active_channel>::iterator i(m_active_channels.begin()); i != m_active_channels.end(); ++i)
+       for (std::list<active_channel>::iterator i(active_channels.begin()); i != active_channels.end(); ++i)
        {
+               eSmartPtrList<eDVBRegisteredFrontend> &frontends = simulate ? m_simulate_frontend : m_frontend;
 //             eDebug("available channel.. %04x:%04x", i->m_channel_id.transport_stream_id.get(), i->m_channel_id.original_network_id.get());
                if (i->m_channel_id == ignore)
                {
@@ -795,7 +798,7 @@ int eDVBResourceManager::canAllocateChannel(const eDVBChannelID &channelid, cons
                                ePtr<iDVBFrontend> fe;
                                if (!i->m_channel->getFrontend(fe))
                                {
-                                       for (eSmartPtrList<eDVBRegisteredFrontend>::iterator ii(m_frontend.begin()); ii != m_frontend.end(); ++ii)
+                                       for (eSmartPtrList<eDVBRegisteredFrontend>::iterator ii(frontends.begin()); ii != frontends.end(); ++ii)
                                        {
                                                if ( &(*fe) == &(*ii->m_frontend) )
                                                {
@@ -822,7 +825,8 @@ int eDVBResourceManager::canAllocateChannel(const eDVBChannelID &channelid, cons
                                ePtr<iDVBFrontend> fe;
                                if (!channel->getFrontend(fe))
                                {
-                                       for (eSmartPtrList<eDVBRegisteredFrontend>::iterator ii(m_frontend.begin()); ii != m_frontend.end(); ++ii)
+                                       eSmartPtrList<eDVBRegisteredFrontend> &frontends = simulate ? m_simulate_frontend : m_frontend;
+                                       for (eSmartPtrList<eDVBRegisteredFrontend>::iterator ii(frontends.begin()); ii != frontends.end(); ++ii)
                                        {
                                                if ( &(*fe) == &(*ii->m_frontend) )
                                                {
@@ -852,7 +856,7 @@ int eDVBResourceManager::canAllocateChannel(const eDVBChannelID &channelid, cons
                goto error;
        }
 
-       ret = canAllocateFrontend(feparm);
+       ret = canAllocateFrontend(feparm, simulate);
 
 error:
        if (decremented_fe_usecount)
index 1a773ef..13556c2 100644 (file)
@@ -184,7 +184,7 @@ public:
        };
        
        RESULT connectChannelAdded(const Slot1<void,eDVBChannel*> &channelAdded, ePtr<eConnection> &connection);
-       int canAllocateChannel(const eDVBChannelID &channelid, const eDVBChannelID &ignore);
+       int canAllocateChannel(const eDVBChannelID &channelid, const eDVBChannelID &ignore, bool simulate=false);
 
                /* allocate channel... */
        RESULT allocateChannel(const eDVBChannelID &channelid, eUsePtr<iDVBChannel> &channel, bool simulate=false);
@@ -206,7 +206,7 @@ public:
 #ifdef SWIG
 public:
 #endif
-       int canAllocateFrontend(ePtr<iDVBFrontendParameters> &feparm);
+       int canAllocateFrontend(ePtr<iDVBFrontendParameters> &feparm, bool simulate=false);
        bool canMeasureFrontendInputPower();
        PSignal1<void,int> frontendUseMaskChanged;
        SWIG_VOID(RESULT) allocateRawChannel(eUsePtr<iDVBChannel> &SWIG_OUTPUT, int slot_index);
index 635de8f..b0e92d3 100644 (file)
                if (!m_simulate) \
                        eDebug(x); \
        } while(0)
-//             else \
-//             { \
-//                     eDebugNoNewLine("SIMULATE:"); \
-//                     eDebug(x); \
-//             } \
+#if 0
+               else \
+               { \
+                       eDebugNoNewLine("SIMULATE:"); \
+                       eDebug(x); \
+               }
+#endif
 
 #define eDebugNoSimulateNoNewLine(x...) \
        do { \
                if (!m_simulate) \
                        eDebugNoNewLine(x); \
        } while(0)
-//             else \
-//             { \
-//                     eDebugNoNewLine("SIMULATE:"); \
-//                     eDebugNoNewLine(x); \
-//             } \
+#if 0
+               else \
+               { \
+                       eDebugNoNewLine("SIMULATE:"); \
+                       eDebugNoNewLine(x); \
+               }
+#endif
 
 void eDVBDiseqcCommand::setCommandString(const char *str)
 {
@@ -725,34 +729,58 @@ int eDVBFrontend::readFrontendData(int type)
                        if (!strcmp(m_description, "BCM4501 (internal)"))
                        {
                                unsigned int SDS_SNRE = snr << 16;
+                               float snr_in_db;
 
-                               static float SNR_COEFF[6] = {
-                                       100.0 / 4194304.0,
-                                       -7136.0 / 4194304.0,
-                                       197418.0 / 4194304.0,
-                                       -2602183.0 / 4194304.0,
-                                       20377212.0 / 4194304.0,
-                                       -37791203.0 / 4194304.0,
-                               };
-
-                               float fval1, fval2, snr_in_db;
-                               int i;
-                               fval1 = 12.44714 - (2.0 * log10(SDS_SNRE / 256.0));
-                               fval2 = pow(10.0, fval1)-1;
-                               fval1 = 10.0 * log10(fval2);
-
-                               if (fval1 < 10.0)
+                               if (parm_u_qpsk_fec_inner <= FEC_AUTO) // DVB-S1 / QPSK
                                {
-                                       fval2 = SNR_COEFF[0];
-                                       for (i=0; i<6; ++i)
+                                       static float SNR_COEFF[6] = {
+                                               100.0 / 4194304.0,
+                                               -7136.0 / 4194304.0,
+                                               197418.0 / 4194304.0,
+                                               -2602183.0 / 4194304.0,
+                                               20377212.0 / 4194304.0,
+                                               -37791203.0 / 4194304.0,
+                                       };
+                                       float fval1 = 12.44714 - (2.0 * log10(SDS_SNRE / 256.0)),
+                                         fval2 = pow(10.0, fval1)-1;
+                                       fval1 = 10.0 * log10(fval2);
+
+                                       if (fval1 < 10.0)
                                        {
-                                               fval2 *= fval1;
-                                               fval2 += SNR_COEFF[i];
+                                               fval2 = SNR_COEFF[0];
+                                               for (int i=0; i<6; ++i)
+                                               {
+                                                       fval2 *= fval1;
+                                                       fval2 += SNR_COEFF[i];
+                                               }
+                                               fval1 = fval2;
                                        }
-                                       fval1 = fval2;
+                                       snr_in_db = fval1;
                                }
-                               snr_in_db = fval1;
+#if HAVE_DVB_API_VERSION >= 3
+                               else
+                               {
+                                       float fval1 = SDS_SNRE / 268435456.0,
+                                                 fval2, fval3, fval4;
 
+                                       if (parm_u_qpsk_fec_inner <= FEC_S2_QPSK_9_10) // DVB-S2 QPSK
+                                       {
+                                               fval2 = 6.76;
+                                               fval3 = 4.35;
+                                       }
+                                       else // 8PSK
+                                       {
+                                               fval1 *= 0.5;
+                                               fval2 = 8.06;
+                                               fval3 = 6.18;
+                                       }
+                                       fval4 = -10.0 * log10(fval1);
+                                       fval1 = fval4;
+                                       for (int i=0; i < 5; ++i)
+                                               fval1 = fval4 - fval2 * log10(1.0+pow(10.0, (fval3-fval1)/fval2));
+                                       snr_in_db = fval1;
+                               }
+#endif
                                return (int)(snr_in_db * 100.0);
                        }
                        else if (strstr(m_description, "Alps BSBE1 C01A") ||
@@ -781,7 +809,6 @@ int eDVBFrontend::readFrontendData(int type)
                                                i;
                                        if(INRANGE(CN_lookup[Imin][REGVAL],regval,CN_lookup[Imax][REGVAL]))
                                        {
-                                               long val;
                                                while((Imax-Imin)>1)
                                                {
                                                        i=(Imax+Imin)/2;
@@ -987,22 +1014,19 @@ void fillDictWithSatelliteData(ePyObject dict, const FRONTENDPARAMETERS &parm, e
                        break;
                }
                PutToDict(dict, "rolloff", tmp);
-               if (parm_u_qpsk_fec_inner > FEC_S2_QPSK_9_10)
+               switch(parm_inversion & 0x30)
                {
-                       switch(parm_inversion & 0x30)
-                       {
-                       case 0: // pilot off
-                               tmp = "PILOT_OFF";
-                               break;
-                       case 0x10: // pilot on
-                               tmp = "PILOT_ON";
-                               break;
-                       case 0x20: // pilot auto
-                               tmp = "PILOT_AUTO";
-                               break;
-                       }
-                       PutToDict(dict, "pilot", tmp);
+               case 0: // pilot off
+                       tmp = "PILOT_OFF";
+                       break;
+               case 0x10: // pilot on
+                       tmp = "PILOT_ON";
+                       break;
+               case 0x20: // pilot auto
+                       tmp = "PILOT_AUTO";
+                       break;
                }
+               PutToDict(dict, "pilot", tmp);
                tmp = "DVB-S2";
        }
        else
@@ -1283,7 +1307,7 @@ void eDVBFrontend::getTransponderData(ePyObject dest, bool original)
                                {
                                        const FRONTENDPARAMETERS &parm = original || m_simulate ? this->parm : front;
                                        const char *tmp = "INVERSION_AUTO";
-                                       switch(parm_inversion)
+                                       switch(parm_inversion & 3)
                                        {
                                                case INVERSION_ON:
                                                        tmp = "INVERSION_ON";
@@ -1889,10 +1913,10 @@ RESULT eDVBFrontend::prepare_sat(const eDVBFrontendParametersSatellite &feparm,
                                        return -EINVAL;
                        }
                        parm_inversion |= (feparm.rolloff << 2); // Hack.. we use bit 2..3 of inversion param for rolloff
+                       parm_inversion |= (feparm.pilot << 4); // Hack.. we use bit 4..5 of inversion param for pilot
                        if (feparm.modulation == eDVBFrontendParametersSatellite::Modulation::M8PSK) {
                                parm_u_qpsk_fec_inner = (fe_code_rate_t)((int)parm_u_qpsk_fec_inner+9);
                                // 8PSK fec driver values are decimal 9 bigger
-                               parm_inversion |= (feparm.pilot << 4); // Hack.. we use bit 4..5 of inversion param for pilot
                        }
                }
 #endif
index a2cce94..cda0589 100644 (file)
@@ -315,7 +315,7 @@ public:
        // iStaticServiceInformation
        RESULT getName(const eServiceReference &ref, std::string &name);
        RESULT getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &ptr, time_t start_time);
-       int isPlayable(const eServiceReference &ref, const eServiceReference &ignore);
+       int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate=false);
        PyObject *getInfoObject(const eServiceReference &ref, int);  // implemented in lib/service/servicedvb.h
 
                /* for filtering: */
index 692428d..842d697 100644 (file)
@@ -1,3 +1,4 @@
+#include <lib/base/nconfig.h> // access to python config
 #include <lib/base/eerror.h>
 #include <lib/dvb/pmt.h>
 #include <lib/dvb/specs.h>
@@ -6,6 +7,7 @@
 #include <lib/dvb_ci/dvbci.h>
 #include <lib/dvb/epgcache.h>
 #include <lib/dvb/scan.h>
+#include <lib/dvb_ci/dvbci_session.h>
 #include <dvbsi++/ca_descriptor.h>
 #include <dvbsi++/ca_program_map_section.h>
 #include <dvbsi++/teletext_descriptor.h>
@@ -14,7 +16,6 @@
 #include <dvbsi++/stream_identifier_descriptor.h>
 #include <dvbsi++/subtitling_descriptor.h>
 #include <dvbsi++/teletext_descriptor.h>
-#include <lib/base/nconfig.h> // access to python config
 
 eDVBServicePMTHandler::eDVBServicePMTHandler()
        :m_ca_servicePtr(0), m_dvb_scan(0), m_decode_demux_num(0xFF)
@@ -677,7 +678,7 @@ ChannelMap eDVBCAService::exist_channels;
 ePtr<eConnection> eDVBCAService::m_chanAddedConn;
 
 eDVBCAService::eDVBCAService()
-       : m_prev_build_hash(0), m_sendstate(0), m_retryTimer(eTimer::create(eApp))
+       :m_buffer(512), m_prev_build_hash(0), m_sendstate(0), m_retryTimer(eTimer::create(eApp))
 {
        memset(m_used_demux, 0xFF, sizeof(m_used_demux));
        CONNECT(m_retryTimer->timeout, eDVBCAService::sendCAPMT);
@@ -864,19 +865,100 @@ channel_data *eDVBCAService::getChannelData(eDVBChannelID &chid)
 }
 // end static methods
 
+#define CA_REPLY_DEBUG
+#define MAX_LENGTH_BYTES 4
+#define MIN_LENGTH_BYTES 1
+
 void eDVBCAService::socketCB(int what)
 {
-       if (what & eSocketNotifier::Read)
-               /*eDebug("[eDVBCAService] data to read\n")*/;
-       if (what & eSocketNotifier::Priority)
-               /*eDebug("[eDVBCAService] priority data to read\n")*/;
+       if (what & (eSocketNotifier::Read | eSocketNotifier::Priority))
+       {
+               char msgbuffer[4096];
+               ssize_t length = read(m_sock, msgbuffer, sizeof(msgbuffer));
+               if (length == -1)
+               {
+                       if (errno != EAGAIN && errno != EINTR && errno != EBUSY)
+                       {
+                               eDebug("[eSocketMMIHandler] read (%m)");
+                               what |= eSocketNotifier::Error;
+                       }
+               } else if (length == 0)
+               {
+                       what |= eSocketNotifier::Hungup;
+               } else
+               {
+                       int len = length;
+                       unsigned char *data = (unsigned char*)msgbuffer;
+                       int clear = 1;
+       // If a new message starts, then the previous message
+       // should already have been processed. Otherwise the
+       // previous message was incomplete and should therefore
+       // be deleted.
+                       if ((len >= 1) && ((data[0] & 0xFF) != 0x9f))
+                               clear = 0;
+                       if ((len >= 2) && ((data[1] & 0x80) != 0x80))
+                               clear = 0;
+                       if ((len >= 3) && ((data[2] & 0x80) != 0x00))
+                               clear = 0;
+                       if (clear)
+                       {
+                               m_buffer.clear();
+#ifdef CA_REPLY_DEBUG
+                               eDebug("clear buffer");
+#endif
+                       }
+#ifdef CA_REPLY_DEBUG
+                       eDebug("Put to buffer:");
+                       for (int i=0; i < len; ++i)
+                               eDebugNoNewLine("%02x ", data[i]);
+                       eDebug("\n--------");
+#endif
+                       m_buffer.write( data, len );
+
+                       while ( m_buffer.size() >= (3 + MIN_LENGTH_BYTES) )
+                       {
+                               unsigned char tmp[3+MAX_LENGTH_BYTES];
+                               m_buffer.peek(tmp, 3+MIN_LENGTH_BYTES);
+                               if (((tmp[0] & 0xFF) != 0x9f) || ((tmp[1] & 0x80) != 0x80) || ((tmp[2] & 0x80) != 0x00))
+                               {
+                                       m_buffer.skip(1);
+#ifdef CA_REPLY_DEBUG
+                                       eDebug("skip %02x", tmp[0]);
+#endif
+                                       continue;
+                               }
+                               if (tmp[3] & 0x80)
+                               {
+                                       int peekLength = (tmp[3] & 0x7f) + 4;
+                                       if (m_buffer.size() < peekLength)
+                                               continue;
+                                       m_buffer.peek(tmp, peekLength);
+                               }
+                               int size=0;
+                               int LengthBytes=eDVBCISession::parseLengthField(tmp+3, size);
+                               int messageLength = 3+LengthBytes+size;
+                               if ( m_buffer.size() >= messageLength )
+                               {
+                                       unsigned char dest[messageLength];
+                                       m_buffer.read(dest, messageLength);
+#ifdef CA_REPLY_DEBUG
+                                       eDebug("dump ca reply:");
+                                       for (int i=0; i < messageLength; ++i)
+                                               eDebugNoNewLine("%02x ", dest[i]);
+                                       eDebug("\n--------");
+#endif
+//                                     /*emit*/ mmi_progress(0, dest, (const void*)(dest+3+LengthBytes), messageLength-3-LengthBytes);
+                               }
+                       }
+               }
+       }
        if (what & eSocketNotifier::Hungup) {
-               /*eDebug("[eDVBCAService] connection closed\n")*/;
+               /*eDebug("[eDVBCAService] connection closed")*/;
                m_sendstate=1;
                sendCAPMT();
        }
        if (what & eSocketNotifier::Error)
-               /*eDebug("[eDVBCAService] connection error\n")*/;
+               eDebug("[eDVBCAService] connection error");
 }
 
 void eDVBCAService::Connect()
index 107b071..ff0ef04 100644 (file)
@@ -3,6 +3,7 @@
 
 #ifndef SWIG
 #include <map>
+#include <lib/base/buffer.h>
 #include <lib/dvb/idvb.h>
 #include <lib/dvb/dvb.h>
 #include <lib/dvb/idemux.h>
@@ -35,6 +36,7 @@ typedef std::map<iDVBChannel*, channel_data*> ChannelMap;
 
 class eDVBCAService: public Object
 {
+       eIOBuffer m_buffer;
        ePtr<eSocketNotifier> m_sn;
        eServiceReferenceDVB m_service;
        uint8_t m_used_demux[32];
index dfc6224..c7a3746 100644 (file)
@@ -365,9 +365,9 @@ int eMPEGStreamParserTS::processPacket(const unsigned char *pkt, off_t offset)
                        if (ptsvalid)
                        {
                                m_streaminfo.m_access_points[offset] = pts;
-                               eDebug("Sequence header at %llx, pts %llx", offset, pts);
+//                             eDebug("Sequence header at %llx, pts %llx", offset, pts);
                        } else
-                               eDebug("Sequence header but no valid PTS value.");
+                               /*eDebug("Sequence header but no valid PTS value.")*/;
                }
 
                if (pkt[3] == 0x09 &&   /* MPEG4 AVC unit access delimiter */
@@ -376,9 +376,9 @@ int eMPEGStreamParserTS::processPacket(const unsigned char *pkt, off_t offset)
                        if (ptsvalid)
                        {
                                m_streaminfo.m_access_points[offset] = pts;
-                               eDebug("MPEG4 AVC UAD at %llx, pts %llx", offset, pts);
+//                             eDebug("MPEG4 AVC UAD at %llx, pts %llx", offset, pts);
                        } else
-                               eDebug("MPEG4 AVC UAD but no valid PTS value.");
+                               /*eDebug("MPEG4 AVC UAD but no valid PTS value.")*/;
                }
        }
        return 0;
index 2457763..71893f9 100644 (file)
@@ -758,7 +758,7 @@ void eDVBScan::channelDone()
                        SCAN_eDebug("name '%s', provider_name '%s'", sname, pname);
                        service->m_service_name = convertDVBUTF8(sname);
                        service->genSortName();
-                       service->m_provider_name = pname;
+                       service->m_provider_name = convertDVBUTF8(pname);
                }
 
                if (!(m_flags & scanOnlyFree) || !m_pmt_in_progress->second.scrambled) {
index 35a8d04..2b7f717 100644 (file)
@@ -637,11 +637,11 @@ RESULT eDVBSatelliteEquipmentControl::prepare(iDVBFrontend &frontend, FRONTENDPA
                                                        diseqc.data[2] = 0;
                                                        // diseqc reset
                                                        sec_sequence.push_back( eSecCommand(eSecCommand::SEND_DISEQC, diseqc) );
-                                                       sec_sequence.push_back( eSecCommand(eSecCommand::SLEEP, 50) );
+                                                       sec_sequence.push_back( eSecCommand(eSecCommand::SLEEP, m_params[DELAY_AFTER_DISEQC_RESET_CMD]) );
                                                        diseqc.data[2] = 3;
                                                        // diseqc peripherial powersupply on
                                                        sec_sequence.push_back( eSecCommand(eSecCommand::SEND_DISEQC, diseqc) );
-                                                       sec_sequence.push_back( eSecCommand(eSecCommand::SLEEP, 150) );
+                                                       sec_sequence.push_back( eSecCommand(eSecCommand::SLEEP, m_params[DELAY_AFTER_DISEQC_PERIPHERIAL_POWERON_CMD]) );
                                                }
 
                                                for (int seq_repeat = 0; seq_repeat < (di_param.m_seq_repeat?2:1); ++seq_repeat)
@@ -894,8 +894,8 @@ RESULT eDVBSatelliteEquipmentControl::prepare(iDVBFrontend &frontend, FRONTENDPA
                                csw = band;
                        }
 
-                       if (sendDiSEqC)
-                               sec_sequence.push_front( eSecCommand(eSecCommand::SET_POWER_LIMITING_MODE, eSecCommand::modeStatic) );
+//                     if (sendDiSEqC)
+                       sec_sequence.push_front( eSecCommand(eSecCommand::SET_POWER_LIMITING_MODE, eSecCommand::modeStatic) );
 
                        sec_fe->setData(eDVBFrontend::NEW_CSW, csw);
                        sec_fe->setData(eDVBFrontend::NEW_UCSW, ucsw);
@@ -923,8 +923,9 @@ RESULT eDVBSatelliteEquipmentControl::prepare(iDVBFrontend &frontend, FRONTENDPA
                                sec_sequence.push_back( eSecCommand(eSecCommand::SET_FRONTEND) );
                        }
 
-                       if (sendDiSEqC)
-                               sec_sequence.push_back( eSecCommand(eSecCommand::SET_POWER_LIMITING_MODE, eSecCommand::modeDynamic) );
+//                     if (sendDiSEqC)
+                       sec_sequence.push_back( eSecCommand(eSecCommand::SLEEP, 50) );
+                       sec_sequence.push_back( eSecCommand(eSecCommand::SET_POWER_LIMITING_MODE, eSecCommand::modeDynamic) );
 
                        frontend.setSecSequence(sec_sequence);
 
index 42e53eb..e68ed16 100644 (file)
@@ -267,6 +267,8 @@ public:
                MOTOR_COMMAND_RETRIES, // max transmit tries of rotor command when the rotor dont start turning (with power measurement)
                MOTOR_RUNNING_TIMEOUT, // max motor running time before timeout
                DELAY_AFTER_VOLTAGE_CHANGE_BEFORE_SWITCH_CMDS, // delay after change voltage before transmit toneburst/diseqc
+               DELAY_AFTER_DISEQC_RESET_CMD,
+               DELAY_AFTER_DISEQC_PERIPHERIAL_POWERON_CMD,
                MAX_PARAMS
        };
 private:
index 3911719..ecc19b5 100644 (file)
@@ -166,8 +166,14 @@ void eDBoxLCD::update()
                memset(raw, 0, 64*64);
                for (y=0; y<64; y++)
                {
+                       int pix=0;
                        for (x=0; x<128 / 2; x++)
-                               raw[y*64+x] = (_buffer[y*132 + x * 2 + 2] & 0xF0) |(_buffer[y*132 + x * 2 + 1 + 2] >> 4);
+                       {
+                               pix = (_buffer[y*132 + x * 2 + 2] & 0xF0) |(_buffer[y*132 + x * 2 + 1 + 2] >> 4);
+                               if (inverted)
+                                       pix = 0xFF - pix;
+                               raw[y*64+x] = pix;
+                       }
                }
                if (lcdfd >= 0)
                        write(lcdfd, raw, 64*64);
index 94cb35b..1f9bed4 100644 (file)
@@ -10,6 +10,8 @@
 
 #include <epng.h>      // savePNG need it
 
+#define JDCT_DEFAULT JDCT_IFAST
+
 extern "C" {
 #include <jpeglib.h>
 #include <gif_lib.h>
@@ -163,6 +165,151 @@ static int jpeg_save(unsigned char *image_buffer, const char * filename, int qua
        return 0;
 }
 
+/* Expanded data source object for memory buffer input */
+typedef struct
+{
+       struct jpeg_source_mgr pub;     /* public fields */
+       FILE *infile;                   /* source stream */
+       JOCTET *buffer;         /* start of buffer */
+       boolean start_of_file;  /* have we gotten any data yet? */
+} mem_source_mgr;
+
+typedef mem_source_mgr *mem_src_ptr;
+
+static void init_source (j_decompress_ptr cinfo)
+{
+       mem_src_ptr src = (mem_src_ptr) cinfo->src;
+       src->start_of_file = TRUE;
+}
+
+static boolean fill_input_buffer (j_decompress_ptr cinfo)
+{
+       /* no-op */ (void)cinfo;
+       return TRUE;
+ }
+
+static void skip_input_data (j_decompress_ptr cinfo, long num_bytes)
+{
+       mem_src_ptr src = (mem_src_ptr) cinfo->src;
+       
+       if (num_bytes > 0)
+       {
+               src->pub.next_input_byte += (size_t) num_bytes;
+               src->pub.bytes_in_buffer -= (size_t) num_bytes;
+       }
+}
+
+static void term_source (j_decompress_ptr cinfo)
+{
+       /* no-op */ (void)cinfo;
+}
+
+static void jpeg_memory_src (j_decompress_ptr cinfo, unsigned char *inbfr, int len)
+{
+       mem_src_ptr src;
+       if (cinfo->src == NULL)
+       {
+               cinfo->src = (struct jpeg_source_mgr *)
+               (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT, (size_t)sizeof(mem_source_mgr));
+               src = (mem_src_ptr) cinfo->src;
+               src->buffer = (JOCTET *) inbfr;
+       }
+       src = (mem_src_ptr) cinfo->src;
+       src->pub.init_source = init_source;
+       src->pub.fill_input_buffer = fill_input_buffer;
+       src->pub.skip_input_data = skip_input_data;
+       src->pub.resync_to_restart = jpeg_resync_to_restart;    /* use default method */
+       src->pub.term_source = term_source;
+       src->infile = 0L;
+       src->pub.bytes_in_buffer = len;                         /* sets to entire file len */
+       src->pub.next_input_byte = (JOCTET *)inbfr;             /* at start of buffer */
+}
+
+static int jpeg_load_thumb(const char *filename, int *x, int *y)
+{
+       struct jpeg_decompress_struct cinfo;
+       struct jpeg_decompress_struct *ciptr = &cinfo;
+       struct r_jpeg_error_mgr emgr;
+       FILE *fh;
+
+       if (!(fh = fopen(filename, "rb")))
+               return 0;
+
+       ciptr->err = jpeg_std_error(&emgr.pub);
+       emgr.pub.error_exit = jpeg_cb_error_exit;
+       if (setjmp(emgr.envbuffer) == 1)
+       {
+               jpeg_destroy_decompress(ciptr);
+               fclose(fh);
+               return 0;
+       }
+
+       jpeg_create_decompress(ciptr);
+       jpeg_stdio_src(ciptr, fh);
+
+       jpeg_save_markers (ciptr, JPEG_APP0 + 1, 0xffff);
+
+       jpeg_read_header(ciptr, TRUE);
+
+       struct jpeg_marker_struct *m = cinfo.marker_list;
+
+       unsigned char *thumb_buf = NULL;
+       size_t bufsize;
+       
+       if ( m )
+       {
+               unsigned char *p_data = m->data;
+               while ( p_data < m->data+m->data_length )
+               {
+                       if ( p_data[0] == 0xFF && p_data[1] == 0xD8 )
+                       {
+                               bufsize = (size_t) m->data_length - (size_t) (p_data-m->data);
+                               thumb_buf = new unsigned char[bufsize];
+                               bufsize = 0;
+                               do {
+                                       thumb_buf[bufsize++] = *p_data;
+                               } while ( !(*p_data++ == 0xFF && *p_data == 0xD9) && p_data < m->data+m->data_length );
+                               thumb_buf[bufsize++] = *p_data;
+                       }
+                       p_data++;
+               }
+       }
+
+       if ( thumb_buf != NULL )
+       {
+               jpeg_create_decompress(ciptr);
+               jpeg_memory_src(ciptr, thumb_buf, bufsize-2);
+               jpeg_read_header(ciptr, TRUE);
+       }
+       else
+               eDebug("no exif thumbnail found! loading actual image instead");
+
+       ciptr->out_color_space = JCS_RGB;
+       ciptr->scale_denom = 1;
+
+       jpeg_start_decompress(ciptr);
+       
+       *x=ciptr->output_width;
+       *y=ciptr->output_height;
+
+       if(ciptr->output_components == 3)
+       {
+               JSAMPLE *lb = (JSAMPLE *)(*ciptr->mem->alloc_small)((j_common_ptr) ciptr, JPOOL_PERMANENT, ciptr->output_width * ciptr->output_components);
+               pic_buffer = new unsigned char[ciptr->output_height * ciptr->output_width * ciptr->output_components];
+               unsigned char *bp = pic_buffer;
+
+               while (ciptr->output_scanline < ciptr->output_height)
+               {
+                       jpeg_read_scanlines(ciptr, &lb, 1);
+                       memcpy(bp, lb, ciptr->output_width * ciptr->output_components);
+                       bp += ciptr->output_width * ciptr->output_components;
+               }
+       }
+       jpeg_finish_decompress(ciptr);
+       jpeg_destroy_decompress(ciptr);
+       fclose(fh);
+       return 1;
+}
 
 static int jpeg_load(const char *filename, int *x, int *y)
 {
@@ -410,7 +557,7 @@ static int png_load(const char *filename,  int *x, int *y)
 
        if (width * height > 1000000) // 1000x1000 or equiv.
        {
-               eDebug("[png_load] image size is %d x %d, which is \"too large\".", width, height);
+               eDebug("[png_load] image size is %d x %d, which is \"too large\".", (int)width, (int)height);
                png_read_end(png_ptr, info_ptr);
                png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
                fclose(fh);
@@ -632,7 +779,7 @@ static int pic_id(const char *name)
        return F_NONE;
 }
 
-int loadPic(ePtr<gPixmap> &result, std::string filename, int w, int h, int aspect, int resize_mode, int rotate, int background, std::string cachefile)
+int loadPic(ePtr<gPixmap> &result, std::string filename, int w, int h, int aspect, int resize_mode, int rotate, int background, std::string cachefile, int thumbnail)
 {
        result = 0;
        int ox=0, oy=0, imx, imy;
@@ -650,7 +797,13 @@ int loadPic(ePtr<gPixmap> &result, std::string filename, int w, int h, int aspec
                switch(pic_id(filename.c_str()))
                {
                        case F_PNG:     png_load(filename.c_str(), &ox, &oy);break;
-                       case F_JPEG:    jpeg_load(filename.c_str(), &ox, &oy);pic_buffer = conv24to32(pic_buffer, ox*oy, 1); break;
+                       case F_JPEG:    {
+                                       if (thumbnail)
+                                               jpeg_load_thumb(filename.c_str(), &ox, &oy);
+                                       else
+                                               jpeg_load(filename.c_str(), &ox, &oy);
+                                       pic_buffer = conv24to32(pic_buffer, ox*oy, 1);
+                                       break; }
                        case F_BMP:     bmp_load(filename.c_str(), &ox, &oy);pic_buffer = conv24to32(pic_buffer, ox*oy, 1); break;
                        case F_GIF:     gif_load(filename.c_str(), &ox, &oy);pic_buffer = conv24to32(pic_buffer, ox*oy, 1); break;
                        default:
index 7d5d8b2..7bb9adf 100644 (file)
@@ -5,7 +5,7 @@
 #include <lib/gdi/gpixmap.h>
 #include <lib/gdi/epng.h>
 
-SWIG_VOID(int) loadPic(ePtr<gPixmap> &SWIG_OUTPUT, std::string filename, int x, int y, int aspect, int resize_mode=0, int rotate=0, int background=0, std::string cachefile="");
+SWIG_VOID(int) loadPic(ePtr<gPixmap> &SWIG_OUTPUT, std::string filename, int x, int y, int aspect, int resize_mode=0, int rotate=0, int background=0, std::string cachefile="", int thumbnail=0);
 PyObject *getExif(const char *filename);
 
 #endif // __picload_h__
index 4785d7a..b3ee511 100644 (file)
@@ -126,13 +126,17 @@ int ePositionGauge::event(int event, void *data, void *data2)
                                        continue;
                                } else if (i->what == 1) /* out */
                                        out = i++->where;
-                               else /* mark */
+                               else if (i->what == 2) /* mark */
                                {
                                        int xm = scale(i->where);
                                        painter.setForegroundColor(gRGB(0xFF8080));
                                        painter.fill(eRect(xm - 2, 0, 4, s.height()));
                                        i++;
                                        continue;
+                               } else /* other marker, like last position */
+                               {
+                                       ++i;
+                                       continue;
                                }
                        }
                        
old mode 100644 (file)
new mode 100755 (executable)
index 25c9b8b..04815c8
@@ -1,7 +1,6 @@
 from GUIComponent import GUIComponent
 
 from enigma import eListboxPythonMultiContent, eListbox, gFont
-
 from Tools.KeyBindings import queryKeyBinding, getKeyDescription
 #getKeyPositions
 
@@ -13,6 +12,7 @@ class HelpMenuList(GUIComponent):
                self.onSelChanged = [ ]
                self.l = eListboxPythonMultiContent()
                self.callback = callback
+               self.extendedHelp = False
 
                l = [ ]
                for (actionmap, context, actions) in list:
@@ -36,17 +36,26 @@ class HelpMenuList(GUIComponent):
                                if flags & 8: # for long keypresses, prepend l_ into the key name.
                                        name = (name[0], "long")
                                        
-                               print "name:", name
-
                                entry.append( (actionmap, context, action, name ) )
-                               entry.append( (eListboxPythonMultiContent.TYPE_TEXT, 0, 0, 400, 28, 0, 0, help) )
-
+                                       
+                               if type(help).__name__== 'list':
+                                       self.extendedHelp = True
+                                       print "extendedHelpEntry found"
+                                       entry.append( (eListboxPythonMultiContent.TYPE_TEXT, 0, 0, 400, 26, 0, 0, help[0]) )
+                                       entry.append( (eListboxPythonMultiContent.TYPE_TEXT, 0, 28, 400, 20, 1, 0, help[1]) )
+                               else:
+                                       entry.append( (eListboxPythonMultiContent.TYPE_TEXT, 0, 0, 400, 28, 0, 0, help) )
+                                       
                                l.append(entry)
 
                self.l.setList(l)
-
-               self.l.setFont(0, gFont("Regular", 24))
-               self.l.setItemHeight(38)
+               if self.extendedHelp is True:
+                       self.l.setFont(0, gFont("Regular", 24))
+                       self.l.setFont(1, gFont("Regular", 18))
+                       self.l.setItemHeight(50)
+               else:
+                       self.l.setFont(0, gFont("Regular", 24))
+                       self.l.setItemHeight(38)
 
        def ok(self):
                # a list entry has a "private" tuple as first entry...
index acb50e5..6d1e31f 100644 (file)
@@ -35,6 +35,7 @@ class Language:
                self.addLanguage(_("Spanish"), "es", "ES")
                self.addLanguage(_("Swedish"), "sv", "SE")
                self.addLanguage(_("Turkish"), "tr", "TR")
+               self.addLanguage(_("Ukrainian"), "uk", "UA")
 
                self.callbacks = []
 
index 0471843..0e50123 100644 (file)
@@ -44,9 +44,14 @@ def InitLcd():
 
                ilcd = LCD()
 
-               config.lcd.bright = ConfigSlider(default=10, limits=(0, 10))
+               config.lcd.standby = ConfigSlider(default=0, limits=(0, 10))
+               config.lcd.standby.addNotifier(setLCDbright);
+               config.lcd.standby.apply = lambda : setLCDbright(config.lcd.standby)
+
+               config.lcd.bright = ConfigSlider(default=5, limits=(0, 10))
                config.lcd.bright.addNotifier(setLCDbright);
                config.lcd.bright.apply = lambda : setLCDbright(config.lcd.bright)
+               config.lcd.bright.callNotifiersOnSaveAndCancel = True
 
                if not ilcd.isOled():
                        config.lcd.contrast = ConfigSlider(default=5, limits=(0, 20))
@@ -54,9 +59,6 @@ def InitLcd():
                else:
                        config.lcd.contrast = ConfigNothing()
 
-               config.lcd.standby = ConfigSlider(default=0, limits=(0, 10))
-               config.lcd.standby.apply = lambda : setLCDbright(config.lcd.standby)
-
                config.lcd.invert = ConfigYesNo(default=False)
                config.lcd.invert.addNotifier(setLCDinverted);
        else:
index 791274f..87ba977 100644 (file)
@@ -40,7 +40,7 @@ def PlaylistEntryComponent(serviceref, state):
 
        if png is not None:
                res.append((eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, 5, 0, 16, 16, png))
-    
+
        return res
 
 class PlayList(MenuList):
@@ -76,6 +76,7 @@ class PlayList(MenuList):
        def setCurrentPlaying(self, index):
                self.oldCurrPlaying = self.currPlaying
                self.currPlaying = index
+               self.moveToIndex(index)
 
        def updateState(self, state):
                if len(self.list) > self.oldCurrPlaying and self.oldCurrPlaying != -1:
index ace3601..8568f3d 100644 (file)
@@ -103,7 +103,8 @@ class MovieList(GUIComponent):
                txt = info.getName(serviceref)
                service = ServiceReference(info.getInfoString(serviceref, iServiceInformation.sServiceref))
                description = info.getInfoString(serviceref, iServiceInformation.sDescription)
-               
+               tags = info.getInfoString(serviceref, iServiceInformation.sTags)
+
                begin_string = ""
                if begin > 0:
                        t = FuzzyTime(begin)
@@ -111,23 +112,33 @@ class MovieList(GUIComponent):
                
                if self.list_type == MovieList.LISTTYPE_ORIGINAL:
                        res.append(MultiContentEntryText(pos=(0, 0), size=(width-182, 30), font = 0, flags = RT_HALIGN_LEFT, text=txt))
-                       if service is not None:
-                               res.append(MultiContentEntryText(pos=(width-180, 0), size=(180, 30), font = 2, flags = RT_HALIGN_RIGHT, text = service.getServiceName()))
+                       if self.tags:
+                               res.append(MultiContentEntryText(pos=(width-180, 0), size=(180, 30), font = 2, flags = RT_HALIGN_RIGHT, text = tags))
+                               if service is not None:
+                                       res.append(MultiContentEntryText(pos=(200, 50), size=(200, 20), font = 1, flags = RT_HALIGN_LEFT, text = service.getServiceName()))
+                       else:
+                               if service is not None:
+                                       res.append(MultiContentEntryText(pos=(width-180, 0), size=(180, 30), font = 2, flags = RT_HALIGN_RIGHT, text = service.getServiceName()))
                        res.append(MultiContentEntryText(pos=(0, 30), size=(width, 20), font=1, flags=RT_HALIGN_LEFT, text=description))
-                       res.append(MultiContentEntryText(pos=(0, 50), size=(width-270, 20), font=1, flags=RT_HALIGN_LEFT, text=begin_string))
-                       res.append(MultiContentEntryText(pos=(width-200, 50), size=(200, 20), font=1, flags=RT_HALIGN_RIGHT, text=len))
+                       res.append(MultiContentEntryText(pos=(0, 50), size=(200, 20), font=1, flags=RT_HALIGN_LEFT, text=begin_string))
+                       res.append(MultiContentEntryText(pos=(width-200, 50), size=(198, 20), font=1, flags=RT_HALIGN_RIGHT, text=len))
                elif self.list_type == MovieList.LISTTYPE_COMPACT_DESCRIPTION:
                        res.append(MultiContentEntryText(pos=(0, 0), size=(width-120, 20), font = 0, flags = RT_HALIGN_LEFT, text = txt))
-                       if service is not None:
-                               res.append(MultiContentEntryText(pos=(width-212, 20), size=(154, 17), font = 1, flags = RT_HALIGN_RIGHT, text = service.getServiceName()))
                        res.append(MultiContentEntryText(pos=(0, 20), size=(width-212, 17), font=1, flags=RT_HALIGN_LEFT, text=description))
                        res.append(MultiContentEntryText(pos=(width-120, 6), size=(120, 20), font=1, flags=RT_HALIGN_RIGHT, text=begin_string))
+                       if service is not None:
+                               res.append(MultiContentEntryText(pos=(width-212, 20), size=(154, 17), font = 1, flags = RT_HALIGN_RIGHT, text = service.getServiceName()))
                        res.append(MultiContentEntryText(pos=(width-58, 20), size=(58, 20), font=1, flags=RT_HALIGN_RIGHT, text=len))
                elif self.list_type == MovieList.LISTTYPE_COMPACT:
                        res.append(MultiContentEntryText(pos=(0, 0), size=(width-77, 20), font = 0, flags = RT_HALIGN_LEFT, text = txt))
-                       if service is not None:
-                               res.append(MultiContentEntryText(pos=(width-200, 20), size=(200, 17), font = 1, flags = RT_HALIGN_RIGHT, text = service.getServiceName()))
-                       res.append(MultiContentEntryText(pos=(0, 20), size=(width-200, 17), font=1, flags=RT_HALIGN_LEFT, text=begin_string))
+                       if self.tags:
+                               res.append(MultiContentEntryText(pos=(width-200, 20), size=(200, 17), font = 1, flags = RT_HALIGN_RIGHT, text = tags))
+                               if service is not None:
+                                       res.append(MultiContentEntryText(pos=(200, 20), size=(200, 17), font = 1, flags = RT_HALIGN_LEFT, text = service.getServiceName()))
+                       else:
+                               if service is not None:
+                                       res.append(MultiContentEntryText(pos=(width-200, 20), size=(200, 17), font = 1, flags = RT_HALIGN_RIGHT, text = service.getServiceName()))
+                       res.append(MultiContentEntryText(pos=(0, 20), size=(200, 17), font=1, flags=RT_HALIGN_LEFT, text=begin_string))
                        res.append(MultiContentEntryText(pos=(width-75, 0), size=(75, 20), font=0, flags=RT_HALIGN_RIGHT, text=len))
                else:
                        assert(self.list_type == MovieList.LISTTYPE_MINIMAL)
@@ -212,6 +223,7 @@ class MovieList(GUIComponent):
                        if this_tags == ['']:
                                this_tags = []
                        this_tags = set(this_tags)
+                       tags |= this_tags
                
                        # filter_tags is either None (which means no filter at all), or 
                        # a set. In this case, all elements of filter_tags must be present,
@@ -219,7 +231,6 @@ class MovieList(GUIComponent):
                        if filter_tags is not None and not this_tags.issuperset(filter_tags):
                                continue
                
-                       tags |= this_tags
                        self.list.append((serviceref, info, begin, -1))
                
                if self.sort_type == MovieList.SORT_ALPHANUMERIC:
@@ -243,8 +254,9 @@ class MovieList(GUIComponent):
                for x in self.list:
                        if x[0] == serviceref:
                                self.instance.moveSelectionTo(count)
-                               break
+                               return True
                        count += 1
-
+               return False
+       
        def moveDown(self):
                self.instance.moveSelection(self.instance.moveDown)
old mode 100644 (file)
new mode 100755 (executable)
index bed9d95..64b3aa6
@@ -7,11 +7,21 @@ from Components.Console import Console
 class Network:
        def __init__(self):
                self.ifaces = {}
-               self.configuredInterfaces = []          
+               self.configuredInterfaces = []
+               self.configuredNetworkAdapters = []
+               self.NetworkState = 0
+               self.DnsState = 0
                self.nameservers = []
                self.ethtool_bin = "/usr/sbin/ethtool"
                self.container = eConsoleAppContainer()
                self.Console = Console()
+               self.LinkConsole = Console()
+               self.restartConsole = Console()
+               self.deactivateConsole = Console()
+               self.deactivateInterfaceConsole = Console()
+               self.activateConsole = Console()
+               self.resetNetworkConsole = Console()
+               self.DnsConsole = Console()
                self.getInterfaces()
 
        def getInterfaces(self, callback = None):
@@ -28,6 +38,11 @@ class Network:
                                self.getDataForInterface(device, callback)
                        except AttributeError:
                                pass
+               #print "self.ifaces:", self.ifaces
+               #self.writeNetworkConfig()
+               #print ord(' ')
+               #for line in result:
+               #       print ord(line[0])
 
        # helper function
        def regExpMatch(self, pattern, string):
@@ -46,66 +61,60 @@ class Network:
                        ip.append(int(x))
                return ip
 
+       def getDataForInterface(self, iface,callback):
+               #get ip out of ip addr, as avahi sometimes overrides it in ifconfig.
+               if not self.Console:
+                       self.Console = Console()
+               cmd = "ip -o addr"
+               self.Console.ePopen(cmd, self.IPaddrFinished, [iface,callback])
+
        def IPaddrFinished(self, result, retval, extra_args):
                (iface, callback ) = extra_args
                data = { 'up': False, 'dhcp': False, 'preup' : False, 'postdown' : False }
                globalIPpattern = re_compile("scope global")
                ipRegexp = '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
-               ipLinePattern = re_compile('inet ' + ipRegexp +'/')
+               netRegexp = '[0-9]{1,2}'
+               macRegexp = '[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[a-z0-9]{2}\:[a-z0-9]{2}\:[a-z0-9]{2}'
+               ipLinePattern = re_compile('inet ' + ipRegexp + '/')
                ipPattern = re_compile(ipRegexp)
-
+               netmaskLinePattern = re_compile('/' + netRegexp)
+               netmaskPattern = re_compile(netRegexp)
+               bcastLinePattern = re_compile(' brd ' + ipRegexp)
+               upPattern = re_compile('UP')
+               macPattern = re_compile('[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[a-z0-9]{2}\:[a-z0-9]{2}\:[a-z0-9]{2}')
+               macLinePattern = re_compile('link/ether ' + macRegexp)
+               
                for line in result.splitlines():
                        split = line.strip().split(' ',2)
+                       if (split[1][:-1] == iface):
+                               up = self.regExpMatch(upPattern, split[2])
+                               mac = self.regExpMatch(macPattern, self.regExpMatch(macLinePattern, split[2]))
+                               if up is not None:
+                                       data['up'] = True
+                                       if iface is not 'lo':
+                                               self.configuredInterfaces.append(iface)
+                               if mac is not None:
+                                       data['mac'] = mac
                        if (split[1] == iface):
                                if re_search(globalIPpattern, split[2]):
                                        ip = self.regExpMatch(ipPattern, self.regExpMatch(ipLinePattern, split[2]))
+                                       netmask = self.calc_netmask(self.regExpMatch(netmaskPattern, self.regExpMatch(netmaskLinePattern, split[2])))
+                                       bcast = self.regExpMatch(ipPattern, self.regExpMatch(bcastLinePattern, split[2]))
                                        if ip is not None:
                                                data['ip'] = self.convertIP(ip)
+                                       if netmask is not None:
+                                               data['netmask'] = self.convertIP(netmask)
+                                       if bcast is not None:
+                                               data['bcast'] = self.convertIP(bcast)
+                                               
                if not data.has_key('ip'):
                        data['dhcp'] = True
                        data['ip'] = [0, 0, 0, 0]
                        data['netmask'] = [0, 0, 0, 0]
                        data['gateway'] = [0, 0, 0, 0]
 
-               cmd = "ifconfig " + iface
-               self.Console.ePopen(cmd, self.ifconfigFinished, [iface, data, callback])
-
-       def getDataForInterface(self, iface,callback):
-               #get ip out of ip addr, as avahi sometimes overrides it in ifconfig.
-               cmd = "ip -o addr"
-               self.Console.ePopen(cmd, self.IPaddrFinished, [iface,callback])
-
-       def ifconfigFinished(self, result, retval, extra_args ):
-               (iface, data, callback ) = extra_args
-               ipRegexp = '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
-               ipLinePattern = re_compile('inet addr:' + ipRegexp)
-               netmaskLinePattern = re_compile('Mask:' + ipRegexp)
-               bcastLinePattern = re_compile('Bcast:' + ipRegexp)
-               ipPattern = re_compile(ipRegexp)
-               upPattern = re_compile('UP ')
-               macPattern = re_compile('[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[0-9]{2}')
-
-               for line in result.splitlines():
-                       #ip = self.regExpMatch(ipPattern, self.regExpMatch(ipLinePattern, line))
-                       netmask = self.regExpMatch(ipPattern, self.regExpMatch(netmaskLinePattern, line))
-                       bcast = self.regExpMatch(ipPattern, self.regExpMatch(bcastLinePattern, line))
-                       up = self.regExpMatch(upPattern, line)
-                       mac = self.regExpMatch(macPattern, line)
-                       #if ip is not None:
-                       #       data['ip'] = self.convertIP(ip)
-                       if netmask is not None:
-                               data['netmask'] = self.convertIP(netmask)
-                       if bcast is not None:
-                               data['bcast'] = self.convertIP(bcast)
-                       if up is not None:
-                               data['up'] = True
-                               if iface is not 'lo':
-                                       self.configuredInterfaces.append(iface)
-                       if mac is not None:
-                               data['mac'] = mac
-
                cmd = "route -n | grep  " + iface
-               self.Console.ePopen(cmd,self.routeFinished,[iface,data,callback])
+               self.Console.ePopen(cmd,self.routeFinished, [iface, data, callback])
 
        def routeFinished(self, result, retval, extra_args):
                (iface, data, callback) = extra_args
@@ -119,16 +128,7 @@ class Network:
                                gateway = self.regExpMatch(ipPattern, line[16:31])
                                if gateway is not None:
                                        data['gateway'] = self.convertIP(gateway)
-
-               for line in result.splitlines(): #get real netmask in case avahi has overridden ifconfig netmask
-                       split = line.strip().split('   ')
-                       if re_search(ipPattern, split[0]):
-                               foundip = self.convertIP(split[0])
-                               if (foundip[0] == data['ip'][0] and foundip[1] == data['ip'][1]):
-                                       if re_search(ipPattern, split[4]):
-                                               mask = self.regExpMatch(ipPattern, self.regExpMatch(ipLinePattern, split[4]))
-                                               if mask is not None:
-                                                       data['netmask'] = self.convertIP(mask)
+                                       
                self.ifaces[iface] = data
                self.loadNetworkConfig(iface,callback)
 
@@ -214,13 +214,16 @@ class Network:
                for ifacename, iface in ifaces.items():
                        if self.ifaces.has_key(ifacename):
                                self.ifaces[ifacename]["dhcp"] = iface["dhcp"]
-               if len(self.Console.appContainers) == 0:
-                       # load ns only once
-                       self.loadNameserverConfig()
-                       print "read configured interfac:", ifaces
-                       print "self.ifaces after loading:", self.ifaces
-                       if callback is not None:
-                               callback(True)
+               if self.Console:
+                       if len(self.Console.appContainers) == 0:
+                               # save configured interfacelist
+                               self.configuredNetworkAdapters = self.configuredInterfaces
+                               # load ns only once     
+                               self.loadNameserverConfig()
+                               print "read configured interfac:", ifaces
+                               print "self.ifaces after loading:", self.ifaces
+                               if callback is not None:
+                                       callback(True)
 
        def loadNameserverConfig(self):
                ipRegexp = "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}"
@@ -244,16 +247,39 @@ class Network:
 
                print "nameservers:", self.nameservers
 
-       def deactivateNetworkConfig(self):
+       def deactivateNetworkConfig(self, callback = None):
+               self.deactivateConsole = Console()
+               self.commands = []
+               self.commands.append("/etc/init.d/avahi-daemon stop")
                for iface in self.ifaces.keys():
-                       system("ip addr flush " + iface)
-               system("/etc/init.d/networking stop")
-               system("killall -9 udhcpc")
-               system("rm /var/run/udhcpc*")
+                       cmd = "ip addr flush " + iface
+                       self.commands.append(cmd)               
+               self.commands.append("/etc/init.d/networking stop")
+               self.commands.append("killall -9 udhcpc")
+               self.commands.append("rm /var/run/udhcpc*")
+               self.deactivateConsole.eBatch(self.commands, self.deactivateNetworkFinished, callback, debug=True)
+               
+       def deactivateNetworkFinished(self,extra_args):
+               callback = extra_args
+               if len(self.deactivateConsole.appContainers) == 0:
+                       if callback is not None:
+                               callback(True)
 
-       def activateNetworkConfig(self):
-               system("/etc/init.d/networking start")
-               self.getInterfaces()
+       def activateNetworkConfig(self, callback = None):
+               self.activateConsole = Console()
+               self.commands = []
+               self.commands.append("/etc/init.d/networking start")
+               self.commands.append("/etc/init.d/avahi-daemon start")
+               self.activateConsole.eBatch(self.commands, self.activateNetworkFinished, callback, debug=True)
+               
+       def activateNetworkFinished(self,extra_args):
+               callback = extra_args
+               if len(self.activateConsole.appContainers) == 0:
+                       if callback is not None:
+                               callback(True)
+
+       def getConfiguredAdapters(self):
+               return self.configuredNetworkAdapters
 
        def getNumberOfAdapters(self):
                return len(self.ifaces)
@@ -312,7 +338,24 @@ class Network:
                                if self.nameservers[i] == oldnameserver:
                                        self.nameservers[i] = newnameserver
 
-       def writeDefaultNetworkConfig(self,mode='lan'):
+       def resetNetworkConfig(self, mode='lan', callback = None):
+               self.resetNetworkConsole = Console()
+               self.commands = []
+               self.commands.append("/etc/init.d/avahi-daemon stop")
+               for iface in self.ifaces.keys():
+                       cmd = "ip addr flush " + iface
+                       self.commands.append(cmd)               
+               self.commands.append("/etc/init.d/networking stop")
+               self.commands.append("killall -9 udhcpc")
+               self.commands.append("rm /var/run/udhcpc*")
+               self.resetNetworkConsole.eBatch(self.commands, self.resetNetworkFinishedCB, [mode, callback], debug=True)
+
+       def resetNetworkFinishedCB(self, extra_args):
+               (mode, callback) = extra_args
+               if len(self.resetNetworkConsole.appContainers) == 0:
+                       self.writeDefaultNetworkConfig(mode, callback)
+
+       def writeDefaultNetworkConfig(self,mode='lan', callback = None):
                fp = file('/etc/network/interfaces', 'w')
                fp.write("# automatically generated by enigma 2\n# do NOT change manually!\n\n")
                fp.write("auto lo\n")
@@ -329,50 +372,100 @@ class Network:
                fp.write("\n")
                fp.close()
 
-       def resetNetworkConfig(self,mode='lan'):
-               self.deactivateNetworkConfig()
-               self.writeDefaultNetworkConfig(mode)
+               self.resetNetworkConsole = Console()
+               self.commands = []
                if mode == 'wlan':
-                       system("ifconfig eth0 down")
-                       system("ifconfig ath0 down")
-                       system("ifconfig wlan0 up")
+                       self.commands.append("ifconfig eth0 down")
+                       self.commands.append("ifconfig ath0 down")
+                       self.commands.append("ifconfig wlan0 up")
                if mode == 'wlan-mpci':
-                       system("ifconfig eth0 down")
-                       system("ifconfig wlan0 down")
-                       system("ifconfig ath0 up")              
+                       self.commands.append("ifconfig eth0 down")
+                       self.commands.append("ifconfig wlan0 down")
+                       self.commands.append("ifconfig ath0 up")                
                if mode == 'lan':                       
-                       system("ifconfig eth0 up")
-                       system("ifconfig wlan0 down")
-                       system("ifconfig ath0 down")
-               self.getInterfaces()    
-
-       def checkNetworkState(self):
-                # www.dream-multimedia-tv.de, www.heise.de, www.google.de
-               return system("ping -c 1 82.149.226.170") == 0 or \
-                       system("ping -c 1 193.99.144.85") == 0 or \
-                       system("ping -c 1 209.85.135.103") == 0
-
-       def restartNetwork(self):
-               iNetwork.deactivateNetworkConfig()
-               iNetwork.activateNetworkConfig()
+                       self.commands.append("ifconfig eth0 up")
+                       self.commands.append("ifconfig wlan0 down")
+                       self.commands.append("ifconfig ath0 down")
+               self.commands.append("/etc/init.d/avahi-daemon start")  
+               self.resetNetworkConsole.eBatch(self.commands, self.resetNetworkFinished, [mode,callback], debug=True)  
+
+       def resetNetworkFinished(self,extra_args):
+               (mode, callback) = extra_args
+               if len(self.resetNetworkConsole.appContainers) == 0:
+                       if callback is not None:
+                               callback(True,mode)
+
+       def checkNetworkState(self,statecallback):
+               # www.dream-multimedia-tv.de, www.heise.de, www.google.de
+               cmd1 = "ping -c 1 82.149.226.170"
+               cmd2 = "ping -c 1 193.99.144.85"
+               cmd3 = "ping -c 1 209.85.135.103"
+               self.PingConsole = Console()
+               self.PingConsole.ePopen(cmd1, self.checkNetworkStateFinished,statecallback)
+               self.PingConsole.ePopen(cmd2, self.checkNetworkStateFinished,statecallback)
+               self.PingConsole.ePopen(cmd3, self.checkNetworkStateFinished,statecallback)
+               
+       def checkNetworkStateFinished(self, result, retval,extra_args):
+               (statecallback) = extra_args
+               if self.PingConsole is not None:
+                       if retval == 0:
+                               self.PingConsole = None
+                               statecallback(self.NetworkState)
+                       else:
+                               self.NetworkState += 1
+                               if len(self.PingConsole.appContainers) == 0:
+                                       statecallback(self.NetworkState)
+               
+       def restartNetwork(self,callback = None):
+               self.restartConsole = Console()
+               self.commands = []
+               self.commands.append("/etc/init.d/avahi-daemon stop")
+               for iface in self.ifaces.keys():
+                       cmd = "ip addr flush " + iface
+                       self.commands.append(cmd)               
+               self.commands.append("/etc/init.d/networking stop")
+               self.commands.append("killall -9 udhcpc")
+               self.commands.append("rm /var/run/udhcpc*")
+               self.commands.append("/etc/init.d/networking start")
+               self.commands.append("/etc/init.d/avahi-daemon start")
+               self.restartConsole.eBatch(self.commands, self.restartNetworkFinished, callback, debug=True)
+       
+       def restartNetworkFinished(self,extra_args):
+               ( callback ) = extra_args
+               if callback is not None:
+                       callback(True)
 
        def getLinkState(self,iface,callback):
-               self.dataAvail = callback
                cmd = self.ethtool_bin + " " + iface
-               self.container.appClosed.append(self.cmdFinished)
-               self.container.dataAvail.append(callback)
-               self.container.execute(cmd)
-
-       def cmdFinished(self,retval):
-               self.container.appClosed.remove(self.cmdFinished)
-               self.container.dataAvail.remove(self.dataAvail)
-
-       def stopContainer(self):
-               self.container.kill()
-               
-       def ContainerRunning(self):
-               return self.container.running()
-
+               self.LinkConsole = Console()
+               self.LinkConsole.ePopen(cmd, self.getLinkStateFinished,callback)
+
+       def getLinkStateFinished(self, result, retval,extra_args):
+               (callback) = extra_args
+               if self.LinkConsole is not None:
+                       if len(self.LinkConsole.appContainers) == 0:
+                               callback(result)
+                       
+       def stopLinkStateConsole(self):
+               if self.LinkConsole is not None:
+                       self.LinkConsole = None
+
+       def stopDNSConsole(self):
+               if self.DnsConsole is not None:
+                       self.DnsConsole = None
+
+       def stopRestartConsole(self):
+               if self.restartConsole is not None:
+                       self.restartConsole = None
+                       
+       def stopGetInterfacesConsole(self):
+               if self.Console is not None:
+                       self.Console = None
+
+       def stopDeactivateInterfaceConsole(self):
+               if self.deactivateInterfaceConsole:
+                       self.deactivateInterfaceConsole = None
+                       
        def checkforInterface(self,iface):
                if self.getAdapterAttribute(iface, 'up') is True:
                        return True
@@ -384,13 +477,41 @@ class Network:
                        else:
                                return False
 
-       def checkDNSLookup(self):
-               return system("nslookup www.dream-multimedia-tv.de") == 0 or \
-                       system("nslookup www.heise.de") == 0 or \
-                       system("nslookup www.google.de")
-
-       def deactivateInterface(self,iface):
-               system("ifconfig " + iface + " down")
+       def checkDNSLookup(self,statecallback):
+               cmd1 = "nslookup www.dream-multimedia-tv.de"
+               cmd2 = "nslookup www.heise.de"
+               cmd3 = "nslookup www.google.de"
+               self.DnsConsole = Console()
+               self.DnsConsole.ePopen(cmd1, self.checkDNSLookupFinished,statecallback)
+               self.DnsConsole.ePopen(cmd2, self.checkDNSLookupFinished,statecallback)
+               self.DnsConsole.ePopen(cmd3, self.checkDNSLookupFinished,statecallback)
+               
+       def checkDNSLookupFinished(self, result, retval,extra_args):
+               (statecallback) = extra_args
+               if self.DnsConsole is not None:
+                       if retval == 0:
+                               self.DnsConsole = None
+                               statecallback(self.DnsState)
+                       else:
+                               self.DnsState += 1
+                               if len(self.DnsConsole.appContainers) == 0:
+                                       statecallback(self.DnsState)
+
+       def deactivateInterface(self,iface,callback = None):
+               self.deactivateInterfaceConsole = Console()
+               self.commands = []
+               cmd1 = "ip addr flush " + iface
+               cmd2 = "ifconfig " + iface + " down"
+               self.commands.append(cmd1)
+               self.commands.append(cmd2)
+               self.deactivateInterfaceConsole.eBatch(self.commands, self.deactivateInterfaceFinished, callback, debug=True)
+
+       def deactivateInterfaceFinished(self,extra_args):
+               callback = extra_args
+               if self.deactivateInterfaceConsole:
+                       if len(self.deactivateInterfaceConsole.appContainers) == 0:
+                               if callback is not None:
+                                       callback(True)
 
        def detectWlanModule(self):
                self.wlanmodule = None
@@ -411,6 +532,20 @@ class Network:
                                self.wlanmodule = 'zydas'
                return self.wlanmodule
        
+       def calc_netmask(self,nmask):
+               from struct import pack, unpack
+               from socket import inet_ntoa, inet_aton
+               mask = 1L<<31
+               xnet = (1L<<32)-1
+               cidr_range = range(0, 32)
+               cidr = long(nmask)
+               if cidr not in cidr_range:
+                       print 'cidr invalid: %d' % cidr
+                       return None
+               else:
+                       nm = ((1L<<cidr)-1)<<(32-cidr)
+                       netmask = str(inet_ntoa(pack('>L', nm)))
+                       return netmask
        
 iNetwork = Network()
 
index 3c7a147..f4e9108 100644 (file)
@@ -1,3 +1,5 @@
+from Tools.HardwareInfo import HardwareInfo
+
 from config import config, ConfigSubsection, ConfigSelection, ConfigFloat, \
        ConfigSatlist, ConfigYesNo, ConfigInteger, ConfigSubList, ConfigNothing, \
        ConfigSubDict, ConfigOnOff, ConfigDateTime
@@ -37,8 +39,8 @@ class SecConfigure:
                sec.addSatellite(orbpos)
                self.configuredSatellites.add(orbpos)
 
-       def addLNBSimple(self, sec, slotid, diseqcmode, toneburstmode = diseqcParam.NO, diseqcpos = diseqcParam.SENDNO, orbpos = 0, longitude = 0, latitude = 0, loDirection = 0, laDirection = 0, turningSpeed = rotorParam.FAST, useInputPower=True, inputPowerDelta=50):
-               if orbpos is None:
+       def addLNBSimple(self, sec, slotid, diseqcmode, toneburstmode = diseqcParam.NO, diseqcpos = diseqcParam.SENDNO, orbpos = 0, longitude = 0, latitude = 0, loDirection = 0, laDirection = 0, turningSpeed = rotorParam.FAST, useInputPower=True, inputPowerDelta=50, fastDiSEqC = False, setVoltageTone = True):
+               if orbpos is None or orbpos == 3601:
                        return
                #simple defaults
                sec.addLNB()
@@ -54,10 +56,8 @@ class SecConfigure:
                sec.setLNBThreshold(11700000)
                sec.setLNBIncreasedVoltage(lnbParam.OFF)
                sec.setRepeats(0)
-               sec.setFastDiSEqC(0)
+               sec.setFastDiSEqC(fastDiSEqC)
                sec.setSeqRepeat(0)
-               sec.setVoltageMode(switchParam.HV)
-               sec.setToneMode(switchParam.HILO)
                sec.setCommandOrder(0)
 
                #user values
@@ -69,6 +69,12 @@ class SecConfigure:
 
                if 0 <= diseqcmode < 3:
                        self.addSatellite(sec, orbpos)
+                       if setVoltageTone:
+                               sec.setVoltageMode(switchParam.HV)
+                               sec.setToneMode(switchParam.HILO)
+                       else:
+                               sec.setVoltageMode(switchParam._14V)
+                               sec.setToneMode(switchParam.OFF)
                elif (diseqcmode == 3): # diseqc 1.2
                        if self.satposdepends.has_key(slotid):
                                for slot in self.satposdepends[slotid]:
@@ -153,6 +159,7 @@ class SecConfigure:
                for slot in nim_slots:
                        x = slot.slot
                        nim = slot.config
+                       hw = HardwareInfo()
                        if slot.isCompatible("DVB-S"):
                                print "slot: " + str(x) + " configmode: " + str(nim.configMode.value)
                                if nim.configMode.value in [ "loopthrough", "satposdepends", "nothing" ]:
@@ -164,18 +171,25 @@ class SecConfigure:
                                        elif nim.configMode.value == "simple":          #simple config
                                                print "diseqcmode: ", nim.diseqcMode.value
                                                if nim.diseqcMode.value == "single":                    #single
-                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.NONE, diseqcpos = diseqcParam.SENDNO)
+                                                       if nim.simpleSingleSendDiSEqC.value:
+                                                               self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AA)
+                                                       else:
+                                                               self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.NONE, diseqcpos = diseqcParam.SENDNO)
                                                elif nim.diseqcMode.value == "toneburst_a_b":           #Toneburst A/B
                                                        self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.A, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.SENDNO)
                                                        self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcB.orbital_position, toneburstmode = diseqcParam.B, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.SENDNO)
                                                elif nim.diseqcMode.value == "diseqc_a_b":              #DiSEqC A/B
-                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AA)
-                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcB.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AB)
+                                                       fastDiSEqC = nim.simpleDiSEqCOnlyOnSatChange.value
+                                                       setVoltageTone = nim.simpleDiSEqCSetVoltageTone.value
+                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AA, fastDiSEqC = fastDiSEqC, setVoltageTone = setVoltageTone)
+                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcB.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AB, fastDiSEqC = fastDiSEqC, setVoltageTone = setVoltageTone)
                                                elif nim.diseqcMode.value == "diseqc_a_b_c_d":          #DiSEqC A/B/C/D
-                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AA)
-                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcB.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AB)
-                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcC.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.BA)
-                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcD.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.BB)
+                                                       fastDiSEqC = nim.simpleDiSEqCOnlyOnSatChange.value
+                                                       setVoltageTone = nim.simpleDiSEqCSetVoltageTone.value
+                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcA.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AA, fastDiSEqC = fastDiSEqC, setVoltageTone = setVoltageTone)
+                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcB.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.AB, fastDiSEqC = fastDiSEqC, setVoltageTone = setVoltageTone)
+                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcC.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.BA, fastDiSEqC = fastDiSEqC, setVoltageTone = setVoltageTone)
+                                                       self.addLNBSimple(sec, slotid = x, orbpos = nim.diseqcD.orbital_position, toneburstmode = diseqcParam.NO, diseqcmode = diseqcParam.V1_0, diseqcpos = diseqcParam.BB, fastDiSEqC = fastDiSEqC, setVoltageTone = setVoltageTone)
                                                elif nim.diseqcMode.value == "positioner":              #Positioner
                                                        if nim.latitudeOrientation.value == "north":
                                                                laValue = rotorParam.NORTH
@@ -185,12 +199,11 @@ class SecConfigure:
                                                                loValue = rotorParam.EAST
                                                        else:
                                                                loValue = rotorParam.WEST
-                                                       inputPowerDelta=50
+                                                       inputPowerDelta=nim.powerThreshold.value
                                                        useInputPower=False
                                                        turning_speed=0
                                                        if nim.powerMeasurement.value:
                                                                useInputPower=True
-                                                               inputPowerDelta=nim.powerThreshold.value
                                                                turn_speed_dict = { "fast": rotorParam.FAST, "slow": rotorParam.SLOW }
                                                                if turn_speed_dict.has_key(nim.turningSpeed.value):
                                                                        turning_speed = turn_speed_dict[nim.turningSpeed.value]
@@ -656,7 +669,7 @@ class NimManager:
        
        def canEqualTo(self, slotid):
                type = self.getNimType(slotid)
-               if self.getNimConfig(slotid) == "DVB-S2":
+               if type == "DVB-S2":
                        type = "DVB-S"
                nimList = self.getNimListOfType(type, slotid)
                for nim in nimList[:]:
@@ -664,10 +677,10 @@ class NimManager:
                        if mode.configMode.value == "loopthrough" or mode.configMode.value == "satposdepends":
                                nimList.remove(nim)
                return nimList
-       
+
        def canDependOn(self, slotid):
                type = self.getNimType(slotid)
-               if self.getNimConfig(slotid) == "DVB-S2":
+               if type == "DVB-S2":
                        type = "DVB-S"
                nimList = self.getNimListOfType(type, slotid)
                positionerList = []
@@ -680,6 +693,13 @@ class NimManager:
                                        if lnb != 0:
                                                nimHaveRotor = True
                                                break
+                               if not nimHaveRotor:
+                                       for sat in mode.advanced.sat.values():
+                                               lnb_num = int(sat.lnb.value)
+                                               diseqcmode = lnb_num and mode.advanced.lnb[lnb_num].diseqcMode.value or ""
+                                               if diseqcmode == "1_2":
+                                                       nimHaveRotor = True
+                                                       break
                        if nimHaveRotor:
                                alreadyConnected = False
                                for testnim in nimList:
@@ -725,12 +745,16 @@ class NimManager:
                        if configMode == "simple":
                                dm = nim.diseqcMode.value
                                if dm in ["single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"]:
-                                       list.append(self.satList[nim.diseqcA.index])
+                                       if nim.diseqcA.orbital_position != 3601:
+                                               list.append(self.satList[nim.diseqcA.index-1])
                                if dm in ["toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"]:
-                                       list.append(self.satList[nim.diseqcB.index])
+                                       if nim.diseqcB.orbital_position != 3601:
+                                               list.append(self.satList[nim.diseqcB.index-1])
                                if dm == "diseqc_a_b_c_d":
-                                       list.append(self.satList[nim.diseqcC.index])
-                                       list.append(self.satList[nim.diseqcD.index])
+                                       if nim.diseqcC.orbital_position != 3601:
+                                               list.append(self.satList[nim.diseqcC.index-1])
+                                       if nim.diseqcD.orbital_position != 3601:
+                                               list.append(self.satList[nim.diseqcD.index-1])
                                if dm == "positioner":
                                        for x in self.satList:
                                                list.append(x)
@@ -834,6 +858,14 @@ def InitSecParams():
        x.addNotifier(lambda configElement: secClass.setParam(secClass.MOTOR_COMMAND_RETRIES, configElement.value))
        config.sec.motor_command_retries = x
 
+       x = ConfigInteger(default=50, limits = (0, 9999))
+       x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_DISEQC_RESET_CMD, configElement.value))
+       config.sec.delay_after_diseqc_reset_cmd = x
+
+       x = ConfigInteger(default=150, limits = (0, 9999))
+       x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_DISEQC_PERIPHERIAL_POWERON_CMD, configElement.value))
+       config.sec.delay_after_diseqc_peripherial_poweron_cmd = x
+
 # TODO add support for satpos depending nims to advanced nim configuration
 # so a second/third/fourth cable from a motorized lnb can used behind a
 # diseqc 1.0 / diseqc 1.1 / toneburst switch
@@ -842,6 +874,7 @@ def InitSecParams():
 
 def InitNimManager(nimmgr):
        InitSecParams()
+       hw = HardwareInfo()
 
        config.Nims = ConfigSubList()
        for x in range(len(nimmgr.nim_slots)):
@@ -883,10 +916,13 @@ def InitNimManager(nimmgr):
                                if id != x:
                                        choices.append((str(id), nimmgr.getNimDescription(id)))
                        nim.connectedTo = ConfigSelection(choices = choices)
-                       nim.diseqcA = getConfigSatlist(192, nimmgr.satList)
-                       nim.diseqcB = getConfigSatlist(130, nimmgr.satList)
-                       nim.diseqcC = ConfigSatlist(list = nimmgr.satList)
-                       nim.diseqcD = ConfigSatlist(list = nimmgr.satList)
+                       nim.simpleSingleSendDiSEqC = ConfigYesNo(default=False)
+                       nim.simpleDiSEqCSetVoltageTone = ConfigYesNo(default=True)
+                       nim.simpleDiSEqCOnlyOnSatChange = ConfigYesNo(default=False)
+                       nim.diseqcA = getConfigSatlist(192, [(3601, _('nothing connected'), 1)] + nimmgr.satList)
+                       nim.diseqcB = getConfigSatlist(130, [(3601, _('nothing connected'), 1)] + nimmgr.satList)
+                       nim.diseqcC = ConfigSatlist(list = [(3601, _('nothing connected'), 1)] + nimmgr.satList)
+                       nim.diseqcD = ConfigSatlist(list = [(3601, _('nothing connected'), 1)] + nimmgr.satList)
                        nim.positionerMode = ConfigSelection(
                                choices = [
                                        ("usals", _("USALS")),
@@ -897,7 +933,7 @@ def InitNimManager(nimmgr):
                        nim.latitude = ConfigFloat(default=[50,767], limits=[(0,359),(0,999)])
                        nim.latitudeOrientation = ConfigSelection(choices={"north": _("North"), "south": _("South")}, default="north")
                        nim.powerMeasurement = ConfigYesNo(default=True)
-                       nim.powerThreshold = ConfigInteger(default=50, limits=(0, 100))
+                       nim.powerThreshold = ConfigInteger(default=hw.get_device_name() == "dm8000" and 15 or 50, limits=(0, 100))
                        nim.turningSpeed = ConfigSelection(choices = [("fast", _("Fast")), ("slow", _("Slow")), ("fast epoch", _("Fast epoch")) ], default = "fast")
                        btime = datetime(1970, 1, 1, 7, 0);
                        nim.fastTurningBegin = ConfigDateTime(default = mktime(btime.timetuple()), formatstring = _("%H:%M"), increment = 900)
@@ -972,7 +1008,7 @@ def InitNimManager(nimmgr):
                                nim.advanced.lnb[x].latitude = ConfigFloat(default = [50,767], limits = [(0,359),(0,999)])
                                nim.advanced.lnb[x].latitudeOrientation = ConfigSelection(choices = [("north", _("North")), ("south", _("South"))], default = "north")
                                nim.advanced.lnb[x].powerMeasurement = ConfigYesNo(default=True)
-                               nim.advanced.lnb[x].powerThreshold = ConfigInteger(default=50, limits=(0, 100))
+                               nim.advanced.lnb[x].powerThreshold = ConfigInteger(default=hw.get_device_name() == "dm8000" and 15 or 50, limits=(0, 100))
                                nim.advanced.lnb[x].turningSpeed = ConfigSelection(choices = [("fast", _("Fast")), ("slow", _("Slow")), ("fast epoch", _("Fast epoch"))], default = "fast")
                                btime = datetime(1970, 1, 1, 7, 0);
                                nim.advanced.lnb[x].fastTurningBegin = ConfigDateTime(default=mktime(btime.timetuple()), formatstring = _("%H:%M"), increment = 600)
index 744ee3a..c9ebe47 100644 (file)
@@ -58,6 +58,7 @@ class PlaylistIOM3U(PlaylistIO):
        
        def open(self, filename):
                self.clear()
+               self.displayname = None
                try:
                        file = open(filename, "r")
                except IOError:
@@ -66,14 +67,22 @@ class PlaylistIOM3U(PlaylistIO):
                        entry = file.readline().strip()
                        if entry == "":
                                break
-                       if entry[0] != "#":
+                       if entry.startswith("#EXTINF:"):
+                               extinf = entry.split(',',1)
+                               if len(extinf) > 1:
+                                       self.displayname = extinf[1]
                                # TODO: use e2 facilities to create a service ref from file
+                       elif entry[0] != "#":
                                if entry[0] == "/":
-                                       self.addService(ServiceReference("4097:0:0:0:0:0:0:0:0:0:" + entry))
+                                       sref = ServiceReference("4097:0:0:0:0:0:0:0:0:0:" + entry)
                                elif entry.startswith("http"):
-                                       self.addService(ServiceReference("4097:0:0:0:0:0:0:0:0:0:" + entry.replace(':',"%3a")))
+                                       sref = ServiceReference("4097:0:0:0:0:0:0:0:0:0:" + entry.replace(':',"%3a"))
                                else:
-                                       self.addService(ServiceReference("4097:0:0:0:0:0:0:0:0:0:" + os.path.dirname(filename) + "/" + entry))
+                                       sref = ServiceReference("4097:0:0:0:0:0:0:0:0:0:" + os.path.dirname(filename) + "/" + entry)
+                               if self.displayname:
+                                       sref.ref.setName(self.displayname)
+                                       self.displayname = None
+                               self.addService(sref)
                file.close()
                return self.list
                
index e793cdc..031c9ca 100644 (file)
@@ -1,9 +1,7 @@
-import string
 import NavigationInstance
 from time import localtime
-from Components.NimManager import nimmanager
 from ServiceReference import ServiceReference
-from enigma import iServiceInformation, eServiceCenter
+from enigma import iServiceInformation, eServiceCenter, eServiceReference
 
 class TimerSanityCheck:
        def __init__(self, timerlist, newtimer=None):
@@ -54,6 +52,7 @@ class TimerSanityCheck:
                # index -1 for the new Timer, 0..n index of the existing timers
                # count of running timers
 
+               serviceHandler = eServiceCenter.getInstance()
                print "checkTimerlist"
 # create a list with all start and end times
 # split it into recurring and singleshot timers
@@ -149,9 +148,7 @@ class TimerSanityCheck:
                fakeRecList = []
                ConflictTimer = None
                ConflictTunerType = None
-               ConflictSlot = None
                newTimerTunerType = None
-               newTimerTunerSlot = None
                cnt = 0
                idx = 0
                overlaplist = []
@@ -162,24 +159,45 @@ class TimerSanityCheck:
                        else:
                                timer = self.timerlist[event[2]]
                        if event[1] == self.bflag:
-                               fakeRecService = NavigationInstance.instance.recordService(timer.service_ref)
-                               fakeRecResult = fakeRecService.start(True)
-                               feinfo = fakeRecService.frontendInfo().getFrontendData()
-                               tunerType = feinfo.get("tuner_type")
-                               tunerSlot = feinfo.get("tuner_number")
+                               tunerType = [ ]
+                               fakeRecService = NavigationInstance.instance.recordService(timer.service_ref, True)
+                               if fakeRecService:
+                                       fakeRecResult = fakeRecService.start(True)
+                               else:
+                                       fakeRecResult = -1
+                               if not fakeRecResult: # tune okay
+                                       feinfo = fakeRecService.frontendInfo().getFrontendData()
+                                       tunerType.append(feinfo.get("tuner_type"))
+                               else: # tune failed.. so we must go another way to get service type (DVB-S, DVB-T, DVB-C)
+
+                                       def getServiceType(ref): # helper function to get a service type of a service reference
+                                               serviceInfo = serviceHandler.info(ref)
+                                               serviceInfo = serviceInfo and serviceInfo.getInfoObject(ref, iServiceInformation.sTransponderData)
+                                               if serviceInfo:
+                                                       return { "Satellite" : "DVB-S", "Cable" : "DVB-C", "Terrestrial" : "DVB-T"}[serviceInfo["type"]]
+
+                                       ref = timer.service_ref.ref
+                                       if ref.flags & eServiceReference.isGroup: # service group ?
+                                               serviceList = serviceHandler.list(ref) # get all alternative services
+                                               if serviceList:
+                                                       for ref in serviceList.getContent("R"): # iterate over all group service references
+                                                               type = getServiceType(ref)
+                                                               if not type in tunerType: # just add single time
+                                                                       tunerType.append(type) 
+                                       else:
+                                               tunerType.append(getServiceType(ref))
+
                                if event[2] == -1: # new timer
                                        newTimerTunerType = tunerType
-                                       newTimerTunerSlot = tunerSlot
-                               overlaplist.append((fakeRecResult, timer, tunerType, tunerSlot))
+                               overlaplist.append((fakeRecResult, timer, tunerType))
                                fakeRecList.append((timer, fakeRecService))
                                if fakeRecResult:
                                        if ConflictTimer is None: # just take care of the first conflict
                                                ConflictTimer = timer
                                                ConflictTunerType = tunerType
-                                               ConflictTunerSlot = tunerSlot
                        elif event[1] == self.eflag:
                                for fakeRec in fakeRecList:
-                                       if timer == fakeRec[0]:
+                                       if timer == fakeRec[0] and fakeRec[1]:
                                                NavigationInstance.instance.stopRecordService(fakeRec[1])
                                                fakeRecList.remove(fakeRec)
                                del fakeRec
@@ -211,7 +229,6 @@ class TimerSanityCheck:
                                                if nt and kt:
                                                        ConflictTimer = self.newtimer
                                                        ConflictTunerType = newTimerTunerType
-                                                       ConflictSlot = newTimerTunerSlot
                                                        break
 
                self.simultimer = [ ConflictTimer ]
@@ -223,8 +240,11 @@ class TimerSanityCheck:
                                else:
                                        continue
                                for entry in event[4]:
-                                       if not self.simultimer.count(entry[1]) and (entry[2] == ConflictTunerType or entry[3] == ConflictTunerSlot):
-                                               self.simultimer.append(entry[1])
+                                       if not entry[1] in self.simultimer:
+                                               for x in entry[2]:
+                                                       if x in ConflictTunerType:
+                                                               self.simultimer.append(entry[1])
+                                                               break
 
                if len(self.simultimer) < 2:
                        print "Bug: unknown Conflict!"
index 714d366..6ed8784 100644 (file)
@@ -1,5 +1,5 @@
 from Components.Harddisk import harddiskmanager
-from config import ConfigSubsection, ConfigYesNo, config, ConfigSelection, ConfigText, ConfigNumber, ConfigSet
+from config import ConfigSubsection, ConfigYesNo, config, ConfigSelection, ConfigText, ConfigNumber, ConfigSet, ConfigLocations
 from enigma import Misc_Options, setTunerTypePriorityOrder;
 from SystemInfo import SystemInfo
 import os
@@ -30,6 +30,9 @@ def InitUsageConfig():
                ("standard", _("standard")), ("swap", _("swap PiP and main picture")),
                ("swapstop", _("move PiP to main picture")), ("stop", _("stop PiP")) ])
 
+       config.usage.allowed_timeshift_paths = ConfigLocations(default = ["/media/hdd/"])
+       config.usage.timeshift_path = ConfigText(default = "/media/hdd")
+
        config.usage.on_movie_start = ConfigSelection(default = "ask", choices = [
                ("ask", _("Ask user")), ("resume", _("Resume from last position")), ("beginning", _("Start from the beginning")) ])
        config.usage.on_movie_stop = ConfigSelection(default = "ask", choices = [
old mode 100644 (file)
new mode 100755 (executable)
index b448ca6..4d57bbb
@@ -34,6 +34,7 @@ class ConfigElement(object):
                self.save_disabled = False
                self.notifiers = []
                self.enabled = True
+               self.callNotifiersOnSaveAndCancel = False
 
        # you need to override this to do input validation
        def setValue(self, value):
@@ -66,9 +67,13 @@ class ConfigElement(object):
                        self.saved_value = None
                else:
                        self.saved_value = self.tostring(self.value)
+               if self.callNotifiersOnSaveAndCancel:
+                       self.changed()
 
        def cancel(self):
                self.load()
+               if self.callNotifiersOnSaveAndCancel:
+                       self.changed()
 
        def isChanged(self):
                sv = self.saved_value
@@ -513,6 +518,7 @@ class ConfigIP(ConfigSequence):
                self.auto_jump = auto_jump
 
        def handleKey(self, key):
+               
                if key == KEY_LEFT:
                        if self.marked_block > 0:
                                self.marked_block -= 1
@@ -531,8 +537,14 @@ class ConfigIP(ConfigSequence):
                        self.marked_block = len(self.limits)-1
                        self.overwrite = True
 
-               if key in KEY_NUMBERS:
-                       number = getKeyNumber(key)
+               if key in KEY_NUMBERS or key == KEY_ASCII:
+                       if key == KEY_ASCII:
+                               code = getPrevAsciiCode()
+                               if code < 48 or code > 57:
+                                       return
+                               number = code - 48
+                       else:   
+                               number = getKeyNumber(key)
                        oldvalue = self._value[self.marked_block]
                        
                        if self.overwrite:
@@ -770,12 +782,12 @@ class ConfigText(ConfigElement, NumericalTextInput):
 
        def getValue(self):
                return self.text.encode("utf-8")
-               
+
        def setValue(self, val):
                try:
                        self.text = val.decode("utf-8")
                except UnicodeDecodeError:
-                       self.text = val
+                       self.text = val.decode("utf-8", "ignore")
                        print "Broken UTF8!"
 
        value = property(getValue, setValue)
index 8173b37..2c52330 100644 (file)
@@ -4,3 +4,4 @@ install_PYTHON =        \
        __init__.py \
        plugin.py
  
+install_DATA = maintainer.info
diff --git a/lib/python/Plugins/DemoPlugins/TestPlugin/maintainer.info b/lib/python/Plugins/DemoPlugins/TestPlugin/maintainer.info
new file mode 100644 (file)
index 0000000..4f28561
--- /dev/null
@@ -0,0 +1,2 @@
+tmbinc@elitedvb.net
+Demo-Plugin
index 1f49a9e..a63562c 100644 (file)
@@ -50,6 +50,8 @@ class Test(Screen):
        
        def mycallback(self, answer):
                print "answer:", answer
+               if answer:
+                       raise "test-crash"
                self.close()
        
        def keyLeft(self):
index 8d02cb2..112a221 100644 (file)
@@ -1,5 +1,5 @@
 from Tools.Directories import fileExists
-from Components.config import config, ConfigSubsection, ConfigInteger, ConfigYesNo, ConfigText, ConfigSelection, getConfigListEntry, ConfigSequence
+from Components.config import config, ConfigSubsection, ConfigInteger, ConfigText, ConfigSelection, getConfigListEntry, ConfigSequence
 
 class ConfigColor(ConfigSequence):
        def __init__(self):
@@ -32,6 +32,7 @@ class DVDProject:
                self.settings = ConfigSubsection()
                self.settings.name = ConfigText(fixed_size = False, visible_width = 40)
                self.settings.authormode = ConfigSelection(choices = [("menu_linked", _("Linked titles with a DVD menu")), ("just_linked", _("Direct playback of linked titles without menu")), ("menu_seperate", _("Seperate titles with a main menu")), ("data_ts", _("Dreambox format data DVD (HDTV compatible)"))])
+               self.settings.titlesetmode = ConfigSelection(choices = [("single", _("Simple titleset (compatibility for legacy players)")), ("multi", _("Complex (allows mixing audio tracks and aspects)"))], default="multi")
                self.settings.output = ConfigSelection(choices = [("iso", _("Create DVD-ISO")), ("dvd", _("Burn DVD"))])
                self.settings.isopath = ConfigText(fixed_size = False, visible_width = 40)
                self.settings.dataformat = ConfigSelection(choices = [("iso9660_1", ("ISO9660 Level 1")), ("iso9660_4", ("ISO9660 version 2")), ("udf", ("UDF"))])                      
@@ -46,7 +47,6 @@ class DVDProject:
                self.settings.font_size = ConfigPixelvals()
                self.settings.space = ConfigPixelvals()
                self.settings.vmgm = ConfigFilename()
-               self.settings.autochapter = ConfigInteger(default = 0, limits = (0, 99))
                self.filekeys = ["vmgm", "menubg", "menuaudio", "font_face", "isopath"]
 
        def addService(self, service):
index 1bfb3d6..b1c627a 100644 (file)
@@ -1,17 +1,32 @@
+from Components.config import config, ConfigSubsection, ConfigSubList, ConfigInteger, ConfigText, ConfigSelection, getConfigListEntry, ConfigSequence, ConfigYesNo
+
+class ConfigFixedText(ConfigText):
+       def __init__(self, text, visible_width=60):
+               ConfigText.__init__(self, default = text, fixed_size = True, visible_width = visible_width)
+       def handleKey(self, key):
+               pass
+
 class DVDTitle:
        def __init__(self):
+               self.properties = ConfigSubsection()
+               self.properties.menutitle = ConfigText(fixed_size = False, visible_width = 80)
+               self.properties.menusubtitle = ConfigText(fixed_size = False, visible_width = 80)
+               self.DVBname = _("Title")
+               self.DVBdescr = _("Description")
+               self.DVBchannel = _("Channel")
+               self.properties.aspect = ConfigSelection(choices = [("4:3", _("4:3")), ("16:9", _("16:9"))])
+               self.properties.widescreen = ConfigSelection(choices = [("nopanscan", "nopanscan"), ("noletterbox", "noletterbox")])
+               self.properties.autochapter = ConfigInteger(default = 0, limits = (0, 60))
+               self.properties.audiotracks = ConfigSubList()
                self.cuesheet = [ ]
                self.source = None
-               self.name = ""
-               self.descr = ""
                self.filesize = 0
                self.estimatedDiskspace = 0
                self.inputfile = ""
                self.cutlist = [ ]
                self.chaptermarks = [ ]
-               self.audiotracks = [ ]
                self.timeCreate = None
-               self.sVideoType = -1
+               self.VideoType = -1
 
        def addService(self, service):
                from os import path
@@ -21,18 +36,61 @@ class DVDTitle:
                self.source = service
                serviceHandler = eServiceCenter.getInstance()
                info = serviceHandler.info(service)
-               self.descr = info and " " + info.getInfoString(service, iServiceInformation.sDescription) or ""
+               sDescr = info and " " + info.getInfoString(service, iServiceInformation.sDescription) or ""
+               self.DVBdescr = sDescr
                sTimeCreate = info.getInfo(service, iServiceInformation.sTimeCreate)
                if sTimeCreate > 1:
                        self.timeCreate = localtime(sTimeCreate)
                serviceref = ServiceReference(info.getInfoString(service, iServiceInformation.sServiceref))
-               self.name = info and info.getName(service) or "Title" + t.descr
-               self.channel = serviceref.getServiceName()
+               name = info and info.getName(service) or "Title" + sDescr
+               self.DVBname = name
+               self.DVBchannel = serviceref.getServiceName()
                self.inputfile = service.getPath()
                self.filesize = path.getsize(self.inputfile)
                self.estimatedDiskspace = self.filesize
                self.length = info.getLength(service)
 
+       def initDVDmenuText(self, project, track):
+               self.properties.menutitle.setValue(self.formatDVDmenuText(project.settings.titleformat.getValue(), track))
+               self.properties.menusubtitle.setValue(self.formatDVDmenuText(project.settings.subtitleformat.getValue(), track))
+
+       def formatDVDmenuText(self, template, track):
+               properties = self.properties
+               template = template.replace("$i", str(track))
+               template = template.replace("$t", self.DVBname)
+               template = template.replace("$d", self.DVBdescr)
+               template = template.replace("$c", str(len(self.chaptermarks)+1))
+               template = template.replace("$f", self.inputfile)
+               template = template.replace("$C", self.DVBchannel)
+               
+               #if template.find("$A") >= 0:
+               from TitleProperties import languageChoices
+               audiolist = [ ]
+               for audiotrack in self.properties.audiotracks:
+                       active = audiotrack.active.getValue()
+                       if active:
+                               trackstring = audiotrack.format.getValue()
+                               language = audiotrack.language.getValue()
+                               if languageChoices.langdict.has_key(language):
+                                       trackstring += ' (' + languageChoices.langdict[language] + ')'
+                               audiolist.append(trackstring)
+               audiostring = ', '.join(audiolist)
+               template = template.replace("$A", audiostring)
+               
+               if template.find("$l") >= 0:
+                       l = self.length
+                       lengthstring = "%d:%02d:%02d" % (l/3600, l%3600/60, l%60)
+                       template = template.replace("$l", lengthstring)
+               if self.timeCreate:
+                       template = template.replace("$Y", str(self.timeCreate[0]))
+                       template = template.replace("$M", str(self.timeCreate[1]))
+                       template = template.replace("$D", str(self.timeCreate[2]))
+                       timestring = "%d:%02d" % (self.timeCreate[3], self.timeCreate[4])
+                       template = template.replace("$T", timestring)
+               else:
+                       template = template.replace("$Y", "").replace("$M", "").replace("$D", "").replace("$T", "")
+               return template
+       
        def produceFinalCuesheet(self):
                CUT_TYPE_IN = 0
                CUT_TYPE_OUT = 1
@@ -78,9 +136,21 @@ class DVDTitle:
                        self.estimatedDiskspace = usedsize
                        self.length = accumulated_in / 90000
 
-       def produceAutoChapter(self, minutes):
-               if len(self.chaptermarks) < 1:
-                       chapterpts = self.cutlist[0]
-                       while chapterpts < self.length*90000:
+       def getChapterMarks(self, template="$h:$m:$s.$t"):
+               timestamps = [ ]
+               chapters = [ ]
+               minutes = self.properties.autochapter.getValue()
+               if len(self.chaptermarks) < 1 and minutes > 0:
+                       chapterpts = 0
+                       while chapterpts < (self.length-60*minutes)*90000:
                                chapterpts += 90000 * 60 * minutes
-                               self.chaptermarks.append(chapterpts)
+                               chapters.append(chapterpts)
+               else:
+                       chapters = self.chaptermarks
+               for p in chapters:
+                       timestring = template.replace("$h", str(p / (90000 * 3600)))
+                       timestring = timestring.replace("$m", ("%02d" % (p % (90000 * 3600) / (90000 * 60))))
+                       timestring = timestring.replace("$s", ("%02d" % (p % (90000 * 60) / 90000)))
+                       timestring = timestring.replace("$t", ("%03d" % ((p % 90000) / 90)))
+                       timestamps.append(timestring)
+               return timestamps
\ No newline at end of file
index d4e6a37..836c9fb 100644 (file)
@@ -9,6 +9,7 @@ from Components.Task import Task, Job, job_manager, Condition
 from Components.ScrollLabel import ScrollLabel
 from Components.Harddisk import harddiskmanager
 from Components.Console import Console
+from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
 
 class DVDToolbox(Screen):
        skin = """
@@ -54,6 +55,7 @@ class DVDToolbox(Screen):
                    "pageDown": self.pageDown
                })
                self.update()
+               hotplugNotifier.append(self.update)
                
        def pageUp(self):
                self["details"].pageUp()
@@ -61,7 +63,7 @@ class DVDToolbox(Screen):
        def pageDown(self):
                self["details"].pageDown()
 
-       def update(self):
+       def update(self, dev="", media_state=""):
                self["space_label"].text = _("Please wait... Loading list...")
                self["info"].text = ""
                self["details"].setText("")
@@ -141,6 +143,7 @@ class DVDToolbox(Screen):
 
        def exit(self):
                del self.Console
+               hotplugNotifier.remove(self.update)
                self.close()
 
 class DVDformatJob(Job):
index d9831e6..7d8de8c 100644 (file)
@@ -3,8 +3,9 @@
        <settings
                name="Dreambox DVD record"
                authormode="menu_linked"
+               titlesetmode="multi"
                titleformat="$i. $t"
-               subtitleformat="$D.$M.$Y, $T $C, $d ($c chapters)"
+               subtitleformat="$D.$M.$Y, $T $C, $d"
                vmgm="/usr/lib/enigma2/python/Plugins/Extensions/DVDBurn/vmgmdream.mpg"
                menubg="/usr/lib/enigma2/python/Plugins/Extensions/DVDBurn/dreamdvd_boat.jpg"
                menuaudio="/usr/lib/enigma2/python/Plugins/Extensions/DVDBurn/silence.mp2"
index cb65f56..be89eba 100644 (file)
@@ -3,7 +3,7 @@ installdir = $(LIBDIR)/enigma2/python/Plugins/Extensions/DVDBurn
 install_PYTHON =       \
        __init__.py \
        plugin.py \
-       DVDProject.py DVDTitle.py TitleCutter.py TitleList.py Process.py ProjectSettings.py DVDToolbox.py
+       DVDProject.py DVDTitle.py TitleCutter.py TitleList.py TitleProperties.py Process.py ProjectSettings.py DVDToolbox.py
 
 install_DATA = *.xml *.jpg *.mpg *.mp2 *.png
 
index 4905459..89ca90f 100644 (file)
@@ -85,23 +85,34 @@ class DemuxTask(Task):
                title = job.project.titles[job.i]
                self.global_preconditions.append(DiskspacePrecondition(title.estimatedDiskspace))
                self.setTool("/usr/bin/projectx")
-               self.generated_files = [ ]
+               self.args += [inputfile, "-demux", "-out", self.job.workspace ]
                self.end = 300
                self.prog_state = 0
                self.weighting = 1000
                self.cutfile = self.job.workspace + "/cut_%d.Xcl" % (job.i+1)
                self.cutlist = title.cutlist
-               self.args += [inputfile, "-demux", "-out", self.job.workspace ]
+               self.currentPID = None
+               self.relevantAudioPIDs = [ ]
+               self.getRelevantAudioPIDs(title)
+               self.generated_files = [ ]
+               self.mplex_streamfiles = [ ]
                if len(self.cutlist) > 1:
                        self.args += [ "-cut", self.cutfile ]
 
        def prepare(self):
                self.writeCutfile()
 
+       def getRelevantAudioPIDs(self, title):
+               for audiotrack in title.properties.audiotracks:
+                       if audiotrack.active.getValue():
+                               self.relevantAudioPIDs.append(audiotrack.pid.getValue())
+
        def processOutputLine(self, line):
                line = line[:-1]
                MSG_NEW_FILE = "---> new File: "
                MSG_PROGRESS = "[PROGRESS] "
+               MSG_NEW_MP2 = "--> MPEG Audio (0x"
+               MSG_NEW_AC3 = "--> AC-3/DTS Audio on PID "
 
                if line.startswith(MSG_NEW_FILE):
                        file = line[len(MSG_NEW_FILE):]
@@ -111,10 +122,14 @@ class DemuxTask(Task):
                elif line.startswith(MSG_PROGRESS):
                        progress = line[len(MSG_PROGRESS):]
                        self.haveProgress(progress)
+               elif line.startswith(MSG_NEW_MP2) or line.startswith(MSG_NEW_AC3):
+                       self.currentPID = str(int(line.rstrip()[-6:].rsplit('0x',1)[-1],16))
 
        def haveNewFile(self, file):
-               print "PRODUCED FILE [%s]" % file
+               print "[DemuxTask] produced file:", file, self.currentPID
                self.generated_files.append(file)
+               if self.currentPID in self.relevantAudioPIDs or file.endswith("m2v"):
+                       self.mplex_streamfiles.append(file)
 
        def haveProgress(self, progress):
                #print "PROGRESS [%s]" % progress
@@ -131,7 +146,6 @@ class DemuxTask(Task):
                                if p > self.progress:
                                        self.progress = p
                        except ValueError:
-                               print "val error"
                                pass
 
        def writeCutfile(self):
@@ -151,8 +165,8 @@ class DemuxTask(Task):
        def cleanup(self, failed):
                if failed:
                        import os
-                       for f in self.generated_files:
-                               os.remove(f)
+                       for file in self.generated_files.itervalues():
+                               os.remove(file)
 
 class MplexTaskPostcondition(Condition):
        def check(self, task):
@@ -185,9 +199,9 @@ class MplexTask(Task):
                # we don't want the ReturncodePostcondition in this case because for right now we're just gonna ignore the fact that mplex fails with a buffer underrun error on some streams (this always at the very end)
 
        def prepare(self):
-               self.error = None                       
+               self.error = None
                if self.demux_task:
-                       self.args += self.demux_task.generated_files
+                       self.args += self.demux_task.mplex_streamfiles
 
        def processOutputLine(self, line):
                print "[MplexTask] ", line[:-1]
@@ -206,7 +220,7 @@ class RemoveESFiles(Task):
 
        def prepare(self):
                self.args += ["-f"]
-               self.args += self.demux_task.generated_files
+               self.args += self.demux_task.generated_files.values()
                self.args += [self.demux_task.cutfile]
 
 class DVDAuthorTask(Task):
@@ -411,27 +425,6 @@ class PreviewTaskPostcondition(Condition):
        def getErrorMessage(self, task):
                return "Cancel"
 
-def formatTitle(template, title, track):
-       template = template.replace("$i", str(track))
-       template = template.replace("$t", title.name)
-       template = template.replace("$d", title.descr)
-       template = template.replace("$c", str(len(title.chaptermarks)+1))
-       template = template.replace("$A", str(title.audiotracks))
-       template = template.replace("$f", title.inputfile)
-       template = template.replace("$C", title.channel)
-       l = title.length
-       lengthstring = "%d:%02d:%02d" % (l/3600, l%3600/60, l%60)
-       template = template.replace("$l", lengthstring)
-       if title.timeCreate:
-               template = template.replace("$Y", str(title.timeCreate[0]))
-               template = template.replace("$M", str(title.timeCreate[1]))
-               template = template.replace("$D", str(title.timeCreate[2]))
-               timestring = "%d:%02d" % (title.timeCreate[3], title.timeCreate[4])
-               template = template.replace("$T", timestring)
-       else:
-               template = template.replace("$Y", "").replace("$M", "").replace("$D", "").replace("$T", "")
-       return template.decode("utf-8")
-
 class ImagingPostcondition(Condition):
        def check(self, task):
                return task.returncode == 0
@@ -518,14 +511,13 @@ class MenuImageTask(Task):
                                menu_end_title = nr_titles+1
                        menu_i = 0
                        for title_no in range( menu_start_title , menu_end_title ):
-                               i = title_no-1
-                               top = s_top + ( menu_i * rowheight )
                                menu_i += 1
-                               title = self.job.project.titles[i]
-                               titleText = formatTitle(s.titleformat.getValue(), title, title_no)
+                               title = self.job.project.titles[title_no-1]
+                               top = s_top + ( menu_i * rowheight )
+                               titleText = title.formatDVDmenuText(s.titleformat.getValue(), title_no).decode("utf-8")
                                draw_bg.text((s_left,top), titleText, fill=self.Menus.color_button, font=fonts[1])
                                draw_high.text((s_left,top), titleText, fill=1, font=self.Menus.fonts[1])
-                               subtitleText = formatTitle(s.subtitleformat.getValue(), title, title_no)
+                               subtitleText = title.formatDVDmenuText(s.subtitleformat.getValue(), title_no).decode("utf-8")
                                draw_bg.text((s_left,top+36), subtitleText, fill=self.Menus.color_button, font=fonts[2])
                                bottom = top+rowheight
                                if bottom > self.Menus.imgheight:
@@ -607,7 +599,7 @@ class Menus:
                        menuoutputfilename = job.workspace+"/dvdmenu"+num+".mpg"
                        spumuxTask(job, spuxmlfilename, menubgmpgfilename, menuoutputfilename)
                
-def CreateAuthoringXML(job):
+def CreateAuthoringXML_singleset(job):
        nr_titles = len(job.project.titles)
        mode = job.project.settings.authormode.getValue()
        authorxml = []
@@ -649,9 +641,7 @@ def CreateAuthoringXML(job):
                authorxml.append('   </menus>\n')
        authorxml.append('   <titles>\n')
        for i in range( nr_titles ):
-               #for audiotrack in job.project.titles[i].audiotracks:
-                       #authorxml.append('    <audio lang="'+audiotrack[0][:2]+'" format="'+audiotrack[1]+'" />\n')
-               chapters = ','.join(["%d:%02d:%02d.%03d" % (p / (90000 * 3600), p % (90000 * 3600) / (90000 * 60), p % (90000 * 60) / 90000, (p % 90000) / 90) for p in job.project.titles[i].chaptermarks])
+               chapters = ','.join(job.project.titles[i].getChapterMarks())
                title_no = i+1
                title_filename = job.workspace + "/dvd_title_%d.mpg" % (title_no)
                if job.menupreview:
@@ -677,6 +667,84 @@ def CreateAuthoringXML(job):
                f.write(x)
        f.close()
 
+def CreateAuthoringXML_multiset(job):
+       nr_titles = len(job.project.titles)
+       mode = job.project.settings.authormode.getValue()
+       authorxml = []
+       authorxml.append('<?xml version="1.0" encoding="utf-8"?>\n')
+       authorxml.append(' <dvdauthor dest="' + (job.workspace+"/dvd") + '" jumppad="yes">\n')
+       authorxml.append('  <vmgm>\n')
+       authorxml.append('   <menus>\n')
+       authorxml.append('    <video aspect="4:3"/>\n')
+       if mode.startswith("menu"):
+               for menu_count in range(1 , job.nr_menus+1):
+                       authorxml.append('    <pgc>\n')
+                       menu_start_title = (menu_count-1)*job.titles_per_menu + 1
+                       menu_end_title = (menu_count)*job.titles_per_menu + 1
+                       if menu_end_title > nr_titles:
+                               menu_end_title = nr_titles+1
+                       for i in range( menu_start_title , menu_end_title ):
+                               authorxml.append('     <button name="button' + (str(i).zfill(2)) + '"> jump titleset ' + str(i) +' title 1; </button>\n')
+                       if menu_count > 1:
+                               authorxml.append('     <button name="button_prev"> jump menu ' + str(menu_count-1) + '; </button>\n')
+                       if menu_count < job.nr_menus:
+                               authorxml.append('     <button name="button_next"> jump menu ' + str(menu_count+1) + '; </button>\n')
+                       menuoutputfilename = job.workspace+"/dvdmenu"+str(menu_count)+".mpg"
+                       authorxml.append('     <vob file="' + menuoutputfilename + '" pause="inf"/>\n')
+                       authorxml.append('    </pgc>\n')
+       else:
+               authorxml.append('    <pgc>\n')
+               authorxml.append('     <vob file="' + job.project.settings.vmgm.getValue() + '" />\n' )
+               authorxml.append('     <post> jump titleset 1 title 1; </post>\n')
+               authorxml.append('    </pgc>\n')
+       authorxml.append('   </menus>\n')
+       authorxml.append('  </vmgm>\n')
+
+       for i in range( nr_titles ):
+               title = job.project.titles[i]
+               authorxml.append('  <titleset>\n')
+               authorxml.append('   <titles>\n')
+               for audiotrack in title.properties.audiotracks:
+                       active = audiotrack.active.getValue()
+                       if active:
+                               format = audiotrack.format.getValue()
+                               language = audiotrack.language.getValue()
+                               audio_tag = '    <audio format="%s"' % format
+                               if language != "nolang":
+                                       audio_tag += ' lang="%s"' % language
+                               audio_tag += ' />\n'
+                               authorxml.append(audio_tag)
+               aspect = title.properties.aspect.getValue()
+               video_tag = '    <video aspect="'+aspect+'"'
+               if title.properties.widescreen.getValue() == "4:3":
+                       video_tag += ' widescreen="'+title.properties.widescreen.getValue()+'"'
+               video_tag += ' />\n'
+               authorxml.append(video_tag)
+               chapters = ','.join(title.getChapterMarks())
+               title_no = i+1
+               title_filename = job.workspace + "/dvd_title_%d.mpg" % (title_no)
+               if job.menupreview:
+                       LinkTS(job, job.project.settings.vmgm.getValue(), title_filename)
+               else:
+                       MakeFifoNode(job, title_no)
+               if mode.endswith("linked") and title_no < nr_titles:
+                       post_tag = "jump titleset %d title 1;" % ( title_no+1 )
+               elif mode.startswith("menu"):
+                       post_tag = "call vmgm menu 1;"
+               else:   post_tag = ""
+
+               authorxml.append('    <pgc>\n')
+               authorxml.append('     <vob file="' + title_filename + '" chapters="' + chapters + '" />\n')
+               authorxml.append('     <post> ' + post_tag + ' </post>\n')
+               authorxml.append('    </pgc>\n')
+               authorxml.append('   </titles>\n')
+               authorxml.append('  </titleset>\n')
+       authorxml.append(' </dvdauthor>\n')
+       f = open(job.workspace+"/dvdauthor.xml", "w")
+       for x in authorxml:
+               f.write(x)
+       f.close()
+
 def getISOfilename(isopath, volName):
        from Tools.Directories import fileExists
        i = 0
@@ -703,7 +771,10 @@ class DVDJob(Job):
                CheckDiskspaceTask(self)
                if self.project.settings.authormode.getValue().startswith("menu") or self.menupreview:
                        Menus(self)
-               CreateAuthoringXML(self)
+               if self.project.settings.titlesetmode.getValue() == "multi":
+                       CreateAuthoringXML_multiset(self)
+               else:
+                       CreateAuthoringXML_singleset(self)
 
                DVDAuthorTask(self)
                
@@ -713,14 +784,14 @@ class DVDJob(Job):
                        PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
                else:
                        for self.i in range(nr_titles):
-                               title = self.project.titles[self.i]
+                               self.title = self.project.titles[self.i]
                                link_name =  self.workspace + "/source_title_%d.ts" % (self.i+1)
                                title_filename = self.workspace + "/dvd_title_%d.mpg" % (self.i+1)
-                               LinkTS(self, title.inputfile, link_name)
+                               LinkTS(self, self.title.inputfile, link_name)
                                demux = DemuxTask(self, link_name)
                                self.mplextask = MplexTask(self, outputfile=title_filename, demux_task=demux)
                                self.mplextask.end = self.estimateddvdsize
-                               RemoveESFiles(self, demux)
+                               #RemoveESFiles(self, demux)
                        WaitForResidentTasks(self)
                        PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/")
                        output = self.project.settings.output.getValue()
index 7491e04..b77383c 100644 (file)
@@ -148,8 +148,9 @@ class ProjectSettings(Screen,ConfigListScreen):
                        self.list.append(getConfigListEntry(_("Menu")+' '+_("spaces (top, between rows, left)"), self.settings.space))
                        self.list.append(getConfigListEntry(_("Menu")+' '+_("Audio"), self.settings.menuaudio))
                if authormode != "data_ts":
-                       self.list.append(getConfigListEntry(_("VMGM (intro trailer)"), self.settings.vmgm))
-                       self.list.append(getConfigListEntry(_("Auto chapter split every ? minutes (0=never)"), self.settings.autochapter))
+                       self.list.append(getConfigListEntry(_("Titleset mode"), self.settings.titlesetmode))
+                       if self.settings.titlesetmode.getValue() == "single" or authormode == "just_linked":
+                               self.list.append(getConfigListEntry(_("VMGM (intro trailer)"), self.settings.vmgm))
                else:
                        self.list.append(getConfigListEntry(("DVD data format"), self.settings.dataformat))
                
@@ -158,13 +159,13 @@ class ProjectSettings(Screen,ConfigListScreen):
        def keyLeft(self):
                ConfigListScreen.keyLeft(self)
                key = self.keydict[self["config"].getCurrent()[1]]
-               if key == "authormode" or key == "output":
+               if key == "authormode" or key == "output" or key=="titlesetmode":
                        self.initConfigList()
 
        def keyRight(self):
                ConfigListScreen.keyRight(self)
                key = self.keydict[self["config"].getCurrent()[1]]
-               if key == "authormode" or key == "output":
+               if key == "authormode" or key == "output" or key=="titlesetmode":
                        self.initConfigList()
 
        def exit(self):
index 163269c..210a3d5 100644 (file)
@@ -20,16 +20,31 @@ class TitleCutter(CutListEditor):
                audio = service and service.audioTracks()
                n = audio and audio.getNumberOfTracks() or 0
                if n > 0:
+                       from DVDTitle import ConfigFixedText
+                       from TitleProperties import languageChoices
+                       from Components.config import config, ConfigSubsection, ConfigSubList, ConfigSelection, ConfigYesNo
+                       self.t.properties.audiotracks = ConfigSubList()
                        for x in range(n):
                                i = audio.getTrackInfo(x)
-                               language = i.getLanguage()
+                               DVB_lang = i.getLanguage()
                                description = i.getDescription()
+                               pid = str(i.getPID())
                                if description == "MPEG":
                                        description = "MP2"
-                               self.t.audiotracks.append((language, description))
-               print "[DVDBurn getAudioTracks]", self.t.audiotracks
-               self.t.sVideoType = service.info().getInfo(iServiceInformation.sVideoType)
-               print "[DVDBurn getVideoType]", self.t.sVideoType
+                               print "[audiotrack] pid:", pid, "description:", description, "language:", DVB_lang
+                               self.t.properties.audiotracks.append(ConfigSubsection())
+                               self.t.properties.audiotracks[-1].active = ConfigYesNo(default = True)
+                               self.t.properties.audiotracks[-1].format = ConfigFixedText(description)
+                               self.t.properties.audiotracks[-1].language = ConfigSelection(choices = languageChoices.choices, default=languageChoices.getLanguage(DVB_lang))
+                               self.t.properties.audiotracks[-1].pid = ConfigFixedText(pid)
+                               self.t.properties.audiotracks[-1].DVB_lang = ConfigFixedText(DVB_lang)
+               sAspect = service.info().getInfo(iServiceInformation.sAspect)
+               if sAspect in ( 1, 2, 5, 6, 9, 0xA, 0xD, 0xE ):
+                       aspect = "4:3"
+               else:
+                       aspect = "16:9"
+               self.t.properties.aspect.setValue(aspect)
+               self.t.VideoType = service.info().getInfo(iServiceInformation.sVideoType)
 
        def exit(self):
                self.session.nav.stopService()
index 19380af..345af87 100644 (file)
@@ -1,4 +1,4 @@
-import DVDProject, TitleList, TitleCutter, ProjectSettings, DVDToolbox, Process
+import DVDProject, TitleList, TitleCutter, TitleProperties, ProjectSettings, DVDToolbox, Process
 from Screens.Screen import Screen
 from Screens.ChoiceBox import ChoiceBox
 from Screens.InputBox import InputBox
@@ -41,7 +41,7 @@ class TitleList(Screen, HelpableScreen):
                self["titleactions"] = HelpableActionMap(self, "DVDTitleList",
                        {
                                "addTitle": (self.addTitle, _("Add a new title"), _("Add title")),
-                               "editTitle": (self.editTitle, _("Edit chapters of current title"), _("Edit title")),
+                               "titleProperties": (self.titleProperties, _("Properties of current title"), _("Title properties")),
                                "removeCurrentTitle": (self.removeCurrentTitle, _("Remove currently selected title"), _("Remove title")),
                                "settings": (self.settings, _("Collection settings"), _("Settings")),
                                "burnProject": (self.burnProject, _("Burn DVD"), _("Burn DVD")),
@@ -59,7 +59,7 @@ class TitleList(Screen, HelpableScreen):
 
                self["key_red"] = StaticText(_("Remove title"))
                self["key_green"] = StaticText(_("Add title"))
-               self["key_yellow"] = StaticText(_("Edit title"))
+               self["key_yellow"] = StaticText(_("Title properties"))
                self["key_blue"] = StaticText(_("Settings"))
 
                self["title_label"] = StaticText()
@@ -78,40 +78,31 @@ class TitleList(Screen, HelpableScreen):
        def showMenu(self):
                menu = []
                if self.project.settings.output.getValue() == "dvd":
-                       menu.append((_("Burn DVD"), "burn"));
+                       menu.append((_("Burn DVD"), self.burnProject))
                elif self.project.settings.output.getValue() == "iso":
-                       menu.append((_("Create DVD-ISO"), "burn"));
-               menu.append((_("Preview menu"), "previewMenu"));
-               menu.append((_("DVD media toolbox"), "toolbox"));
-               menu.append((_("Collection settings"), "settings"));
-               menu.append((_("Add a new title"), "addtitle"));
-               menu.append((_("Remove title"), "removetitle"));
-               menu.append((_("Edit chapters of current title"), "edittitle"));
-               menu.append((_("Burn existing image to DVD"), "burniso"));
-               menu.append((_("Exit"), "exit"));
+                       menu.append((_("Create DVD-ISO"), self.burnProject))
+               menu.append((_("Burn existing image to DVD"), self.selectImage))
+               menu.append((_("DVD media toolbox"), self.toolbox))
+               menu.append((_("Preview menu"), self.previewMenu))
+               menu.append((_("Collection settings"), self.settings))
+               menu.append((_("Reset and renumerate title names"), self.resetTitles))
+               menu.append((_("Edit chapters of current title"), self.editTitle))
+               menu.append((_("Properties of current title"), self.titleProperties))
+               menu.append((_("Add a new title"), self.addTitle))
+               menu.append((_("Remove title"), self.removeCurrentTitle))
+               menu.append((_("Exit"), self.leave))
                self.session.openWithCallback(self.menuCallback, ChoiceBox, title="", list=menu)
 
        def menuCallback(self, choice):
-               if choice is None:
-                       return
-               if choice[1] == "removetitle":
-                       self.removeCurrentTitle()
-               elif choice[1] == "addtitle":
-                       self.addTitle()
-               elif choice[1] == "edittitle":
-                       self.editTitle()
-               elif choice[1] == "toolbox":
-                       self.toolbox()
-               elif choice[1] == "settings":
-                       self.settings()
-               elif choice[1] == "previewMenu":
-                       self.previewMenu()
-               elif choice[1] == "burn":
-                       self.burnProject()
-               elif choice[1] == "burniso":
-                       self.session.openWithCallback(self.burnISO, ProjectSettings.FileBrowser, "image", self.project.settings)
-               elif choice[1] == "exit":
-                       self.leave()
+               if choice:
+                       choice[1]()
+
+       def titleProperties(self):
+               if self.getCurrentTitle():
+                       self.session.openWithCallback(self.updateTitleList, TitleProperties.TitleProperties, self, self.project, self["titles"].getIndex())
+
+       def selectImage(self):
+               self.session.openWithCallback(self.burnISO, ProjectSettings.FileBrowser, "image", self.project.settings)
 
        def newProject(self):
                self.project = DVDProject.DVDProject()
@@ -197,10 +188,6 @@ class TitleList(Screen, HelpableScreen):
                        job_manager.in_background = False
                        self.session.openWithCallback(self.JobViewCB, JobView, job)
                else:
-                       autochapter = self.project.settings.autochapter.getValue()
-                       if autochapter > 0:
-                               for title in self.project.titles:
-                                       title.produceAutoChapter(autochapter)
                        job = Process.DVDJob(self.project)
                        job_manager.AddJob(job)
                        job_manager.in_background = False
@@ -225,7 +212,7 @@ class TitleList(Screen, HelpableScreen):
                res = [ ]
                totalsize = 0
                for title in self.project.titles:
-                       a = [ title, (eListboxPythonMultiContent.TYPE_TEXT, 0, 10, 500, 50, 0, RT_HALIGN_LEFT, title.name)  ]
+                       a = [ title, (eListboxPythonMultiContent.TYPE_TEXT, 0, 10, 500, 50, 0, RT_HALIGN_LEFT, title.properties.menutitle.getValue())  ]
                        res.append(a)
                        totalsize += title.estimatedDiskspace
                self["titles"].list = res
@@ -263,13 +250,21 @@ class TitleList(Screen, HelpableScreen):
 
        def titleEditDone(self, cutlist):
                t = self.current_edit_title
+               t.initDVDmenuText(self.project,len(self.project.titles))
                t.cuesheet = cutlist
                t.produceFinalCuesheet()
-               if t.sVideoType != 0:
+               if t.VideoType != 0:
                        self.session.openWithCallback(self.DVDformatCB,MessageBox,text = _("The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a Dreambox format data DVD (which will not play in stand-alone DVD players) instead?"), type = MessageBox.TYPE_YESNO)
                else:
                        self.updateTitleList()
 
+       def resetTitles(self):
+               count = 0
+               for title in self.project.titles:
+                       count += 1
+                       title.initDVDmenuText(self.project,count)
+               self.updateTitleList()
+
        def DVDformatCB(self, answer):
                t = self.current_edit_title
                if answer == True:
diff --git a/lib/python/Plugins/Extensions/DVDBurn/TitleProperties.py b/lib/python/Plugins/Extensions/DVDBurn/TitleProperties.py
new file mode 100644 (file)
index 0000000..d5ba6c1
--- /dev/null
@@ -0,0 +1,169 @@
+from Screens.Screen import Screen
+from Screens.ChoiceBox import ChoiceBox
+from Screens.InputBox import InputBox
+from Screens.MessageBox import MessageBox
+from Screens.HelpMenu import HelpableScreen
+from Components.ActionMap import HelpableActionMap, ActionMap
+from Components.Sources.List import List
+from Components.Sources.StaticText import StaticText
+from Components.Sources.Progress import Progress
+from Components.FileList import FileList
+from enigma import eListboxPythonMultiContent, gFont, RT_HALIGN_LEFT
+from Tools.Directories import fileExists, resolveFilename, SCOPE_PLUGINS, SCOPE_FONTS, SCOPE_HDD
+from Components.config import config, getConfigListEntry, ConfigInteger, ConfigSubsection, ConfigSelection
+from Components.ConfigList import ConfigListScreen
+import DVDTitle
+
+class TitleProperties(Screen,ConfigListScreen):
+       skin = """
+               <screen position="90,83" size="560,445" title="Properties of current title" >
+                   <ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" />
+                   <ePixmap pixmap="skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" />
+                   <ePixmap pixmap="skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on" />
+                   <widget source="key_red" render="Label" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
+                   <widget source="key_green" render="Label" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />
+                   <widget source="key_blue" render="Label" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />
+                   <widget name="config" position="10,50" size="540,300" scrollbarMode="showOnDemand" />
+                   <widget source="serviceinfo_headline" render="Label" position="20,360" size="520,20" font="Regular;20" />
+                   <widget source="serviceinfo" render="Label" position="20,382" size="520,66" font="Regular;16" />
+               </screen>"""
+
+       def __init__(self, session, parent, project, title_idx):
+               Screen.__init__(self, session)
+               self.parent = parent
+               self.project = project
+               self.title_idx = title_idx
+
+               self["key_red"] = StaticText(_("Cancel"))
+               self["key_green"] = StaticText(_("OK"))
+               self["key_blue"] = StaticText(_("Edit Title"))
+               self["serviceinfo_headline"] = StaticText("DVB info:")
+               self["serviceinfo"] = StaticText()
+
+               self.properties = project.titles[title_idx].properties
+               ConfigListScreen.__init__(self, [])
+               self.properties.crop = DVDTitle.ConfigFixedText("crop")
+               self.properties.autochapter.addNotifier(self.initConfigList)
+               self.properties.aspect.addNotifier(self.initConfigList)
+               for audiotrack in self.properties.audiotracks:
+                       audiotrack.active.addNotifier(self.initConfigList)
+               
+               self.initConfigList()
+
+               self["setupActions"] = ActionMap(["SetupActions", "ColorActions"],
+               {
+                   "green": self.exit,
+                   "red": self.cancel,
+                   "blue": self.editTitle,
+                   "cancel": self.cancel,
+                   "ok": self.ok,
+               }, -2)
+
+       def initConfigList(self, element=None):
+               try:
+                       self.properties.position = ConfigInteger(default = self.title_idx+1, limits = (1, len(self.project.titles)))
+                       title = self.project.titles[self.title_idx]
+                       self.list = []
+                       self.list.append(getConfigListEntry("DVD " + _("Track"), self.properties.position))
+                       self.list.append(getConfigListEntry("DVD " + _("Title"), self.properties.menutitle))
+                       self.list.append(getConfigListEntry("DVD " + _("Description"), self.properties.menusubtitle))
+                       for audiotrack in self.properties.audiotracks:
+                               DVB_aud = audiotrack.DVB_lang.getValue() or audiotrack.pid.getValue()
+                               self.list.append(getConfigListEntry(_("burn audio track (%s)") % DVB_aud, audiotrack.active))
+                               if audiotrack.active.getValue():
+                                       self.list.append(getConfigListEntry(_("audio track (%s) format") % DVB_aud, audiotrack.format))
+                                       self.list.append(getConfigListEntry(_("audio track (%s) language") % DVB_aud, audiotrack.language))
+                                       
+                       self.list.append(getConfigListEntry("DVD " + _("Aspect Ratio"), self.properties.aspect))
+                       if self.properties.aspect.getValue() == "16:9":
+                               self.list.append(getConfigListEntry("DVD " + "widescreen", self.properties.widescreen))
+                       else:
+                               self.list.append(getConfigListEntry("DVD " + "widescreen", self.properties.crop))
+                       
+                       infotext = _("Available format variables") + ":\n$i=" + _("Track") + ", $t=" + _("Title") + ", $d=" + _("Description") + ", $l=" + _("length") + ", $c=" + _("chapters") + ",\n" + _("Record") + " $T=" + _("Begin time") + ", $Y=" + _("year") + ", $M=" + _("month") + ", $D=" + _("day") + ",\n$A=" + _("audio tracks") + ", $C=" + _("Channel") + ", $f=" + _("filename")
+                       self["info"] = StaticText(infotext)
+                       
+                       if len(title.chaptermarks) == 0:
+                               self.list.append(getConfigListEntry(_("Auto chapter split every ? minutes (0=never)"), self.properties.autochapter))
+                       infotext = _("Title") + ': ' + title.DVBname + "\n" + _("Description") + ': ' + title.DVBdescr + "\n" + _("Channel") + ': ' + title.DVBchannel
+                       chaptermarks = title.getChapterMarks(template="$h:$m:$s")
+                       chapters_count = len(chaptermarks)
+                       if chapters_count >= 1:
+                               infotext += ', ' + str(chapters_count+1) + ' ' + _("chapters") + ' ('
+                               infotext += ' / '.join(chaptermarks) + ')'
+                       self["serviceinfo"].setText(infotext)
+                       self["config"].setList(self.list)
+               except AttributeError:
+                       pass
+
+       def editTitle(self):
+               self.parent.editTitle()
+               self.initConfigList()
+
+       def changedConfigList(self):
+               self.initConfigList()
+
+       def exit(self):
+               self.applySettings()
+               self.close()
+
+       def applySettings(self):
+               for x in self["config"].list:
+                       x[1].save()
+               current_pos = self.title_idx+1
+               new_pos = self.properties.position.getValue()
+               if new_pos != current_pos:
+                       print "title got repositioned from ", current_pos, "to", new_pos
+                       swaptitle = self.project.titles.pop(current_pos-1)
+                       self.project.titles.insert(new_pos-1, swaptitle)
+
+       def ok(self):
+               #key = self.keydict[self["config"].getCurrent()[1]]
+               #if key in self.project.filekeys:
+                       #self.session.openWithCallback(self.FileBrowserClosed, FileBrowser, key, self.settings)
+               pass
+
+       def cancel(self):
+               self.close()
+
+from Tools.ISO639 import LanguageCodes
+class LanguageChoices():
+       def __init__(self):
+               from Components.Language import language as syslanguage
+               syslang = syslanguage.getLanguage()[:2]
+               self.langdict = { }
+               self.choices = []
+               for key, val in LanguageCodes.iteritems():
+                       if len(key) == 2:
+                               self.langdict[key] = val[0]
+               for key, val in self.langdict.iteritems():
+                       if key not in [syslang, 'en']:
+                               self.langdict[key] = val
+                               self.choices.append((key, val))
+               self.choices.sort()
+               self.choices.insert(0,("nolang", ("unspecified")))
+               self.choices.insert(1,(syslang, self.langdict[syslang]))
+               self.choices.insert(2,("en", self.langdict["en"]))
+
+       def getLanguage(self, DVB_lang):
+               DVB_lang = DVB_lang.lower()
+               stripwords = ["stereo", "audio", "description", "2ch", "dolby digital"]
+               for word in stripwords:
+                       DVB_lang = DVB_lang.replace(word,"").strip()
+               for key, val in LanguageCodes.iteritems():
+                       if DVB_lang.find(key.lower()) == 0:
+                               if len(key) == 2:
+                                       return key
+                               else:
+                                       DVB_lang = (LanguageCodes[key])[0]
+                       elif DVB_lang.find(val[0].lower()) > -1:
+                               if len(key) == 2:
+                                       return key
+                               else:
+                                       DVB_lang = (LanguageCodes[key])[0]
+               for key, val in self.langdict.iteritems():
+                       if val == DVB_lang:
+                               return key
+               return "nolang"
+
+languageChoices = LanguageChoices()
\ No newline at end of file
index 13fa3ee..e8bc104 100644 (file)
@@ -2,7 +2,7 @@
        <map context="DVDTitleList">
                <key id="KEY_RED" mapto="removeCurrentTitle" flags="m" />
                <key id="KEY_GREEN" mapto="addTitle" flags="m" />
-               <key id="KEY_YELLOW" mapto="editTitle" flags="m" />
+               <key id="KEY_YELLOW" mapto="titleProperties" flags="m" />
                <key id="KEY_BLUE" mapto="settings" flags="m" />
                <key id="KEY_RECORD" mapto="burnProject" flags="m" />
                <key id="KEY_0" mapto="burnProject" flags="m" />
index b658d80..29076ce 100644 (file)
@@ -12,5 +12,5 @@ def main_add(session, service, **kwargs):
        dvdburn.selectedSource(service)
 
 def Plugins(**kwargs):
-       return [PluginDescriptor(name="DVD Burn", description=_("Burn to DVD..."), where = PluginDescriptor.WHERE_MOVIELIST, fnc=main_add), 
-               PluginDescriptor(name="DVD Burn", description=_("Burn to DVD..."), where = PluginDescriptor.WHERE_PLUGINMENU, fnc=main) ]
+       return [PluginDescriptor(name="DVD Burn", description=_("Burn to DVD..."), where = PluginDescriptor.WHERE_MOVIELIST, fnc=main_add, icon="dvdburn.png"),
+               PluginDescriptor(name="DVD Burn", description=_("Burn to DVD..."), where = PluginDescriptor.WHERE_PLUGINMENU, fnc=main, icon="dvdburn.png") ]
index 4298642..cb5f0e0 100644 (file)
@@ -371,13 +371,25 @@ class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
                if retval > 0:
                        self.zapToNumber(retval)
 
+       def getServiceInterface(self, iface):
+               service = self.service
+               if service:
+                       attr = getattr(service, iface, None)
+                       if callable(attr):
+                               return attr()
+               return None
+
        def __serviceStopped(self):
                self.dvdScreen.hide()
-               self.service.subtitle().disableSubtitles(self.session.current_dialog.instance)
+               subs = self.getServiceInterface("subtitle")
+               if subs:
+                       subs.disableSubtitles(self.session.current_dialog.instance)
 
        def serviceStarted(self): #override InfoBarShowHide function
                self.dvdScreen.show()
-               self.service.subtitle().enableSubtitles(self.dvdScreen.instance, None)
+               subs = self.getServiceInterface("subtitle")
+               if subs:
+                       subs.enableSubtitles(self.dvdScreen.instance, None)
 
        def doEofInternal(self, playing):
                if self.in_menu:
@@ -435,17 +447,19 @@ class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
                print "StringAvail"
 
        def __osdAudioInfoAvail(self):
-               audioTuple = self.service.info().getInfoObject(iServiceInformation.sUser+6)
+               info = self.getServiceInterface("info")
+               audioTuple = info and info.getInfoObject(iServiceInformation.sUser+6)
                print "AudioInfoAvail ", repr(audioTuple)
                if audioTuple:
                        audioString = "%d: %s (%s)" % (audioTuple[0],audioTuple[1],audioTuple[2])
                        self["audioLabel"].setText(audioString)
                        if audioTuple != self.last_audioTuple and not self.in_menu:
                                self.doShow()
-                       self.last_audioTuple = audioTuple
+               self.last_audioTuple = audioTuple
 
        def __osdSubtitleInfoAvail(self):
-               subtitleTuple = self.service.info().getInfoObject(iServiceInformation.sUser+7)
+               info = self.getServiceInterface("info")
+               subtitleTuple = info and info.getInfoObject(iServiceInformation.sUser+7)
                print "SubtitleInfoAvail ", repr(subtitleTuple)
                if subtitleTuple:
                        subtitleString = ""
@@ -454,21 +468,25 @@ class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
                        self["subtitleLabel"].setText(subtitleString)
                        if subtitleTuple != self.last_subtitleTuple and not self.in_menu:
                                self.doShow()
-                       self.last_subtitleTuple = subtitleTuple
+               self.last_subtitleTuple = subtitleTuple
 
        def __chapterUpdated(self):
-               self.currentChapter = self.service.info().getInfo(iServiceInformation.sCurrentChapter)
-               self.totalChapters = self.service.info().getInfo(iServiceInformation.sTotalChapters)
-               self.setChapterLabel()
-               print "__chapterUpdated: %d/%d" % (self.currentChapter, self.totalChapters)
+               info = self.getServiceInterface("info")
+               if info:
+                       self.currentChapter = info.getInfo(iServiceInformation.sCurrentChapter)
+                       self.totalChapters = info.getInfo(iServiceInformation.sTotalChapters)
+                       self.setChapterLabel()
+                       print "__chapterUpdated: %d/%d" % (self.currentChapter, self.totalChapters)
 
        def __titleUpdated(self):
-               self.currentTitle = self.service.info().getInfo(iServiceInformation.sCurrentTitle)
-               self.totalTitles = self.service.info().getInfo(iServiceInformation.sTotalTitles)
-               self.setChapterLabel()
-               print "__titleUpdated: %d/%d" % (self.currentTitle, self.totalTitles)
-               if not self.in_menu:
-                       self.doShow()
+               info = self.getServiceInterface("info")
+               if info:
+                       self.currentTitle = info.getInfo(iServiceInformation.sCurrentTitle)
+                       self.totalTitles = info.getInfo(iServiceInformation.sTotalTitles)
+                       self.setChapterLabel()
+                       print "__titleUpdated: %d/%d" % (self.currentTitle, self.totalTitles)
+                       if not self.in_menu:
+                               self.doShow()
                
        def askLeavePlayer(self):
                choices = [(_("Continue playing"), "play"), (_("Exit"), "exit")]
@@ -476,73 +494,65 @@ class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
                        choices.insert(1,(_("Return to file browser"), "browser"))                      
                self.session.openWithCallback(self.exitCB, ChoiceBox, title=_("Leave DVD Player?"), list = choices)
 
+       def sendKey(self, key):
+               keys = self.getServiceInterface("keys")
+               if keys:
+                       keys.keyPressed(key)
+               return keys
+
        def nextAudioTrack(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser)
+               self.sendKey(iServiceKeys.keyUser)
 
        def nextSubtitleTrack(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser+1)
+               self.sendKey(iServiceKeys.keyUser+1)
 
        def enterDVDAudioMenu(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser+2)
+               self.sendKey(iServiceKeys.keyUser+2)
 
        def nextChapter(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser+3)
+               self.sendKey(iServiceKeys.keyUser+3)
 
        def prevChapter(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser+4)
+               self.sendKey(iServiceKeys.keyUser+4)
 
        def nextTitle(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser+5)
+               self.sendKey(iServiceKeys.keyUser+5)
 
        def prevTitle(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser+6)
+               self.sendKey(iServiceKeys.keyUser+6)
 
        def enterDVDMenu(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUser+7)
+               self.sendKey(iServiceKeys.keyUser+7)
 
        def seekBeginning(self):
                if self.service:
                        seekable = self.getSeek()
-                       if seekable is not None:
+                       if seekable:
                                seekable.seekTo(0)
 
        def zapToNumber(self, number):
                if self.service:
                        seekable = self.getSeek()
-                       if seekable is not None:
+                       if seekable:
                                print "seek to chapter %d" % number
                                seekable.seekChapter(number)
 
 #      MENU ACTIONS
        def keyRight(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyRight)
+               self.sendKey(iServiceKeys.keyRight)
 
        def keyLeft(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyLeft)
+               self.sendKey(iServiceKeys.keyLeft)
 
        def keyUp(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyUp)
+               self.sendKey(iServiceKeys.keyUp)
 
        def keyDown(self):
-               if self.service:
-                       self.service.keys().keyPressed(iServiceKeys.keyDown)
+               self.sendKey(iServiceKeys.keyDown)
 
        def keyOk(self):
-               if self.service:
-                       if not self.in_menu:
-                               self.toggleInfo()
-                       self.service.keys().keyPressed(iServiceKeys.keyOk)
+               if self.sendKey(iServiceKeys.keyOk) and not self.in_menu:
+                       self.toggleInfo()
 
        def keyCancel(self):
                self.askLeavePlayer()
@@ -606,9 +616,10 @@ class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
        def playLastCB(self, answer): # overwrite infobar cuesheet function
                print "playLastCB", answer, self.resume_point
                if self.service:
-                       seek = self.service.seek()
                        if answer == True:
-                               seek.seekTo(self.resume_point)
+                               seekable = self.getSeek()
+                               if seekable:
+                                       seekable.seekTo(self.resume_point)
                        pause = self.service.pause()
                        pause.unpause()
                self.hideAfterResume()
index 7afbe14..21d1bfe 100644 (file)
@@ -93,4 +93,4 @@ def main(session, servicelist, **kwargs):
 def Plugins(**kwargs):
        name = _("Graphical Multi EPG")
        descr = _("A graphical EPG for all services of an specific bouquet")
-       return [ PluginDescriptor(name=name, description=descr, where = PluginDescriptor.WHERE_EXTENSIONSMENU, fnc=main) ]
+       return [ PluginDescriptor(name=name, description=descr, where = PluginDescriptor.WHERE_EVENTINFO, fnc=main) ]
index e4ec574..123df22 100644 (file)
@@ -1,5 +1,4 @@
 installdir = $(LIBDIR)/enigma2/python/Plugins/Extensions/MediaPlayer
 
 install_PYTHON = \
-       __init__.py \
-       plugin.py
+       __init__.py plugin.py settings.py
index ed1a887..0d5305d 100644 (file)
@@ -1,25 +1,27 @@
 from os import path as os_path, remove as os_remove, listdir as os_listdir
 from time import strftime
-from enigma import iPlayableService, eTimer, eServiceCenter, iServiceInformation
+from enigma import iPlayableService, eTimer, eServiceCenter, iServiceInformation, loadPic
+from ServiceReference import ServiceReference
 from Screens.Screen import Screen
+from Screens.HelpMenu import HelpableScreen
 from Screens.MessageBox import MessageBox
 from Screens.InputBox import InputBox
+from Screens.ChoiceBox import ChoiceBox
+from Screens.InfoBarGenerics import InfoBarSeek, InfoBarAudioSelection, InfoBarCueSheetSupport, InfoBarNotifications, InfoBarSubtitleSupport
 from Components.ActionMap import NumberActionMap, HelpableActionMap
 from Components.Label import Label
 from Components.Pixmap import Pixmap,MultiPixmap
-from Components.Label import Label
 from Components.FileList import FileList
 from Components.MediaPlayer import PlayList
-from Tools.Directories import resolveFilename, SCOPE_CONFIG, SCOPE_PLAYLIST, SCOPE_SKIN_IMAGE
 from Components.ServicePosition import ServicePositionGauge
 from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase
 from Components.Playlist import PlaylistIOInternal, PlaylistIOM3U, PlaylistIOPLS
-from Screens.InfoBarGenerics import InfoBarSeek, InfoBarAudioSelection, InfoBarCueSheetSupport, InfoBarNotifications, InfoBarSubtitleSupport
-from ServiceReference import ServiceReference
-from Screens.ChoiceBox import ChoiceBox
-from Screens.HelpMenu import HelpableScreen
+from Components.AVSwitch import AVSwitch
 from Components.Harddisk import harddiskmanager
-from Tools.Directories import fileExists, pathExists
+from Components.config import config
+from Tools.Directories import fileExists, pathExists, resolveFilename, SCOPE_CONFIG, SCOPE_PLAYLIST, SCOPE_SKIN_IMAGE
+from settings import MediaPlayerSettings
+from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier
 import random
 
 class MyPlayList(PlayList):
@@ -42,6 +44,7 @@ class MediaPixmap(Pixmap):
                                        break
                if self.default_pixmap is None:
                        self.default_pixmap = resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/no_coverArt.png")
+               self.coverFileNames = ["folder.png", "folder.jpg"]
                return Pixmap.applySkin(self, desktop, screen)
 
 class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoBarCueSheetSupport, InfoBarNotifications, InfoBarSubtitleSupport, HelpableScreen):
@@ -66,7 +69,8 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                self.addPlaylistParser(PlaylistIOInternal, "e2pls")
 
                # 'None' is magic to start at the list of mountpoints
-               self.filelist = FileList(None, matchingPattern = "(?i)^.*\.(mp2|mp3|ogg|ts|wav|wave|m3u|pls|e2pls|mpg|vob|avi|mkv|mp4|dat|flac)", useServiceRef = True, additionalExtensions = "4098:m3u 4098:e2pls 4098:pls")
+               defaultDir = config.mediaplayer.defaultDir.getValue()
+               self.filelist = FileList(defaultDir, matchingPattern = "(?i)^.*\.(mp2|mp3|ogg|ts|wav|wave|m3u|pls|e2pls|mpg|vob|avi|mkv|mp4|dat|flac)", useServiceRef = True, additionalExtensions = "4098:m3u 4098:e2pls 4098:pls")
                self["filelist"] = self.filelist
 
                self.playlist = MyPlayList()
@@ -92,8 +96,8 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                self["coverArt"] = MediaPixmap()
                self["repeat"] = MultiPixmap()
 
-               self.repeat = False
                self.seek_target = None
+               hotplugNotifier.append(self.hotplugCB)
 
                class MoviePlayerActionMap(NumberActionMap):
                        def __init__(self, player, contexts = [ ], actions = { }, prio=0):
@@ -169,7 +173,8 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                self.coverArtFileName = ""
                self.isAudioCD = False
                self.AudioCD_albuminfo = {}
-               self.savePlaylistOnExit = True
+               self.cdAudioTrackFiles = []
+               self.applySettings()
 
                self.playlistIOInternal = PlaylistIOInternal()
                list = self.playlistIOInternal.open(resolveFilename(SCOPE_CONFIG, "playlist.e2pls"))
@@ -192,16 +197,16 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                return MediaPlayerLCDScreen
 
        def exit(self):
-               self.session.openWithCallback(self.exitCB, MessageBox, _("Do you really want to exit?"), timeout=5)
-
-       def exitCB(self, answer):
-               if answer == True:
-                       self.playlistIOInternal.clear()
-                       for x in self.playlist.list:
-                               self.playlistIOInternal.addService(ServiceReference(x[0]))
-                       if self.savePlaylistOnExit:
-                               self.playlistIOInternal.save(resolveFilename(SCOPE_CONFIG, "playlist.e2pls"))
-                       self.close()
+               self.playlistIOInternal.clear()
+               for x in self.playlist.list:
+                       self.playlistIOInternal.addService(ServiceReference(x[0]))
+               if self.savePlaylistOnExit:
+                       self.playlistIOInternal.save(resolveFilename(SCOPE_CONFIG, "playlist.e2pls"))
+               if config.mediaplayer.saveDirOnExit.getValue():
+                       config.mediaplayer.defaultDir.setValue(self.filelist.getCurrentDirectory())
+                       config.mediaplayer.defaultDir.save()
+               hotplugNotifier.remove(self.hotplugCB)
+               self.close()
 
        def checkSkipShowHideLock(self):
                self.updatedSeekState()
@@ -283,13 +288,15 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
        def updateCoverArtPixmap(self, path):
                while not path.endswith("/"):
                        path = path[:-1]
-               pngname = path + "folder.png"
-               
-               if not fileExists(pngname):
-                       pngname = self["coverArt"].default_pixmap
-               if self.coverArtFileName != pngname:
-                       self.coverArtFileName = pngname
-                       self["coverArt"].instance.setPixmapFromFile(self.coverArtFileName)
+               new_coverArtFileName = self["coverArt"].default_pixmap
+               for filename in self["coverArt"].coverFileNames:
+                       if fileExists(path + filename):
+                               new_coverArtFileName = path + filename
+               if self.coverArtFileName != new_coverArtFileName:
+                       self.coverArtFileName = new_coverArtFileName
+                       pixmap = loadPic(self.coverArtFileName, 116, 116, AVSwitch().getAspectRatioSetting()/2,1,0,0)
+                       if pixmap is not None:
+                               self["coverArt"].instance.setPixmap(pixmap.__deref__())
 
        def leftDown(self):
                self.lefttimer = True
@@ -441,27 +448,25 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
 
        def showMenu(self):
                menu = []
+               if len(self.cdAudioTrackFiles):
+                       menu.insert(0,(_("Play Audio-CD..."), "audiocd"))
                if self.currList == "filelist":
                        if self.filelist.canDescent():
                                menu.append((_("add directory to playlist"), "copydir"))
                        else:
                                menu.append((_("add files to playlist"), "copyfiles"))
                        menu.append((_("switch to playlist"), "playlist"))
+                       menu.append((_("delete file"), "deletefile"))
                else:
                        menu.append((_("switch to filelist"), "filelist"))
-
                        menu.append((_("shuffle playlist"), "shuffle"))
-
-                       menu.append((_("delete"), "delete"))
+                       menu.append((_("Delete entry"), "deleteentry"))
                        menu.append((_("clear playlist"), "clear"))
                menu.append((_("hide player"), "hide"));
                menu.append((_("save playlist"), "saveplaylist"));
                menu.append((_("load playlist"), "loadplaylist"));
                menu.append((_("delete saved playlist"), "deleteplaylist"));
-               menu.append((_("repeat playlist"), "repeat"));
-               drivepath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())
-               if pathExists(drivepath):
-                       menu.insert(0,(_("Play Audio-CD..."), "audiocd"))
+               menu.append((_("Edit settings"), "settings"))
                self.session.openWithCallback(self.menuCallback, ChoiceBox, title="", list=menu)
 
        def menuCallback(self, choice):
@@ -473,20 +478,19 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                elif choice[1] == "copyfiles":
                        self.stopEntry()
                        self.playlist.clear()
+                       self.isAudioCD = False
                        self.copyDirectory(os_path.dirname(self.filelist.getSelection()[0].getPath()) + "/", recursive = False)
                        self.playServiceRefEntry(self.filelist.getServiceRef())
                elif choice[1] == "playlist":
                        self.switchToPlayList()
                elif choice[1] == "filelist":
                        self.switchToFileList()
-               elif choice[1] == "delete":
+               elif choice[1] == "deleteentry":
                        if self.playlist.getSelectionIndex() == self.playlist.getCurrentIndex():
                                self.stopEntry()
                        self.deleteEntry()
                elif choice[1] == "clear":
-                       self.stopEntry()
-                       self.playlist.clear()
-                       self.switchToFileList()
+                       self.clear_playlist()
                elif choice[1] == "hide":
                        self.hide()
                elif choice[1] == "saveplaylist":
@@ -497,24 +501,11 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                        self.delete_saved_playlist()
                elif choice[1] == "shuffle":
                        self.playlist.PlayListShuffle()
-               elif choice[1] == "repeat":
-                       if self.repeat == True:
-                               self.repeat = False
-                               self["repeat"].setPixmapNum(0)
-                       else:
-                               self.repeat = True
-                               self["repeat"].setPixmapNum(1)
+               elif choice[1] == "deletefile":
+                       self.deleteFile()
+               elif choice[1] == "settings":
+                       self.session.openWithCallback(self.applySettings, MediaPlayerSettings, self)
                elif choice[1] == "audiocd":
-                       from Components.Scanner import scanDevice
-                       drivepath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())
-                       self.cdAudioTrackFiles = []
-                       res = scanDevice(drivepath)
-                       list = [ (r.description, r, res[r], self.session) for r in res ]
-                       if list:
-                               (desc, scanner, files, session) = list[0]
-                               for file in files:
-                                       if file.mimetype == "audio/x-cda":
-                                               self.cdAudioTrackFiles.append(file.path)
                        self.playAudioCD()
 
        def playAudioCD(self):
@@ -533,6 +524,13 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                        self.changeEntry(0)
                        self.switchToPlayList()
 
+       def applySettings(self):
+               self.savePlaylistOnExit = config.mediaplayer.savePlaylistOnExit.getValue()
+               if config.mediaplayer.repeat.getValue() == True:
+                       self["repeat"].setPixmapNum(1)
+               else:
+                       self["repeat"].setPixmapNum(0)
+
        def showEventInformation(self):
                from Screens.EventView import EventViewSimple
                from ServiceReference import ServiceReference
@@ -617,9 +615,14 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
 
        def deleteConfirmed(self, confirmed):
                if confirmed:
-                       os_remove(self.delname)
+                       try:
+                               os_remove(self.delname)
+                       except OSError,e:
+                               print "delete failed:", e
+                               self.session.open(MessageBox, _("Delete failed!"), MessageBox.TYPE_ERROR)
 
        def clear_playlist(self):
+               self.isAudioCD = False
                self.stopEntry()
                self.playlist.clear()
                self.switchToFileList()
@@ -632,20 +635,78 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                        if x[0][1] == True: #isDir
                                if recursive:
                                        self.copyDirectory(x[0][0])
-                       else:
+                       elif filelist.getServiceRef() and filelist.getServiceRef().type == 4097:
                                self.playlist.addFile(x[0][0])
                self.playlist.updateList()
 
+       def deleteFile(self):
+               if self.currList == "filelist":
+                       self.service = self.filelist.getServiceRef()
+               else:
+                       self.service = self.playlist.getSelection()
+               if self.service is None:
+                       return
+               if self.service.type != 4098 and self.session.nav.getCurrentlyPlayingServiceReference() is not None:
+                       if self.service == self.session.nav.getCurrentlyPlayingServiceReference():
+                               self.stopEntry()
+
+               serviceHandler = eServiceCenter.getInstance()
+               offline = serviceHandler.offlineOperations(self.service)
+               info = serviceHandler.info(self.service)
+               name = info and info.getName(self.service)
+               result = False
+               if offline is not None:
+                       # simulate first
+                       if not offline.deleteFromDisk(1):
+                               result = True
+               if result == True:
+                       self.session.openWithCallback(self.deleteConfirmed_offline, MessageBox, _("Do you really want to delete %s?") % (name))
+               else:
+                       self.session.openWithCallback(self.close, MessageBox, _("You cannot delete this!"), MessageBox.TYPE_ERROR)      
+
+       def deleteConfirmed_offline(self, confirmed):
+               if confirmed:
+                       serviceHandler = eServiceCenter.getInstance()
+                       offline = serviceHandler.offlineOperations(self.service)
+                       result = False
+                       if offline is not None:
+                               # really delete!
+                               if not offline.deleteFromDisk(0):
+                                       result = True
+                       if result == False:
+                               self.session.open(MessageBox, _("Delete failed!"), MessageBox.TYPE_ERROR)
+                       else:
+                               self.removeListEntry()
+
+       def removeListEntry(self):
+               currdir = self.filelist.getCurrentDirectory()
+               self.filelist.changeDir(currdir)
+               deleteend = False
+               while not deleteend:
+                       index = 0
+                       deleteend = True
+                       if len(self.playlist) > 0:
+                               for x in self.playlist.list:
+                                       if self.service == x[0]:
+                                               self.playlist.deleteFile(index)
+                                               deleteend = False
+                                               break
+                                       index += 1
+               self.playlist.updateList()
+               if self.currList == "playlist":
+                       if len(self.playlist) == 0:
+                               self.switchToFileList()
+
        def copyFile(self):
                if self.filelist.getServiceRef().type == 4098: # playlist
                        ServiceRef = self.filelist.getServiceRef()
                        extension = ServiceRef.getPath()[ServiceRef.getPath().rfind('.') + 1:]
-                       print "extension:", extension
                        if self.playlistparsers.has_key(extension):
                                playlist = self.playlistparsers[extension]()
                                list = playlist.open(ServiceRef.getPath())
                                for x in list:
                                        self.playlist.addFile(x.ref)
+                       self.playlist.updateList()
                else:
                        self.playlist.addFile(self.filelist.getServiceRef())
                        self.playlist.updateList()
@@ -659,7 +720,7 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                next = self.playlist.getCurrentIndex() + 1
                if next < len(self.playlist):
                        self.changeEntry(next)
-               elif ( len(self.playlist) > 0 ) and ( self.repeat == True ):
+               elif ( len(self.playlist) > 0 ) and ( config.mediaplayer.repeat.getValue() == True ):
                        self.stopEntry()
                        self.changeEntry(0)
 
@@ -700,6 +761,7 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                else:
                        self.stopEntry()
                        self.playlist.clear()
+                       self.isAudioCD = False
                        sel = self.filelist.getSelection()
                        if sel:
                                if sel[1]: # can descent
@@ -762,7 +824,8 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
 
                        self.unPauseService()
                        if needsInfoUpdate == True:
-                               self.updateCoverArtPixmap(currref.getPath())
+                               path = self.playlist.getServiceRefList()[self.playlist.getCurrentIndex()].getPath()
+                               self.updateCoverArtPixmap(path)
                        else:
                                pngname = self["coverArt"].default_pixmap
                                self.coverArtFileName = pngname
@@ -797,7 +860,20 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
                
        def subtitleSelection(self):
                from Screens.Subtitles import Subtitles
-               self.session.open(Subtitles)            
+               self.session.open(Subtitles)
+       
+       def hotplugCB(self, dev, media_state):
+               if dev == harddiskmanager.getCD():      
+                       from Components.Scanner import scanDevice
+                       devpath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())
+                       self.cdAudioTrackFiles = []
+                       res = scanDevice(devpath)
+                       list = [ (r.description, r, res[r], self.session) for r in res ]
+                       if list:
+                               (desc, scanner, files, session) = list[0]
+                               for file in files:
+                                       if file.mimetype == "audio/x-cda":
+                                               self.cdAudioTrackFiles.append(file.path)
 
 class MediaPlayerLCDScreen(Screen):
        skin = """
@@ -814,7 +890,6 @@ class MediaPlayerLCDScreen(Screen):
                self["text4"] = Label("")
 
        def setText(self, text, line):
-               print "lcd set text:", text, line
                if len(text) > 10:
                        if text[-4:] == ".mp3":
                                text = text[:-4]
diff --git a/lib/python/Plugins/Extensions/MediaPlayer/settings.py b/lib/python/Plugins/Extensions/MediaPlayer/settings.py
new file mode 100644 (file)
index 0000000..c6d274b
--- /dev/null
@@ -0,0 +1,137 @@
+from Screens.Screen import Screen
+from Screens.HelpMenu import HelpableScreen
+from Components.Label import Label
+from Components.FileList import FileList
+from Components.MediaPlayer import PlayList
+from Components.config import config, getConfigListEntry, ConfigSubsection, configfile, ConfigText, ConfigYesNo
+from Components.ConfigList import ConfigListScreen
+from Components.ActionMap import ActionMap
+
+class ConfigDirectory(ConfigText):
+       def __init__(self, default="", visible_width=60):
+               ConfigText.__init__(self, default, fixed_size = True, visible_width = visible_width)
+       def handleKey(self, key):
+               pass
+       def getValue(self):
+               if self.text == "":
+                       return None
+               else:
+                       return ConfigText.getValue(self)
+       def setValue(self, val):
+               if val == None:
+                       val = ""
+               ConfigText.setValue(self, val)
+       def getMulti(self, selected):
+               if self.text == "":
+                       return ("mtext"[1-selected:], _("List of Storage Devices"), range(0))
+               else:
+                       return ConfigText.getMulti(self, selected)
+               
+config.mediaplayer = ConfigSubsection()
+config.mediaplayer.repeat = ConfigYesNo(default=False)
+config.mediaplayer.savePlaylistOnExit = ConfigYesNo(default=True)
+config.mediaplayer.saveDirOnExit = ConfigYesNo(default=False)
+config.mediaplayer.defaultDir = ConfigDirectory()
+
+class DirectoryBrowser(Screen, HelpableScreen):
+       skin = """
+               <screen name="DirectoryBrowser" position="160,62" size="450,376" title="Directory browser" >
+                       <ePixmap pixmap="skin_default/buttons/red.png" position="10,0" size="140,40" alphatest="on" />
+                       <ePixmap pixmap="skin_default/buttons/green.png" position="300,0" size="140,40" alphatest="on" />
+                       <widget source="key_red" render="Label" position="10,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
+                       <widget source="key_green" render="Label" position="300,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />
+                       <widget name="filelist" position="0,44" size="440,322" scrollbarMode="showOnDemand" />
+               </screen>"""
+       def __init__(self, session, currDir):
+               from Components.Sources.StaticText import StaticText
+               Screen.__init__(self, session)
+               HelpableScreen.__init__(self)
+               
+               self["key_red"] = StaticText(_("Cancel"))
+               self["key_green"] = StaticText(_("Use"))
+
+               self.filelist = FileList(currDir, matchingPattern="")
+               self["filelist"] = self.filelist
+
+               self["FilelistActions"] = ActionMap(["SetupActions", "ColorActions"],
+                       {
+                               "green": self.use,
+                               "red": self.exit,
+                               "ok": self.ok,
+                               "cancel": self.exit
+                       })
+
+       def ok(self):
+               if self.filelist.canDescent():
+                       self.filelist.descent()
+
+       def use(self):
+               if self.filelist.canDescent() and len(self["filelist"].getFilename()) > len(self["filelist"].getCurrentDirectory()):
+                       self.filelist.descent()
+               self.close(self["filelist"].getCurrentDirectory())
+
+       def exit(self):
+               self.close(False)
+
+class MediaPlayerSettings(Screen,ConfigListScreen):
+       skin = """
+               <screen name="MediaPlayerSettings" position="160,150" size="450,200" title="Edit settings">
+                       <ePixmap pixmap="skin_default/buttons/red.png" position="10,0" size="140,40" alphatest="on" />
+                       <ePixmap pixmap="skin_default/buttons/green.png" position="300,0" size="140,40" alphatest="on" />
+                       <widget source="key_red" render="Label" position="10,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />
+                       <widget source="key_green" render="Label" position="300,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />
+                       <widget name="config" position="10,44" size="430,146" />
+               </screen>"""
+
+       def __init__(self, session, parent):
+               from Components.Sources.StaticText import StaticText
+               Screen.__init__(self, session)
+               self["key_red"] = StaticText(_("Cancel"))
+               self["key_green"] = StaticText(_("Save"))
+
+               ConfigListScreen.__init__(self, [])
+               self.parent = parent
+               self.initConfigList()
+               config.mediaplayer.saveDirOnExit.addNotifier(self.initConfigList)
+
+               self["setupActions"] = ActionMap(["SetupActions", "ColorActions"],
+               {
+                   "green": self.save,
+                   "red": self.cancel,
+                   "cancel": self.cancel,
+                   "ok": self.ok,
+               }, -2)
+
+       def initConfigList(self, element=None):
+               print "[initConfigList]", element
+               try:
+                       self.list = []
+                       self.list.append(getConfigListEntry(_("repeat playlist"), config.mediaplayer.repeat))
+                       self.list.append(getConfigListEntry(_("save playlist on exit"), config.mediaplayer.savePlaylistOnExit))
+                       self.list.append(getConfigListEntry(_("save last directory on exit"), config.mediaplayer.saveDirOnExit))
+                       if not config.mediaplayer.saveDirOnExit.getValue():
+                               self.list.append(getConfigListEntry(_("start directory"), config.mediaplayer.defaultDir))
+                       self["config"].setList(self.list)
+               except KeyError:
+                       print "keyError"
+
+       def changedConfigList(self):
+               self.initConfigList()
+
+       def ok(self):
+               if self["config"].getCurrent()[1] == config.mediaplayer.defaultDir:
+                       self.session.openWithCallback(self.DirectoryBrowserClosed, DirectoryBrowser, self.parent.filelist.getCurrentDirectory())
+
+       def DirectoryBrowserClosed(self, path):
+               print "PathBrowserClosed:" + str(path)
+               if path != False:
+                       config.mediaplayer.defaultDir.setValue(path)
+
+       def save(self):
+               for x in self["config"].list:
+                       x[1].save()
+               self.close()
+
+       def cancel(self):
+               self.close()
+
index a9d61ed..ea906f0 100644 (file)
@@ -155,7 +155,7 @@ class ThumbView(Screen):
                                        if not createDir(cachedir):
                                                cachefile = ""
 
-                       ptr = loadPic(self.path + self.thumblist[self.thumbindex], 180, 160, self.aspect, int(config.pic.resize.value), int(config.pic.rotate.value),1, cachefile)
+                       ptr = loadPic(self.path + self.thumblist[self.thumbindex], 180, 160, self.aspect, int(config.pic.resize.value), int(config.pic.rotate.value), 1, cachefile, 1)
                        if ptr != None:
                                self["thumb"+str(self.thumbindex)].show()
                                self["thumb"+str(self.thumbindex)].instance.setPixmap(ptr)
@@ -486,7 +486,7 @@ class picmain(Screen):
                                        if not createDir(cachedir):
                                                cachefile = ""
 
-                       ptr = loadPic(self.filelist.getCurrentDirectory() + self.filelist.getFilename(), 180, 160, self.aspect, int(config.pic.resize.value), 0, 0, cachefile)
+                       ptr = loadPic(self.filelist.getCurrentDirectory() + self.filelist.getFilename(), 180, 160, self.aspect, int(config.pic.resize.value), 0, 0, cachefile, 1)
                        if ptr != None:
                                self["thumbnail"].show()
                                self["thumbnail"].instance.setPixmap(ptr)
index a0db1d6..6df4fce 100644 (file)
@@ -45,6 +45,10 @@ class PluginDescriptor:
        # or return a function which is called with session and the interface name for extended setup of this interface
        WHERE_NETWORKSETUP = 10
        
+       # show up this plugin (or a choicebox with all of them) for long INFO keypress
+       # or return a function which is called with session and the interface name for extended setup of this interface
+       WHERE_EVENTINFO = 11
+
        def __init__(self, name = "Plugin", where = [ ], description = "", icon = None, fnc = None, wakeupfnc = None, internal = False):
                self.name = name
                self.internal = internal
index 469b1dd..97ddf4a 100644 (file)
@@ -8,6 +8,8 @@ DEVICEDB =  \
          "/devices/pci0000:00/0000:00:14.2/usb1/1-1/1-1:1.0/host0/target1:0:0/0:0:0:0": "SD Slot"
        }
 
+hotplugNotifier = [ ]
+
 class Hotplug(Protocol):
        def getUserfriendlyDeviceName(self, phys):
                return DEVICEDB.get(phys, "USB Storage")
@@ -48,6 +50,12 @@ class Hotplug(Protocol):
                                harddiskmanager.addHotplugPartition(dev, self.getUserfriendlyDeviceName(physdevpath))
                        elif media_state == '0':
                                harddiskmanager.removeHotplugPartition(dev)
+               
+               for callback in hotplugNotifier:
+                       try:
+                               callback(dev, media_state)
+                       except AttributeError:
+                               hotplugNotifier.remove(callback)
 
 def autostart(reason, **kwargs):
        if reason == 0:
index 7b3d08f..ec223d3 100644 (file)
@@ -23,6 +23,8 @@ class SecParameterSetup(Screen, ConfigListScreen):
 
                Screen.__init__(self, session)
                list = [
+                       ("Delay after diseqc reset command", config.sec.delay_after_diseqc_reset_cmd),
+                       ("Delay after diseqc peripherial poweron command", config.sec.delay_after_diseqc_peripherial_poweron_cmd),
                        ("Delay after continuous tone change", config.sec.delay_after_continuous_tone_change),
                        ("Delay after last voltage change", config.sec.delay_after_final_voltage_change),
                        ("Delay between diseqc commands", config.sec.delay_between_diseqc_repeats),
index aab2b64..cdaa2c1 100644 (file)
@@ -403,8 +403,8 @@ class InfoBarEPG:
                self.eventView = None
                self["EPGActions"] = HelpableActionMap(self, "InfobarEPGActions",
                        {
-                               "showEventInfo": (self.openEventView, _("show EPG...")),
-                               "showSingleServiceEPG": (self.openSingleServiceEPG, _("show single service EPG...")),
+                               "showEventView": (self.openEventView, _("show EPG...")),
+                               "showEventInfoPlugin": (self.showEventInfoPlugins, _("show single service EPG...")),
                                "showInfobarOrEpgWhenInfobarAlreadyVisible": self.showEventInfoWhenNotVisible,
                        })
 
@@ -489,6 +489,23 @@ class InfoBarEPG:
                ref=self.session.nav.getCurrentlyPlayingServiceReference()
                self.session.open(EPGSelection, ref)
 
+       def showEventInfoPlugins(self):
+               list = []
+               for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EVENTINFO):
+                       list.append((p.name, boundFunction(self.runPlugin, p)))
+               if len(list):
+                       list.append((_("show single service EPG..."), self.openSingleServiceEPG))
+                       self.session.openWithCallback(self.EventInfoPluginChosen, ChoiceBox, title=_("Please choose an extension..."), list = list)
+               else:
+                       self.openSingleServiceEPG()
+                       
+       def runPlugin(self, plugin):
+               plugin(session = self.session, servicelist = self.servicelist)
+               
+       def EventInfoPluginChosen(self, answer):
+               if answer is not None:
+                       answer[1]()
+
        def openSimilarList(self, eventid, refstr):
                self.session.open(EPGSelection, refstr, None, eventid)
 
@@ -1258,7 +1275,6 @@ class InfoBarExtensions:
 from Tools.BoundFunction import boundFunction
 
 # depends on InfoBarExtensions
-from Components.PluginComponent import plugins
 
 class InfoBarPlugins:
        def __init__(self):
index 43b8a8b..61ce356 100644 (file)
@@ -8,12 +8,14 @@ from Tools.BoundFunction import boundFunction
 from time import time
 
 class InputBox(Screen):
-       def __init__(self, session, title = "", windowTitle = _("Input"), **kwargs):
+       def __init__(self, session, title = "", windowTitle = _("Input"), useableChars = None, **kwargs):
                Screen.__init__(self, session)
 
                self["text"] = Label(title)
                self["input"] = Input(**kwargs)
                self.onShown.append(boundFunction(self.setTitle, windowTitle))
+               if useableChars is not None:
+                       self["input"].setUseableChars(useableChars)
 
                self["actions"] = NumberActionMap(["WizardActions", "InputBoxActions", "InputAsciiActions", "KeyboardInputActions"], 
                {
index 7cd6cbf..68d4f77 100644 (file)
@@ -503,3 +503,32 @@ class MovieLocationBox(LocationBox):
        def __init__(self, session, text, dir, minFree = None):
                inhibitDirs = ["/bin", "/boot", "/dev", "/etc", "/lib", "/proc", "/sbin", "/sys", "/usr", "/var"]
                LocationBox.__init__(self, session, text = text, currDir = dir, bookmarks = config.movielist.videodirs, autoAdd = True, editDir = True, inhibitDirs = inhibitDirs, minFree = minFree)
+
+class TimeshiftLocationBox(LocationBox):
+
+       skinName = "LocationBox" # XXX: though we could use a custom skin or inherit the hardcoded one we stick with the original :-)
+
+       def __init__(self, session):
+               inhibitDirs = ["/bin", "/boot", "/dev", "/etc", "/lib", "/proc", "/sbin", "/sys", "/usr", "/var"]
+               LocationBox.__init__(
+                               self,
+                               session,
+                               text = _("Where to save temporary timeshift recordings?"),
+                               currDir = config.usage.timeshift_path.value,
+                               bookmarks = config.usage.allowed_timeshift_paths,
+                               autoAdd = True,
+                               editDir = True,
+                               inhibitDirs = inhibitDirs,
+                               minFree = 1024 # XXX: the same requirement is hardcoded in servicedvb.cpp
+               )
+
+       def cancel(self):
+               config.usage.timeshift_path.cancel()
+               LocationBox.cancel(self)
+
+       def selectConfirmed(self, ret):
+               if ret:
+                       config.usage.timeshift_path.value = self.getPreferredFolder()
+                       config.usage.timeshift_path.save()
+                       LocationBox.selectConfirmed(self, ret)
+
old mode 100644 (file)
new mode 100755 (executable)
index 186c6f3..a3cf70b
@@ -13,5 +13,5 @@ install_PYTHON = \
        TimerSelection.py PictureInPicture.py TimeDateInput.py \
        SubtitleDisplay.py SubservicesQuickzap.py ParentalControlSetup.py NumericalTextInputHelpDialog.py \
        SleepTimerEdit.py Ipkg.py RdsDisplay.py Globals.py DefaultWizard.py \
-       SessionGlobals.py LocationBox.py WizardLanguage.py TaskView.py Rc.py
+       SessionGlobals.py LocationBox.py WizardLanguage.py TaskView.py Rc.py VirtualKeyBoard.py
 
index c05f145..5951653 100644 (file)
@@ -29,6 +29,28 @@ config.movielist.description = ConfigInteger(default=MovieList.HIDE_DESCRIPTION)
 config.movielist.last_videodir = ConfigText(default=resolveFilename(SCOPE_HDD))
 config.movielist.last_timer_videodir = ConfigText(default=resolveFilename(SCOPE_HDD))
 config.movielist.videodirs = ConfigLocations(default=[resolveFilename(SCOPE_HDD)])
+config.movielist.first_tags = ConfigText(default="")
+config.movielist.second_tags = ConfigText(default="")
+
+
+def setPreferredTagEditor(te):
+       global preferredTagEditor
+       try:
+               if preferredTagEditor == None:
+                       preferredTagEditor = te
+                       print "Preferred tag editor changed to ", preferredTagEditor
+               else:
+                       print "Preferred tag editor already set to ", preferredTagEditor
+                       print "ignoring ", te
+       except:
+               preferredTagEditor = te
+               print "Preferred tag editor set to ", preferredTagEditor
+
+def getPreferredTagEditor():
+       global preferredTagEditor
+       return preferredTagEditor
+
+setPreferredTagEditor(None)
 
 class MovieContextMenu(Screen):
        def __init__(self, session, csel, service):
@@ -71,10 +93,8 @@ class MovieContextMenu(Screen):
 
        def sortBy(self, newType):
                config.movielist.moviesort.value = newType
-               self.csel.selectedmovie = self.csel.getCurrent()
                self.csel.setSortType(newType)
                self.csel.reloadList()
-               self.csel.moveTo()
                self.close()
 
        def listType(self, newType):
@@ -123,7 +143,7 @@ class MovieContextMenu(Screen):
                        self.session.openWithCallback(self.close, MessageBox, _("Delete failed!"), MessageBox.TYPE_ERROR)
                else:
                        self.csel["list"].removeService(self.service)
-                       self.csel["freeDiskSpace"].update()
+                       self.csel["freeDiskSpace"].update()
                        self.close()
 
 class SelectionEventInfo:
@@ -149,6 +169,7 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
 
                self.tags = [ ]
                self.selected_tags = None
+               self.selected_tags_ele = None
 
                self.movemode = False
                self.bouquet_mark_edit = False
@@ -178,7 +199,7 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
                # Need list for init
                SelectionEventInfo.__init__(self)
 
-               self["key_red"] = Button(_("All..."))
+               self["key_red"] = Button(_("All"))
                self["key_green"] = Button("")
                self["key_yellow"] = Button("")
                self["key_blue"] = Button("")
@@ -201,9 +222,9 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
                self["ColorActions"] = HelpableActionMap(self, "ColorActions",
                        {
                                "red": (self.showAll, _("show all")),
-                               "green": (self.showTagsFirst, _("show first tag")),
-                               "yellow": (self.showTagsSecond, _("show second tag")),
-                               "blue": (self.showTagsMenu, _("show tag menu")),
+                               "green": (self.showTagsFirst, _("show first selected tag")),
+                               "yellow": (self.showTagsSecond, _("show second selected tag")),
+                               "blue": (self.showTagsSelect, _("show tag menu")),
                        })
 
                self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
@@ -246,11 +267,8 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
                        self.updateDescription()
 
        def updateHDDData(self):
-               self.reloadList()
-               if self.selectedmovie is not None:
-                       self.moveTo()
+               self.reloadList(self.selectedmovie)
                self["waitingtext"].visible = False
-               self.updateTags()
 
        def moveTo(self):
                self["list"].moveTo(self.selectedmovie)
@@ -285,26 +303,29 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
        def updateTags(self):
                # get a list of tags available in this list
                self.tags = list(self["list"].tags)
-               
-               # by default, we do not display any filtering options
-               self.tag_first = ""
-               self.tag_second = ""
-               
-               # when tags are present, however, the first two are 
-               # directly mapped to the second, third ("green", "yellow") buttons
-               if len(self.tags) > 0:
-                       self.tag_first = self.getTagDescription(self.tags[0])
-               
-               if len(self.tags) > 1:
-                       self.tag_second = self.getTagDescription(self.tags[1])
-               
+
+               if not self.tags:
+                       # by default, we do not display any filtering options
+                       self.tag_first = ""
+                       self.tag_second = ""
+               else:
+                       tmp = config.movielist.first_tags.value
+                       if tmp in self.tags:
+                               self.tag_first = tmp
+                       else:
+                               self.tag_first = "<"+_("Tag 1")+">"
+                       tmp = config.movielist.second_tags.value
+                       if tmp in self.tags:
+                               self.tag_second = tmp
+                       else:
+                               self.tag_second = "<"+_("Tag 2")+">"
                self["key_green"].text = self.tag_first
                self["key_yellow"].text = self.tag_second
                
                # the rest is presented in a list, available on the
                # fourth ("blue") button
-               if len(self.tags) > 2:
-                       self["key_blue"].text = _("Other...")
+               if self.tags:
+                       self["key_blue"].text = _("Tags")+"..."
                else:
                        self["key_blue"].text = ""
 
@@ -317,20 +338,26 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
        def setSortType(self, type):
                self["list"].setSortType(type)
 
-       def reloadList(self):
+       def reloadList(self, sel = None, home = False):
                if not pathExists(config.movielist.last_videodir.value):
                        path = resolveFilename(SCOPE_HDD)
                        config.movielist.last_videodir.value = path
                        config.movielist.last_videodir.save()
                        self.current_ref = eServiceReference("2:0:1:0:0:0:0:0:0:0:" + path)
                        self["freeDiskSpace"].path = path
+               if sel is None:
+                       sel = self.getCurrent()
                self["list"].reload(self.current_ref, self.selected_tags)
                title = _("Recorded files...")
-               if self.selected_tags is not None:
-                       title += " - " + ','.join(self.selected_tags)
                if config.usage.setup_level.index >= 2: # expert+
                        title += "  " + config.movielist.last_videodir.value
+               if self.selected_tags is not None:
+                       title += " - " + ','.join(self.selected_tags)
                self.setTitle(title)
+               if not (sel and self["list"].moveTo(sel)):
+                       if home:
+                               self["list"].moveToIndex(0)
+               self.updateTags()
                self["freeDiskSpace"].update()
 
        def doPathSelect(self):
@@ -348,7 +375,7 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
                                config.movielist.last_videodir.save()
                                self.current_ref = eServiceReference("2:0:1:0:0:0:0:0:0:0:" + res)
                                self["freeDiskSpace"].path = res
-                               self.reloadList()
+                               self.reloadList(home = True)
                        else:
                                self.session.open(
                                        MessageBox,
@@ -358,35 +385,41 @@ class MovieSelection(Screen, HelpableScreen, SelectionEventInfo):
                                        )
 
        def showAll(self):
+               self.selected_tags_ele = None
                self.selected_tags = None
-               self.reloadList()
+               self.reloadList(home = True)
 
-       def showTagsN(self, n):
-               if len(self.tags) < n:
+       def showTagsN(self, tagele):
+               if not self.tags:
                        self.showTagWarning()
+               elif not tagele or self.selected_tags_ele == tagele or not tagele.value in self.tags:
+                       self.showTagsMenu(tagele)
                else:
-                       print "select tag #%d, %s, %s" % (n, self.tags[n - 1], ','.join(self.tags))
-                       self.selected_tags = set([self.tags[n - 1]])
-                       self.reloadList()
+                       self.selected_tags_ele = tagele
+                       self.selected_tags = set([tagele.value])
+                       self.reloadList(home = True)
 
        def showTagsFirst(self):
-               self.showTagsN(1)
+               self.showTagsN(config.movielist.first_tags)
 
        def showTagsSecond(self):
-               self.showTagsN(2)
+               self.showTagsN(config.movielist.second_tags)
+
+       def showTagsSelect(self):
+               self.showTagsN(None)
 
        def tagChosen(self, tag):
                if tag is not None:
                        self.selected_tags = set([tag[0]])
-                       self.reloadList()
+                       if self.selected_tags_ele:
+                               self.selected_tags_ele.value = tag[0]
+                               self.selected_tags_ele.save()
+                       self.reloadList(home = True)
 
-       def showTagsMenu(self):
-               if len(self.tags) < 3:
-                       self.showTagWarning()
-               else:
-                       list = [(tag, self.getTagDescription(tag)) for tag in self.tags ]
-                       self.session.openWithCallback(self.tagChosen, ChoiceBox, title=_("Please select keyword to filter..."), list = list)
+       def showTagsMenu(self, tagele):
+               self.selected_tags_ele = tagele
+               list = [(tag, self.getTagDescription(tag)) for tag in self.tags ]
+               self.session.openWithCallback(self.tagChosen, ChoiceBox, title=_("Please select tag to filter..."), list = list)
 
        def showTagWarning(self):
-               # TODO
-               self.session.open(MessageBox, _("You need to define some keywords first!\nPress the menu-key to define keywords.\nDo you want to define keywords now?"), MessageBox.TYPE_ERROR)
+               self.session.open(MessageBox, _("No tags are set on these movies."), MessageBox.TYPE_ERROR)
old mode 100644 (file)
new mode 100755 (executable)
index 862bce4..ea2d17e
@@ -1,25 +1,25 @@
 from Screen import Screen
-from Components.ActionMap import ActionMap,NumberActionMap
 from Screens.MessageBox import MessageBox
 from Screens.InputBox import InputBox
 from Screens.Standby import *
+from Screens.VirtualKeyBoard import VirtualKeyBoard
+from Screens.HelpMenu import HelpableScreen
 from Components.Network import iNetwork
 from Components.Label import Label,MultiColorLabel
 from Components.Pixmap import Pixmap,MultiPixmap
 from Components.MenuList import MenuList
-from Components.config import config, ConfigYesNo, ConfigIP, NoSave, ConfigText, ConfigSelection, getConfigListEntry, ConfigNothing
+from Components.config import config, ConfigYesNo, ConfigIP, NoSave, ConfigText, ConfigPassword, ConfigSelection, getConfigListEntry, ConfigNothing
 from Components.ConfigList import ConfigListScreen
 from Components.PluginComponent import plugins
 from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmapAlphaTest
+from Components.ActionMap import ActionMap, NumberActionMap, HelpableActionMap
+from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_SKIN_IMAGE
+from Tools.LoadPixmap import LoadPixmap
 from Plugins.Plugin import PluginDescriptor
-from enigma import eTimer
+from enigma import eTimer, ePoint, eSize, RT_HALIGN_LEFT, eListboxPythonMultiContent, gFont
 from os import path as os_path, system as os_system, unlink
 from re import compile as re_compile, search as re_search
-from Tools.Directories import resolveFilename, SCOPE_PLUGINS
 
-from Tools.Directories import SCOPE_SKIN_IMAGE,SCOPE_PLUGINS, resolveFilename
-from Tools.LoadPixmap import LoadPixmap
-from enigma import RT_HALIGN_LEFT, eListboxPythonMultiContent, gFont
 
 class InterfaceList(MenuList):
        def __init__(self, list, enableWrapAround=False):
@@ -30,11 +30,13 @@ class InterfaceList(MenuList):
 def InterfaceEntryComponent(index,name,default,active ):
        res = [ (index) ]
        res.append(MultiContentEntryText(pos=(80, 5), size=(430, 25), font=0, text=name))
-       if default is True:
-               png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue.png"))
-       if default is False:
-               png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue_off.png"))
-       res.append(MultiContentEntryPixmapAlphaTest(pos=(10, 5), size=(25, 25), png = png))
+       num_configured_if = len(iNetwork.getConfiguredAdapters())
+       if num_configured_if >= 2:
+               if default is True:
+                       png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue.png"))
+               if default is False:
+                       png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/buttons/button_blue_off.png"))
+               res.append(MultiContentEntryPixmapAlphaTest(pos=(10, 5), size=(25, 25), png = png))
        if active is True:
                png2 = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/icons/lock_on.png"))
        if active is False:
@@ -43,41 +45,64 @@ def InterfaceEntryComponent(index,name,default,active ):
        return res
 
 
-class NetworkAdapterSelection(Screen):
+class NetworkAdapterSelection(Screen,HelpableScreen):
        def __init__(self, session):
                Screen.__init__(self, session)
-
-               self.wlan_errortext = _("No working wireless networkadapter found.\nPlease verify that you have attached a compatible WLAN USB Stick and your Network is configured correctly.")
-               self.lan_errortext = _("No working local networkadapter found.\nPlease verify that you have attached a network cable and your Network is configured correctly.")
+               HelpableScreen.__init__(self)
+               
+               self.wlan_errortext = _("No working wireless network adapter found.\nPlease verify that you have attached a compatible WLAN device and your network is configured correctly.")
+               self.lan_errortext = _("No working local network adapter found.\nPlease verify that you have attached a network cable and your network is configured correctly.")
+               self.oktext = _("Press OK on your remote control to continue.")
+               self.restartLanRef = None
                
                self["ButtonBluetext"] = Label(_("Set as default Interface"))
+               self["ButtonBlue"] = Pixmap()
                self["ButtonRedtext"] = Label(_("Close"))
                self["introduction"] = Label(_("Press OK to edit the settings."))
                
                self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getAdapterList()]
-
+               
                if len(self.adapters) == 0:
                        self.onFirstExecBegin.append(self.NetworkFallback)
-
+                       
+               self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
+                       {
+                       "cancel": (self.close, _("exit network interface list")),
+                       "ok": (self.okbuttonClick, _("select interface")),
+                       })
+
+               self["ColorActions"] = HelpableActionMap(self, "ColorActions",
+                       {
+                       "red": (self.close, _("exit network interface list")),  
+                       })
+               
+               self["DefaultInterfaceAction"] = HelpableActionMap(self, "ColorActions",
+                       {
+                       "blue": (self.setDefaultInterface, [_("Set interface as default Interface"),_("* Only available if more than one interface is active.")] ),     
+                       })
+               
                self.list = []
                self["list"] = InterfaceList(self.list)
                self.updateList()
-               self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
-               {
-                       "ok": self.okbuttonClick,
-                       "cancel": self.close,
-                       "blue": self.setDefaultInterface,                       
-                       "red": self.close
-               }, -2)
-
+               
                if len(self.adapters) == 1:
                        self.onFirstExecBegin.append(self.okbuttonClick)
+               self.onClose.append(self.cleanup)
+
 
        def updateList(self):
-               iNetwork.getInterfaces()
                self.list = []
                default_gw = None
-               num_configured_if = len(iNetwork.configuredInterfaces)
+               num_configured_if = len(iNetwork.getConfiguredAdapters())
+               if num_configured_if >= 2:
+                       self["ButtonBlue"].show()
+                       self["ButtonBluetext"].show()
+                       self["DefaultInterfaceAction"].setEnabled(True)
+               else:
+                       self["ButtonBlue"].hide()
+                       self["ButtonBluetext"].hide()
+                       self["DefaultInterfaceAction"].setEnabled(False)
+
                if num_configured_if < 2 and os_path.exists("/etc/default_gw"):
                        unlink("/etc/default_gw")
                        
@@ -86,7 +111,7 @@ class NetworkAdapterSelection(Screen):
                        result = fp.read()
                        fp.close()
                        default_gw = result
-
+                                       
                if len(self.adapters) == 0: # no interface available => display only eth0
                        self.list.append(InterfaceEntryComponent("eth0",iNetwork.getFriendlyAdapterName('eth0'),True,True ))
                else:
@@ -106,24 +131,22 @@ class NetworkAdapterSelection(Screen):
                selection = self["list"].getCurrent()
                num_if = len(self.list)
                old_default_gw = None
+               num_configured_if = len(iNetwork.getConfiguredAdapters())
                if os_path.exists("/etc/default_gw"):
                        fp = open('/etc/default_gw', 'r')
                        old_default_gw = fp.read()
                        fp.close()
-               if num_if > 1 and (not old_default_gw or old_default_gw != selection[0]):
+               if num_configured_if > 1 and (not old_default_gw or old_default_gw != selection[0]):
                        fp = open('/etc/default_gw', 'w+')
                        fp.write(selection[0])
                        fp.close()
-                       iNetwork.restartNetwork()
-                       self.updateList()
-               elif old_default_gw and num_if < 2:
+                       self.restartLan()
+               elif old_default_gw and num_configured_if < 2:
                        unlink("/etc/default_gw")
-                       iNetwork.restartNetwork()
-                       self.updateList()
+                       self.restartLan()
 
        def okbuttonClick(self):
                selection = self["list"].getCurrent()
-               print "selection",selection
                if selection is not None:
                        self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, selection[0])
 
@@ -134,25 +157,48 @@ class NetworkAdapterSelection(Screen):
                        self.updateList()
 
        def NetworkFallback(self):
-               if iNetwork.configuredInterfaces.has_key('wlan0') is True:
+               if iNetwork.configuredNetworkAdapters.has_key('wlan0') is True:
                        self.session.openWithCallback(self.ErrorMessageClosed, MessageBox, self.wlan_errortext, type = MessageBox.TYPE_INFO,timeout = 10)
-               if iNetwork.configuredInterfaces.has_key('ath0') is True:
+               if iNetwork.configuredNetworkAdapters.has_key('ath0') is True:
                        self.session.openWithCallback(self.ErrorMessageClosed, MessageBox, self.wlan_errortext, type = MessageBox.TYPE_INFO,timeout = 10)
                else:
                        self.session.openWithCallback(self.ErrorMessageClosed, MessageBox, self.lan_errortext, type = MessageBox.TYPE_INFO,timeout = 10)
 
        def ErrorMessageClosed(self, *ret):
-               if iNetwork.configuredInterfaces.has_key('wlan0') is True:
+               if iNetwork.configuredNetworkAdapters.has_key('wlan0') is True:
                        self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, 'wlan0')
-               elif iNetwork.configuredInterfaces.has_key('ath0') is True:
+               elif iNetwork.configuredNetworkAdapters.has_key('ath0') is True:
                        self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, 'ath0')
                else:
                        self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, 'eth0')
 
-class NameserverSetup(Screen, ConfigListScreen):
+       def cleanup(self):
+               iNetwork.stopLinkStateConsole()
+               iNetwork.stopRestartConsole()
+               iNetwork.stopGetInterfacesConsole()
+
+       def restartLan(self):
+               iNetwork.restartNetwork(self.restartLanDataAvail)
+               self.restartLanRef = self.session.openWithCallback(self.restartfinishedCB, MessageBox, _("Please wait while we configure your network..."), type = MessageBox.TYPE_INFO, enable_input = False)
+                       
+       def restartLanDataAvail(self, data):
+               if data is True:
+                       iNetwork.getInterfaces(self.getInterfacesDataAvail)
+
+       def getInterfacesDataAvail(self, data):
+               if data is True:
+                       self.restartLanRef.close(True)
+
+       def restartfinishedCB(self,data):
+               if data is True:
+                       self.updateList()
+                       self.session.open(MessageBox, _("Finished configuring your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False)
+
+
+class NameserverSetup(Screen, ConfigListScreen, HelpableScreen):
        def __init__(self, session):
                Screen.__init__(self, session)
-               iNetwork.getInterfaces()
+               HelpableScreen.__init__(self)
                self.backupNameserverList = iNetwork.getNameserverList()[:]
                print "backup-list:", self.backupNameserverList
                
@@ -162,14 +208,23 @@ class NameserverSetup(Screen, ConfigListScreen):
                self["introduction"] = Label(_("Press OK to activate the settings."))
                self.createConfig()
                
-               self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
+               self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
+                       {
+                       "cancel": (self.cancel, _("exit nameserver configuration")),
+                       "ok": (self.ok, _("activate current configuration")),
+                       })
+               
+               self["ColorActions"] = HelpableActionMap(self, "ColorActions",
+                       {
+                       "red": (self.cancel, _("exit nameserver configuration")),
+                       "green": (self.add, _("add a nameserver entry")),
+                       "yellow": (self.remove, _("remove a nameserver entry")),
+                       })
+               
+               self["actions"] = NumberActionMap(["SetupActions"],
                {
                        "ok": self.ok,
-                       "cancel": self.cancel,
-                       "red": self.cancel,
-                       "green": self.add,
-                       "yellow": self.remove
-               }, -2)
+               }, -2)          
                
                self.list = []
                ConfigListScreen.__init__(self, self.list)
@@ -222,31 +277,55 @@ class NameserverSetup(Screen, ConfigListScreen):
                        self.createConfig()
                        self.createSetup()
        
-class AdapterSetup(Screen, ConfigListScreen):
-       def __init__(self, session, iface,essid=None, aplist=None):
+class AdapterSetup(Screen, ConfigListScreen, HelpableScreen):
+       def __init__(self, session, networkinfo, essid=None, aplist=None):
                Screen.__init__(self, session)
+               HelpableScreen.__init__(self)
                self.session = session
-               self.iface = iface
-               self.essid = essid
-               self.aplist = aplist
+               if isinstance(networkinfo, (list, tuple)):
+                       self.iface = networkinfo[0]
+                       self.essid = networkinfo[1]
+                       self.aplist = networkinfo[2]
+               else:
+                       self.iface = networkinfo
+                       self.essid = essid
+                       self.aplist = aplist
                self.extended = None
+               self.applyConfigRef = None
+               self.finished_cb = None
+               self.oktext = _("Press OK on your remote control to continue.")
                self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up")
-               iNetwork.getInterfaces()
 
                self.createConfig()
-               
-               self["actions"] = NumberActionMap(["SetupActions", "ColorActions"],
+
+               self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
+                       {
+                       "cancel": (self.cancel, _("exit network adapter setup menu")),
+                       "ok": (self.ok, _("select menu entry")),
+                       })
+
+               self["ColorActions"] = HelpableActionMap(self, "ColorActions",
+                       {
+                       "red": (self.cancel, _("exit network adapter configuration")),
+                       "blue": (self.KeyBlue, _("open nameserver configuration")),
+                       })
+
+               self["VirtualKB"] = HelpableActionMap(self, "ColorActions",
+                       {
+                       "green": (self.KeyGreen, [_("open virtual keyboard input help"),_("* Only available when entering hidden SSID or network key")] ),                                      
+                       })
+
+               self["actions"] = NumberActionMap(["SetupActions"],
                {
                        "ok": self.ok,
-                       "cancel": self.cancel,
-                       "red": self.cancel,
-                       "blue": self.KeyBlue,
                }, -2)
                
+               
                self.list = []
                ConfigListScreen.__init__(self, self.list,session = self.session)
                self.createSetup()
                self.onLayoutFinish.append(self.layoutFinished)
+               self.onClose.append(self.cleanup)
                
                self["DNS1text"] = Label(_("Primary DNS"))
                self["DNS2text"] = Label(_("Secondary DNS"))
@@ -271,76 +350,105 @@ class AdapterSetup(Screen, ConfigListScreen):
                self["ButtonRedtext"] = Label(_("Close"))
                self["ButtonBlue"] = Pixmap()
                self["ButtonBluetext"] = Label(_("Edit DNS"))
+               self["ButtonGreen"] = Pixmap()
+               self["VKeyIcon"] = Pixmap()
+               self["HelpWindow"] = Pixmap()
 
        def layoutFinished(self):
                self["DNS1"].setText(self.primaryDNS.getText())
                self["DNS2"].setText(self.secondaryDNS.getText())
                if self.ipConfigEntry.getText() is not None:
-                       self["IP"].setText(self.ipConfigEntry.getText())
+                       if self.ipConfigEntry.getText() == "0.0.0.0":
+                               self["IP"].setText(_("N/A"))
+                       else:   
+                               self["IP"].setText(self.ipConfigEntry.getText())
+               else:
+                       self["IP"].setText(_("N/A"))
+               if self.netmaskConfigEntry.getText() is not None:
+                       if self.netmaskConfigEntry.getText() == "0.0.0.0":
+                                       self["Mask"].setText(_("N/A"))
+                       else:   
+                               self["Mask"].setText(self.netmaskConfigEntry.getText())
                else:
-                       self["IP"].setText([0,0,0,0])
-               self["Mask"].setText(self.netmaskConfigEntry.getText())
+                       self["IP"].setText(_("N/A"))                    
                if iNetwork.getAdapterAttribute(self.iface, "gateway"):
-                       self["Gateway"].setText(self.gatewayConfigEntry.getText())
+                       if self.gatewayConfigEntry.getText() == "0.0.0.0":
+                               self["Gateway"].setText(_("N/A"))
+                       else:
+                               self["Gateway"].setText(self.gatewayConfigEntry.getText())
                else:
                        self["Gateway"].hide()
                        self["Gatewaytext"].hide()
                self["Adapter"].setText(iNetwork.getFriendlyAdapterName(self.iface))
+               self["ButtonGreen"].hide()
+               self["VKeyIcon"].hide()
+               self["VirtualKB"].setEnabled(False)
+               self["HelpWindow"].hide()
 
        def createConfig(self):
                self.InterfaceEntry = None
                self.dhcpEntry = None
                self.gatewayEntry = None
-               self.SSIDscan = None
+               self.hiddenSSID = None
                self.wlanSSID = None
-               self.manualwlanSSID = None
                self.encryptionEnabled = None
                self.encryptionKey = None
+               self.encryptionType = None
                self.nwlist = None
+               self.encryptionlist = None
+               self.weplist = None
                self.wsconfig = None
                self.default = None
                
                if self.iface == "wlan0" or self.iface == "ath0" :
                        from Plugins.SystemPlugins.WirelessLan.Wlan import wpaSupplicant,Wlan
+                       self.w = Wlan(self.iface)
                        self.ws = wpaSupplicant()
-                       list = []
-                       list.append(_("WEP"))
-                       list.append(_("WPA"))
-                       list.append(_("WPA2"))
+                       self.encryptionlist = []
+                       self.encryptionlist.append(("WEP", _("WEP")))
+                       self.encryptionlist.append(("WPA", _("WPA")))
+                       self.encryptionlist.append(("WPA2", _("WPA2")))
+                       self.encryptionlist.append(("WPA/WPA2", _("WPA or WPA2")))
+                       self.weplist = []
+                       self.weplist.append("ASCII")
+                       self.weplist.append("HEX")
                        if self.aplist is not None:
                                self.nwlist = self.aplist
                                self.nwlist.sort(key = lambda x: x[0])
                        else:
                                self.nwlist = []
-                               self.w = None
                                self.aps = None
                                try:
-                                       self.w = Wlan(self.iface)
                                        self.aps = self.w.getNetworkList()
                                        if self.aps is not None:
                                                print "[NetworkSetup.py] got Accespoints!"
-                                               for ap in aps:
-                                                       a = aps[ap]
+                                               for ap in self.aps:
+                                                       a = self.aps[ap]
                                                        if a['active']:
                                                                if a['essid'] == "":
                                                                        a['essid'] = a['bssid']
-                                                               self.nwlist.append( a['essid'])
+                                                               self.nwlist.append((a['essid'],a['essid']))
                                        self.nwlist.sort(key = lambda x: x[0])
                                except:
-                                       self.nwlist.append("No Networks found")
+                                       self.nwlist.append(("No Networks found",_("No Networks found")))
 
                        self.wsconfig = self.ws.loadConfig()
-                       self.default = self.essid or self.wsconfig['ssid']
-                       if self.default not in self.nwlist:
-                               self.nwlist.append(self.default)
-                       config.plugins.wlan.essidscan = NoSave(ConfigYesNo(default = self.wsconfig['ssidscan']))
-                       if self.wsconfig['ssidscan'] is True:
-                               config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default ))
+                       if self.essid is not None: # ssid from wlan scan
+                               self.default = self.essid
                        else:
-                               config.plugins.wlan.essid = NoSave(ConfigText(default = self.default, visible_width = 50, fixed_size = False))
+                               self.default = self.wsconfig['ssid']
+                               
+                       if "hidden..." not in self.nwlist:
+                               self.nwlist.append(("hidden...",_("hidden network")))
+                       if self.default not in self.nwlist:
+                               self.nwlist.append((self.default,self.default))
+                       config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default ))
+                       config.plugins.wlan.hiddenessid = NoSave(ConfigText(default = self.wsconfig['hiddenessid'], visible_width = 50, fixed_size = False))
+
                        config.plugins.wlan.encryption.enabled = NoSave(ConfigYesNo(default = self.wsconfig['encryption'] ))
-                       config.plugins.wlan.encryption.type = NoSave(ConfigSelection(list, default = self.wsconfig['encryption_type'] ))
-                       config.plugins.wlan.encryption.psk = NoSave(ConfigText(default = self.wsconfig['key'], visible_width = 50, fixed_size = False))
+                       config.plugins.wlan.encryption.type = NoSave(ConfigSelection(self.encryptionlist, default = self.wsconfig['encryption_type'] ))
+                       config.plugins.wlan.encryption.wepkeytype = NoSave(ConfigSelection(self.weplist, default = self.wsconfig['encryption_wepkeytype'] ))
+                       config.plugins.wlan.encryption.psk = NoSave(ConfigPassword(default = self.wsconfig['key'], visible_width = 50, fixed_size = False))
                
                self.activateInterfaceEntry = NoSave(ConfigYesNo(default=iNetwork.getAdapterAttribute(self.iface, "up") or False))
                self.dhcpConfigEntry = NoSave(ConfigYesNo(default=iNetwork.getAdapterAttribute(self.iface, "dhcp") or False))
@@ -382,26 +490,56 @@ class AdapterSetup(Screen, ConfigListScreen):
                                                        self.configStrings = p.__call__["configStrings"]
                                                else:
                                                        self.configStrings = None
-                                               self.SSIDscan = getConfigListEntry(_("Automatic SSID lookup"), config.plugins.wlan.essidscan)
-                                               self.list.append(self.SSIDscan)
-                                               self.wlanSSID = getConfigListEntry(_("Network SSID"), config.plugins.wlan.essid)
-                                               self.list.append(self.wlanSSID)
+                                               if config.plugins.wlan.essid.value == 'hidden...':
+                                                       self.wlanSSID = getConfigListEntry(_("Network SSID"), config.plugins.wlan.essid)
+                                                       self.list.append(self.wlanSSID)
+                                                       self.hiddenSSID = getConfigListEntry(_("Hidden network SSID"), config.plugins.wlan.hiddenessid)
+                                                       self.list.append(self.hiddenSSID)
+                                               else:
+                                                       self.wlanSSID = getConfigListEntry(_("Network SSID"), config.plugins.wlan.essid)
+                                                       self.list.append(self.wlanSSID)
                                                self.encryptionEnabled = getConfigListEntry(_("Encryption"), config.plugins.wlan.encryption.enabled)
                                                self.list.append(self.encryptionEnabled)
                                                
                                                if config.plugins.wlan.encryption.enabled.value:
-                                                       self.list.append(getConfigListEntry(_("Encryption Type"), config.plugins.wlan.encryption.type))
-                                                       self.encryptionKey = getConfigListEntry(_("Encryption Key"), config.plugins.wlan.encryption.psk)                                                
-                                                       self.list.append(self.encryptionKey)
+                                                       self.encryptionType = getConfigListEntry(_("Encryption Type"), config.plugins.wlan.encryption.type)
+                                                       self.list.append(self.encryptionType)
+                                                       if config.plugins.wlan.encryption.type.value == 'WEP':
+                                                               self.list.append(getConfigListEntry(_("Encryption Keytype"), config.plugins.wlan.encryption.wepkeytype))
+                                                               self.encryptionKey = getConfigListEntry(_("Encryption Key"), config.plugins.wlan.encryption.psk)                                                
+                                                               self.list.append(self.encryptionKey)                                                    
+                                                       else:                                                           
+                                                               self.encryptionKey = getConfigListEntry(_("Encryption Key"), config.plugins.wlan.encryption.psk)                                                
+                                                               self.list.append(self.encryptionKey)
+       
                
                self["config"].list = self.list
                self["config"].l.setList(self.list)
+               if not self.selectionChanged in self["config"].onSelectionChanged:
+                       self["config"].onSelectionChanged.append(self.selectionChanged)
 
        def KeyBlue(self):
                self.session.openWithCallback(self.NameserverSetupClosed, NameserverSetup)
 
+       def KeyGreen(self):
+               if self.iface == "wlan0" or self.iface == "ath0" :      
+                       if self["config"].getCurrent() == self.hiddenSSID:
+                               if config.plugins.wlan.essid.value == 'hidden...':
+                                       self.session.openWithCallback(self.VirtualKeyBoardSSIDCallback, VirtualKeyBoard, title = (_("Enter WLAN network name/SSID:")), text = config.plugins.wlan.essid.value)
+                       if self["config"].getCurrent() == self.encryptionKey:
+                               self.session.openWithCallback(self.VirtualKeyBoardKeyCallback, VirtualKeyBoard, title = (_("Enter WLAN passphrase/key:")), text = config.plugins.wlan.encryption.psk.value)
+       
+       def VirtualKeyBoardSSIDCallback(self, callback = None):
+               if callback is not None and len(callback):
+                       config.plugins.wlan.hiddenessid = NoSave(ConfigText(default = callback, visible_width = 50, fixed_size = False))
+                       self.createSetup()
+                       
+       def VirtualKeyBoardKeyCallback(self, callback = None):
+               if callback is not None and len(callback):
+                       config.plugins.wlan.encryption.psk = NoSave(ConfigPassword(default = callback, visible_width = 50, fixed_size = False))
+                       self.createSetup()
+                       
        def newConfig(self):
-               print self["config"].getCurrent()
                if self["config"].getCurrent() == self.InterfaceEntry:
                        self.createSetup()
                if self["config"].getCurrent() == self.dhcpEntry:
@@ -409,15 +547,12 @@ class AdapterSetup(Screen, ConfigListScreen):
                if self["config"].getCurrent() == self.gatewayEntry:
                        self.createSetup()
                if self.iface == "wlan0" or self.iface == "ath0" :      
-                       if self["config"].getCurrent() == self.SSIDscan:
-                               if config.plugins.wlan.essidscan.value is True:
-                                       config.plugins.wlan.essid = NoSave(ConfigSelection(self.nwlist, default = self.default ))
-                               else:
-                                       config.plugins.wlan.essid = NoSave(ConfigText(default = self.default, visible_width = 50, fixed_size = False))
+                       if self["config"].getCurrent() == self.wlanSSID:
                                self.createSetup()
                        if self["config"].getCurrent() == self.encryptionEnabled:
                                self.createSetup()
-               
+                       if self["config"].getCurrent() == self.encryptionType:
+                               self.createSetup()      
        def keyLeft(self):
                ConfigListScreen.keyLeft(self)
                self.newConfig()
@@ -426,36 +561,109 @@ class AdapterSetup(Screen, ConfigListScreen):
                ConfigListScreen.keyRight(self)
                self.newConfig()
 
+       def selectionChanged(self):
+               current = self["config"].getCurrent()
+               if current == self.hiddenSSID and config.plugins.wlan.essid.value == 'hidden...':
+                       helpwindowpos = self["HelpWindow"].getPosition()
+                       if current[1].help_window.instance is not None:
+                               current[1].help_window.instance.move(ePoint(helpwindowpos[0],helpwindowpos[1]))
+                               self["ButtonGreen"].show()
+                               self["VKeyIcon"].show()
+                               self["VirtualKB"].setEnabled(True)                      
+               elif current == self.encryptionKey and config.plugins.wlan.encryption.enabled.value:
+                       helpwindowpos = self["HelpWindow"].getPosition()
+                       if current[1].help_window.instance is not None:
+                               current[1].help_window.instance.move(ePoint(helpwindowpos[0],helpwindowpos[1]))
+                               self["ButtonGreen"].show()
+                               self["VKeyIcon"].show()
+                               self["VirtualKB"].setEnabled(True)                      
+               else:   
+                       self["ButtonGreen"].hide()
+                       self["VKeyIcon"].hide()
+                       self["VirtualKB"].setEnabled(False)
+
        def ok(self):
-               iNetwork.setAdapterAttribute(self.iface, "up", self.activateInterfaceEntry.value)
-               iNetwork.setAdapterAttribute(self.iface, "dhcp", self.dhcpConfigEntry.value)
-               iNetwork.setAdapterAttribute(self.iface, "ip", self.ipConfigEntry.value)
-               iNetwork.setAdapterAttribute(self.iface, "netmask", self.netmaskConfigEntry.value)
-               if self.hasGatewayConfigEntry.value:
-                       iNetwork.setAdapterAttribute(self.iface, "gateway", self.gatewayConfigEntry.value)
+               current = self["config"].getCurrent()
+               if current == self.hiddenSSID and config.plugins.wlan.essid.value == 'hidden...':
+                       if current[1].help_window.instance is not None:
+                               current[1].help_window.instance.hide()
+               elif current == self.encryptionKey and config.plugins.wlan.encryption.enabled.value:
+                       if current[1].help_window.instance is not None:
+                               current[1].help_window.instance.hide()
+               self.session.openWithCallback(self.applyConfig, MessageBox, (_("Are you sure you want to activate this network configuration?\n\n") + self.oktext ) )
+
+       def applyConfig(self, ret = False):
+               if (ret == True):
+                       iNetwork.setAdapterAttribute(self.iface, "up", self.activateInterfaceEntry.value)
+                       iNetwork.setAdapterAttribute(self.iface, "dhcp", self.dhcpConfigEntry.value)
+                       iNetwork.setAdapterAttribute(self.iface, "ip", self.ipConfigEntry.value)
+                       iNetwork.setAdapterAttribute(self.iface, "netmask", self.netmaskConfigEntry.value)
+                       if self.hasGatewayConfigEntry.value:
+                               iNetwork.setAdapterAttribute(self.iface, "gateway", self.gatewayConfigEntry.value)
+                       else:
+                               iNetwork.removeAdapterAttribute(self.iface, "gateway")
+                       if self.extended is not None and self.configStrings is not None:
+                               iNetwork.setAdapterAttribute(self.iface, "configStrings", self.configStrings(self.iface))
+                               self.ws.writeConfig()
+                       if self.activateInterfaceEntry.value is False:
+                               iNetwork.deactivateInterface(self.iface)
+                       iNetwork.writeNetworkConfig()                   
+                       iNetwork.restartNetwork(self.applyConfigDataAvail)
+                       self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait for activation of your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False)
                else:
-                       iNetwork.removeAdapterAttribute(self.iface, "gateway")
-               if self.extended is not None and self.configStrings is not None:
-                       iNetwork.setAdapterAttribute(self.iface, "configStrings", self.configStrings(self.iface))
-                       self.ws.writeConfig()
-               if self.activateInterfaceEntry.value is False:
-                       iNetwork.deactivateInterface(self.iface)
-               iNetwork.writeNetworkConfig()
-               iNetwork.deactivateNetworkConfig()
-               iNetwork.activateNetworkConfig()
-               self.close()
+                       self.cancel()
+                       
+       def applyConfigDataAvail(self, data):
+               if data is True:
+                       iNetwork.getInterfaces(self.getInterfacesDataAvail)
+
+       def getInterfacesDataAvail(self, data):
+               if data is True:
+                       self.applyConfigRef.close(True)
+
+       def applyConfigfinishedCB(self,data):
+               if data is True:
+                       num_configured_if = len(iNetwork.getConfiguredAdapters())
+                       if num_configured_if >= 2:
+                               self.session.openWithCallback(self.secondIfaceFoundCB, MessageBox, _("Your network configuration has been activated.\nA second configured interface has been found.\n\nDo you want to disable the second network interface?"), default = True)
+                       else:
+                               if self.finished_cb:
+                                       self.session.openWithCallback(lambda x : self.finished_cb(), MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10)
+                               else:
+                                       self.session.openWithCallback(self.ConfigfinishedCB, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10)
+       
+       def secondIfaceFoundCB(self,data):
+               if data is False:
+                       self.close('ok')
+               else:
+                       configuredInterfaces = iNetwork.getConfiguredAdapters()
+                       for interface in configuredInterfaces:
+                               if interface == self.iface:
+                                       continue
+                               iNetwork.setAdapterAttribute(interface, "up", False)
+                               iNetwork.deactivateInterface(interface)
+                               self.applyConfig(True)
+                       
+       def ConfigfinishedCB(self,data):
+               if data is not None:
+                       if data is True:
+                               self.close('ok')
 
        def cancel(self):
-               iNetwork.setAdapterAttribute(self.iface, "up", self.oldInterfaceState)
-               self.activateInterfaceEntry.value = self.oldInterfaceState
-               if self.activateInterfaceEntry.value is False:
-                       iNetwork.deactivateInterface(self.iface)
-               iNetwork.getInterfaces()
-               self.close()
-
-       def run(self):
+               if self.oldInterfaceState is False:
+                       iNetwork.deactivateInterface(self.iface,self.cancelCB)
+               else:
+                       self.close('cancel')
+
+       def cancelCB(self,data):                        
+               if data is not None:
+                       if data is True:
+                               self.close('cancel')
+                               
+       def runAsync(self, finished_cb):
+               self.finished_cb = finished_cb
                self.ok()
-
+               
        def NameserverSetupClosed(self, *ret):
                iNetwork.loadNameserverConfig()
                nameserver = (iNetwork.getNameserverList() + [[0,0,0,0]] * 2)[0:2]
@@ -463,13 +671,18 @@ class AdapterSetup(Screen, ConfigListScreen):
                self.secondaryDNS = NoSave(ConfigIP(default=nameserver[1]))
                self.createSetup()
                self.layoutFinished()
+               
+       def cleanup(self):
+               iNetwork.stopLinkStateConsole()
        
 
-class AdapterSetupConfiguration(Screen):
+class AdapterSetupConfiguration(Screen, HelpableScreen):
        def __init__(self, session,iface):
                Screen.__init__(self, session)
+               HelpableScreen.__init__(self)
                self.session = session
                self.iface = iface
+               self.restartLanRef = None
                self.mainmenu = self.genMainMenu()
                self["menulist"] = MenuList(self.mainmenu)
                self["description"] = Label()
@@ -485,8 +698,27 @@ class AdapterSetupConfiguration(Screen):
                
                self.oktext = _("Press OK on your remote control to continue.")
                self.reboottext = _("Your Dreambox will restart after pressing OK on your remote control.")
-               self.errortext = _("No working wireless interface found.\n Please verify that you have attached a compatible WLAN device or enable your local network interface.")      
+               self.errortext = _("No working wireless network interface found.\n Please verify that you have attached a compatible WLAN device or enable your local network interface.")      
                
+               self["WizardActions"] = HelpableActionMap(self, "WizardActions",
+                       {
+                       "up": (self.up, _("move up to previous entry")),
+                       "down": (self.down, _("move down to next entry")),
+                       "left": (self.left, _("move up to first entry")),
+                       "right": (self.right, _("move down to last entry")),
+                       })
+               
+               self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions",
+                       {
+                       "cancel": (self.close, _("exit networkadapter setup menu")),
+                       "ok": (self.ok, _("select menu entry")),
+                       })
+
+               self["ColorActions"] = HelpableActionMap(self, "ColorActions",
+                       {
+                       "red": (self.close, _("exit networkadapter setup menu")),       
+                       })
+
                self["actions"] = NumberActionMap(["WizardActions","ShortcutActions"],
                {
                        "ok": self.ok,
@@ -498,9 +730,9 @@ class AdapterSetupConfiguration(Screen):
                        "right": self.right,
                }, -2)
                
-               iNetwork.getInterfaces()
-               self.onLayoutFinish.append(self.layoutFinished)
                self.updateStatusbar()
+               self.onLayoutFinish.append(self.layoutFinished)
+               self.onClose.append(self.cleanup)
 
        def ok(self):
                if self["menulist"].getCurrent()[1] == 'edit':
@@ -548,8 +780,7 @@ class AdapterSetupConfiguration(Screen):
                                ifobj = Wireless(self.iface) # a Wireless NIC Object
                                self.wlanresponse = ifobj.getStatistics()
                                if self.wlanresponse[0] != 19:
-                                       self.session.openWithCallback(self.AdapterSetupClosed, WlanStatus,self.iface)
-                                       #self.session.open(WlanStatus,self.iface)
+                                       self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface)
                                else:
                                        # Display Wlan not available Message
                                        self.showErrorMessage()
@@ -584,6 +815,7 @@ class AdapterSetupConfiguration(Screen):
                self.loadDescription()
 
        def loadDescription(self):
+               print self["menulist"].getCurrent()[1]
                if self["menulist"].getCurrent()[1] == 'edit':
                        self["description"].setText(_("Edit the network configuration of your Dreambox.\n" ) + self.oktext )
                if self["menulist"].getCurrent()[1] == 'test':
@@ -601,26 +833,21 @@ class AdapterSetupConfiguration(Screen):
                if self["menulist"].getCurrent()[1][0] == 'extendedSetup':
                        self["description"].setText(_(self["menulist"].getCurrent()[1][1]) + self.oktext )
                
-       def updateStatusbar(self):
+       def updateStatusbar(self, data = None):
                self["IFtext"].setText(_("Network:"))
                self["IF"].setText(iNetwork.getFriendlyAdapterName(self.iface))
                self["Statustext"].setText(_("Link:"))
                
                if self.iface == 'wlan0' or self.iface == 'ath0':
                        try:
-                               from Plugins.SystemPlugins.WirelessLan.Wlan import Wlan
-                               w = Wlan(self.iface)
-                               stats = w.getStatus()
-                               if stats['BSSID'] == "00:00:00:00:00:00":
-                                       self["statuspic"].setPixmapNum(1)
-                               else:
-                                       self["statuspic"].setPixmapNum(0)
-                               self["statuspic"].show()
+                               from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
                        except:
                                        self["statuspic"].setPixmapNum(1)
                                        self["statuspic"].show()
+                       else:
+                               iStatus.getDataForInterface(self.iface,self.getInfoCB)
                else:
-                       self.getLinkState(self.iface)
+                       iNetwork.getLinkState(self.iface,self.dataAvail)
 
        def doNothing(self):
                pass
@@ -661,24 +888,64 @@ class AdapterSetupConfiguration(Screen):
                return menu
 
        def AdapterSetupClosed(self, *ret):
-               self.mainmenu = self.genMainMenu()
-               self["menulist"].l.setList(self.mainmenu)
-               iNetwork.getInterfaces()
-               self.updateStatusbar()
+               if ret is not None and len(ret):
+                       if ret[0] == 'ok' and (self.iface == 'wlan0' or self.iface == 'ath0') and iNetwork.getAdapterAttribute(self.iface, "up") is True:
+                               try:
+                                       from Plugins.SystemPlugins.WirelessLan.plugin import WlanStatus
+                                       from Plugins.SystemPlugins.WirelessLan.iwlibs import Wireless
+                               except ImportError:
+                                       self.session.open(MessageBox, _("The wireless LAN plugin is not installed!\nPlease install it."), type = MessageBox.TYPE_INFO,timeout = 10 )
+                               else:   
+                                       ifobj = Wireless(self.iface) # a Wireless NIC Object
+                                       self.wlanresponse = ifobj.getStatistics()
+                                       if self.wlanresponse[0] != 19:
+                                               self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface)
+                                       else:
+                                               # Display Wlan not available Message
+                                               self.showErrorMessage()
+                       else:
+                               self.mainmenu = self.genMainMenu()
+                               self["menulist"].l.setList(self.mainmenu)
+                               self.updateStatusbar()
+               else:
+                       self.mainmenu = self.genMainMenu()
+                       self["menulist"].l.setList(self.mainmenu)
+                       self.updateStatusbar()
+
+       def WlanStatusClosed(self, *ret):
+               if ret is not None and len(ret):
+                       from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+                       iStatus.stopWlanConsole()
+                       self.mainmenu = self.genMainMenu()
+                       self["menulist"].l.setList(self.mainmenu)
+                       self.updateStatusbar()
 
        def WlanScanClosed(self,*ret):
                if ret[0] is not None:
                        self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,ret[0],ret[1])
                else:
-                       self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,None,ret[0])
-
-
+                       from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+                       iStatus.stopWlanConsole()
+                       self.mainmenu = self.genMainMenu()
+                       self["menulist"].l.setList(self.mainmenu)
+                       self.updateStatusbar()
+                       
        def restartLan(self, ret = False):
                if (ret == True):
-                       iNetwork.restartNetwork()
+                       iNetwork.restartNetwork(self.restartLanDataAvail)
+                       self.restartLanRef = self.session.openWithCallback(self.restartfinishedCB, MessageBox, _("Please wait while your network is restarting..."), type = MessageBox.TYPE_INFO, enable_input = False)
+                       
+       def restartLanDataAvail(self, data):
+               if data is True:
+                       iNetwork.getInterfaces(self.getInterfacesDataAvail)
 
-       def getLinkState(self,iface):
-               iNetwork.getLinkState(iface,self.dataAvail)
+       def getInterfacesDataAvail(self, data):
+               if data is True:
+                       self.restartLanRef.close(True)
+
+       def restartfinishedCB(self,data):
+               if data is True:
+                       self.session.open(MessageBox, _("Finished restarting your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False)
 
        def dataAvail(self,data):
                self.output = data.strip()
@@ -693,14 +960,35 @@ class AdapterSetupConfiguration(Screen):
 
        def showErrorMessage(self):
                self.session.open(MessageBox, self.errortext, type = MessageBox.TYPE_INFO,timeout = 10 )
-
+               
+       def cleanup(self):
+               iNetwork.stopLinkStateConsole()
+               iNetwork.stopDeactivateInterfaceConsole()
+               try:
+                       from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+               except ImportError:
+                       pass
+               else:
+                       iStatus.stopWlanConsole()
+
+       def getInfoCB(self,data,status):
+               if data is not None:
+                       if data is True:
+                               if status is not None:
+                                       if status[self.iface]["acesspoint"] == "No Connection" or status[self.iface]["acesspoint"] == "Not-Associated" or status[self.iface]["acesspoint"] == False:
+                                               self["statuspic"].setPixmapNum(1)
+                                       else:
+                                               self["statuspic"].setPixmapNum(0)
+                                       self["statuspic"].show()
 
 class NetworkAdapterTest(Screen):      
        def __init__(self, session,iface):
                Screen.__init__(self, session)
                self.iface = iface
-               iNetwork.getInterfaces()
+               self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up")
                self.setLabels()
+               self.onClose.append(self.cleanup)
+               self.onHide.append(self.cleanup)
                
                self["updown_actions"] = NumberActionMap(["WizardActions","ShortcutActions"],
                {
@@ -713,8 +1001,8 @@ class NetworkAdapterTest(Screen):
                
                self["shortcuts"] = ActionMap(["ShortcutActions","WizardActions"],
                {
-                       "red": self.close,
-                       "back": self.close,
+                       "red": self.cancel,
+                       "back": self.cancel,
                }, -2)
                self["infoshortcuts"] = ActionMap(["ShortcutActions","WizardActions"],
                {
@@ -745,6 +1033,12 @@ class NetworkAdapterTest(Screen):
                self.nextStepTimer = eTimer()
                self.nextStepTimer.callback.append(self.nextStepTimerFire)
 
+       def cancel(self):
+               if self.oldInterfaceState is False:
+                       iNetwork.setAdapterAttribute(self.iface, "up", self.oldInterfaceState)
+                       iNetwork.deactivateInterface(self.iface)
+               self.close()
+
        def closeInfo(self):
                self["shortcuts"].setEnabled(True)              
                self["infoshortcuts"].setEnabled(False)
@@ -852,6 +1146,7 @@ class NetworkAdapterTest(Screen):
 
        def doStep3(self):
                self["Networktext"].setForegroundColorNum(1)
+               self["Network"].setText(_("Please wait..."))
                self.getLinkState(self.iface)
                self["NetworkInfo_Text"].setForegroundColorNum(1)
                self.steptimer = True
@@ -874,48 +1169,15 @@ class NetworkAdapterTest(Screen):
 
        def doStep5(self):
                self["IPtext"].setForegroundColorNum(1)
-               ret = iNetwork.checkNetworkState()
-               if ret == True:
-                       self["IP"].setForegroundColorNum(2)
-                       self["IP"].setText(_("confirmed"))
-                       self["IPInfo_Check"].setPixmapNum(0)
-               else:
-                       self["IP"].setForegroundColorNum(1)
-                       self["IP"].setText(_("unconfirmed"))
-                       self["IPInfo_Check"].setPixmapNum(1)
-               self["IPInfo_Check"].show()
-               self["IPInfo_Text"].setForegroundColorNum(1)
-               self.steptimer = True
-               self.nextStepTimer.start(3000)
+               self["IP"].setText(_("Please wait..."))
+               iNetwork.checkNetworkState(self.NetworkStatedataAvail)
 
        def doStep6(self):
                self.steptimer = False
                self.nextStepTimer.stop()
                self["DNStext"].setForegroundColorNum(1)
-               ret = iNetwork.checkDNSLookup()
-               if ret == True:
-                       self["DNS"].setForegroundColorNum(2)
-                       self["DNS"].setText(_("confirmed"))
-                       self["DNSInfo_Check"].setPixmapNum(0)
-               else:
-                       self["DNS"].setForegroundColorNum(1)
-                       self["DNS"].setText(_("unconfirmed"))
-                       self["DNSInfo_Check"].setPixmapNum(1)
-               self["DNSInfo_Check"].show()
-               self["DNSInfo_Text"].setForegroundColorNum(1)
-               
-               self["EditSettings_Text"].show()
-               self["EditSettingsButton"].setPixmapNum(1)
-               self["EditSettings_Text"].setForegroundColorNum(2) # active
-               self["EditSettingsButton"].show()
-               self["ButtonYellow_Check"].setPixmapNum(1)
-               self["ButtonGreentext"].setText(_("Restart test"))
-               self["ButtonGreen_Check"].setPixmapNum(0)
-               self["shortcutsgreen"].setEnabled(False)
-               self["shortcutsgreen_restart"].setEnabled(True)
-               self["shortcutsyellow"].setEnabled(False)
-               self["updown_actions"].setEnabled(True)
-               self.activebutton = 6
+               self["DNS"].setText(_("Please wait..."))
+               iNetwork.checkDNSLookup(self.DNSLookupdataAvail)
 
        def KeyGreen(self):
                self["shortcutsgreen"].setEnabled(False)
@@ -1057,28 +1319,18 @@ class NetworkAdapterTest(Screen):
        def getLinkState(self,iface):
                if iface == 'wlan0' or iface == 'ath0':
                        try:
-                               from Plugins.SystemPlugins.WirelessLan.Wlan import Wlan
-                               w = Wlan(iface)
-                               stats = w.getStatus()
-                               if stats['BSSID'] == "00:00:00:00:00:00":
-                                       self["Network"].setForegroundColorNum(1)
-                                       self["Network"].setText(_("disconnected"))
-                                       self["NetworkInfo_Check"].setPixmapNum(1)
-                                       self["NetworkInfo_Check"].show()
-                               else:
-                                       self["Network"].setForegroundColorNum(2)
-                                       self["Network"].setText(_("connected"))
-                                       self["NetworkInfo_Check"].setPixmapNum(0)
-                                       self["NetworkInfo_Check"].show()
+                               from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
                        except:
                                        self["Network"].setForegroundColorNum(1)
                                        self["Network"].setText(_("disconnected"))
                                        self["NetworkInfo_Check"].setPixmapNum(1)
                                        self["NetworkInfo_Check"].show()
+                       else:
+                               iStatus.getDataForInterface(self.iface,self.getInfoCB)
                else:
-                       iNetwork.getLinkState(iface,self.dataAvail)
+                       iNetwork.getLinkState(iface,self.LinkStatedataAvail)
 
-       def dataAvail(self,data):
+       def LinkStatedataAvail(self,data):
                self.output = data.strip()
                result = self.output.split('\n')
                pattern = re_compile("Link detected: yes")
@@ -1093,4 +1345,66 @@ class NetworkAdapterTest(Screen):
                                self["NetworkInfo_Check"].setPixmapNum(1)
                self["NetworkInfo_Check"].show()
 
+       def NetworkStatedataAvail(self,data):
+               if data <= 2:
+                       self["IP"].setForegroundColorNum(2)
+                       self["IP"].setText(_("confirmed"))
+                       self["IPInfo_Check"].setPixmapNum(0)
+               else:
+                       self["IP"].setForegroundColorNum(1)
+                       self["IP"].setText(_("unconfirmed"))
+                       self["IPInfo_Check"].setPixmapNum(1)
+               self["IPInfo_Check"].show()
+               self["IPInfo_Text"].setForegroundColorNum(1)            
+               self.steptimer = True
+               self.nextStepTimer.start(3000)          
+               
+       def DNSLookupdataAvail(self,data):
+               if data <= 2:
+                       self["DNS"].setForegroundColorNum(2)
+                       self["DNS"].setText(_("confirmed"))
+                       self["DNSInfo_Check"].setPixmapNum(0)
+               else:
+                       self["DNS"].setForegroundColorNum(1)
+                       self["DNS"].setText(_("unconfirmed"))
+                       self["DNSInfo_Check"].setPixmapNum(1)
+               self["DNSInfo_Check"].show()
+               self["DNSInfo_Text"].setForegroundColorNum(1)
+               self["EditSettings_Text"].show()
+               self["EditSettingsButton"].setPixmapNum(1)
+               self["EditSettings_Text"].setForegroundColorNum(2) # active
+               self["EditSettingsButton"].show()
+               self["ButtonYellow_Check"].setPixmapNum(1)
+               self["ButtonGreentext"].setText(_("Restart test"))
+               self["ButtonGreen_Check"].setPixmapNum(0)
+               self["shortcutsgreen"].setEnabled(False)
+               self["shortcutsgreen_restart"].setEnabled(True)
+               self["shortcutsyellow"].setEnabled(False)
+               self["updown_actions"].setEnabled(True)
+               self.activebutton = 6
 
+       def getInfoCB(self,data,status):
+               if data is not None:
+                       if data is True:
+                               if status is not None:
+                                       if status[self.iface]["acesspoint"] == "No Connection" or status[self.iface]["acesspoint"] == "Not-Associated" or status[self.iface]["acesspoint"] == False:
+                                               self["Network"].setForegroundColorNum(1)
+                                               self["Network"].setText(_("disconnected"))
+                                               self["NetworkInfo_Check"].setPixmapNum(1)
+                                               self["NetworkInfo_Check"].show()
+                                       else:
+                                               self["Network"].setForegroundColorNum(2)
+                                               self["Network"].setText(_("connected"))
+                                               self["NetworkInfo_Check"].setPixmapNum(0)
+                                               self["NetworkInfo_Check"].show()
+                                               
+       def cleanup(self):
+               iNetwork.stopLinkStateConsole()
+               iNetwork.stopDNSConsole()
+               try:
+                       from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus,Status
+               except ImportError:
+                       pass
+               else:
+                       iStatus.stopWlanConsole()
+                       
index ccb776e..6489f28 100644 (file)
@@ -14,16 +14,21 @@ from datetime import datetime
 
 class NimSetup(Screen, ConfigListScreen):
        def createSimpleSetup(self, list, mode):
+               nim = self.nimConfig
                if mode == "single":
-                       list.append(getConfigListEntry(_("Satellite"), self.nimConfig.diseqcA))
+                       list.append(getConfigListEntry(_("Satellite"), nim.diseqcA))
+                       list.append(getConfigListEntry(_("Send DiSEqC"), nim.simpleSingleSendDiSEqC))
                else:
-                       list.append(getConfigListEntry(_("Port A"), self.nimConfig.diseqcA))
+                       list.append(getConfigListEntry(_("Port A"), nim.diseqcA))
 
                if mode in ["toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"]:
-                       list.append(getConfigListEntry(_("Port B"), self.nimConfig.diseqcB))
+                       list.append(getConfigListEntry(_("Port B"), nim.diseqcB))
                        if mode == "diseqc_a_b_c_d":
-                               list.append(getConfigListEntry(_("Port C"), self.nimConfig.diseqcC))
-                               list.append(getConfigListEntry(_("Port D"), self.nimConfig.diseqcD))
+                               list.append(getConfigListEntry(_("Port C"), nim.diseqcC))
+                               list.append(getConfigListEntry(_("Port D"), nim.diseqcD))
+                       if mode != "toneburst_a_b":
+                               list.append(getConfigListEntry(_("Set Voltage and 22KHz"), nim.simpleDiSEqCSetVoltageTone))
+                               list.append(getConfigListEntry(_("Send DiSEqC only on satellite change"), nim.simpleDiSEqCOnlyOnSatChange))
 
        def createPositionerSetup(self, list):
                nim = self.nimConfig
@@ -88,7 +93,7 @@ class NimSetup(Screen, ConfigListScreen):
                        self.list.append(self.configMode)
 
                        if self.nimConfig.configMode.value == "simple":                 #simple setup
-                               self.diseqcModeEntry = getConfigListEntry(_("DiSEqC Mode"), self.nimConfig.diseqcMode)
+                               self.diseqcModeEntry = getConfigListEntry(_("Mode"), self.nimConfig.diseqcMode)
                                self.list.append(self.diseqcModeEntry)
                                if self.nimConfig.diseqcMode.value in ["single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"]:
                                        self.createSimpleSetup(self.list, self.nimConfig.diseqcMode.value)
@@ -407,12 +412,17 @@ class NimSelection(Screen):
                                        text = _("nothing connected")
                                elif nimConfig.configMode.value == "simple":
                                        if nimConfig.diseqcMode.value in ["single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"]:
-                                               text = _("Sats") + ": " + nimmanager.getSatName(int(nimConfig.diseqcA.value))
+                                               text = _("Sats") + ": " 
+                                               if nimConfig.diseqcA.orbital_position != 3601:
+                                                       text += nimmanager.getSatName(int(nimConfig.diseqcA.value))
                                                if nimConfig.diseqcMode.value in ["toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"]:
-                                                       text += "," + nimmanager.getSatName(int(nimConfig.diseqcB.value))
+                                                       if nimConfig.diseqcB.orbital_position != 3601:
+                                                               text += "," + nimmanager.getSatName(int(nimConfig.diseqcB.value))
                                                if nimConfig.diseqcMode.value == "diseqc_a_b_c_d":
-                                                       text += "," + nimmanager.getSatName(int(nimConfig.diseqcC.value))
-                                                       text += "," + nimmanager.getSatName(int(nimConfig.diseqcD.value))
+                                                       if nimConfig.diseqcC.orbital_position != 3601:
+                                                               text += "," + nimmanager.getSatName(int(nimConfig.diseqcC.value))
+                                                       if nimConfig.diseqcD.orbital_position != 3601:
+                                                               text += "," + nimmanager.getSatName(int(nimConfig.diseqcD.value))
                                        elif nimConfig.diseqcMode.value == "positioner":
                                                text = _("Positioner") + ":"
                                                if nimConfig.positionerMode.value == "usals":
index ab110a2..608dcb2 100644 (file)
@@ -394,8 +394,7 @@ class ScanSetup(ConfigListScreen, Screen, CableTransponderSearchSupport):
                                        self.modulationEntry = getConfigListEntry(_('Modulation'), self.scan_sat.modulation)
                                        self.list.append(self.modulationEntry)
                                        self.list.append(getConfigListEntry(_('Rolloff'), self.scan_sat.rolloff))
-                                       if self.scan_sat.modulation.value == "8psk":
-                                               self.list.append(getConfigListEntry(_('Pilot'), self.scan_sat.pilot))
+                                       self.list.append(getConfigListEntry(_('Pilot'), self.scan_sat.pilot))
                        elif self.scan_type.value == "single_satellite":
                                self.updateSatList()
                                print self.scan_satselection[index_to_scan]
index 800bab3..aae345d 100644 (file)
@@ -317,6 +317,7 @@ class TimerSanityConflict(Screen):
        EMPTY = 0
        ENABLE = 1
        DISABLE = 2
+       EDIT = 3
        
        def __init__(self, session, timer):
                Screen.__init__(self, session)
@@ -338,10 +339,11 @@ class TimerSanityConflict(Screen):
 
                self["key_red"] = Button("Edit")
                self["key_green"] = Button(" ")
-               self["key_yellow"] = Button("Edit")
+               self["key_yellow"] = Button(" ")
                self["key_blue"] = Button(" ")
 
                self.key_green_choice = self.EMPTY
+               self.key_yellow_choice = self.EMPTY
                self.key_blue_choice = self.EMPTY
 
                self["actions"] = ActionMap(["OkCancelActions", "DirectionActions", "ShortcutActions", "TimerEditActions"], 
@@ -415,9 +417,14 @@ class TimerSanityConflict(Screen):
                                self["actions"].actions.update({"green":self.toggleTimer1})
                                self["key_green"].setText(_("Disable"))
                                self.key_green_choice = self.DISABLE
+               
                if len(self.timer) > 1:
                        x = self["list"].getSelectedIndex()
                        if self.timer[x] is not None:
+                               if self.key_yellow_choice == self.EMPTY:
+                                       self["actions"].actions.update({"yellow":self.editTimer2})
+                                       self["key_yellow"].setText(_("Edit"))
+                                       self.key_yellow_choice = self.EDIT
                                if self.timer[x].disabled and self.key_blue_choice != self.ENABLE:
                                        self["actions"].actions.update({"blue":self.toggleTimer2})
                                        self["key_blue"].setText(_("Enable"))
@@ -432,9 +439,11 @@ class TimerSanityConflict(Screen):
                                        self.key_blue_choice = self.DISABLE
                else:
 #FIXME.... this doesnt hide the buttons self.... just the text
-                       self.removeAction("yellow")
-                       self["key_yellow"].setText(" ")
-                       self.key_yellow_choice = self.EMPTY
-                       self.removeAction("blue")
-                       self["key_blue"].setText(" ")
-                       self.key_blue_choice = self.EMPTY
+                       if self.key_yellow_choice != self.EMPTY:
+                               self.removeAction("yellow")
+                               self["key_yellow"].setText(" ")
+                               self.key_yellow_choice = self.EMPTY
+                       if self.key_blue_choice != self.EMPTY:
+                               self.removeAction("blue")
+                               self["key_blue"].setText(" ")
+                               self.key_blue_choice = self.EMPTY
index c4dfff7..1774061 100644 (file)
@@ -8,6 +8,7 @@ from Components.MenuList import MenuList
 from Components.Button import Button
 from Components.Label import Label
 from Components.Pixmap import Pixmap
+from Screens.MovieSelection import getPreferredTagEditor
 from Screens.LocationBox import MovieLocationBox
 from Screens.ChoiceBox import ChoiceBox
 from RecordTimer import AFTEREVENT
@@ -21,8 +22,7 @@ class TimerEntry(Screen, ConfigListScreen):
                Screen.__init__(self, session)
                self.timer = timer
 
-               self.entryStartDate = None
-               self.entryEndDate = None
+               self.entryDate = None
                self.entryService = None
 
                self["oktext"] = Label(_("OK"))
@@ -88,13 +88,13 @@ class TimerEntry(Screen, ConfigListScreen):
                        self.timerentry_type = ConfigSelection(choices = [("once",_("once")), ("repeated", _("repeated"))], default = type)
                        self.timerentry_name = ConfigText(default = self.timer.name, visible_width = 50, fixed_size = False)
                        self.timerentry_description = ConfigText(default = self.timer.description, visible_width = 50, fixed_size = False)
+                       self.timerentry_tags = self.timer.tags + []
+                       self.timerentry_tagsset = ConfigSelection(choices = [len(self.timerentry_tags) == 0 and "None" or " ".join(self.timerentry_tags)])
 
                        self.timerentry_repeated = ConfigSelection(default = repeated, choices = [("daily", _("daily")), ("weekly", _("weekly")), ("weekdays", _("Mon-Fri")), ("user", _("user defined"))])
 
-                       self.timerentry_startdate = ConfigDateTime(default = self.timer.begin, formatstring = _("%d.%B %Y"), increment = 86400)
+                       self.timerentry_date = ConfigDateTime(default = self.timer.begin, formatstring = _("%d.%B %Y"), increment = 86400)
                        self.timerentry_starttime = ConfigClock(default = self.timer.begin)
-
-                       self.timerentry_enddate = ConfigDateTime(default = self.timer.end, formatstring =  _("%d.%B %Y"), increment = 86400)
                        self.timerentry_endtime = ConfigClock(default = self.timer.end)
 
                        default = self.timer.dirname or resolveFilename(SCOPE_HDD)
@@ -120,19 +120,6 @@ class TimerEntry(Screen, ConfigListScreen):
                        self.timerentry_service_ref = self.timer.service_ref
                        self.timerentry_service = ConfigSelection([servicename])
 
-                       self.timerentry_startdate.addNotifier(self.checkDate)
-                       self.timerentry_enddate.addNotifier(self.checkDate)
-
-       def checkDate(self, configElement):
-               if configElement is self.timerentry_startdate:
-                       if self.timerentry_enddate.value < self.timerentry_startdate.value:
-                               self.timerentry_enddate.value = self.timerentry_startdate.value
-                               self["config"].invalidate(self.entryEndDate)
-               if configElement is self.timerentry_enddate:
-                       if (self.timerentry_enddate.value < self.timerentry_startdate.value):
-                               self.timerentry_startdate.value = self.timerentry_enddate.value
-                               self["config"].invalidate(self.entryStartDate)
-
        def createSetup(self, widget):
                self.list = []
                self.list.append(getConfigListEntry(_("Name"), self.timerentry_name))
@@ -165,34 +152,24 @@ class TimerEntry(Screen, ConfigListScreen):
                                self.list.append(getConfigListEntry(_("Saturday"), self.timerentry_day[5]))
                                self.list.append(getConfigListEntry(_("Sunday"), self.timerentry_day[6]))
 
-                       #self.list.append(getConfigListEntry("StartDate", self.timerentry_startdate))
-#              self.list.append(getConfigListEntry("Weekday", self.timerentry_weekday))
-
-               self.entryStartDate = getConfigListEntry(_("Start"), self.timerentry_startdate)
-               if self.timerentry_type.value == "once":
-                       self.list.append(self.entryStartDate)
-                       self.list.append(getConfigListEntry(" ", self.timerentry_starttime))
-               else:
-                       self.list.append(getConfigListEntry(_("StartTime"), self.timerentry_starttime))
-
-               self.entryEndDate = getConfigListEntry(_("End"), self.timerentry_enddate)
+               self.entryDate = getConfigListEntry(_("Date"), self.timerentry_date)
                if self.timerentry_type.value == "once":
-                       if self.timerentry_justplay.value != "zap":
-                               self.list.append(self.entryEndDate)
-                               self.list.append(getConfigListEntry(" ", self.timerentry_endtime))
-               else:
-                       if self.timerentry_justplay.value != "zap":
-                               self.list.append(getConfigListEntry(_("EndTime"), self.timerentry_endtime))
+                       self.list.append(self.entryDate)
+               self.list.append(getConfigListEntry(_("StartTime"), self.timerentry_starttime))
+               if self.timerentry_justplay.value != "zap":
+                       self.list.append(getConfigListEntry(_("EndTime"), self.timerentry_endtime))
+               self.channelEntry = getConfigListEntry(_("Channel"), self.timerentry_service)
+               self.list.append(self.channelEntry)
 
+               self.dirname = getConfigListEntry(_("Location"), self.timerentry_dirname)
+               self.tagsSet = getConfigListEntry(_("Tags"), self.timerentry_tagsset)
                if self.timerentry_justplay.value != "zap":
                        if config.usage.setup_level.index >= 2: # expert+
-                               self.dirname = getConfigListEntry(_("Location"), self.timerentry_dirname)
                                self.list.append(self.dirname)
+                       if getPreferredTagEditor():
+                               self.list.append(self.tagsSet)
                        self.list.append(getConfigListEntry(_("After event"), self.timerentry_afterevent))
 
-               self.channelEntry = getConfigListEntry(_("Channel"), self.timerentry_service)
-               self.list.append(self.channelEntry)
-
                self[widget].list = self.list
                self[widget].l.setList(self.list)
 
@@ -206,14 +183,14 @@ class TimerEntry(Screen, ConfigListScreen):
                        self.createSetup("config")
 
        def keyLeft(self):
-               if self["config"].getCurrent() is self.channelEntry:
+               if self["config"].getCurrent() in [self.channelEntry, self.tagsSet]:
                        self.keySelect()
                else:
                        ConfigListScreen.keyLeft(self)
                        self.newConfig()
 
        def keyRight(self):
-               if self["config"].getCurrent() is self.channelEntry:
+               if self["config"].getCurrent() in [self.channelEntry, self.tagsSet]:
                        self.keySelect()
                else:
                        ConfigListScreen.keyRight(self)
@@ -235,6 +212,12 @@ class TimerEntry(Screen, ConfigListScreen):
                                self.timerentry_dirname.value,
                                minFree = 100 # We require at least 100MB free space
                        )
+               elif getPreferredTagEditor() and cur == self.tagsSet:
+                       self.session.openWithCallback(
+                               self.tagEditFinished,
+                               getPreferredTagEditor(),
+                               self.timerentry_tags
+                       )
                else:
                        self.keyGo()
 
@@ -249,24 +232,15 @@ class TimerEntry(Screen, ConfigListScreen):
                dt = datetime(d.tm_year, d.tm_mon, d.tm_mday, mytime[0], mytime[1])
                return int(mktime(dt.timetuple()))
 
-       def buildRepeatedBegin(self, rep_time, start_time):
-               d = localtime(rep_time)
-               dt = datetime(d.tm_year, d.tm_mon, d.tm_mday, start_time[0], start_time[1])
-               return int(mktime(dt.timetuple()))
-
        def getBeginEnd(self):
-               enddate = self.timerentry_enddate.value
+               date = self.timerentry_date.value
                endtime = self.timerentry_endtime.value
-
-               startdate = self.timerentry_startdate.value
                starttime = self.timerentry_starttime.value
 
-               begin = self.getTimestamp(startdate, starttime)
-               end = self.getTimestamp(enddate, endtime)
+               begin = self.getTimestamp(date, starttime)
+               end = self.getTimestamp(date, endtime)
 
-               # because of the dateChecks, startdate can't be < enddate.
-               # however, the endtime can be less than the starttime.
-               # in this case, add 1 day.
+               # if the endtime is less than the starttime, add 1 day.
                if end < begin:
                        end += 86400
                return begin, end
@@ -278,6 +252,7 @@ class TimerEntry(Screen, ConfigListScreen):
                self.timer.resetRepeated()
                self.timer.afterEvent = {"nothing": AFTEREVENT.NONE, "deepstandby": AFTEREVENT.DEEPSTANDBY, "standby": AFTEREVENT.STANDBY}[self.timerentry_afterevent.value]
                self.timer.service_ref = self.timerentry_service_ref
+               self.timer.tags = self.timerentry_tags
 
                self.timer.dirname = self.timerentry_dirname.value
                config.movielist.last_timer_videodir.value = self.timer.dirname
@@ -352,6 +327,12 @@ class TimerEntry(Screen, ConfigListScreen):
                                self.timerentry_dirname.setChoices(config.movielist.videodirs.value, default=res)
                        self.timerentry_dirname.value = res
 
+       def tagEditFinished(self, ret):
+               if ret is not None:
+                       self.timerentry_tags = ret
+                       self.timerentry_tagsset.setChoices([len(ret) == 0 and "None" or " ".join(ret)])
+                       self["config"].invalidate(self.tagsSet)
+
 class TimerLog(Screen):
        def __init__(self, session, timer):
                Screen.__init__(self, session)
diff --git a/lib/python/Screens/VirtualKeyBoard.py b/lib/python/Screens/VirtualKeyBoard.py
new file mode 100755 (executable)
index 0000000..53970ab
--- /dev/null
@@ -0,0 +1,287 @@
+# -*- coding: iso-8859-1 -*-\r
+from Components.Language import language\r
+from Components.ActionMap import ActionMap\r
+from Components.Label import Label\r
+from Components.Pixmap import Pixmap\r
+from Components.MenuList import MenuList\r
+from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmapAlphaTest\r
+from enigma import eListboxPythonMultiContent, gFont, loadPNG, RT_HALIGN_CENTER, RT_VALIGN_CENTER\r
+from Screen import Screen\r
+from Tools.Directories import resolveFilename, SCOPE_SKIN_IMAGE\r
+\r
+key_backspace = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_backspace.png"))\r
+key_bg = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_bg.png"))\r
+key_clr = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_clr.png"))\r
+key_esc = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_esc.png"))\r
+key_ok = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_ok.png"))\r
+key_sel = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_sel.png"))\r
+key_shift = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_shift.png"))\r
+key_shift_sel = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_shift_sel.png"))\r
+key_space = loadPNG(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/vkey_space.png"))\r
+\r
+class VirtualKeyBoardList(MenuList):\r
+       def __init__(self, list, enableWrapAround=False):\r
+               MenuList.__init__(self, list, enableWrapAround, eListboxPythonMultiContent)\r
+               self.l.setFont(0, gFont("Regular", 22))\r
+               self.l.setItemHeight(45)\r
+\r
+def VirtualKeyBoardEntryComponent(keys, selectedKey,shiftMode=False):\r
+       res = [ (keys) ]\r
+       \r
+       x = 0\r
+       count = 0\r
+       if shiftMode:\r
+               shiftkey_png = key_shift_sel\r
+       else:\r
+               shiftkey_png = key_shift\r
+       for key in keys:\r
+               if key == "EXIT":\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_esc))\r
+               elif key == "BACKSPACE":\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_backspace))\r
+               elif key == "CLEAR":\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_clr))\r
+               elif key == "SHIFT":\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=shiftkey_png))\r
+               elif key == "SPACE":\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_space))\r
+               elif key == "OK":\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_ok))\r
+               #elif key == "<-":\r
+               #       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_left))\r
+               #elif key == "->":\r
+               #       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_right))\r
+               \r
+               else:\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_bg))\r
+                       res.append(MultiContentEntryText(pos=(x, 0), size=(45, 45), font=0, text=key.encode("utf-8"), flags=RT_HALIGN_CENTER | RT_VALIGN_CENTER))\r
+               \r
+               if selectedKey == count:\r
+                       res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(45, 45), png=key_sel))\r
+               \r
+               x += 45\r
+               count += 1\r
+       \r
+       return res\r
+\r
+\r
+class VirtualKeyBoard(Screen):\r
+\r
+       def __init__(self, session, title="", text=""):\r
+               Screen.__init__(self, session)\r
+               self.keys_list = []\r
+               self.shiftkeys_list = []\r
+               self.lang = language.getLanguage()\r
+               if self.lang == 'de_DE':\r
+                       self.keys_list = [\r
+                               [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"],\r
+                               [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"ü", u"+"],\r
+                               [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ö", u"ä", u"#"],\r
+                               [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"@", u"ß", u"OK"]]\r
+                       \r
+                       self.shiftkeys_list = [\r
+                               [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"],\r
+                               [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"Ü", u"*"],\r
+                               [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"Ö", u"Ä", u"'"],\r
+                               [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"?", u"\\", u"OK"]]\r
+                       \r
+               elif self.lang == 'es_ES':\r
+                       #still missing keys (u"ùÙ")\r
+                       self.keys_list = [\r
+                               [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"],\r
+                               [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"ú", u"+"],\r
+                               [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ó", u"á", u"#"],\r
+                               [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"@", u"£", u"à", u"é", u"è", u"í", u"ì", u"ñ", u"ò", u"OK"]]\r
+                       \r
+                       self.shiftkeys_list = [\r
+                               [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"],\r
+                               [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"Ú", u"*"],\r
+                               [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"Ó", u"Á", u"'"],\r
+                               [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"?", u"\\", u"À", u"É", u"È",  u"Í", u"Ì", u"Ñ", u"Ò", u"OK"]]\r
+                               \r
+               elif self.lang in ['sv_SE', 'fi_FI']:\r
+                       self.keys_list = [\r
+                               [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"],\r
+                               [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"é", u"+"],\r
+                               [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ö", u"ä", u"#"],\r
+                               [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"@", u"ß", u"å", u"OK"]]\r
+                               \r
+                       self.shiftkeys_list = [\r
+                               [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"],\r
+                               [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"É", u"*"],\r
+                               [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"Ö", u"Ä", u"'"],\r
+                               [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"?", u"\\", u"Å", u"OK"]]\r
+               else:\r
+                       self.keys_list = [\r
+                               [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"],\r
+                               [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"+", u"@"],\r
+                               [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"#", u"\\"],\r
+                               [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"OK"]]\r
+                       \r
+                       self.shiftkeys_list = [\r
+                               [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"],\r
+                               [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"*"],\r
+                               [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"'", u"?"],\r
+                               [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"],\r
+                               [u"SHIFT", u"SPACE", u"OK"]]\r
+               \r
+               self.shiftMode = False\r
+               self.text = text\r
+               self.selectedKey = 0\r
+               \r
+               self["header"] = Label(title)\r
+               self["text"] = Label(self.text)\r
+               self["list"] = VirtualKeyBoardList([])\r
+               \r
+               self["actions"] = ActionMap(["OkCancelActions", "WizardActions", "ColorActions"],\r
+                       {\r
+                               "ok": self.okClicked,\r
+                               "cancel": self.exit,\r
+                               "left": self.left,\r
+                               "right": self.right,\r
+                               "up": self.up,\r
+                               "down": self.down,\r
+                               "red": self.backClicked,\r
+                               "green": self.ok\r
+                       }, -2)\r
+               \r
+               self.onLayoutFinish.append(self.buildVirtualKeyBoard)\r
+\r
+       def buildVirtualKeyBoard(self, selectedKey=0):\r
+               list = []\r
+               \r
+               if self.shiftMode:\r
+                       self.k_list = self.shiftkeys_list\r
+                       for keys in self.k_list:\r
+                               if selectedKey < 12 and selectedKey > -1:\r
+                                       list.append(VirtualKeyBoardEntryComponent(keys, selectedKey,True))\r
+                               else:\r
+                                       list.append(VirtualKeyBoardEntryComponent(keys, -1,True))\r
+                               selectedKey -= 12\r
+               else:\r
+                       self.k_list = self.keys_list\r
+                       for keys in self.k_list:\r
+                               if selectedKey < 12 and selectedKey > -1:\r
+                                       list.append(VirtualKeyBoardEntryComponent(keys, selectedKey))\r
+                               else:\r
+                                       list.append(VirtualKeyBoardEntryComponent(keys, -1))\r
+                               selectedKey -= 12\r
+               \r
+               self["list"].setList(list)\r
+\r
+       \r
+       def backClicked(self):\r
+               self.text = self["text"].getText()[:-1]\r
+               self["text"].setText(self.text)\r
+                       \r
+       def okClicked(self):\r
+               if self.shiftMode:\r
+                       list = self.shiftkeys_list\r
+               else:\r
+                       list = self.keys_list\r
+               \r
+               selectedKey = self.selectedKey\r
+\r
+               for x in list:\r
+                       if selectedKey < 12:\r
+                               text = x[selectedKey]\r
+                               break\r
+                       else:\r
+                               selectedKey -= 12\r
+\r
+               text = text.encode("utf-8")\r
+\r
+               if text == "EXIT":\r
+                       self.close(None)\r
+               \r
+               elif text == "BACKSPACE":\r
+                       self.text = self["text"].getText()[:-1]\r
+                       self["text"].setText(self.text)\r
+               \r
+               elif text == "CLEAR":\r
+                       self.text = ""\r
+                       self["text"].setText(self.text)\r
+               \r
+               elif text == "SHIFT":\r
+                       if self.shiftMode:\r
+                               self.shiftMode = False\r
+                       else:\r
+                               self.shiftMode = True\r
+                       \r
+                       self.buildVirtualKeyBoard(self.selectedKey)\r
+               \r
+               elif text == "SPACE":\r
+                       self.text += " "\r
+                       self["text"].setText(self.text)\r
+               \r
+               elif text == "OK":\r
+                       self.close(self["text"].getText())\r
+               \r
+               else:\r
+                       self.text = self["text"].getText()\r
+                       self.text += text\r
+                       self["text"].setText(self.text)\r
+\r
+       def ok(self):\r
+               self.close(self["text"].getText())\r
+\r
+       def exit(self):\r
+               self.close(None)\r
+\r
+       def left(self):\r
+               self.selectedKey -= 1\r
+               \r
+               if self.selectedKey == -1:\r
+                       self.selectedKey = 11\r
+               elif self.selectedKey == 11:\r
+                       self.selectedKey = 23\r
+               elif self.selectedKey == 23:\r
+                       self.selectedKey = 35\r
+               elif self.selectedKey == 35:\r
+                       self.selectedKey = 47\r
+               elif self.selectedKey == 47:\r
+                       self.selectedKey = 59\r
+               \r
+               self.showActiveKey()\r
+\r
+       def right(self):\r
+               self.selectedKey += 1\r
+               \r
+               if self.selectedKey == 12:\r
+                       self.selectedKey = 0\r
+               elif self.selectedKey == 24:\r
+                       self.selectedKey = 12\r
+               elif self.selectedKey == 36:\r
+                       self.selectedKey = 24\r
+               elif self.selectedKey == 48:\r
+                       self.selectedKey = 36\r
+               elif self.selectedKey == 60:\r
+                       self.selectedKey = 48\r
+               \r
+               self.showActiveKey()\r
+\r
+       def up(self):\r
+               self.selectedKey -= 12\r
+               \r
+               if self.selectedKey < 0:\r
+                       self.selectedKey += 60\r
+               \r
+               self.showActiveKey()\r
+\r
+       def down(self):\r
+               self.selectedKey += 12\r
+               \r
+               if self.selectedKey > 59:\r
+                       self.selectedKey -= 60\r
+               \r
+               self.showActiveKey()\r
+\r
+       def showActiveKey(self):\r
+               self.buildVirtualKeyBoard(self.selectedKey)\r
index cee057d..23d6253 100644 (file)
@@ -84,7 +84,7 @@ class Wizard(Screen):
                                        timeoutstep = str(attrs.get('timeoutstep'))
                                else:
                                        timeoutstep = ''
-                               self.wizard[self.lastStep] = {"id": id, "condition": "", "text": "", "timeout": timeout, "timeoutaction": timeoutaction, "timeoutstep": timeoutstep, "list": [], "config": {"screen": None, "args": None, "type": "" }, "code": "", "codeafter": "", "nextstep": nextstep}
+                               self.wizard[self.lastStep] = {"id": id, "condition": "", "text": "", "timeout": timeout, "timeoutaction": timeoutaction, "timeoutstep": timeoutstep, "list": [], "config": {"screen": None, "args": None, "type": "" }, "code": "", "codeafter": "", "code_async": "", "codeafter_async": "", "nextstep": nextstep}
                        elif (name == "text"):
                                self.wizard[self.lastStep]["text"] = string.replace(str(attrs.get('value')), "\\n", "\n")
                        elif (name == "displaytext"):
@@ -119,6 +119,7 @@ class Wizard(Screen):
                                        if (attrs.has_key('evaluation')):
                                                self.wizard[self.lastStep]["config"]["evaluation"] = str(attrs.get('evaluation'))
                        elif (name == "code"):
+                               self.async_code = attrs.has_key('async') and str(attrs.get('async')) == "yes"
                                if attrs.has_key('pos') and str(attrs.get('pos')) == "after":
                                        self.codeafter = True
                                else:
@@ -129,10 +130,16 @@ class Wizard(Screen):
                def endElement(self, name):
                        self.currContent = ""
                        if name == 'code':
-                               if self.codeafter:
-                                       self.wizard[self.lastStep]["codeafter"] = self.wizard[self.lastStep]["codeafter"].strip()
+                               if self.async_code:
+                                       if self.codeafter:
+                                               self.wizard[self.lastStep]["codeafter_async"] = self.wizard[self.lastStep]["codeafter_async"].strip()
+                                       else:
+                                               self.wizard[self.lastStep]["code_async"] = self.wizard[self.lastStep]["code_async"].strip()
                                else:
-                                       self.wizard[self.lastStep]["code"] = self.wizard[self.lastStep]["code"].strip()
+                                       if self.codeafter:
+                                               self.wizard[self.lastStep]["codeafter"] = self.wizard[self.lastStep]["codeafter"].strip()
+                                       else:
+                                               self.wizard[self.lastStep]["code"] = self.wizard[self.lastStep]["code"].strip()
                        elif name == 'condition':
                                self.wizard[self.lastStep]["condition"] = self.wizard[self.lastStep]["condition"].strip()
                        elif name == 'step':
@@ -141,13 +148,19 @@ class Wizard(Screen):
                                                                
                def characters(self, ch):
                        if self.currContent == "code":
-                               if self.codeafter:
-                                       self.wizard[self.lastStep]["codeafter"] = self.wizard[self.lastStep]["codeafter"] + ch
+                               if self.async_code:
+                                       if self.codeafter:
+                                               self.wizard[self.lastStep]["codeafter_async"] = self.wizard[self.lastStep]["codeafter_async"] + ch
+                                       else:
+                                               self.wizard[self.lastStep]["code_async"] = self.wizard[self.lastStep]["code_async"] + ch
                                else:
-                                       self.wizard[self.lastStep]["code"] = self.wizard[self.lastStep]["code"] + ch
+                                       if self.codeafter:
+                                               self.wizard[self.lastStep]["codeafter"] = self.wizard[self.lastStep]["codeafter"] + ch
+                                       else:
+                                               self.wizard[self.lastStep]["code"] = self.wizard[self.lastStep]["code"] + ch
                        elif self.currContent == "condition":
                                 self.wizard[self.lastStep]["condition"] = self.wizard[self.lastStep]["condition"] + ch
-
+       
        def __init__(self, session, showSteps = True, showStepSlider = True, showList = True, showConfig = True):
                Screen.__init__(self, session)
 
@@ -312,21 +325,24 @@ class Wizard(Screen):
                                else:
                                        self.currStep = self.getStepWithID(nextStep)
 
+               print_now = True
                if ((currStep == self.numSteps and self.wizard[currStep]["nextstep"] is None) or self.wizard[currStep]["id"] == "end"): # wizard finished
                        print "wizard finished"
                        self.markDone()
                        self.close()
                else:
+                       self.codeafter = True
                        self.runCode(self.wizard[currStep]["codeafter"])
-                       if self.wizard[currStep]["nextstep"] is not None:
-                               self.currStep = self.getStepWithID(self.wizard[currStep]["nextstep"])
-                       if gotoStep is not None:
-                               self.currStep = self.getStepWithID(gotoStep)
-                       self.currStep += 1
-                       self.updateValues()
-
-               print "Now: " + str(self.currStep)
+                       self.prevStep = currStep
+                       self.gotoStep = gotoStep
+                       if not self.runCode(self.wizard[currStep]["codeafter_async"]):
+                               self.afterAsyncCode()
+                       else:
+                               if self.updateValues in self.onShown:
+                                       self.onShown.remove(self.updateValues)
 
+               if print_now:
+                       print "Now: " + str(self.currStep)
 
        def ok(self):
                print "OK"
@@ -341,7 +357,8 @@ class Wizard(Screen):
                                # for this. If there is one, please do a more specific check
                                # and/or a comment in which situation there is no run()
                                if callable(getattr(self.configInstance, "runAsync", None)):
-                                       self.onShown.remove(self.updateValues)
+                                       if self.updateValues in self.onShown:
+                                               self.onShown.remove(self.updateValues)
                                        self.configInstance.runAsync(self.finished)
                                        return
                                else:
@@ -371,7 +388,7 @@ class Wizard(Screen):
        def up(self):
                self.resetCounter()
                if (self.showConfig and self.wizard[self.currStep]["config"]["screen"] != None  or self.wizard[self.currStep]["config"]["type"] == "dynamic"):
-                               self["config"].instance.moveSelection(self["config"].instance.moveUp)
+                       self["config"].instance.moveSelection(self["config"].instance.moveUp)
                elif (self.showList and len(self.wizard[self.currStep]["evaluatedlist"]) > 0):
                        self["list"].selectPrevious()
                        if self.wizard[self.currStep].has_key("onselect"):
@@ -415,7 +432,9 @@ class Wizard(Screen):
                if code != "":
                        print "code", code
                        exec(code)
-                       
+                       return True
+               return False
+
        def getTranslation(self, text):
                return _(text)
                        
@@ -445,10 +464,13 @@ class Wizard(Screen):
                        del self.configInstance["config"]
                        self.configInstance.doClose()
                        self.configInstance = None
-               
+
                self.condition = True
                exec (self.wizard[self.currStep]["condition"])
-               if self.condition:
+               if not self.condition:
+                       self.currStep += 1
+                       self.updateValues()
+               else:
                        if len(self.stepHistory) == 0 or self.stepHistory[-1] != self.currStep:
                                self.stepHistory.append(self.currStep)
                        print "wizard step:", self.wizard[self.currStep]
@@ -470,8 +492,27 @@ class Wizard(Screen):
                                for x in self.lcdCallbacks:
                                        x(displaytext)
                                
+                       self.codeafter=False
                        self.runCode(self.wizard[self.currStep]["code"])
-                       
+                       if self.runCode(self.wizard[self.currStep]["code_async"]):
+                               if self.updateValues in self.onShown:
+                                       self.onShown.remove(self.updateValues)
+                       else:
+                               self.afterAsyncCode()
+
+       def afterAsyncCode(self):
+               if not self.updateValues in self.onShown:
+                       self.onShown.append(self.updateValues)
+
+               if self.codeafter:
+                       if self.wizard[self.prevStep]["nextstep"] is not None:
+                               self.currStep = self.getStepWithID(self.wizard[self.prevStep]["nextstep"])
+                       if self.gotoStep is not None:
+                               self.currStep = self.getStepWithID(self.gotoStep)
+                       self.currStep += 1
+                       self.updateValues()
+                       print "Now: " + str(self.currStep)
+               else:
                        if self.showList:
                                print "showing list,", self.currStep
                                for renderer in self.renderer:
@@ -482,7 +523,7 @@ class Wizard(Screen):
                                                        print "setZPosition"
                                                        rootrenderer.instance.setZPosition(1)
                                                renderer = renderer.source
-                                               
+
                                #self["list"].instance.setZPosition(1)
                                self.list = []
                                if (self.wizard[self.currStep].has_key("dynamiclist")):
@@ -524,7 +565,7 @@ class Wizard(Screen):
                                                self["config"].l.setList(self.configInstance["config"].list)
                                                callbacks = self.configInstance["config"].onSelectionChanged
                                                self.configInstance["config"].destroy()
-                                               print "clearConfigList", self.configInstance["config"], self["config"] 
+                                               print "clearConfigList", self.configInstance["config"], self["config"]
                                                self.configInstance["config"] = self["config"]
                                                self.configInstance["config"].onSelectionChanged = callbacks
                                                print "clearConfigList", self.configInstance["config"], self["config"]
@@ -533,10 +574,7 @@ class Wizard(Screen):
                        else:
                                if self.has_key("config"):
                                        self["config"].hide()
-               else: # condition false
-                               self.currStep += 1
-                               self.updateValues()
-                               
+
        def timeoutCounterFired(self):
                self.timeoutCounter -= 1
                print "timeoutCounter:", self.timeoutCounter
index 8f05d53..7de05d2 100644 (file)
@@ -282,9 +282,9 @@ PyObject *New_iRecordableServicePtr(const ePtr<iRecordableService> &ptr)
 
 /* needed for service groups */
 
-PyObject *getBestPlayableServiceReference(const eServiceReference &bouquet_ref, const eServiceReference &ignore);
+PyObject *getBestPlayableServiceReference(const eServiceReference &bouquet_ref, const eServiceReference &ignore, bool simulate=false);
 %{
-PyObject *getBestPlayableServiceReference(const eServiceReference &bouquet_ref, const eServiceReference &ignore)
+PyObject *getBestPlayableServiceReference(const eServiceReference &bouquet_ref, const eServiceReference &ignore, bool simulate=false)
 {
        eStaticServiceDVBBouquetInformation info;
        if (info.isPlayable(bouquet_ref, ignore))
index 0385b9c..02fc450 100644 (file)
@@ -240,7 +240,7 @@ public:
        virtual int getLength(const eServiceReference &ref);
        virtual SWIG_VOID(RESULT) getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &SWIG_OUTPUT, time_t start_time=-1);
                // returns true when not implemented
-       virtual int isPlayable(const eServiceReference &ref, const eServiceReference &ignore);
+       virtual int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate=false);
 
        virtual int getInfo(const eServiceReference &ref, int w);
        virtual std::string getInfoString(const eServiceReference &ref,int w);
index f34237d..eb2757a 100644 (file)
@@ -239,7 +239,7 @@ int iStaticServiceInformation::getLength(const eServiceReference &ref)
        return -1;
 }
 
-int iStaticServiceInformation::isPlayable(const eServiceReference &ref, const eServiceReference &ignore)
+int iStaticServiceInformation::isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate)
 {
        return 0;
 }
index a873576..7e6c033 100644 (file)
@@ -31,8 +31,6 @@
 #error no byte order defined!
 #endif
 
-#define TSPATH "/media/hdd"
-
 class eStaticServiceDVBInformation: public iStaticServiceInformation
 {
        DECLARE_REF(eStaticServiceDVBInformation);
@@ -174,17 +172,14 @@ void PutSatelliteDataToDict(ePyObject &dict, eDVBFrontendParametersSatellite &fe
                                case eDVBFrontendParametersSatellite::RollOff::alpha_0_20: tmp="0.20"; break;
                        }
                        PutToDict(dict, "roll off", tmp);
-                       if (feparm.modulation == eDVBFrontendParametersSatellite::Modulation::M8PSK)
+                       switch(feparm.pilot)
                        {
-                               switch(feparm.pilot)
-                               {
-                                       case eDVBFrontendParametersSatellite::Pilot::On: tmp="ON"; break;
-                                       case eDVBFrontendParametersSatellite::Pilot::Off: tmp="OFF"; break;
-                                       default:
-                                       case eDVBFrontendParametersSatellite::Pilot::Unknown: tmp="AUTO"; break;
-                               }
-                               PutToDict(dict, "pilot", tmp);
+                               case eDVBFrontendParametersSatellite::Pilot::On: tmp="ON"; break;
+                               case eDVBFrontendParametersSatellite::Pilot::Off: tmp="OFF"; break;
+                               default:
+                               case eDVBFrontendParametersSatellite::Pilot::Unknown: tmp="AUTO"; break;
                        }
+                       PutToDict(dict, "pilot", tmp);
                        tmp="DVB-S2";
                        break;
        }
@@ -412,7 +407,7 @@ RESULT eStaticServiceDVBBouquetInformation::getName(const eServiceReference &ref
                return -1;
 }
 
-int eStaticServiceDVBBouquetInformation::isPlayable(const eServiceReference &ref, const eServiceReference &ignore)
+int eStaticServiceDVBBouquetInformation::isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate)
 {
        if (ref.flags & eServiceReference::isGroup)
        {
@@ -453,7 +448,7 @@ int eStaticServiceDVBBouquetInformation::isPlayable(const eServiceReference &ref
                                { 2, 1, 3 }  // -T -S -C
                        };
                        ((const eServiceReferenceDVB&)*it).getChannelID(chid);
-                       int tmp=res->canAllocateChannel(chid, chid_ignore);
+                       int tmp=res->canAllocateChannel(chid, chid_ignore, simulate);
                        switch(tmp)
                        {
                                case 0:
@@ -1501,9 +1496,16 @@ RESULT eDVBServicePlay::timeshift(ePtr<iTimeshiftService> &ptr)
        {
                if (!m_timeshift_enabled)
                {
-                               /* we need enough diskspace */
+                       /* query config path */
+                       std::string tspath;
+                       if(ePythonConfigQuery::getConfigValue("config.usage.timeshift_path", tspath) == -1){
+                               eDebug("could not query ts path from config");
+                               return -4;
+                       }
+                       tspath.append("/");
+                       /* we need enough diskspace */
                        struct statfs fs;
-                       if (statfs(TSPATH "/.", &fs) < 0)
+                       if (statfs(tspath.c_str(), &fs) < 0)
                        {
                                eDebug("statfs failed!");
                                return -2;
@@ -2121,12 +2123,23 @@ RESULT eDVBServicePlay::startTimeshift()
        if (!m_record)
                return -3;
 
-       char templ[]=TSPATH "/timeshift.XXXXXX";
+       std::string tspath;
+       if(ePythonConfigQuery::getConfigValue("config.usage.timeshift_path", tspath) == -1){ 
+               eDebug("could not query ts path");
+               return -5;
+       }
+       tspath.append("/timeshift.XXXXXX");
+       char* templ;
+       templ = new char[tspath.length() + 1];
+       strcpy(templ, tspath.c_str());
+
        m_timeshift_fd = mkstemp(templ);
-       m_timeshift_file = templ;
-       
+       m_timeshift_file = std::string(templ);
+
        eDebug("recording to %s", templ);
-       
+
+       delete [] templ;
+
        if (m_timeshift_fd < 0)
        {
                m_record = 0;
index 85e97ea..d19b92d 100644 (file)
@@ -293,7 +293,7 @@ public:
        eServiceReference &getPlayableService() { return m_playable_service; }
        RESULT getName(const eServiceReference &ref, std::string &name);
        int getLength(const eServiceReference &ref);
-       int isPlayable(const eServiceReference &ref, const eServiceReference &ignore);
+       int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate=false);
        RESULT getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &ptr, time_t start_time);
 };
 
index 42f8305..173a2cc 100644 (file)
@@ -65,6 +65,8 @@ static void addToLogbuffer(int level, const std::string &log)
 
 extern std::string getLogBuffer();
 
+#define INFOFILE "/maintainer.info"
+
 void bsodFatal()
 {
        char logfile[128];
@@ -72,6 +74,39 @@ void bsodFatal()
        FILE *f = fopen(logfile, "wb");
        
        std::string lines = getLogBuffer();
+       
+               /* find python-tracebacks, and extract "  File "-strings */
+       size_t start = 0;
+       
+       char crash_emailaddr[256] = CRASH_EMAILADDR;
+       char crash_component[256] = "enigma2";
+
+       while ((start = lines.find("\n  File \"", start)) != std::string::npos)
+       {
+               start += 9;
+               size_t end = lines.find("\"", start);
+               if (end == std::string::npos)
+                       break;
+               end = lines.rfind("/", end);
+               if (end == std::string::npos)
+                       break;
+               if (end - start >= (256 - strlen(INFOFILE)))
+                       continue;
+               char filename[256];
+               snprintf(filename, 256, "%s%s", lines.substr(start, end - start).c_str(), INFOFILE);
+               FILE *cf = fopen(filename, "r");
+               if (cf)
+               {
+                       fgets(crash_emailaddr, sizeof crash_emailaddr, cf);
+                       if (*crash_emailaddr && crash_emailaddr[strlen(crash_emailaddr)-1] == '\n')
+                               crash_emailaddr[strlen(crash_emailaddr)-1] = 0;
+
+                       fgets(crash_component, sizeof crash_component, cf);
+                       if (*crash_component && crash_component[strlen(crash_component)-1] == '\n')
+                               crash_component[strlen(crash_component)-1] = 0;
+                       fclose(cf);
+               }
+       }
 
        if (f)
        {
@@ -85,7 +120,7 @@ void bsodFatal()
 #ifdef ENIGMA2_CHECKOUT_ROOT
                fprintf(f, "enigma2 checked out from " ENIGMA2_CHECKOUT_ROOT "\n");
 #endif
-               fprintf(f, "please email this file to " CRASH_EMAILADDR "\n");
+               fprintf(f, "please email this file to %s\n", crash_emailaddr);
                std::string buffer = getLogBuffer();
                fwrite(buffer.c_str(), buffer.size(), 1, f);
                fclose(f);
@@ -134,14 +169,16 @@ void bsodFatal()
                p.clear();
        
                eRect usable_area = eRect(100, 70, my_dc->size().width() - 150, 100);
+               
+               char text[512];
+               snprintf(text, 512, "We are really sorry. Your Dreambox encountered "
+                       "a software problem, and needs to be restarted. "
+                       "Please send the logfile created in /hdd/ to %s.\n"
+                       "Your Dreambox restarts in 10 seconds!\n"
+                       "Component: %s",
+                       crash_emailaddr, crash_component);
        
-               p.renderText(usable_area, 
-                       "We are really sorry. Something happened "
-                       "which should not have happened, and "
-                       "resulted in a crash. If you want to help "
-                       "us in improving this situation, please send "
-                       "the logfile created in /hdd/ to " CRASH_EMAILADDR "."
-                       "Your receiver restarts in 10 seconds !", gPainter::RT_WRAP|gPainter::RT_HALIGN_LEFT);
+               p.renderText(usable_area, text, gPainter::RT_WRAP|gPainter::RT_HALIGN_LEFT);
        
                usable_area = eRect(100, 170, my_dc->size().width() - 180, my_dc->size().height() - 20);
        
index b40552c..88c035a 100644 (file)
--- a/mytest.py
+++ b/mytest.py
@@ -61,7 +61,7 @@ try:
        from twisted.internet import reactor
 
        def runReactor():
-               reactor.run()
+               reactor.run(installSignalHandlers=False)
 except ImportError:
        print "twisted not available"
        def runReactor():
index 106cc9b..0272793 100644 (file)
@@ -5,7 +5,7 @@ GETTEXT=xgettext
 #MSGFMT = ./msgfmt.py
 MSGFMT = msgfmt
 
-LANGS := de en ar nl es is it da sv no fr fi tr ca cs hr hu ru pt el lt pl
+LANGS := de en ar nl es is it da sv no fr fi tr ca cs hr hu ru pt el lt pl uk
 LANGPO := $(foreach LANG, $(LANGS),$(LANG).po)
 LANGMO := $(foreach LANG, $(LANGS),$(LANG).mo)
 
index 0c9f024..51720f3 100755 (executable)
--- a/po/ar.po
+++ b/po/ar.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2006-01-10 01:17+0300\n"
 "Last-Translator: hazem <moustafagamal@hotmail.com>\n"
 "Language-Team: Arabic <moustafagamal@hotmail.com>\n"
@@ -89,6 +89,12 @@ msgstr ""
 msgid "(show optional DVD audio menu)"
 msgstr ""
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -380,6 +386,11 @@ msgid "Arabic"
 msgstr ""
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -417,9 +428,6 @@ msgstr ""
 msgid "Automatic"
 msgstr ""
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "بحث آلـى"
 
@@ -492,6 +500,9 @@ msgstr "الإضاءه"
 msgid "Burn DVD"
 msgstr ""
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -653,6 +664,9 @@ msgstr ""
 msgid "Complete"
 msgstr ""
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "وضع التهيئه"
 
@@ -702,6 +716,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr ""
 
@@ -820,9 +837,6 @@ msgstr "دايزك أ/ب"
 msgid "DiSEqC A/B/C/D"
 msgstr "دايزك أ/ب/ج/د"
 
-msgid "DiSEqC Mode"
-msgstr "وضع الدايزك"
-
 msgid "DiSEqC mode"
 msgstr "وضعيـه الدايزك"
 
@@ -1006,9 +1020,15 @@ msgstr "خطأ - فشل البحث (%s)!"
 msgid "East"
 msgstr "شرق"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr ""
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1054,6 +1074,9 @@ msgstr ""
 msgid "Encryption Key"
 msgstr ""
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr ""
 
@@ -1089,6 +1112,12 @@ msgstr ""
 msgid "Enter Rewind at speed"
 msgstr ""
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr ""
 
@@ -1179,6 +1208,12 @@ msgstr "الضبط الدقيق"
 msgid "Finished"
 msgstr ""
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr ""
 
@@ -1282,6 +1317,9 @@ msgstr ""
 msgid "Harddisk standby after"
 msgstr ""
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr ""
 
@@ -1297,6 +1335,12 @@ msgstr ""
 msgid "IP Address"
 msgstr "عنوان IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr ""
 
@@ -1756,21 +1800,21 @@ msgid ""
 msgstr ""
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -2025,9 +2069,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "انتظر من فضلك ...يتم تحميل القائمه..."
 
@@ -2109,6 +2165,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr ""
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr ""
 
@@ -2245,6 +2304,9 @@ msgstr ""
 msgid "Reset"
 msgstr "إعاده الضبط"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr ""
 
@@ -2479,6 +2541,12 @@ msgstr ""
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2524,9 +2592,15 @@ msgstr "معلومات القناه"
 msgid "Services"
 msgstr "القنوات/الخدمات"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr ""
 
@@ -2584,6 +2658,9 @@ msgstr ""
 msgid "Simple"
 msgstr "بسيطه"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "مفرد"
 
@@ -2753,6 +2830,9 @@ msgstr "النـظام"
 msgid "TRANSLATOR_INFO"
 msgstr ""
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "التليفزبـون"
 
@@ -3004,9 +3084,15 @@ msgstr "منطقه الوقت"
 msgid "Title"
 msgstr ""
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr ""
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3237,6 +3323,9 @@ msgstr ""
 msgid "View teletext..."
 msgstr ""
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "وضعيه الفولت"
 
@@ -3252,6 +3341,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr ""
 
@@ -3344,6 +3436,9 @@ msgstr ""
 msgid "Yes"
 msgstr "نعم"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr ""
 
@@ -3466,6 +3561,16 @@ msgid ""
 "Press OK to start upgrade."
 msgstr ""
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr ""
 
@@ -3496,6 +3601,12 @@ msgstr "الغاء تحرير المفضله"
 msgid "about to start"
 msgstr ""
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr ""
 
@@ -3549,6 +3660,14 @@ msgid ""
 "following backup:\n"
 msgstr ""
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3564,6 +3683,10 @@ msgstr ""
 msgid "blacklist"
 msgstr ""
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr ""
 
@@ -3690,6 +3813,9 @@ msgstr ""
 msgid "end favourites edit"
 msgstr "إنتهاء تحرير المفضله"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3705,6 +3831,21 @@ msgstr ""
 msgid "exit movielist"
 msgstr ""
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -3846,6 +3987,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr ""
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr ""
 
@@ -3906,7 +4059,7 @@ msgstr ""
 msgid "once"
 msgstr "مره واحده"
 
-msgid "only /etc/enigma2 directory"
+msgid "open nameserver configuration"
 msgstr ""
 
 msgid "open servicelist"
@@ -3918,6 +4071,9 @@ msgstr ""
 msgid "open servicelist(up)"
 msgstr ""
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr ""
 
@@ -3954,6 +4110,9 @@ msgstr ""
 msgid "recording..."
 msgstr ""
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr ""
 
@@ -4030,6 +4189,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr ""
 
index 331ebe3..1fb6ad3 100755 (executable)
--- a/po/ca.po
+++ b/po/ca.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ca\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2007-08-14 10:23+0200\n"
 "Last-Translator: Oriol Pellicer <oriol@elsud.org>\n"
 "Language-Team: \n"
@@ -93,6 +93,12 @@ msgstr "(buit)"
 msgid "(show optional DVD audio menu)"
 msgstr ""
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -407,6 +413,11 @@ msgid "Arabic"
 msgstr "Àrab"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -444,9 +455,6 @@ msgstr ""
 msgid "Automatic"
 msgstr ""
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Recerca automàtica"
 
@@ -519,6 +527,9 @@ msgstr "Brillantor"
 msgid "Burn DVD"
 msgstr "Gravar DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -681,6 +692,9 @@ msgstr "Tarja Compact Flash"
 msgid "Complete"
 msgstr "Complet"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Mode configuració"
 
@@ -733,6 +747,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "No s'ha pogut crear el directori de la pel·lícula"
 
@@ -851,9 +868,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "Mode DiSEqC"
-
 msgid "DiSEqC mode"
 msgstr "mode DiSEqC"
 
@@ -1044,9 +1058,15 @@ msgstr "ERROR - ha fallat la recerca (%s)!"
 msgid "East"
 msgstr "Est"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr ""
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1092,6 +1112,9 @@ msgstr ""
 msgid "Encryption Key"
 msgstr ""
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr ""
 
@@ -1133,6 +1156,12 @@ msgstr ""
 msgid "Enter Rewind at speed"
 msgstr ""
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Entrar al menú principal..."
 
@@ -1224,6 +1253,12 @@ msgstr "Ajustaments delicats"
 msgid "Finished"
 msgstr ""
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finlandès"
 
@@ -1330,6 +1365,9 @@ msgstr "Configuració del disc dur"
 msgid "Harddisk standby after"
 msgstr "Posar el disc dur en repòs després de"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Informació jeràrquica"
 
@@ -1345,6 +1383,12 @@ msgstr "Hongarès"
 msgid "IP Address"
 msgstr "Adreça IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandès"
 
@@ -1614,7 +1658,7 @@ msgid "Mkfs failed"
 msgstr "Ha fallat el mkfs"
 
 msgid "Mode"
-msgstr ""
+msgstr "Mode"
 
 msgid "Model: "
 msgstr "Model: "
@@ -1818,21 +1862,21 @@ msgstr ""
 "Si contestes 'No' es deshabilitarà la protecció de la configuració!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -2093,9 +2137,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Carregant la llista... espera..."
 
@@ -2177,6 +2233,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr ""
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Protegir canals"
 
@@ -2313,6 +2372,9 @@ msgstr ""
 msgid "Reset"
 msgstr "Resetejar"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr ""
 
@@ -2548,6 +2610,12 @@ msgstr ""
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2599,9 +2667,15 @@ msgstr "Info del canal"
 msgid "Services"
 msgstr "Canals"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Límits activats"
 
@@ -2659,6 +2733,9 @@ msgstr "Emisions similars:"
 msgid "Simple"
 msgstr ""
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Senzill"
 
@@ -2832,6 +2909,9 @@ msgstr "Sistema"
 msgid "TRANSLATOR_INFO"
 msgstr ""
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "Sistema de TV"
 
@@ -3088,9 +3168,15 @@ msgstr "Zona horària"
 msgid "Title"
 msgstr ""
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Títol:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3329,6 +3415,9 @@ msgstr "Veure Rass interactiu..."
 msgid "View teletext..."
 msgstr "Veure teletext..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Mode voltatge"
 
@@ -3344,6 +3433,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr ""
 
@@ -3441,6 +3533,9 @@ msgstr "Any:"
 msgid "Yes"
 msgstr "Si"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Sí, fes un backup de la configuració!"
 
@@ -3589,6 +3684,16 @@ msgstr ""
 "El firmware del frontprocessor ha de ser actualitzat.\n"
 "Prem OK per a començar l'actualizació."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Tornar al canal abans de configurar el motor?"
 
@@ -3619,6 +3724,12 @@ msgstr "cancel·lar l'edició de preferits"
 msgid "about to start"
 msgstr "per a començar"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "afegir alternatives"
 
@@ -3674,6 +3785,14 @@ msgstr ""
 "segur que vols restaurar\n"
 "el següent backup:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3689,6 +3808,10 @@ msgstr "millorat"
 msgid "blacklist"
 msgstr "llista negra"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "per Exif"
 
@@ -3815,6 +3938,9 @@ msgstr "acabar el tall aquí"
 msgid "end favourites edit"
 msgstr "fi de l'edició de preferits"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3830,6 +3956,21 @@ msgstr "sortir del reproductor"
 msgid "exit movielist"
 msgstr ""
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -3973,6 +4114,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr ""
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "llista de pel·lícules"
 
@@ -4036,8 +4189,8 @@ msgstr ""
 msgid "once"
 msgstr "un sol cop"
 
-msgid "only /etc/enigma2 directory"
-msgstr "només el directori /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "obrir llista de canals"
@@ -4048,6 +4201,9 @@ msgstr "obrir llista de canals(avall)"
 msgid "open servicelist(up)"
 msgstr "obrir llista de canals(amunt)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "passa"
 
@@ -4084,6 +4240,9 @@ msgstr "gravar"
 msgid "recording..."
 msgstr "gravant..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "esborra després d'aquesta posició"
 
@@ -4160,6 +4319,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr ""
 
@@ -4485,6 +4650,9 @@ msgstr "zappejat"
 #~ msgid "minutes and"
 #~ msgstr "minuts i"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "només el directori /etc/enigma2"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "reprodueix la següent de la llista"
 
index 1638798..1449678 100755 (executable)
--- a/po/cs.po
+++ b/po/cs.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-09-28 18:09+0100\n"
 "Last-Translator: ws79 <ws79@centrum.cz>\n"
 "Language-Team: \n"
@@ -87,6 +87,12 @@ msgstr "(prázdné)"
 msgid "(show optional DVD audio menu)"
 msgstr ""
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -393,6 +399,11 @@ msgid "Arabic"
 msgstr "Arabsky"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -432,9 +443,6 @@ msgstr "Automatické přepínání scartu"
 msgid "Automatic"
 msgstr "Automatické"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Automatické prohledávání"
 
@@ -507,6 +515,9 @@ msgstr "Světlost"
 msgid "Burn DVD"
 msgstr "Vypálit DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -668,6 +679,9 @@ msgstr "Compact flash karta"
 msgid "Complete"
 msgstr "Kompletní"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Konfigurační mód"
 
@@ -720,6 +734,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Vytváření složky selhalo"
 
@@ -840,9 +857,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC Mód"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC Mód"
 
@@ -1035,9 +1049,15 @@ msgstr "CHYBA - prohledávání selhalo (%s)!"
 msgid "East"
 msgstr "Východní"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Upravit DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1083,6 +1103,9 @@ msgstr "Šifrování"
 msgid "Encryption Key"
 msgstr "Šifrovací klíč"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Typ šifrování"
 
@@ -1124,6 +1147,12 @@ msgstr "Začít přetáčení vpřed na rychlosti"
 msgid "Enter Rewind at speed"
 msgstr "Začít přetáčení zpět na rychlosti"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Vstoupit do menu..."
 
@@ -1214,6 +1243,12 @@ msgstr "Doladit"
 msgid "Finished"
 msgstr "Dokončeno"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finsky"
 
@@ -1319,6 +1354,9 @@ msgstr "Nastavení hardisku"
 msgid "Harddisk standby after"
 msgstr "Uspat disk po"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Hierarchické informace"
 
@@ -1334,6 +1372,12 @@ msgstr "Maďarsky"
 msgid "IP Address"
 msgstr "IP adresa"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandsky"
 
@@ -1814,26 +1858,22 @@ msgstr ""
 "Pokud 'Ne' tak ochrana nastavení zůstane vypnuta!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Nebyla nalazená funkční síťová karta.\n"
-"Zkontrolujte prosím, zda máte připojen síťový kabel a správně nastavenou síť."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Nebyla nalazená funkční síťová karta.\n"
-"Zkontrolujte prosím, zda máte připojen síťový kabel a správně nastavenou síť."
 
 msgid "No, but restart from begin"
 msgstr "Ne, jen restartovat"
@@ -2095,9 +2135,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Prosím čekejte... Načítá se seznam..."
 
@@ -2179,6 +2231,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr "Primární DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Ochránit služby"
 
@@ -2315,6 +2370,9 @@ msgstr "Opakovat"
 msgid "Reset"
 msgstr "Reset"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Rozlišení"
 
@@ -2553,6 +2611,12 @@ msgstr "Vyberte video mód"
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2604,9 +2668,15 @@ msgstr "Informace o programu"
 msgid "Services"
 msgstr "Programy"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Nastavit limity"
 
@@ -2664,6 +2734,9 @@ msgstr "Podobné vysílání:"
 msgid "Simple"
 msgstr "jednoduché"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Jediný"
 
@@ -2842,6 +2915,9 @@ msgstr ""
 "\n"
 "ws79"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "TV systém"
 
@@ -3123,9 +3199,15 @@ msgstr "Čas. pásmo"
 msgid "Title"
 msgstr "Titul"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Název:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3369,6 +3451,9 @@ msgstr "Prohlíže Rass interaktivně..."
 msgid "View teletext..."
 msgstr "Zobrazit teletext..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Mód napětí"
 
@@ -3384,6 +3469,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3483,6 +3571,9 @@ msgstr "Rok:"
 msgid "Yes"
 msgstr "Ano"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Ano, zazálohuj mé nastavení!"
 
@@ -3636,6 +3727,16 @@ msgstr ""
 "Firmware vašeho frontprocesoru musí být aktualizován.\n"
 "Stiskněte OK pro aktualizaci."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Přepnout zpět na program před nastavováním positioneru?"
 
@@ -3666,6 +3767,12 @@ msgstr "přerušit úpravu oblíbených"
 msgid "about to start"
 msgstr "právě začne"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "Přidat alternativy"
 
@@ -3721,6 +3828,14 @@ msgstr ""
 "jste si jistý, že chcete obnovit\n"
 "následující zálohu:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3736,6 +3851,10 @@ msgstr "lepší"
 msgid "blacklist"
 msgstr "černá listina"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "podle exif"
 
@@ -3862,6 +3981,9 @@ msgstr "ukončit střih zde"
 msgid "end favourites edit"
 msgstr "Ukončit úpravu oblíbené"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3877,6 +3999,21 @@ msgstr "ukončit přehrávač médií"
 msgid "exit movielist"
 msgstr "zavřít seznam filmů"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -4020,6 +4157,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr "přesunout PIP do halvního okna"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "seznam filmů"
 
@@ -4080,8 +4229,8 @@ msgstr ""
 msgid "once"
 msgstr "jednou"
 
-msgid "only /etc/enigma2 directory"
-msgstr "jedině adresář /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "otevřít seznam služeb"
@@ -4092,6 +4241,9 @@ msgstr "Zobrazit seznam služeb (dolu)"
 msgid "open servicelist(up)"
 msgstr "Zobrazit seznam služeb (nahoru)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "projít (pass)"
 
@@ -4128,6 +4280,9 @@ msgstr "nahrát"
 msgid "recording..."
 msgstr "nahrávání.."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "odebrat po této pozici"
 
@@ -4204,6 +4359,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "Výběr filmu"
 
@@ -4542,6 +4703,15 @@ msgstr "přepnutý"
 #~ msgstr "Nové DVD"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Nebyla nalazená funkční síťová karta.\n"
+#~ "Zkontrolujte prosím, zda máte připojen síťový kabel a správně nastavenou "
+#~ "síť."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4550,6 +4720,15 @@ msgstr "přepnutý"
 #~ "Zkontrolujte prosím, zda máte připojen kompatibilní WLAN USB klíč nebo "
 #~ "povolte LAN síť."
 
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Nebyla nalazená funkční síťová karta.\n"
+#~ "Zkontrolujte prosím, zda máte připojen síťový kabel a správně nastavenou "
+#~ "síť."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Ne, dovolte mi vybrat defaultní seznamy"
 
@@ -4749,6 +4928,9 @@ msgstr "přepnutý"
 #~ msgid "minutes and"
 #~ msgstr "minuty a"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "jedině adresář /etc/enigma2"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "přehrát další položku v playlistu"
 
index 55016cd..30a6c97 100755 (executable)
--- a/po/da.po
+++ b/po/da.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Enigma2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-28 11:20+0100\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-10-23 19:33+0100\n"
 "Last-Translator: Ingmar Jørgensen <dreambox@ingmar.dk>\n"
 "Language-Team: jazzydane <dreambox@ingmar.dk>\n"
@@ -86,6 +86,12 @@ msgstr "(Tom)"
 msgid "(show optional DVD audio menu)"
 msgstr "(Vis ekstra DVD lyd menu)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ".NFI download fejlede:"
 
@@ -402,6 +408,11 @@ msgid "Arabic"
 msgstr "Arabisk"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -441,9 +452,6 @@ msgstr "Auto Scart skift"
 msgid "Automatic"
 msgstr "Automatisk"
 
-msgid "Automatic SSID lookup"
-msgstr "Automatisk SSID fremfinding"
-
 msgid "Automatic Scan"
 msgstr "Automatisk Søgning"
 
@@ -516,6 +524,9 @@ msgstr "Lysstyrke"
 msgid "Burn DVD"
 msgstr "Brænde DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr "Brænd til DVD..."
 
@@ -677,6 +688,9 @@ msgstr "Kompakt flash kort"
 msgid "Complete"
 msgstr "Færdig"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Konfigurations Type"
 
@@ -729,6 +743,9 @@ msgstr "Kunne ikke forbinde til Dreambox .NFI image feed serveren:"
 msgid "Could not load Medium! No disc inserted?"
 msgstr "Kunne ikke indlæse media! Ingen disk isat?"
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Oprette Movie folder fejlede"
 
@@ -849,9 +866,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC Type"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC type"
 
@@ -1048,9 +1062,15 @@ msgstr "FEJL - kan ikke søge (%s)!"
 msgid "East"
 msgstr "Øst"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Ændre DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr "Rediger kapitler i aktuel titel"
 
@@ -1096,6 +1116,9 @@ msgstr "Kodning"
 msgid "Encryption Key"
 msgstr "Kodnings Nøgle"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Kodnings Type"
 
@@ -1137,6 +1160,12 @@ msgstr "Nuværende hastighed ved spoling"
 msgid "Enter Rewind at speed"
 msgstr "Sæt Tilbagespolings hastighed"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Åbne hoved menu..."
 
@@ -1229,6 +1258,12 @@ msgstr "Fin tuning"
 msgid "Finished"
 msgstr "Færdig"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finsk"
 
@@ -1334,6 +1369,9 @@ msgstr "Harddisk Opsætning"
 msgid "Harddisk standby after"
 msgstr "Harddisk Hvile efter:"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Hiraki Information"
 
@@ -1349,6 +1387,12 @@ msgstr "Ungarsk"
 msgid "IP Address"
 msgstr "IP-Adresse"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandsk"
 
@@ -1624,7 +1668,7 @@ msgid "Mkfs failed"
 msgstr "Mkfs fejlede"
 
 msgid "Mode"
-msgstr "Format"
+msgstr "Type"
 
 msgid "Model: "
 msgstr "Model:"
@@ -1829,31 +1873,22 @@ msgstr ""
 "Siger du 'Nej' her vil opsætnings beskyttelsen ikke være tilsluttet!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Ingen virkende lokal netværksadapter fundet.\n"
-"Venligst undersøg om du har tilsluttet et netværks kabel og om dit Netværk "
-"er konfigureret rigtigt."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
-"Intet trådløst interface blev funde.\n"
-" Undersøg venligst, om du har en kompatibel WLAN enhed eller aktiver dit "
-"lokale netværks interface."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Ingen virkende trådløs netværksadapter fundet.\n"
-"Venligst undersøg om du har en kompatibel WLAN USB Stick eller at dit lokale "
-"Netværk er konfigureret rigtigt."
 
 msgid "No, but restart from begin"
 msgstr "Nej, men genstart fra begyndelse"
@@ -2124,9 +2159,21 @@ msgstr ""
 "Benyt venligst OP og NED tasten til at vælge sprog. Tryk bagefter på OK "
 "knappen."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Vent venligst på verificering af md5 signatur..."
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Vent venligst... Henter liste..."
 
@@ -2208,6 +2255,9 @@ msgstr "Gennemsyns menu"
 msgid "Primary DNS"
 msgstr "Primær DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Beskytte Kanaler?"
 
@@ -2344,6 +2394,9 @@ msgstr "Gentagelser"
 msgid "Reset"
 msgstr "Genstart"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Opløsning"
 
@@ -2581,6 +2634,12 @@ msgstr "Vælg video type"
 msgid "Selected source image"
 msgstr "Vælg kilde image"
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr "Adskil titler med en hoved menu"
 
@@ -2632,9 +2691,15 @@ msgstr "Kanalinfo"
 msgid "Services"
 msgstr "Kanaler"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr "Sæt som standard interface"
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Indstil limits"
 
@@ -2692,6 +2757,9 @@ msgstr "Samme udsendelser:"
 msgid "Simple"
 msgstr "Simpel"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Enkelt"
 
@@ -2871,6 +2939,9 @@ msgstr ""
 "\n"
 "http://www.dream-multimedia-tv.de/board/index.php?sid="
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "TV System"
 
@@ -3180,9 +3251,15 @@ msgstr "Tidszone"
 msgid "Title"
 msgstr "Titel"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Titel:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3427,6 +3504,9 @@ msgstr "Se Rass interaktivi..."
 msgid "View teletext..."
 msgstr "Se teletekst..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Spændings type"
 
@@ -3442,6 +3522,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3705,6 +3788,16 @@ msgstr ""
 "Din frontprocessor skal opdateres.\n"
 "Tryk OK for at starte opdateringen."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Skift tilbage til kanal før Motor Opsætning?"
 
@@ -3735,6 +3828,12 @@ msgstr "Afbryd favorit redigering"
 msgid "about to start"
 msgstr "Ved at starte"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "Tilføj alternativer"
 
@@ -3790,6 +3889,14 @@ msgstr ""
 "Er du sikker på at du vil gendanne\n"
 "følgende backup:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr "lyd spor"
 
@@ -3805,6 +3912,10 @@ msgstr "Bedre"
 msgid "blacklist"
 msgstr "Sortliste"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "Via Exif"
 
@@ -3931,6 +4042,9 @@ msgstr "Afslut klip her"
 msgid "end favourites edit"
 msgstr "Afslut favorit redigering"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr "svarende til"
 
@@ -3946,6 +4060,21 @@ msgstr "Afslut medieafspiller"
 msgid "exit movielist"
 msgstr "Afslutte Filmliste"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr "mislykkedes"
 
@@ -4089,6 +4218,18 @@ msgstr "måned"
 msgid "move PiP to main picture"
 msgstr "Flytte PiP til hoved billede"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "Film liste"
 
@@ -4149,8 +4290,8 @@ msgstr "på LÆS KUN media"
 msgid "once"
 msgstr "En gang"
 
-msgid "only /etc/enigma2 directory"
-msgstr "Kun /etc/enigma2 direktorie"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Åbne kanalliste"
@@ -4161,6 +4302,9 @@ msgstr "Åbne kanalliste(ned)"
 msgid "open servicelist(up)"
 msgstr "Åbne kanalliste(op)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "Ok"
 
@@ -4197,6 +4341,9 @@ msgstr "Optage"
 msgid "recording..."
 msgstr "Optager..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "Fjerne efter denne position"
 
@@ -4273,6 +4420,12 @@ msgstr "vælg .NFI flash fil"
 msgid "select image from server"
 msgstr "vælg image fra server"
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "Vælg Film"
 
@@ -4516,6 +4669,9 @@ msgstr "Zappet"
 #~ "din netværks konfiguration til standard?\n"
 #~ "\n"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Automatisk SSID fremfinding"
+
 #~ msgid "Burn"
 #~ msgstr "Brænd"
 
@@ -4643,6 +4799,15 @@ msgstr "Zappet"
 #~ msgstr "Ny DVD"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Ingen virkende lokal netværksadapter fundet.\n"
+#~ "Venligst undersøg om du har tilsluttet et netværks kabel og om dit "
+#~ "Netværk er konfigureret rigtigt."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4660,6 +4825,24 @@ msgstr "Zappet"
 #~ " Undersøg venligst at du har en kompatibel WLAN enhed eller aktiver det "
 #~ "lokale netværk interface."
 
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Intet trådløst interface blev funde.\n"
+#~ " Undersøg venligst, om du har en kompatibel WLAN enhed eller aktiver dit "
+#~ "lokale netværks interface."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Ingen virkende trådløs netværksadapter fundet.\n"
+#~ "Venligst undersøg om du har en kompatibel WLAN USB Stick eller at dit "
+#~ "lokale Netværk er konfigureret rigtigt."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Nej, lad mig vælge standard lister"
 
@@ -4905,6 +5088,9 @@ msgstr "Zappet"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "Forbundet til Tuner A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "Kun /etc/enigma2 direktorie"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "Afspil næste i spilleliste"
 
old mode 100644 (file)
new mode 100755 (executable)
index d06fb6e..7518643
--- a/po/de.po
+++ b/po/de.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
-"PO-Revision-Date: 2008-10-15 12:10+0100\n"
+"POT-Creation-Date: 2008-11-14 23:57+0100\n"
+"PO-Revision-Date: 2008-11-14 23:41+0100\n"
 "Last-Translator: Andreas Frisch <andreas.frisch@multimedia-labs.de>\n"
 "Language-Team: none\n"
 "MIME-Version: 1.0\n"
@@ -89,7 +89,13 @@ msgid "(empty)"
 msgstr "(leer)"
 
 msgid "(show optional DVD audio menu)"
-msgstr ""
+msgstr "(DVD-Audiomenü zeigen falls vorh.)"
+
+msgid "* Only available if more than one interface is active."
+msgstr "* Nur verfügbar wenn mehr als ein Netzwerkadapter aktiv ist."
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr "* Verfügbar für die Eingabe der Netzwerk SSID oder Passwortes"
 
 msgid ".NFI Download failed:"
 msgstr ""
@@ -313,7 +319,7 @@ msgid "Action on long powerbutton press"
 msgstr "Aktion beim langen Druck auf Power"
 
 msgid "Action:"
-msgstr ""
+msgstr "Aktion:"
 
 msgid "Activate Picture in Picture"
 msgstr "Bild in Bild aktivieren"
@@ -408,10 +414,17 @@ msgid "Arabic"
 msgstr "Arabisch"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+"Sind Sie sicher, das diese Netzwerkkonfiguration aktiviert werden soll?\n"
+"\n"
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
-"Sind Sie sicher, dass Sie die Netzwerk-Adapter neu starten wollen?\n"
+"Sind Sie sicher, dass Sie die Netzwerkadapter neu starten wollen?\n"
 "\n"
 
 msgid "Artist:"
@@ -447,9 +460,6 @@ msgstr "Automatische Scart-Umschaltung"
 msgid "Automatic"
 msgstr "Automatisch"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Automatische Suche"
 
@@ -523,6 +533,9 @@ msgstr "Helligkeit"
 msgid "Burn DVD"
 msgstr "Brenne DVD"
 
+msgid "Burn existing image to DVD"
+msgstr "Vorhandenes Image auf DVD brennen"
+
 msgid "Burn to DVD..."
 msgstr "Auf DVD brennen..."
 
@@ -574,7 +587,7 @@ msgid "Change bouquets in quickzap"
 msgstr "Bouquet wechseln beim Quickzap"
 
 msgid "Change dir."
-msgstr ""
+msgstr "Verzeichnis wechseln"
 
 msgid "Change pin code"
 msgstr "Pincode ändern"
@@ -684,6 +697,9 @@ msgstr "Compact-Flash-Karte"
 msgid "Complete"
 msgstr "Komplett"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr "Komplex (erlaubt Mischen versch. Ton-u. Bildformate)"
+
 msgid "Configuration Mode"
 msgstr "Konfiguration"
 
@@ -736,6 +752,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr "Konnte das Medium nicht laden! Keine DVD eingelegt?"
 
+msgid "Create DVD-ISO"
+msgstr "DVD-ISO erstellen"
+
 msgid "Create movie folder failed"
 msgstr "Erzeugen des Film-Verzeichnisses fehlgeschlagen"
 
@@ -839,7 +858,7 @@ msgid "Description"
 msgstr "Beschreibung"
 
 msgid "Destination directory"
-msgstr ""
+msgstr "Zielverzeichniss"
 
 msgid "Detected HDD:"
 msgstr "Erkannte Festplatte:"
@@ -856,9 +875,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC-Modus"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC-Modus"
 
@@ -882,7 +898,7 @@ msgid "Disable Subtitles"
 msgstr "Untertitel abschalten"
 
 msgid "Disable timer"
-msgstr ""
+msgstr "Timer deaktivieren"
 
 msgid "Disabled"
 msgstr "Ausgeschaltet"
@@ -932,9 +948,6 @@ msgid ""
 "the plugin \"%s\"?"
 msgstr ""
 
-msgid "Do you really want to exit?"
-msgstr "Wollen Sie wirklich beenden?"
-
 msgid ""
 "Do you really want to initialize the harddisk?\n"
 "All data on the disk will be lost!"
@@ -1006,7 +1019,7 @@ msgid "Done - Installed or upgraded %d packages with %d errors"
 msgstr "Beendet - %d installierte oder aktualisierte Pakete mit %d Fehlern"
 
 msgid "Download"
-msgstr ""
+msgstr "Herunterladen"
 
 msgid "Download .NFI-Files for USB-Flasher"
 msgstr ""
@@ -1051,9 +1064,15 @@ msgstr "FEHLER - Suche fehlgeschlagen (%s)!"
 msgid "East"
 msgstr "Ost"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Bearbeite DNS"
 
+msgid "Edit Title"
+msgstr "Titel schneiden"
+
 msgid "Edit chapters of current title"
 msgstr "Kapitel des ausgewählten Titels schneiden"
 
@@ -1088,7 +1107,7 @@ msgid "Enable parental control"
 msgstr "Jugendschutz anschalten"
 
 msgid "Enable timer"
-msgstr ""
+msgstr "Timer aktivieren"
 
 msgid "Enabled"
 msgstr "Eingeschaltet"
@@ -1099,6 +1118,9 @@ msgstr "Verschlüsselung"
 msgid "Encryption Key"
 msgstr "WLAN Sicherheitsschlüssel"
 
+msgid "Encryption Keytype"
+msgstr "Passwortverschlüsselungstyp"
+
 msgid "Encryption Type"
 msgstr "Verschlüssellungsart"
 
@@ -1140,6 +1162,12 @@ msgstr "Anfängliche Vorlaufgeschwindigkeit eingeben"
 msgid "Enter Rewind at speed"
 msgstr "Anfängliche Rücklaufgeschwindigkeit eingeben"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr "WLAN Schlüssel/Passwort eingeben:"
+
 msgid "Enter main menu..."
 msgstr "Öffne Hauptmenü..."
 
@@ -1188,7 +1216,7 @@ msgid "Expert"
 msgstr "Experte"
 
 msgid "Extended Networksetup Plugin..."
-msgstr ""
+msgstr "Erweitertes Netzwerksetup Plugin..."
 
 msgid "Extended Setup..."
 msgstr "Erweiterte-Einstellungen..."
@@ -1232,6 +1260,12 @@ msgstr "Feineinst."
 msgid "Finished"
 msgstr "Beendet"
 
+msgid "Finished configuring your network"
+msgstr "Netzwerkkonfiguration abgeschlossen"
+
+msgid "Finished restarting your network"
+msgstr "Netzwerkneustart abgeschlossen"
+
 msgid "Finnish"
 msgstr "Finnisch"
 
@@ -1338,6 +1372,9 @@ msgstr "Festplatten-Einstellungen"
 msgid "Harddisk standby after"
 msgstr "Festplatten-Standby nach"
 
+msgid "Hidden network SSID"
+msgstr "Verstecke Netzwerk SSID"
+
 msgid "Hierarchy Information"
 msgstr "Hierarchieinformationen"
 
@@ -1353,6 +1390,12 @@ msgstr "Ungarisch"
 msgid "IP Address"
 msgstr "IP-Adresse"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr "Die ISO-Datei passt nicht auf das Dateisystem!"
+
+msgid "ISO path"
+msgstr "ISO-Ausgabepfad"
+
 msgid "Icelandic"
 msgstr "Isländisch"
 
@@ -1455,7 +1498,7 @@ msgid "Integrated Ethernet"
 msgstr "Eingebaute Netzwerkschnittstelle"
 
 msgid "Integrated Wireless"
-msgstr ""
+msgstr "Integriertes WLAN"
 
 msgid "Intermediate"
 msgstr "Fortgeschritten"
@@ -1480,7 +1523,7 @@ msgid "Italian"
 msgstr "Italienisch"
 
 msgid "Job View"
-msgstr ""
+msgstr "Jobansicht"
 
 #. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect)
 msgid "Just Scale"
@@ -1496,7 +1539,7 @@ msgid "Keymap"
 msgstr "Tastenlayout"
 
 msgid "LAN Adapter"
-msgstr ""
+msgstr "Netzwerkadapter"
 
 msgid "LNB"
 msgstr "LNB"
@@ -1560,7 +1603,7 @@ msgid "Load"
 msgstr "Laden"
 
 msgid "Load Length of Movies in Movielist"
-msgstr ""
+msgstr "Anzeigen der Spielzeit in der Filmliste"
 
 msgid "Local Network"
 msgstr "Int. Netzwerk"
@@ -1744,7 +1787,7 @@ msgid "Network:"
 msgstr "Netzwerk:"
 
 msgid "NetworkWizard"
-msgstr ""
+msgstr "Netzwerkassistent"
 
 msgid "New"
 msgstr "Neu"
@@ -1841,21 +1884,27 @@ msgstr ""
 "Wenn Sie 'NEIN' wählen, bleibt der Einstellungen-Schutz deaktiviert!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
+"Kein funktionierender Netzwerkadapter gefunden.\n"
+"Stellen Sie sicher, dass Sie ein Netzwerkkabel angeschlossen haben und das "
+"Ihr Netzwerk richtig konfiguriert ist."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
+"Kein funktionierende WLAN Netzwerkadapter gefunden.\n"
+"Stellen Sie sicher, dass Sie ein kompatibles Gerät angeschlossen haben oder "
+"aktivieren Sie den internen Netzwerkadapter."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -1968,7 +2017,7 @@ msgid "Pan&Scan"
 msgstr ""
 
 msgid "Parent Directory"
-msgstr ""
+msgstr "übergeordnetes Verzeichnis"
 
 msgid "Parental control"
 msgstr "Jugendschutz"
@@ -2005,7 +2054,7 @@ msgid "Play"
 msgstr "Abspielen"
 
 msgid "Play Audio-CD..."
-msgstr ""
+msgstr "Audio-CD abspielen"
 
 msgid "Play recorded movies..."
 msgstr "Aufgenommene Filme abspielen..."
@@ -2020,7 +2069,7 @@ msgid "Please change recording endtime"
 msgstr "Bitte Aufnahmeendzeit ändern"
 
 msgid "Please check your network settings!"
-msgstr ""
+msgstr "Bitte überprüfen Sie ihre Netzwerkeinstellungen"
 
 msgid "Please choose .NFI image file from feed server to download"
 msgstr ""
@@ -2122,9 +2171,21 @@ msgstr ""
 "Bitte benutzen Sie die Hoch/Runter-Tasten, um Ihre Sprache auszuwählen. "
 "Danach drücken Sie bitte OK."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr "Bitte warten während die Netzwerkkonfiguration aktiviert wird..."
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr "Bitte warten während das Netzwerk konfiguriert wird..."
+
+msgid "Please wait while your network is restarting..."
+msgstr "Bitte warten während das Netzwerk neu startet..."
+
+msgid "Please wait..."
+msgstr "Bitte warten..."
+
 msgid "Please wait... Loading list..."
 msgstr "Bitte warten... Liste wird geladen..."
 
@@ -2206,6 +2267,9 @@ msgstr "Vorschau des DVD-Menüs"
 msgid "Primary DNS"
 msgstr "Primärer DNS"
 
+msgid "Properties of current title"
+msgstr "Eigenschaften des ausgewählten Titels"
+
 msgid "Protect services"
 msgstr "Kanäle schützen"
 
@@ -2297,7 +2361,7 @@ msgid "Remounting stick partition..."
 msgstr ""
 
 msgid "Remove Bookmark"
-msgstr ""
+msgstr "Bookmark entfernen"
 
 msgid "Remove Plugins"
 msgstr "Plugins entfernen"
@@ -2312,10 +2376,10 @@ msgid "Remove plugins"
 msgstr "Plugins entfernen"
 
 msgid "Remove the broken .NFI file?"
-msgstr ""
+msgstr "entferne defekte .NFI Datei?"
 
 msgid "Remove the incomplete .NFI file?"
-msgstr ""
+msgstr "entferne inkomplette .NFI Datei?"
 
 msgid "Remove title"
 msgstr "Titel entfernen"
@@ -2344,6 +2408,9 @@ msgstr "Wiederholungen"
 msgid "Reset"
 msgstr "Zurücksetzen"
 
+msgid "Reset and renumerate title names"
+msgstr "Titelnamen zurücksetzen und neu nummerieren"
+
 msgid "Resolution"
 msgstr "Auflösung"
 
@@ -2568,7 +2635,7 @@ msgid "Select channel to record from"
 msgstr "Kanal auswählen, von dem aufgenommen werden soll"
 
 msgid "Select image"
-msgstr ""
+msgstr "Wähle Image"
 
 msgid "Select refresh rate"
 msgstr "Wähle Bildwiederholrate"
@@ -2580,7 +2647,13 @@ msgid "Select video mode"
 msgstr "Wähle Video-Modus"
 
 msgid "Selected source image"
-msgstr ""
+msgstr "Wähle Quell-Image"
+
+msgid "Send DiSEqC"
+msgstr "DiSEqC senden"
+
+msgid "Send DiSEqC only on satellite change"
+msgstr "DiSEqC nur bei Sat-Wechsel senden"
 
 msgid "Seperate titles with a main menu"
 msgstr "Separate Titel mit Hauptmenü"
@@ -2633,8 +2706,14 @@ msgstr "Kanal-Infos"
 msgid "Services"
 msgstr "Kanäle"
 
+msgid "Set Voltage and 22KHz"
+msgstr "Spannung und 22KHz setzen"
+
 msgid "Set as default Interface"
-msgstr ""
+msgstr "Netzwerkadapter als Standard definieren"
+
+msgid "Set interface as default Interface"
+msgstr "Setze Netzwerkadapter als Standardd"
 
 msgid "Set limits"
 msgstr "Limits setzen"
@@ -2693,6 +2772,9 @@ msgstr "Ähnliche Sendungen:"
 msgid "Simple"
 msgstr "Einfach"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr "Schlicht (bessere Kompatibilität mit alten DVD-Playern)"
+
 msgid "Single"
 msgstr "Einzeln"
 
@@ -2865,6 +2947,9 @@ msgstr "System"
 msgid "TRANSLATOR_INFO"
 msgstr ""
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr "TS-Datei ist zu groß für ISO9660 level 1!"
+
 msgid "TV System"
 msgstr "Fernsehnorm"
 
@@ -3138,6 +3223,8 @@ msgid ""
 "Timer overlap in timers.xml detected!\n"
 "Please recheck it!"
 msgstr ""
+"Timerüberlappung in der timers.xml entdeckt!\n"
+"Bitte überprüfen!"
 
 msgid "Timer sanity error"
 msgstr "Fehler bei Timerprüfung"
@@ -3160,9 +3247,15 @@ msgstr "Zeitzone"
 msgid "Title"
 msgstr "Titel"
 
+msgid "Title properties"
+msgstr "Titeleigensch."
+
 msgid "Title:"
 msgstr "Titel:"
 
+msgid "Titleset mode"
+msgstr "Titleset"
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3184,10 +3277,10 @@ msgid "Track"
 msgstr "Spur"
 
 msgid "Translation"
-msgstr ""
+msgstr "Übersetzung:"
 
 msgid "Translation:"
-msgstr ""
+msgstr "Übersetzung:"
 
 msgid "Transmission Mode"
 msgstr "Übertragungsmodus"
@@ -3301,11 +3394,14 @@ msgstr "Upgrade"
 msgid "Upgrading Dreambox... Please wait"
 msgstr "Dreambox wird aktualisiert... Bitte warten"
 
+msgid "Use"
+msgstr "Benutzen"
+
 msgid "Use DHCP"
 msgstr "Adresse automatisch beziehen (DHCP)"
 
 msgid "Use Interface"
-msgstr ""
+msgstr "Netwerkadapter aktivieren"
 
 msgid "Use Power Measurement"
 msgstr "Verwende Stromaufnahmen-Messung"
@@ -3332,7 +3428,7 @@ msgid "Use power measurement"
 msgstr "Stromaufnahme messen"
 
 msgid "Use the Networkwizard to configure your Network\n"
-msgstr ""
+msgstr "Nutzen sie den Netzwerkassistenten um Ihr Netzwerk zu konfigurieren\n"
 
 msgid ""
 "Use the left and right buttons to change an option.\n"
@@ -3407,6 +3503,9 @@ msgstr "Rass Interaktiv anzeigen..."
 msgid "View teletext..."
 msgstr "Videotext anzeigen..."
 
+msgid "Virtual KeyBoard"
+msgstr "Virtuelle Tastatur"
+
 msgid "Voltage mode"
 msgstr "Spannungs-Modus"
 
@@ -3417,19 +3516,22 @@ msgid "W"
 msgstr "W"
 
 msgid "WEP"
-msgstr ""
+msgstr "WEP"
 
 msgid "WPA"
-msgstr ""
+msgstr "WPA"
+
+msgid "WPA or WPA2"
+msgstr "WPA oder WPA2"
 
 msgid "WPA2"
-msgstr ""
+msgstr "WPA2"
 
 msgid "WSS on 4:3"
 msgstr "WSS bei 4:3"
 
 msgid "Waiting"
-msgstr ""
+msgstr "Warte"
 
 msgid "Waiting for USB stick to settle..."
 msgstr ""
@@ -3523,6 +3625,9 @@ msgstr "Jahr:"
 msgid "Yes"
 msgstr "Ja"
 
+msgid "Yes, and delete this movie"
+msgstr "Ja, diesen Film löschen"
+
 msgid "Yes, backup my settings!"
 msgstr "Ja, meine Einstellungen sichern!"
 
@@ -3617,7 +3722,7 @@ msgstr ""
 
 #, python-format
 msgid "You have to wait %s!"
-msgstr ""
+msgstr "Sie müssen %s warten!"
 
 msgid ""
 "You need a PC connected to your dreambox. If you need further instructions, "
@@ -3683,6 +3788,20 @@ msgstr ""
 "Ihre Frontprozessor-Firmware muss aktualisiert werden.\n"
 "Drücken Sie OK, um das Upgrade zu starten."
 
+msgid "Your network configuration has been activated."
+msgstr "Ihre Netzwerkkonfiguration wurde aktiviert."
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+"Ihre Netzwerkkonfiguration wurde aktiviert.\n"
+"Ein zweiter konfigurierter Netzwerkadapter wurde gefunden.\n"
+"\n"
+"Wollen Sie den zweiten Netzwerkadapter deaktivieren ?"
+
 msgid "Zap back to service before positioner setup?"
 msgstr ""
 "Zurückschalten zum Sender der vor dem\n"
@@ -3717,11 +3836,17 @@ msgstr "Favoriteneditor abbrechen"
 msgid "about to start"
 msgstr "startet gleich"
 
+msgid "activate current configuration"
+msgstr "Aktuelle Konfiguration aktivieren"
+
+msgid "add a nameserver entry"
+msgstr "DNS Servereintrag hinzufügen"
+
 msgid "add alternatives"
 msgstr "Alternativen hinzufügen"
 
 msgid "add bookmark"
-msgstr ""
+msgstr "Bookmark hinzufügen"
 
 msgid "add bouquet"
 msgstr "Bouquet einfügen"
@@ -3772,6 +3897,14 @@ msgstr ""
 "Sind Sie sicher, dass Sie die Sicherung zurückspielen wollen?\n"
 "Sicherung:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr "Format der Audiospur (%s)"
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr "Sprache der Audiospur (%s)"
+
 msgid "audio tracks"
 msgstr "Tonspuren"
 
@@ -3787,6 +3920,10 @@ msgstr "besser"
 msgid "blacklist"
 msgstr "Negativliste"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr "Brenne die Audiospur (%s)"
+
 msgid "by Exif"
 msgstr ""
 
@@ -3800,7 +3937,7 @@ msgid "chapters"
 msgstr "Kapitel"
 
 msgid "choose destination directory"
-msgstr ""
+msgstr "Wähle Zielverzeichnis"
 
 msgid "circular left"
 msgstr "links-zirkulär"
@@ -3833,7 +3970,7 @@ msgid "copy to bouquets"
 msgstr "in Bouquets kopieren"
 
 msgid "create directory"
-msgstr ""
+msgstr "Verzeichnis erstellen"
 
 msgid "daily"
 msgstr "täglich"
@@ -3841,12 +3978,12 @@ msgstr "täglich"
 msgid "day"
 msgstr "Tag"
 
-msgid "delete"
-msgstr "Löschen"
-
 msgid "delete cut"
 msgstr "Schnitt löschen"
 
+msgid "delete file"
+msgstr "Datei löschen"
+
 msgid "delete playlist entry"
 msgstr "Wiedergabelisteneintrag löschen"
 
@@ -3913,6 +4050,9 @@ msgstr "Schnitt endet hier"
 msgid "end favourites edit"
 msgstr "Favoriteneditor beenden"
 
+msgid "enigma2 and network"
+msgstr "Enigma2 und Netzwerk"
+
 msgid "equal to"
 msgstr "Gleich wie"
 
@@ -3928,6 +4068,21 @@ msgstr "Mediaplayer beenden"
 msgid "exit movielist"
 msgstr "Verlasse Filmliste"
 
+msgid "exit nameserver configuration"
+msgstr "DNS Serverkonfiguration verlassen"
+
+msgid "exit network adapter configuration"
+msgstr "Netzwerkadapterkonfiguration verlassen"
+
+msgid "exit network adapter setup menu"
+msgstr "Netzwerkadaptermenu verlassen"
+
+msgid "exit network interface list"
+msgstr "Netzwerkadapterübersicht verlassen"
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -4054,7 +4209,7 @@ msgid "menu"
 msgstr "Menü"
 
 msgid "menulist"
-msgstr ""
+msgstr "Menüliste"
 
 msgid "mins"
 msgstr "min"
@@ -4071,6 +4226,18 @@ msgstr "Monat"
 msgid "move PiP to main picture"
 msgstr "PiP tauschen und beenden"
 
+msgid "move down to last entry"
+msgstr "zum letzten Eintrag gehen"
+
+msgid "move down to next entry"
+msgstr "zum nächsten Eintrag gehen"
+
+msgid "move up to first entry"
+msgstr "zum ersten Eintrag gehen"
+
+msgid "move up to previous entry"
+msgstr "zum vorherigen Eintrag gehen"
+
 msgid "movie list"
 msgstr "Filmliste"
 
@@ -4131,8 +4298,8 @@ msgstr "auf dem nicht beschreibbaren Medium."
 msgid "once"
 msgstr "einmalig"
 
-msgid "only /etc/enigma2 directory"
-msgstr "nur Verzeichnis /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr "DNS Server Konfiguration öffnen"
 
 msgid "open servicelist"
 msgstr "Kanalliste öffnen"
@@ -4143,6 +4310,9 @@ msgstr "Kanalliste öffnen(nach unten)"
 msgid "open servicelist(up)"
 msgstr "Kanalliste öffnen(nach oben)"
 
+msgid "open virtual keyboard input help"
+msgstr "Virtuelle Tastatureingabehilfe öffnen"
+
 msgid "pass"
 msgstr "Durchgang"
 
@@ -4171,7 +4341,7 @@ msgid "previous channel in history"
 msgstr "Vorheriger Kanal im Verlauf"
 
 msgid "rebooting..."
-msgstr ""
+msgstr "starte neu..."
 
 msgid "record"
 msgstr "Aufnehmen"
@@ -4179,6 +4349,9 @@ msgstr "Aufnehmen"
 msgid "recording..."
 msgstr "nimmt auf..."
 
+msgid "remove a nameserver entry"
+msgstr "DNS Servereintrag entfernen"
+
 msgid "remove after this position"
 msgstr "Nach dieser Position entfernen"
 
@@ -4192,10 +4365,10 @@ msgid "remove before this position"
 msgstr "Vor dieser Position entfernen"
 
 msgid "remove bookmark"
-msgstr ""
+msgstr "Bookmark entfernen"
 
 msgid "remove directory"
-msgstr ""
+msgstr "Verzeichnis entfernen"
 
 msgid "remove entry"
 msgstr "Eintrag entfernen"
@@ -4224,9 +4397,15 @@ msgstr "Zum vorherigen Kapitel zurück"
 msgid "right"
 msgstr "rechts"
 
+msgid "save last directory on exit"
+msgstr "Anfangsverzeichnis beim Beenden merken"
+
 msgid "save playlist"
 msgstr "Wiedergabeliste speichern"
 
+msgid "save playlist on exit"
+msgstr "Wiedergabeliste beim Beenden speicher"
+
 msgid "scan done!"
 msgstr "Suche beendet!"
 
@@ -4247,13 +4426,19 @@ msgid "seconds"
 msgstr "Sekunden"
 
 msgid "select"
-msgstr ""
+msgstr "wähle"
 
 msgid "select .NFI flash file"
-msgstr ""
+msgstr "Wähle eine .NFI Flashdatei"
 
 msgid "select image from server"
-msgstr ""
+msgstr "Wähle ein Image vom Server"
+
+msgid "select interface"
+msgstr "Wähle einen Netzwerkadapter"
+
+msgid "select menu entry"
+msgstr "Wähle einen Menüpunkt"
 
 msgid "select movie"
 msgstr "Wähle Film"
@@ -4339,6 +4524,9 @@ msgstr "Standby"
 msgid "start cut here"
 msgstr "Schnitt hier starten"
 
+msgid "start directory"
+msgstr "Anfangsverzeichnis"
+
 msgid "start timeshift"
 msgstr "Timeshift starten"
 
@@ -4500,9 +4688,15 @@ msgstr "umgeschaltet"
 #~ "Wollen Sie das Plugin mit\n"
 #~ "dem Namen \" wirklich herunterladen?"
 
+#~ msgid "Do you really want to exit?"
+#~ msgstr "Wollen Sie wirklich beenden?"
+
 #~ msgid "Enable WLAN Support"
 #~ msgstr "Aktiviere WLAN Unterstützung"
 
+#~ msgid "Enter WLAN networ kname/SSID:"
+#~ msgstr "WLAN Netzwerkname/SSID eingeben:"
+
 #~ msgid "Games / Plugins"
 #~ msgstr "Spiele / Erweiterungen"
 
@@ -4515,6 +4709,15 @@ msgstr "umgeschaltet"
 #~ msgid "Nameserver Setup..."
 #~ msgstr "Nameserver-Einstellungen..."
 
+#~ msgid ""
+#~ "No working wireless network interface found.\n"
+#~ "Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Kein funktionierender WLAN Netzwerkadapter gefunden.\n"
+#~ "Stellen Sie sicher, dass Sie ein kompatibles Gerät angeschlossen haben "
+#~ "und das Ihr Netzwerk richtig konfiguriert ist."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Nein, Standard-Kanalliste verwenden."
 
@@ -4592,6 +4795,9 @@ msgstr "umgeschaltet"
 #~ msgid "You have to wait for"
 #~ msgstr "Sie müssen warten"
 
+#~ msgid "delete"
+#~ msgstr "Löschen"
+
 #~ msgid "equal to Socket A"
 #~ msgstr "Wie Tuner A"
 
@@ -4601,6 +4807,9 @@ msgstr "umgeschaltet"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "Verbunden mit Tuner A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "nur Verzeichnis /etc/enigma2"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "nächsten Wiedergabelisteneintrag abspielen"
 
index 3053587..355391d 100755 (executable)
--- a/po/el.po
+++ b/po/el.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-07-17 12:13+0100\n"
 "Last-Translator: \n"
 "Language-Team: \n"
@@ -83,6 +83,12 @@ msgstr "[ΚΕΝΟ]"
 msgid "(show optional DVD audio menu)"
 msgstr "(δειξε εναλλακτικο μενου ηχου DVD)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -397,6 +403,11 @@ msgid "Arabic"
 msgstr "Αραβικά"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -436,9 +447,6 @@ msgstr ""
 msgid "Automatic"
 msgstr "Αυτόματο"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Αυτόματη ανεύρεση"
 
@@ -511,6 +519,9 @@ msgstr "Φωτεινότητα"
 msgid "Burn DVD"
 msgstr ""
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -672,6 +683,9 @@ msgstr "Compact flash card"
 msgid "Complete"
 msgstr "ολοκληρώθηκε"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Mode παραμετροποίησης"
 
@@ -723,6 +737,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Αποτυχία δημιουργίας φακέλου movie"
 
@@ -841,9 +858,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC Mode"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC mode"
 
@@ -1040,9 +1054,15 @@ msgstr "Λάθος - Αποτυχία στην ανεύρεση  (%s)!"
 msgid "East"
 msgstr "Ανατολή"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Παραμετροποιήσης DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1088,6 +1108,9 @@ msgstr "Κωδικοποίηση"
 msgid "Encryption Key"
 msgstr "Key κωδικοποίησης"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Τυπος κωδικοποίησης"
 
@@ -1129,6 +1152,12 @@ msgstr "Παραμετροποιήσετε την ταχύτητα Fast Forward"
 msgid "Enter Rewind at speed"
 msgstr "Παραμετροποιήσετε την ταχύτητα Rewind "
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Είσοδος στο κεντρικό μενού..."
 
@@ -1219,6 +1248,12 @@ msgstr "Finetune"
 msgid "Finished"
 msgstr "Εκτέλεση τελείωσε"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Φιλλανδικά"
 
@@ -1326,6 +1361,9 @@ msgstr "setup σκληρόυ δίσκου"
 msgid "Harddisk standby after"
 msgstr "Ο σκληρός δίσκος θα τεθεί σε αναμονή σε"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Πληροφωρίες ιεραρχίας"
 
@@ -1341,6 +1379,12 @@ msgstr "Ουγγαρεζικά"
 msgid "IP Address"
 msgstr "Διεύθυνση IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Ισλανδικά"
 
@@ -1823,28 +1867,22 @@ msgstr ""
 "απεργοποιήμενη!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Δεν βρέθηκε ενεργοποιήμενη προσαρμογή δυκτίου.\n"
-"Σιγουρευτείτε οτι οι παραμετροποιήσης δυκτίου ειναι σοστές και τα καλόδια "
-"ειναι συνδεμένα σοστά."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Δεν βρέθηκε ενεργοποιήμενη προσαρμογή wireless.\n"
-"Σιγουρευτείτε οτι συνδέσατε ενα υποστηριζόμενο WLAN USB Stick και οι "
-"παραμετροποιήσης ειναι σοστές."
 
 msgid "No, but restart from begin"
 msgstr "Όχι. Επανεκκίνηση απο την αρχή."
@@ -2107,9 +2145,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Παρακαλώ περιμένετε … φορτώνεται η λίστα..."
 
@@ -2191,6 +2241,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr "Primary DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Προστατευμένη υπηρεσία"
 
@@ -2327,6 +2380,9 @@ msgstr ""
 msgid "Reset"
 msgstr "Reset"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Ανάλυση"
 
@@ -2565,6 +2621,12 @@ msgstr "Επιλέξτε video mode"
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2616,9 +2678,15 @@ msgstr "Πληροφορίες υπηρεσίας"
 msgid "Services"
 msgstr "Υπηρεσίες"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Θέσε όρια"
 
@@ -2676,6 +2744,9 @@ msgstr "Παρόμοια μετάδοση"
 msgid "Simple"
 msgstr "Απλό"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Απλό"
 
@@ -2848,6 +2919,9 @@ msgstr "Σύστημα"
 msgid "TRANSLATOR_INFO"
 msgstr "TRANSLATOR_INFO"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "Σύστημα TV"
 
@@ -3129,9 +3203,15 @@ msgstr "Timezone"
 msgid "Title"
 msgstr "Τίτλος"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Τίτλος:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3377,6 +3457,9 @@ msgstr ""
 msgid "View teletext..."
 msgstr "Εμφάνηση teletext..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Voltage mode"
 
@@ -3392,6 +3475,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3491,6 +3577,9 @@ msgstr "Έτος:"
 msgid "Yes"
 msgstr "Ναι"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Ναι, κάνε backup τα settings!"
 
@@ -3643,6 +3732,16 @@ msgstr ""
 "Το “frontprocessor firmware” πρέπει να αναβαθμιστεί\n"
 "Πιέστε ΟΚ για την αναβάθμιση."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Πίσω στην υπηρεσία πρώτου την παραμετροποιήση του positioner;"
 
@@ -3673,6 +3772,12 @@ msgstr "Διακοπή επεξεργασία favourite"
 msgid "about to start"
 msgstr "Είναι έτοιμο να έναρξη"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "Πρόσθεσε εναλλακτική"
 
@@ -3728,6 +3833,14 @@ msgstr ""
 "θέλετε να κάνετε restore\n"
 "το παρακάτω backup:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3743,6 +3856,10 @@ msgstr "Καλύτερα"
 msgid "blacklist"
 msgstr "Μαύρη λίστα"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "Με το Exif"
 
@@ -3869,6 +3986,9 @@ msgstr "Μάρκαρε το τέλος του “cut”"
 msgid "end favourites edit"
 msgstr "Έξοδος από την επεξεργασία favourites "
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3884,6 +4004,21 @@ msgstr "έξοδος mediaplayer"
 msgid "exit movielist"
 msgstr "έξοδος λίστα movie"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -4027,6 +4162,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr "μετάγησε PiP στην κεντρική εικόνα"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "λίστα movie "
 
@@ -4087,8 +4234,8 @@ msgstr ""
 msgid "once"
 msgstr "Μια φορά"
 
-msgid "only /etc/enigma2 directory"
-msgstr "only /etc/enigma2 directory"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Άνοιξε τον κατάλογο των υπερησιών"
@@ -4099,6 +4246,9 @@ msgstr "Άνοιξε τον κατάλογο των υπερησιών(κάτω)
 msgid "open servicelist(up)"
 msgstr "Άνοιξε τον κατάλογο των υπερησιών(πάνω)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "pass"
 
@@ -4135,6 +4285,9 @@ msgstr "Εγγράφη"
 msgid "recording..."
 msgstr "Εγγράφη..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "Διαγραφή μετά από αυτό το σημείο "
 
@@ -4211,6 +4364,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "επιλέξτε movie"
 
@@ -4512,6 +4671,15 @@ msgstr "zapped"
 #~ msgstr "Μενού ταινιών"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Δεν βρέθηκε ενεργοποιήμενη προσαρμογή δυκτίου.\n"
+#~ "Σιγουρευτείτε οτι οι παραμετροποιήσης δυκτίου ειναι σοστές και τα καλόδια "
+#~ "ειναι συνδεμένα σοστά."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4520,6 +4688,15 @@ msgstr "zapped"
 #~ "Σιγουρευτείτε οτι συνδέσατε ενα υποστηριζόμενο WLAN USB Stick ή "
 #~ "ενεργοποιήστε το wireless interface σας."
 
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Δεν βρέθηκε ενεργοποιήμενη προσαρμογή wireless.\n"
+#~ "Σιγουρευτείτε οτι συνδέσατε ενα υποστηριζόμενο WLAN USB Stick και οι "
+#~ "παραμετροποιήσης ειναι σοστές."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr ""
 #~ "Όχι. Θα δωθεί δυνατότητα να επιλέξετε απο της προρυθμίζμενες λίστες."
@@ -4705,6 +4882,9 @@ msgstr "zapped"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "loopthrough to socket A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "only /etc/enigma2 directory"
+
 #~ msgid ""
 #~ "scan done!\n"
 #~ "%d services found!"
index daff316..61ab583 100644 (file)
--- a/po/en.po
+++ b/po/en.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:05+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2005-11-17 20:53+0100\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
@@ -86,6 +86,12 @@ msgstr ""
 msgid "(show optional DVD audio menu)"
 msgstr ""
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -375,6 +381,11 @@ msgid "Arabic"
 msgstr ""
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -412,9 +423,6 @@ msgstr ""
 msgid "Automatic"
 msgstr ""
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr ""
 
@@ -487,6 +495,9 @@ msgstr ""
 msgid "Burn DVD"
 msgstr ""
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -648,6 +659,9 @@ msgstr ""
 msgid "Complete"
 msgstr ""
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr ""
 
@@ -697,6 +711,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr ""
 
@@ -815,9 +832,6 @@ msgstr ""
 msgid "DiSEqC A/B/C/D"
 msgstr ""
 
-msgid "DiSEqC Mode"
-msgstr ""
-
 msgid "DiSEqC mode"
 msgstr ""
 
@@ -999,9 +1013,15 @@ msgstr ""
 msgid "East"
 msgstr ""
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr ""
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1047,6 +1067,9 @@ msgstr ""
 msgid "Encryption Key"
 msgstr ""
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr ""
 
@@ -1082,6 +1105,12 @@ msgstr ""
 msgid "Enter Rewind at speed"
 msgstr ""
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr ""
 
@@ -1172,6 +1201,12 @@ msgstr ""
 msgid "Finished"
 msgstr ""
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr ""
 
@@ -1275,6 +1310,9 @@ msgstr ""
 msgid "Harddisk standby after"
 msgstr ""
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr ""
 
@@ -1290,6 +1328,12 @@ msgstr ""
 msgid "IP Address"
 msgstr "IP Address"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr ""
 
@@ -1747,21 +1791,21 @@ msgid ""
 msgstr ""
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -2016,9 +2060,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr ""
 
@@ -2100,6 +2156,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr ""
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr ""
 
@@ -2236,6 +2295,9 @@ msgstr ""
 msgid "Reset"
 msgstr ""
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr ""
 
@@ -2470,6 +2532,12 @@ msgstr ""
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2515,9 +2583,15 @@ msgstr ""
 msgid "Services"
 msgstr ""
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr ""
 
@@ -2575,6 +2649,9 @@ msgstr ""
 msgid "Simple"
 msgstr ""
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr ""
 
@@ -2744,6 +2821,9 @@ msgstr ""
 msgid "TRANSLATOR_INFO"
 msgstr ""
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr ""
 
@@ -2995,9 +3075,15 @@ msgstr ""
 msgid "Title"
 msgstr ""
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr ""
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3225,6 +3311,9 @@ msgstr ""
 msgid "View teletext..."
 msgstr ""
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr ""
 
@@ -3240,6 +3329,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr ""
 
@@ -3328,6 +3420,9 @@ msgstr ""
 msgid "Yes"
 msgstr ""
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr ""
 
@@ -3450,6 +3545,16 @@ msgid ""
 "Press OK to start upgrade."
 msgstr ""
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr ""
 
@@ -3480,6 +3585,12 @@ msgstr ""
 msgid "about to start"
 msgstr ""
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr ""
 
@@ -3533,6 +3644,14 @@ msgid ""
 "following backup:\n"
 msgstr ""
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3548,6 +3667,10 @@ msgstr ""
 msgid "blacklist"
 msgstr ""
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr ""
 
@@ -3674,6 +3797,9 @@ msgstr ""
 msgid "end favourites edit"
 msgstr ""
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3689,6 +3815,21 @@ msgstr ""
 msgid "exit movielist"
 msgstr ""
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -3830,6 +3971,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr ""
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr ""
 
@@ -3890,7 +4043,7 @@ msgstr ""
 msgid "once"
 msgstr ""
 
-msgid "only /etc/enigma2 directory"
+msgid "open nameserver configuration"
 msgstr ""
 
 msgid "open servicelist"
@@ -3902,6 +4055,9 @@ msgstr ""
 msgid "open servicelist(up)"
 msgstr ""
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr ""
 
@@ -3938,6 +4094,9 @@ msgstr ""
 msgid "recording..."
 msgstr ""
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr ""
 
@@ -4014,6 +4173,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr ""
 
index 375931b..9c131a7 100644 (file)
@@ -783,7 +783,7 @@ msgid "DiSEqC A/B/C/D"
 msgstr ""
 
 #: ../lib/python/Screens/Satconfig.py:74
-msgid "DiSEqC Mode"
+msgid "Mode"
 msgstr ""
 
 #: ../lib/python/Screens/Satconfig.py:180
index 59a8303..583727c 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-28 11:20+0100\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-10-24 13:27+0100\n"
 "Last-Translator: José Juan Zapater <josej@zapater.fdns.net>\n"
 "Language-Team: none\n"
@@ -91,6 +91,12 @@ msgstr "(vacío)"
 msgid "(show optional DVD audio menu)"
 msgstr "(muestra ménu de audio de DVD)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr "Falló la descarga del .NFI:"
 
@@ -408,6 +414,11 @@ msgid "Arabic"
 msgstr "Arábigo"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -447,9 +458,6 @@ msgstr "Intercambio a euroconector auto"
 msgid "Automatic"
 msgstr "Automático"
 
-msgid "Automatic SSID lookup"
-msgstr "Buscar SSID automático"
-
 msgid "Automatic Scan"
 msgstr "Búsqueda automática"
 
@@ -522,6 +530,9 @@ msgstr "Brillo"
 msgid "Burn DVD"
 msgstr "Grabar DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr "Grabar a DVD..."
 
@@ -684,6 +695,9 @@ msgstr "Tarjeta compact flash"
 msgid "Complete"
 msgstr "Completado"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Modo Configuración"
 
@@ -736,6 +750,9 @@ msgstr "No puedo conectar al servidor de imágenes .NFI de Dreambox:"
 msgid "Could not load Medium! No disc inserted?"
 msgstr "No puedo cargar el Medio! Hay disco insertado?"
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Falló la creación de la carpeta de películas"
 
@@ -856,9 +873,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "Modo DiSEqC"
-
 msgid "DiSEqC mode"
 msgstr "Modo DiSEqC"
 
@@ -1055,9 +1069,15 @@ msgstr "ERROR - ¡falló la búsqueda (%s)!"
 msgid "East"
 msgstr "Este"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Editar DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr "Editar capítulos del título actual"
 
@@ -1103,6 +1123,9 @@ msgstr "Encriptación"
 msgid "Encryption Key"
 msgstr "Clave de Encriptación"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Tipo de Encriptación"
 
@@ -1144,6 +1167,12 @@ msgstr "Introduzca velocidad de avance hacia delante"
 msgid "Enter Rewind at speed"
 msgstr "Introduzca velocidad de avance hacia atrás"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Entre al menú principal..."
 
@@ -1236,6 +1265,12 @@ msgstr "Ajuste fino"
 msgid "Finished"
 msgstr "Terminado"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finlandés"
 
@@ -1343,6 +1378,9 @@ msgstr "Configuración del disco duro"
 msgid "Harddisk standby after"
 msgstr "Disco duro en reposo después"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Información jerárquica"
 
@@ -1358,6 +1396,12 @@ msgstr "Húngaro"
 msgid "IP Address"
 msgstr "Dirección IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandés"
 
@@ -1839,31 +1883,22 @@ msgstr ""
 "¡Si dice 'No' aquí, la protección de configuración seguirá desabilitada!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"No hay adaptador de red local que funcione.\n"
-"Por favor, verifique que ha conectado un cable de red y su Red está "
-"configurada correctamente."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
-"No he encontrado ningún interfaz inalámbrico que funcione.\n"
-"Verifique que tiene un dispositivo WLAN compatible o active el interfaz de "
-"área local."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"No hay adaptador de red local que funcione.\n"
-"Por favor, verifique que ha conectado un cable de red y su Red está "
-"configurada correctamente."
 
 msgid "No, but restart from begin"
 msgstr "No, debe reiniciar desde el principio"
@@ -2133,9 +2168,21 @@ msgstr ""
 "Use las teclas ARRIBA y ABAJO para seleccionar su idioma. Después, pulse el "
 "botón OK."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Espere para la verificación de firma md5..."
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Espere... Cargando lista..."
 
@@ -2217,6 +2264,9 @@ msgstr "Menú previsualizar"
 msgid "Primary DNS"
 msgstr "DNS Principal"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Proteger canales"
 
@@ -2354,6 +2404,9 @@ msgstr "Repeticiones"
 msgid "Reset"
 msgstr "Resetear"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Resolución"
 
@@ -2592,6 +2645,12 @@ msgstr "Seleccionar el modo de video"
 msgid "Selected source image"
 msgstr "Imagen origen seleccionada"
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr "Separar títulos con un menú principal"
 
@@ -2643,9 +2702,15 @@ msgstr "Info del canal"
 msgid "Services"
 msgstr "Canales"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr "Poner como interface por defecto"
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Poner límites"
 
@@ -2703,6 +2768,9 @@ msgstr "Emisiones similares:"
 msgid "Simple"
 msgstr "Sencillo"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Uno"
 
@@ -2881,6 +2949,9 @@ msgstr ""
 "Si tiene un proyecto de traducción técnico del inglés\n"
 "al español no dude en ponerse en contacto conmigo."
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "Sistema de TV"
 
@@ -3192,9 +3263,15 @@ msgstr "Zona horaria"
 msgid "Title"
 msgstr "Título"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Título:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3441,6 +3518,9 @@ msgstr "Ver Rass interactivo..."
 msgid "View teletext..."
 msgstr "Ver teletexto..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Modo voltaje"
 
@@ -3456,6 +3536,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3720,6 +3803,16 @@ msgstr ""
 "El firmware del frontprocessor debe ser actualizado.\n"
 "Pulse OK para comenzar la actualización."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "¿Volver al canal antes de configurar el motor?"
 
@@ -3750,6 +3843,12 @@ msgstr "abortar la edición de favoritos"
 msgid "about to start"
 msgstr "sobre comenzar"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "añadir alternativas"
 
@@ -3805,6 +3904,14 @@ msgstr ""
 "está seguro que quiere restaurar\n"
 "el siguiente backup:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr "pistas de audio"
 
@@ -3820,6 +3927,10 @@ msgstr "mejor"
 msgid "blacklist"
 msgstr "lista negra"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "por Exif"
 
@@ -3946,6 +4057,9 @@ msgstr "terminar corte aquí"
 msgid "end favourites edit"
 msgstr "fin edición de favoritos"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr "igual a"
 
@@ -3961,6 +4075,21 @@ msgstr "salir del reproductor"
 msgid "exit movielist"
 msgstr "salir del menú de películas"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr "falló"
 
@@ -4104,6 +4233,18 @@ msgstr "mes"
 msgid "move PiP to main picture"
 msgstr "mover PiP a la imagen principal"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "lista de películas"
 
@@ -4164,8 +4305,8 @@ msgstr "en disco SOLO LECTURA."
 msgid "once"
 msgstr "una vez"
 
-msgid "only /etc/enigma2 directory"
-msgstr "sólo el directorio /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "abrir lista de canales"
@@ -4176,6 +4317,9 @@ msgstr "abrir lista de canales(abajo)"
 msgid "open servicelist(up)"
 msgstr "abrir lista de canales(arriba)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "clave"
 
@@ -4212,6 +4356,9 @@ msgstr "grabar"
 msgid "recording..."
 msgstr "grabando..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "borrar después de esta posición"
 
@@ -4288,6 +4435,12 @@ msgstr "seleccione fichero flash .NFI"
 msgid "select image from server"
 msgstr "seleccione imagen desde el servidor"
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "seleccionar película"
 
@@ -4525,6 +4678,9 @@ msgstr "zapeado"
 #~ "Seguro que quiere habilitar su red local?\n"
 #~ "\n"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Buscar SSID automático"
+
 #~ msgid "Burn"
 #~ msgstr "Grabar"
 
@@ -4634,6 +4790,15 @@ msgstr "zapeado"
 #~ msgstr "DVD nuevo"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "No hay adaptador de red local que funcione.\n"
+#~ "Por favor, verifique que ha conectado un cable de red y su Red está "
+#~ "configurada correctamente."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4650,6 +4815,24 @@ msgstr "zapeado"
 #~ "He encontrado un interface wireless que no funciona.\n"
 #~ "Por favor, verifique que ha conectado un dispositivo WLAN compatible."
 
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "No he encontrado ningún interfaz inalámbrico que funcione.\n"
+#~ "Verifique que tiene un dispositivo WLAN compatible o active el interfaz "
+#~ "de área local."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "No hay adaptador de red local que funcione.\n"
+#~ "Por favor, verifique que ha conectado un cable de red y su Red está "
+#~ "configurada correctamente."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "No, dejeme elegir las listas por defecto"
 
@@ -4796,6 +4979,9 @@ msgstr "zapeado"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "conectado al socket A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "sólo el directorio /etc/enigma2"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "reproducir siguiente elemento de la lista de reproducción"
 
index 19a3ddd..17394a0 100755 (executable)
--- a/po/fi.po
+++ b/po/fi.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-28 11:20+0100\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-10-27 19:01+0200\n"
 "Last-Translator: Timo Jarvenpaa <timojarvenpaa@hotmail.com>\n"
 "Language-Team: none\n"
@@ -85,6 +85,12 @@ msgstr "(tyhjä)"
 msgid "(show optional DVD audio menu)"
 msgstr "(näytä  DVD-äänen lisävalikko)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ".NFI lataus epäonnistui:"
 
@@ -405,6 +411,11 @@ msgid "Arabic"
 msgstr "Arabia"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -444,9 +455,6 @@ msgstr "Autom. SCARTin kytkentä"
 msgid "Automatic"
 msgstr "Automaattinen"
 
-msgid "Automatic SSID lookup"
-msgstr "Automaattinen SSID etsintä"
-
 msgid "Automatic Scan"
 msgstr "Automaattihaku"
 
@@ -519,6 +527,9 @@ msgstr "Kirkkaus"
 msgid "Burn DVD"
 msgstr "Polta DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr "Polta DVD:lle..."
 
@@ -684,6 +695,9 @@ msgstr "CompactFlash-kortti"
 msgid "Complete"
 msgstr "Täysi"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Muokkaustila"
 
@@ -733,6 +747,9 @@ msgstr "NFI-ohjelmistopäivityksien palvelimelle ei saatu yhteyttä:"
 msgid "Could not load Medium! No disc inserted?"
 msgstr "Levyä ei voitu ladata! Levy puuttuu?"
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Tallennehakemiston luonti epäonnistui"
 
@@ -854,9 +871,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC-tila"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC-tila"
 
@@ -1063,9 +1077,15 @@ msgstr "VIRHE - haku epäonnistui (%s)!"
 msgid "East"
 msgstr "Itä"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Muuta DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr "Muokkaa kappaleita"
 
@@ -1111,6 +1131,9 @@ msgstr "Suojaus"
 msgid "Encryption Key"
 msgstr "Suojausavain"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Suojausjärjestelmä"
 
@@ -1147,6 +1170,12 @@ msgstr "Aloita kelaus eteenpäin nopeudella"
 msgid "Enter Rewind at speed"
 msgstr "Aloita kelaus taaksepäin nopeudella"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Mene päävalikkoon..."
 
@@ -1241,6 +1270,12 @@ msgstr "Hienosäät."
 msgid "Finished"
 msgstr "Päättyi"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Suomi"
 
@@ -1349,6 +1384,9 @@ msgstr "Kiintolevyn asetukset"
 msgid "Harddisk standby after"
 msgstr "Kiintolevyn automaattinen sammutus"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Hierarkia-tietoja"
 
@@ -1364,6 +1402,12 @@ msgstr "Unkari"
 msgid "IP Address"
 msgstr "IP-osoite"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islanti"
 
@@ -1859,28 +1903,22 @@ msgstr ""
 "Jos vastaat 'Ei', asetuksia ei suojata tunnusluvulla."
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Toimivaa verkkokorttia ei löydy.\n"
-"Tarkista, että olet kytkennyt verkkokaapelin ja lähiverkon asetukset ovat "
-"oikein."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Toimivaa WLAN-sovitinta ei löytynyt.\n"
-"Tarkista, että olet kytkenyt yhteensopivan USB-WLAN-tikun ja verkkoasetukset "
-"ovat oikein."
 
 msgid "No, but restart from begin"
 msgstr "Ei, aloita alusta"
@@ -2152,9 +2190,21 @@ msgid ""
 "the OK button."
 msgstr "Valitse kieli ylös/alas näppäimillä ja paina OK-näppäintä."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Odota md5-allekirjoituksen tarkistusta..."
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Odota... Luetteloa ladataan..."
 
@@ -2236,6 +2286,9 @@ msgstr "Esikatsele valikkoa"
 msgid "Primary DNS"
 msgstr "Ensisijainen DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Suojaa kanavat"
 
@@ -2372,6 +2425,9 @@ msgstr "Toistokerrat"
 msgid "Reset"
 msgstr "Käynnistä CA-moduuli uudelleen"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Tarkkuus"
 
@@ -2610,6 +2666,12 @@ msgstr "Valitse video-tila"
 msgid "Selected source image"
 msgstr "Valittu päivitys"
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr "Erilliset otsikot päävalikon kanssa"
 
@@ -2663,9 +2725,15 @@ msgstr "Kanavatiedot"
 msgid "Services"
 msgstr "Kanavat"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr "Aseta oletukseksi"
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Aseta rajat"
 
@@ -2723,6 +2791,9 @@ msgstr "Samanlaiset lähetykset:"
 msgid "Simple"
 msgstr "Suppea"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Yksi"
 
@@ -2897,6 +2968,9 @@ msgstr "Muut asetukset"
 msgid "TRANSLATOR_INFO"
 msgstr ""
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "TV-järjestelmä"
 
@@ -3218,9 +3292,15 @@ msgstr "Aikavyöhyke"
 msgid "Title"
 msgstr "Otsikko"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Otsikko:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3481,6 +3561,9 @@ msgstr ""
 msgid "View teletext..."
 msgstr "Näytä teksti-tv..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Jännitetila"
 
@@ -3496,6 +3579,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr ""
 
@@ -3768,6 +3854,16 @@ msgstr ""
 "Etupaneelin suorittimen ohjelmisto on päivitettävä.\n"
 "Paina OK aloittaaksesi päivityksen."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr ""
 "Vaihdetaanko takaisin kanavalle, jota katsottiin\n"
@@ -3802,6 +3898,12 @@ msgstr "Peruuta muutokset ja poistu"
 msgid "about to start"
 msgstr "alkaa juuri"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "Vaihtoehtojen lisäys ja poisto"
 
@@ -3857,6 +3959,14 @@ msgstr ""
 "haluatko varmasti palauttaa\n"
 "seuraavan varmuuskopion:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr "ääniraidat"
 
@@ -3874,6 +3984,10 @@ msgstr "parempi"
 msgid "blacklist"
 msgstr "kielletyt"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "EXIF-tietojen mukaan"
 
@@ -4003,6 +4117,9 @@ msgstr "Lopeta leikkaus tähän"
 msgid "end favourites edit"
 msgstr "Tallenna muutokset ja poistu"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr "sama kuin"
 
@@ -4018,6 +4135,21 @@ msgstr "Poistu Mediatoistimesta"
 msgid "exit movielist"
 msgstr "poistu tallenneluettelosta"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr "epäonnistui"
 
@@ -4159,6 +4291,18 @@ msgstr "kuukausi"
 msgid "move PiP to main picture"
 msgstr "Siirrä PiP pääkuvaan"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "tallenneluettelo"
 
@@ -4219,8 +4363,8 @@ msgstr "vain-luku levystä."
 msgid "once"
 msgstr "kerran"
 
-msgid "only /etc/enigma2 directory"
-msgstr "vain /etc/enigma2-hakemisto"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Avaa kanavalista"
@@ -4231,6 +4375,9 @@ msgstr "Avaa kanavalista(alaspäin)"
 msgid "open servicelist(up)"
 msgstr "Avaa kanavalista(ylöspäin)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "hyväksytty"
 
@@ -4267,6 +4414,9 @@ msgstr "tallennus"
 msgid "recording..."
 msgstr "tallennetaan..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "Poista tämän kohdan jälkeen"
 
@@ -4343,6 +4493,12 @@ msgstr "valitse .NFI flash-tiedosto"
 msgid "select image from server"
 msgstr "valitse päivitys palvelimelta"
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "valitse tallenne"
 
@@ -4537,6 +4693,18 @@ msgstr "kanavanvaihto"
 msgid "zapped"
 msgstr "vaihdettu"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Automaattinen SSID etsintä"
+
+#~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Toimivaa verkkokorttia ei löydy.\n"
+#~ "Tarkista, että olet kytkennyt verkkokaapelin ja lähiverkon asetukset ovat "
+#~ "oikein."
+
 #~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN device or enable "
@@ -4545,3 +4713,15 @@ msgstr "vaihdettu"
 #~ "Toimivaa langatonta yhteyttä ei löydy.\n"
 #~ "Tarkista, että olet kytkenyt yhteensopivan WLAN-laitteen tai kytke "
 #~ "lähiverkko päälle."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Toimivaa WLAN-sovitinta ei löytynyt.\n"
+#~ "Tarkista, että olet kytkenyt yhteensopivan USB-WLAN-tikun ja "
+#~ "verkkoasetukset ovat oikein."
+
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "vain /etc/enigma2-hakemisto"
index b71e1ce..be3a842 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: enigma 2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-16 23:21+0100\n"
 "PO-Revision-Date: 2008-10-15 12:10+0100\n"
 "Last-Translator: mimi74 <remi.jarrige0293@wanadoo.fr>\n"
 "Language-Team: french\n"
@@ -86,6 +86,12 @@ msgstr "(vide)"
 msgid "(show optional DVD audio menu)"
 msgstr "(montrer menu audio DVD optionnel)"
 
+msgid "* Only available if more than one interface is active."
+msgstr "* Seulement disponible si plus d'une interface active."
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr "* Seulement disponible en entrant SSID caché ou clé réseau"
+
 msgid ".NFI Download failed:"
 msgstr "Téléchargement .NFI échoué:"
 
@@ -310,7 +316,7 @@ msgid "Action on long powerbutton press"
 msgstr "Mode appui long sur bouton éteindre"
 
 msgid "Action:"
-msgstr ""
+msgstr "Action:"
 
 msgid "Activate Picture in Picture"
 msgstr "Activer l'incrustation d'image"
@@ -322,7 +328,7 @@ msgid "Adapter settings"
 msgstr "Paramètres adaptateur"
 
 msgid "Add"
-msgstr ""
+msgstr "Ajouter"
 
 msgid "Add Bookmark"
 msgstr "Ajouter marque page"
@@ -405,6 +411,13 @@ msgid "Arabic"
 msgstr "Arabe"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+"Etes-vous sûr de vouloir activer cette configuration réseau?\n"
+"\n"
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -444,9 +457,6 @@ msgstr "Commutation auto péritel"
 msgid "Automatic"
 msgstr "Automatique"
 
-msgid "Automatic SSID lookup"
-msgstr "Consultation automatique SSID"
-
 msgid "Automatic Scan"
 msgstr "Analyse automatique"
 
@@ -519,8 +529,11 @@ msgstr "Luminosité"
 msgid "Burn DVD"
 msgstr "Graver DVD"
 
+msgid "Burn existing image to DVD"
+msgstr "Graver image existante sur le DVD"
+
 msgid "Burn to DVD..."
-msgstr "Graver sur DVD..."
+msgstr "graver sur DVD..."
 
 msgid "Bus: "
 msgstr "Bus: "
@@ -682,6 +695,9 @@ msgstr "Carte compact flash"
 msgid "Complete"
 msgstr "Terminé"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr "Complexe (autorise mélange pistes audio et aspects)"
+
 msgid "Configuration Mode"
 msgstr "Mode de configuration"
 
@@ -734,6 +750,9 @@ msgstr "Ne peux se connecter au serveur d'image Dreambox .NFI Feed:"
 msgid "Could not load Medium! No disc inserted?"
 msgstr "Ne peux charger le support! Aucun DVD inserré?"
 
+msgid "Create DVD-ISO"
+msgstr "Créer DVD-ISO"
+
 msgid "Create movie folder failed"
 msgstr "Echec création dossier films"
 
@@ -854,9 +873,6 @@ msgstr ""
 msgid "DiSEqC A/B/C/D"
 msgstr ""
 
-msgid "DiSEqC Mode"
-msgstr "Mode DiSEqC"
-
 msgid "DiSEqC mode"
 msgstr "Mode DiSEqC"
 
@@ -934,9 +950,6 @@ msgstr ""
 "Voulez-vous vraiment télécharger\n"
 "le plugin \"%s\"?"
 
-msgid "Do you really want to exit?"
-msgstr "Voulez-vous vraiment quitter?"
-
 msgid ""
 "Do you really want to initialize the harddisk?\n"
 "All data on the disk will be lost!"
@@ -1053,9 +1066,15 @@ msgstr "ERREUR - échec lors de l'analyse (%s) !"
 msgid "East"
 msgstr "Est"
 
+msgid "Edit"
+msgstr "Editer"
+
 msgid "Edit DNS"
 msgstr "Editer DNS"
 
+msgid "Edit Title"
+msgstr "Editer titre"
+
 msgid "Edit chapters of current title"
 msgstr "Editer chapitres titre actuel"
 
@@ -1101,6 +1120,9 @@ msgstr "Cryptage"
 msgid "Encryption Key"
 msgstr "Clés cryptage"
 
+msgid "Encryption Keytype"
+msgstr "Type clé cryptage"
+
 msgid "Encryption Type"
 msgstr "type cryptage"
 
@@ -1142,6 +1164,12 @@ msgstr "Entrer avance rapide à la vitesse"
 msgid "Enter Rewind at speed"
 msgstr "Entrer rembobinage à la vitesse"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr "Entrer nom/SSID réseau WLAN:"
+
+msgid "Enter WLAN passphrase/key:"
+msgstr "Entrer phrasepass/clé WLAN:"
+
 msgid "Enter main menu..."
 msgstr "entrer dans le menu principal..."
 
@@ -1234,6 +1262,12 @@ msgstr "Accord fin"
 msgid "Finished"
 msgstr "Terminé"
 
+msgid "Finished configuring your network"
+msgstr "Termine la configuration de votre réseau"
+
+msgid "Finished restarting your network"
+msgstr "Termine le redémarrage de votre réseau"
+
 msgid "Finnish"
 msgstr "Finlandais"
 
@@ -1341,6 +1375,9 @@ msgstr "Paramètres disque dur..."
 msgid "Harddisk standby after"
 msgstr "Disque dur en veille après"
 
+msgid "Hidden network SSID"
+msgstr "SSID réseau caché"
+
 msgid "Hierarchy Information"
 msgstr "Information hiérarchie"
 
@@ -1356,6 +1393,12 @@ msgstr "hongrois"
 msgid "IP Address"
 msgstr "Adresse IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr "Fichier ISO trop grand pour ce système fichier!"
+
+msgid "ISO path"
+msgstr "Chemin ISO"
+
 msgid "Icelandic"
 msgstr "Islandais"
 
@@ -1775,6 +1818,9 @@ msgstr ""
 "Aucun disque dur trouvé ou\n"
 "disque dur non initialisé !"
 
+msgid "No Networks found"
+msgstr ""
+
 msgid "No backup needed"
 msgstr "Pas de sauvegarde nécessaire"
 
@@ -1841,31 +1887,28 @@ msgstr ""
 "Si vous répondez 'NON', la protection des Réglages restera désactivé!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Aucun adaptateur réseau fonctionnel trouvé.\n"
-"Veuillez vérifier que vous avez connecté un cable réseau et que le réseau "
-"est configuré correctement."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
-"Aucune interface sans fil fonctionnelle trouvée.\n"
-"Veuillez vérifier que vous avez inséré un périphérique WLAN USB compatible "
-"ou activez votre interface réseau locale."
+"Aucun adaptateur réseau sans fil trouvé.\n"
+"Veuillez vérifier que vous avez inséré un périphérique WLAN compatible et "
+"que votre réseau est configuré correctement."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 "Aucun adaptateur réseau sans fil trouvé.\n"
-"Veuillez vérifier que vous inséré une clé WLAN USB compatible et que votre "
-"réseau est configuré correctement."
+"Veuillez vérifier que vous avez inséré un périphérique WLAN compatible ou "
+"activer votre interface réseau locale."
 
 msgid "No, but restart from begin"
 msgstr "Non, mais relancer depuis le début"
@@ -2137,9 +2180,21 @@ msgstr ""
 "Veuillez utiliser les touches HAUT et BAS pour choisir votre langage. "
 "Ensuite presser le bouton OK."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr "Veuillez attendre l'activation de votre configuration réseau..."
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Veuillez attendre la vérification signature md5..."
 
+msgid "Please wait while we configure your network..."
+msgstr "Veuillez attendre pendant que nous configurons votre réseau..."
+
+msgid "Please wait while your network is restarting..."
+msgstr "Veullez attendre pendant le redémarrage de votre réseau..."
+
+msgid "Please wait..."
+msgstr "Veuillez attendre..."
+
 msgid "Please wait... Loading list..."
 msgstr "Veuillez patienter... Chargement de la liste..."
 
@@ -2221,6 +2276,9 @@ msgstr "Menu prévue"
 msgid "Primary DNS"
 msgstr "DNS primaire"
 
+msgid "Properties of current title"
+msgstr "Propriétés du titre courant"
+
 msgid "Protect services"
 msgstr "Services protégés"
 
@@ -2358,7 +2416,10 @@ msgid "Repeats"
 msgstr "Répétitions"
 
 msgid "Reset"
-msgstr "Reset"
+msgstr "Réinitialiser"
+
+msgid "Reset and renumerate title names"
+msgstr "Réinitialiser et renuméroter les titres"
 
 msgid "Resolution"
 msgstr "Résolution"
@@ -2600,6 +2661,12 @@ msgstr "Choisir le mode vidéo"
 msgid "Selected source image"
 msgstr "Source image sélectionnée"
 
+msgid "Send DiSEqC"
+msgstr "Envoyer DiSEqC"
+
+msgid "Send DiSEqC only on satellite change"
+msgstr "Envoyer seulement DiSEqC pour changement satellite"
+
 msgid "Seperate titles with a main menu"
 msgstr "Titres séparés avec un menu principal"
 
@@ -2651,9 +2718,15 @@ msgstr "Info service"
 msgid "Services"
 msgstr "Services"
 
+msgid "Set Voltage and 22KHz"
+msgstr "Utiliser Voltage et 22KHz"
+
 msgid "Set as default Interface"
 msgstr "Utiliser comme interface défaut"
 
+msgid "Set interface as default Interface"
+msgstr "Utiliser interface comme interface par défaut"
+
 msgid "Set limits"
 msgstr "Fixer les limites"
 
@@ -2711,6 +2784,9 @@ msgstr "Émissions semblables:"
 msgid "Simple"
 msgstr ""
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr "Jeu titre simple (compatibilité descendante lecteurs)"
+
 msgid "Single"
 msgstr "Unique"
 
@@ -2886,7 +2962,10 @@ msgstr ""
 "Dreambox - Enigma2 image\n"
 "mimi74\n"
 "Support: jrs.concept@orange.fr.\n"
-"- 23 octobre 2008 -"
+"- 15 novembre 2008 -"
+
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr "Fichier TS trop grand pour le niveau 1 ISO9660!"
 
 msgid "TV System"
 msgstr "Système TV"
@@ -3204,9 +3283,15 @@ msgstr "Fuseau horaire"
 msgid "Title"
 msgstr "Titre"
 
+msgid "Title properties"
+msgstr "Propriétés titre"
+
 msgid "Title:"
 msgstr "Titre :"
 
+msgid "Titleset mode"
+msgstr "Mode jeu titre"
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3306,6 +3391,9 @@ msgstr "USB"
 msgid "USB Stick"
 msgstr "Clé USB"
 
+msgid "Ukrainian"
+msgstr ""
+
 msgid ""
 "Unable to complete filesystem check.\n"
 "Error: "
@@ -3351,6 +3439,9 @@ msgstr "Mise à jour"
 msgid "Upgrading Dreambox... Please wait"
 msgstr "Mise à jour Dreambox... Veuillez patienter"
 
+msgid "Use"
+msgstr ""
+
 msgid "Use DHCP"
 msgstr "Utiliser DHCP"
 
@@ -3457,6 +3548,9 @@ msgstr "Afficher Rass interactif..."
 msgid "View teletext..."
 msgstr "Afficher télétexte..."
 
+msgid "Virtual KeyBoard"
+msgstr "Clavier virtuel"
+
 msgid "Voltage mode"
 msgstr "Mode voltage"
 
@@ -3472,6 +3566,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr "WPA ou WPA2"
+
 msgid "WPA2"
 msgstr ""
 
@@ -3580,6 +3677,9 @@ msgstr "Année :"
 msgid "Yes"
 msgstr "Oui"
 
+msgid "Yes, and delete this movie"
+msgstr "Oui, et effacer ce film"
+
 msgid "Yes, backup my settings!"
 msgstr "Oui, sauvegarder mes paramètres !"
 
@@ -3740,6 +3840,20 @@ msgstr ""
 "Le logiciel de votre frontprocessor doit être mis à jour.\n"
 "Veuillez appuyer sur OK pour commencer la mise à jour."
 
+msgid "Your network configuration has been activated."
+msgstr "Votre configuration réseau a été activée."
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+"Votre configuration réseau a été activée.\n"
+"Une seconde interface configurée a été trouvée.\n"
+"\n"
+"Voulez-vous désactiver la seconde interface réseau?"
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Revenir sur le service avant réglage positionneur?"
 
@@ -3770,6 +3884,12 @@ msgstr "abandonner l'édition des favoris"
 msgid "about to start"
 msgstr "sur le point de commencer"
 
+msgid "activate current configuration"
+msgstr "activer configuration courante"
+
+msgid "add a nameserver entry"
+msgstr "ajouter une entrée nom serveur"
+
 msgid "add alternatives"
 msgstr "ajouter les alternatifs"
 
@@ -3825,6 +3945,14 @@ msgstr ""
 "êtes-vous sûr de vouloir restaurer\n"
 "la sauvegarde suivante :\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr "format piste audio (%s)"
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr "langage piste audio (%s)"
+
 msgid "audio tracks"
 msgstr "pistes audio"
 
@@ -3840,6 +3968,10 @@ msgstr "meilleur"
 msgid "blacklist"
 msgstr "liste noire"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr "graver piste audio (%s)"
+
 msgid "by Exif"
 msgstr "par exif"
 
@@ -3894,12 +4026,12 @@ msgstr "quotidien"
 msgid "day"
 msgstr "Jour"
 
-msgid "delete"
-msgstr "Effacer"
-
 msgid "delete cut"
 msgstr "effacer coupe"
 
+msgid "delete file"
+msgstr ""
+
 msgid "delete playlist entry"
 msgstr "effacer enrée liste lecture"
 
@@ -3966,6 +4098,9 @@ msgstr "fin de coupe ici"
 msgid "end favourites edit"
 msgstr "terminer l'édition des favoris"
 
+msgid "enigma2 and network"
+msgstr "enigma2 et réseau"
+
 msgid "equal to"
 msgstr "égale au"
 
@@ -3981,6 +4116,21 @@ msgstr "quitter lecteur média"
 msgid "exit movielist"
 msgstr "quitter liste film"
 
+msgid "exit nameserver configuration"
+msgstr "quitter configuration nom serveur"
+
+msgid "exit network adapter configuration"
+msgstr "quitter configuration adaptateur réseau"
+
+msgid "exit network adapter setup menu"
+msgstr "quitter menu réglages adaptateur réseau"
+
+msgid "exit network interface list"
+msgstr "quitter liste interface réseau"
+
+msgid "exit networkadapter setup menu"
+msgstr "quitter menu réglages adaptateur réseau"
+
 msgid "failed"
 msgstr "échoué"
 
@@ -4017,6 +4167,9 @@ msgstr "écouter radio..."
 msgid "help..."
 msgstr "aide..."
 
+msgid "hidden network"
+msgstr ""
+
 msgid "hide extended description"
 msgstr "masquer la description étendue"
 
@@ -4124,6 +4277,18 @@ msgstr "Mois"
 msgid "move PiP to main picture"
 msgstr "Déplacer PiP vers principale"
 
+msgid "move down to last entry"
+msgstr "déplacer en bas dernière entrée"
+
+msgid "move down to next entry"
+msgstr "déplacer en bas entrée suivante"
+
+msgid "move up to first entry"
+msgstr "déplacer en haut première entrée"
+
+msgid "move up to previous entry"
+msgstr "déplacer en haut entrée précédente"
+
 msgid "movie list"
 msgstr "liste film"
 
@@ -4184,8 +4349,8 @@ msgstr "sur support en LECTURE SEULE"
 msgid "once"
 msgstr "une fois"
 
-msgid "only /etc/enigma2 directory"
-msgstr "seulement répertoire /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr "ouvrir configuration nom serveur"
 
 msgid "open servicelist"
 msgstr "ouvrir liste service"
@@ -4196,6 +4361,9 @@ msgstr "ouvrir service liste (bas)"
 msgid "open servicelist(up)"
 msgstr "ouvrir liste service (haut)"
 
+msgid "open virtual keyboard input help"
+msgstr "ouvrir aide entrée clavier virtuel"
+
 msgid "pass"
 msgstr "passe"
 
@@ -4232,6 +4400,9 @@ msgstr "enregistrer"
 msgid "recording..."
 msgstr "enregistrement..."
 
+msgid "remove a nameserver entry"
+msgstr "retirer une entrée nom serveur"
+
 msgid "remove after this position"
 msgstr "retirer après cette position"
 
@@ -4277,9 +4448,15 @@ msgstr "retour au chapitre précédant"
 msgid "right"
 msgstr "droite"
 
+msgid "save last directory on exit"
+msgstr ""
+
 msgid "save playlist"
 msgstr "sauver liste lecture"
 
+msgid "save playlist on exit"
+msgstr ""
+
 msgid "scan done!"
 msgstr "analyse terminée!"
 
@@ -4308,6 +4485,12 @@ msgstr "sélectionner fichier flash .NFI"
 msgid "select image from server"
 msgstr "sélectionner image depuis le serveur"
 
+msgid "select interface"
+msgstr "sélectionner interface"
+
+msgid "select menu entry"
+msgstr "sélectionner entrée menu"
+
 msgid "select movie"
 msgstr "choisir film"
 
@@ -4392,6 +4575,9 @@ msgstr "veille"
 msgid "start cut here"
 msgstr "départ de coupe ici"
 
+msgid "start directory"
+msgstr ""
+
 msgid "start timeshift"
 msgstr "lancer PauseDirect"
 
@@ -4501,45 +4687,18 @@ msgstr "zap"
 msgid "zapped"
 msgstr "zappé"
 
-#~ msgid "Abort"
-#~ msgstr "Abandon"
-
-#~ msgid "Actually:"
-#~ msgstr "Actuellement:"
-
-#~ msgid "Add title..."
-#~ msgstr "Ajouter titre..."
-
 #~ msgid "Adress"
 #~ msgstr "Adresse"
 
-#~ msgid "An error has occured. (%s)"
-#~ msgstr "Une erreur est arrivée. (%s)"
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Consultation automatique SSID"
 
 #~ msgid "Backup and Restore your Settings"
 #~ msgstr "Sauvegarder et restaurer vos paramètres"
 
-#~ msgid "Burn"
-#~ msgstr "Graver"
-
 #~ msgid "Configuration for the Webinterface"
 #~ msgstr "Configuration pour la Webinterface"
 
-#~ msgid "DVD ENTER key"
-#~ msgstr "Touche ENTER DVD"
-
-#~ msgid "DVD down key"
-#~ msgstr "Touche basse DVD"
-
-#~ msgid "DVD left key"
-#~ msgstr "Touche gauche DVD"
-
-#~ msgid "DVD right key"
-#~ msgstr "Touche droite DVD"
-
-#~ msgid "DVD up key"
-#~ msgstr "Touche haute DVD"
-
 #~ msgid "Default Satlists"
 #~ msgstr "Liste Satellites standard"
 
@@ -4552,62 +4711,20 @@ msgstr "zappé"
 #~ msgid "Do not show video preview"
 #~ msgstr "ne pas montrer prévue film"
 
-#~ msgid "Edit current title"
-#~ msgstr "Editer titre actuel"
-
-#~ msgid "Edit title..."
-#~ msgstr "Editer titre..."
-
-#~ msgid "Jump to video title 1 (play movie from start)"
-#~ msgstr "Aller au titre vidéo 1 (lecture film au début)"
-
-#~ msgid "Main Setup"
-#~ msgstr "Paramètres généraux"
-
-#~ msgid "New DVD"
-#~ msgstr "Nouveau DVD"
-
-#~ msgid "No displayable files on this medium found!"
-#~ msgstr "Aucun fichier affichable touvé sur le support!"
-
-#~ msgid "No, let me choose default lists"
-#~ msgstr "Non, laissez moi choisir une liste standard"
-
-#~ msgid "Picture Viewer (BMP, PNG, JPG)"
-#~ msgstr "Visualisateur images (BMP, PNG, JPG)"
-
-#~ msgid "Plugin Download/Remove"
-#~ msgstr "Téléchargement/Retrait extension"
-
-#~ msgid "Port"
-#~ msgstr "Port"
+#~ msgid "Do you really want to exit?"
+#~ msgstr "Voulez-vous vraiment quitter?"
 
 #~ msgid ""
-#~ "Recording(s) are in progress or coming up in few seconds... really reboot "
-#~ "now?"
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your network is "
+#~ "configured correctly."
 #~ msgstr ""
-#~ "Des enregistrement(s) sont en cours ou se terminent dans quelques "
-#~ "secondes... Vraiment redémarrer maintenant?"
+#~ "Aucun adaptateur réseau fonctionnel trouvé.\n"
+#~ "Veuillez vérifier que vous avez connecté un cable réseau et que le réseau "
+#~ "est configuré correctement."
 
-#~ msgid ""
-#~ "Recording(s) are in progress or coming up in few seconds... really "
-#~ "restart now?"
-#~ msgstr ""
-#~ "Des enregistrement(s) sont en cours ou se terminent dans quelques "
-#~ "secondes... Vraiment relancer maintenant?"
-
-#~ msgid ""
-#~ "Recording(s) are in progress or coming up in few seconds... really "
-#~ "shutdown now?"
-#~ msgstr ""
-#~ "Des enregistrement(s) sont en cours ou se terminent dans quelques "
-#~ "secondes... Vraiment arrèter maintenant?"
-
-#~ msgid "Save current project to disk"
-#~ msgstr "Sauver projet actuel vers disque"
-
-#~ msgid "Save..."
-#~ msgstr "Sauver..."
+#~ msgid "Picture Viewer (BMP, PNG, JPG)"
+#~ msgstr "Visualisateur images (BMP, PNG, JPG)"
 
 #~ msgid "Scan Files..."
 #~ msgstr "Parcourir fichiers..."
@@ -4615,12 +4732,6 @@ msgstr "zappé"
 #~ msgid "Software Update..."
 #~ msgstr "Mise à jour logiciel..."
 
-#~ msgid "To Follow:"
-#~ msgstr "A suivre:"
-
-#~ msgid "When complete, press Key 0 to burn the collection!"
-#~ msgstr "Lorsque complèté, presser la toche 0 pour graver la collection!"
-
 #~ msgid ""
 #~ "When you do a factory reset, you will lose ALL your configuration data\n"
 #~ "(including bouquets, services, satellite data ...)\n"
@@ -4637,9 +4748,6 @@ msgstr "zappé"
 #~ "\n"
 #~ "Vraiment faire une réinitialisation usine?"
 
-#~ msgid "add"
-#~ msgstr "Ajouter"
-
 #~ msgid "allow zapping via webif"
 #~ msgstr "Permettre le zap depuis webif"
 
@@ -4652,21 +4760,15 @@ msgstr "zappé"
 #~ msgid "change"
 #~ msgstr "Changer"
 
+#~ msgid "delete"
+#~ msgstr "Effacer"
+
 #~ msgid "edit Interface"
 #~ msgstr "Edition interface"
 
 #~ msgid "enable /hdd"
 #~ msgstr "Activer /hdd"
 
-#~ msgid "full /etc directory"
-#~ msgstr "répertoire /etc entier"
-
-#~ msgid "list of configured Interfaces"
-#~ msgstr "Liste des interfaces configurées"
-
-#~ msgid "minutes and"
-#~ msgstr "minutes et"
-
 #~ msgid "seconds."
 #~ msgstr "secondes."
 
index 26b554f..73ec37e 100755 (executable)
--- a/po/hr.po
+++ b/po/hr.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-01-27 23:38+0100\n"
 "Last-Translator: Jurica <jurica@clarkdigital.com>\n"
 "Language-Team:  <jurica@dream-multimedia.eu>\n"
@@ -84,6 +84,12 @@ msgstr "(prazno)"
 msgid "(show optional DVD audio menu)"
 msgstr ""
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -395,6 +401,11 @@ msgid "Arabic"
 msgstr "Arabski"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -432,9 +443,6 @@ msgstr ""
 msgid "Automatic"
 msgstr ""
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Automatsko skeniranje "
 
@@ -508,6 +516,9 @@ msgstr "Svjetlost"
 msgid "Burn DVD"
 msgstr "Snimi DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -670,6 +681,9 @@ msgstr "Kompakt flash kartica"
 msgid "Complete"
 msgstr "Kompletno"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Mod Konfiguracije"
 
@@ -722,6 +736,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Neuspješno stvaranje video direktorija"
 
@@ -840,9 +857,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC Mod"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC mod"
 
@@ -1033,9 +1047,15 @@ msgstr "GREAŠKA - neuspjelo skeniranje (%s)!"
 msgid "East"
 msgstr "Istok"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr ""
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1081,6 +1101,9 @@ msgstr ""
 msgid "Encryption Key"
 msgstr ""
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr ""
 
@@ -1122,6 +1145,12 @@ msgstr ""
 msgid "Enter Rewind at speed"
 msgstr ""
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Uđi u Glavni Izbornik"
 
@@ -1212,6 +1241,12 @@ msgstr "Fino pod."
 msgid "Finished"
 msgstr ""
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finski"
 
@@ -1317,6 +1352,9 @@ msgstr "Postavke tvrdog diska"
 msgid "Harddisk standby after"
 msgstr "Isključi tvrdi disk nakon"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Informacije hierhije"
 
@@ -1332,6 +1370,12 @@ msgstr "Mađarski"
 msgid "IP Address"
 msgstr "IP Adresa"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandski"
 
@@ -1805,21 +1849,21 @@ msgstr ""
 "Ukoliko kažete 'Ne' ovdje, Postavke uređaja ostaju nezaštićene."
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -2079,9 +2123,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Molim pričekajte... Učitavam listu..."
 
@@ -2163,6 +2219,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr ""
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Zaštiti usluge"
 
@@ -2299,6 +2358,9 @@ msgstr ""
 msgid "Reset"
 msgstr "Resetiraj"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr ""
 
@@ -2535,6 +2597,12 @@ msgstr ""
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2586,9 +2654,15 @@ msgstr "Info Usluge"
 msgid "Services"
 msgstr "Usluge"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Postavi limite"
 
@@ -2646,6 +2720,9 @@ msgstr "Slični pružatelji:"
 msgid "Simple"
 msgstr "Jednostavno"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Jedan"
 
@@ -2818,6 +2895,9 @@ msgstr "Sistem "
 msgid "TRANSLATOR_INFO"
 msgstr ""
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "TV Sistem"
 
@@ -3074,9 +3154,15 @@ msgstr "Vremenska zona"
 msgid "Title"
 msgstr ""
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Titl:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3314,6 +3400,9 @@ msgstr "Gledaj Rass interaktivno..."
 msgid "View teletext..."
 msgstr "Pregled teleteksta..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Mod Napona"
 
@@ -3329,6 +3418,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr ""
 
@@ -3427,6 +3519,9 @@ msgstr "Godina:"
 msgid "Yes"
 msgstr "Da"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Da, napravi sigurnosnu kopiju mojih postavki."
 
@@ -3577,6 +3672,16 @@ msgstr ""
 "Vaš softver frontprocesora mora biti nadograđen.\n"
 "Pritisnite OK za početak nadogradnje."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Prebaciti natrag na zadnju uslugu prije postavki motora?"
 
@@ -3607,6 +3712,12 @@ msgstr "odustani od editiranja favorita"
 msgid "about to start"
 msgstr "spremni za početak"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "dodaj alternative"
 
@@ -3662,6 +3773,14 @@ msgstr ""
 "Želite li stvarno vratiti sljedeću\n"
 "sigurnosnu kopiju:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3677,6 +3796,10 @@ msgstr "bolje"
 msgid "blacklist"
 msgstr "crnalista"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "od Exif"
 
@@ -3803,6 +3926,9 @@ msgstr "završi rez ovdje"
 msgid "end favourites edit"
 msgstr "završi editiranje favorita"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3818,6 +3944,21 @@ msgstr "Izađi iz preglednika medija"
 msgid "exit movielist"
 msgstr "izađi iz izbornika filmova"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -3961,6 +4102,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr "premjesti PiP na glavnu sliku"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "lista filmova"
 
@@ -4021,8 +4174,8 @@ msgstr ""
 msgid "once"
 msgstr "jednom"
 
-msgid "only /etc/enigma2 directory"
-msgstr "samo /etc/enigma2 direktorij"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "otvori listu usluga"
@@ -4033,6 +4186,9 @@ msgstr "otvori listu usluga (dolje)"
 msgid "open servicelist(up)"
 msgstr "otvori listu usluga (gore)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "lozinka"
 
@@ -4069,6 +4225,9 @@ msgstr "Snimi"
 msgid "recording..."
 msgstr "snimanje..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "obriši nakon ove pozicije"
 
@@ -4145,6 +4304,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "odaberi film"
 
@@ -4664,6 +4829,9 @@ msgstr "prebačen"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "prolaz na utor A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "samo /etc/enigma2 direktorij"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "pokreni sljedeći unos playliste"
 
index 345f90b..90de480 100755 (executable)
--- a/po/hu.po
+++ b/po/hu.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-10-02 10:56+0100\n"
 "Last-Translator: MediaVox-Extrasat <info@mediavox.hu>\n"
 "Language-Team: none\n"
@@ -89,6 +89,12 @@ msgstr "(üres)"
 msgid "(show optional DVD audio menu)"
 msgstr "(mutassa a DVD audio menüt ha van)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -405,6 +411,11 @@ msgid "Arabic"
 msgstr "Arab"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -444,9 +455,6 @@ msgstr "Automatikus SCART átkapcsolás"
 msgid "Automatic"
 msgstr "Automatikus"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Automatikus keresés"
 
@@ -519,6 +527,9 @@ msgstr "Fényerő"
 msgid "Burn DVD"
 msgstr "DVD égetés"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -680,6 +691,9 @@ msgstr "Compact flash kártya"
 msgid "Complete"
 msgstr "Kész"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Konfigurációs mód"
 
@@ -732,6 +746,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Film könyvtár létrehozása nem sikerült"
 
@@ -852,9 +869,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC mód"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC mód"
 
@@ -1047,9 +1061,15 @@ msgstr "HIBA - nem sikerült a keresés (%s)!"
 msgid "East"
 msgstr "Kelet"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "DNS módosítása"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1095,6 +1115,9 @@ msgstr "Kódolás"
 msgid "Encryption Key"
 msgstr "Kódolási kulcs"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Kódolás típusa"
 
@@ -1136,6 +1159,12 @@ msgstr "Adja meg a gyors előre csévélést ezen a sebességen"
 msgid "Enter Rewind at speed"
 msgstr "Adja meg a vissza csévélést ezen a sebességen"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Belépés a főmenübe..."
 
@@ -1228,6 +1257,12 @@ msgstr "Finomhangolás"
 msgid "Finished"
 msgstr "Kész"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finn"
 
@@ -1333,6 +1368,9 @@ msgstr "HDD beállítások"
 msgid "Harddisk standby after"
 msgstr "HDD leállítás a megadott idö után"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Hierarchia információk"
 
@@ -1348,6 +1386,12 @@ msgstr "Magyar"
 msgid "IP Address"
 msgstr "IP cím"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Izlandi"
 
@@ -1830,28 +1874,22 @@ msgstr ""
 "Ha 'Nem'-el válaszol, akkor a menüvédelem kikapcsolva marad!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Nem találtam működő helyi hálózati adaptert.\n"
-"Ellenőrizze hogy be van dugva a hálózati kábel és hogy a hálózatot helyesen "
-"állította be."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Nem találtam működő wireles hálózati interfészt.\n"
-"Ellenőrizze hogy be van dugva egy a Dreamboxal kompatibilis wireless "
-"hálózati eszköz és hogy a hálózat helyesen van beállítva."
 
 msgid "No, but restart from begin"
 msgstr "Nem, de indítsa elölröl"
@@ -2118,9 +2156,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Kérem várjon... Lista betöltése..."
 
@@ -2202,6 +2252,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr "Elsődleges DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Csatornák védelme"
 
@@ -2338,6 +2391,9 @@ msgstr "Ismétlések"
 msgid "Reset"
 msgstr "Visszaállítás"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Felbontás"
 
@@ -2576,6 +2632,12 @@ msgstr "Válassza ki a video módot"
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2627,9 +2689,15 @@ msgstr "Csatorna"
 msgid "Services"
 msgstr "Csatornák"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Limitek megadása"
 
@@ -2687,6 +2755,9 @@ msgstr "Hasonló adások:"
 msgid "Simple"
 msgstr "Egyszerű"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Szimpla"
 
@@ -2865,6 +2936,9 @@ msgstr ""
 "beavatkozás, avagy a fordítási fájl illetéktelen használata\n"
 "jogi eljárást von maga után. E-mail: info@mediavox.hu"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "TV rendszer"
 
@@ -3150,9 +3224,15 @@ msgstr "Időzóna"
 msgid "Title"
 msgstr "Cím"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Cím:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3395,6 +3475,9 @@ msgstr "Rass interaktív szolgáltatás használata..."
 msgid "View teletext..."
 msgstr "Teletext megtekintése..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Feszültség"
 
@@ -3410,6 +3493,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3511,6 +3597,9 @@ msgstr "Év:"
 msgid "Yes"
 msgstr "Igen"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Igen, mentse el a beállításaim!"
 
@@ -3668,6 +3757,16 @@ msgstr ""
 "Az előlapi processzor firmware-jét frissíteni kell.\n"
 "Az OK gombbal indíthatja a frissítést."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Ugorjunk vissza a pozícioner beállítás előtti csatornához?"
 
@@ -3698,6 +3797,12 @@ msgstr "kedvencek módosításának megszakítása"
 msgid "about to start"
 msgstr "az indításról"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "alternatívák hozzáadása"
 
@@ -3753,6 +3858,14 @@ msgstr ""
 "biztos hogy vissza akarja állítani\n"
 "a következő mentést:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3768,6 +3881,10 @@ msgstr "jobb"
 msgid "blacklist"
 msgstr "feketelista"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "Exif-el"
 
@@ -3894,6 +4011,9 @@ msgstr "vágás kilépő pontja"
 msgid "end favourites edit"
 msgstr "kedvencek módosításának vége"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3909,6 +4029,21 @@ msgstr "kilépés a mediaplayerből"
 msgid "exit movielist"
 msgstr "kilépés a filmlistából"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -4052,6 +4187,18 @@ msgstr "hónap"
 msgid "move PiP to main picture"
 msgstr "PiP mozgatása a főképre"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "mozi lista"
 
@@ -4112,8 +4259,8 @@ msgstr ""
 msgid "once"
 msgstr "egyszeri"
 
-msgid "only /etc/enigma2 directory"
-msgstr "csak az /etc/enigma2 könyvtár"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Csatornalista megnyitása"
@@ -4124,6 +4271,9 @@ msgstr "csatornalista megnyitása (le)"
 msgid "open servicelist(up)"
 msgstr "csatornalista megnyitása (fel)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "művelet"
 
@@ -4160,6 +4310,9 @@ msgstr "felvétel"
 msgid "recording..."
 msgstr "felvétel..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "e pont után mindent töröljön"
 
@@ -4236,6 +4389,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "film kiválasztása"
 
@@ -4623,6 +4782,15 @@ msgstr "zap-elt"
 #~ msgstr "Új DVD"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Nem találtam működő helyi hálózati adaptert.\n"
+#~ "Ellenőrizze hogy be van dugva a hálózati kábel és hogy a hálózatot "
+#~ "helyesen állította be."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4631,6 +4799,15 @@ msgstr "zap-elt"
 #~ "Ellenőrizze hogy be van dugva egy a Dreamboxal kompatibilis wireless "
 #~ "hálózati eszköz vagy engedélyezze a helyi hálózati interfészt."
 
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Nem találtam működő wireles hálózati interfészt.\n"
+#~ "Ellenőrizze hogy be van dugva egy a Dreamboxal kompatibilis wireless "
+#~ "hálózati eszköz és hogy a hálózat helyesen van beállítva."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Nem, az alaphelyzeti listát választom"
 
@@ -4867,6 +5044,9 @@ msgstr "zap-elt"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "átfüzés az A foglalathoz"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "csak az /etc/enigma2 könyvtár"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "következő playlista bejegyzés lejátszása"
 
old mode 100755 (executable)
new mode 100644 (file)
index 71e0d6d..7ce1bc7
--- a/po/is.po
+++ b/po/is.po
@@ -1,14 +1,13 @@
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Icelandic translation v.1.36\n"
+"Project-Id-Version: Icelandic translation v.1.41\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
-"PO-Revision-Date: 2008-04-01 21:39-0000\n"
-"Last-Translator: Baldur Sveinsson <baddi@oreind.is>\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
+"PO-Revision-Date: 2008-11-13 09:24-0000\n"
+"Last-Translator: Baldur Sveinsson <baldur@oreind.is>\n"
 "Language-Team: Polar Team/LT Team <baddi@oreind.is>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,7 +17,7 @@ msgstr ""
 "X-Poedit-SourceCharset: utf-8\n"
 
 msgid " "
-msgstr ""
+msgstr " "
 
 msgid "#000000"
 msgstr "#000000"
@@ -55,7 +54,7 @@ msgstr "%H:%M"
 
 #, python-format
 msgid "%d jobs are running in the background!"
-msgstr ""
+msgstr "%d verk eru í vinnslu í bakgrunni!"
 
 #, python-format
 msgid "%d min"
@@ -87,17 +86,24 @@ msgid "(empty)"
 msgstr "(tómt)"
 
 msgid "(show optional DVD audio menu)"
+msgstr "(sýna viðbótar DVD hljóð valmynd)"
+
+msgid "* Only available if more than one interface is active."
 msgstr ""
 
-msgid ".NFI Download failed:"
+msgid "* Only available when entering hidden SSID or network key"
 msgstr ""
 
+msgid ".NFI Download failed:"
+msgstr ".NFI Niðurhal tókst ekki:"
+
 msgid ".NFI Flasher bootable USB stick successfully created."
-msgstr ""
+msgstr ".NFI keyranlegt stýrikerfi af USB staut tilbúið."
 
 msgid ""
 ".NFI file passed md5sum signature check. You can safely flash this image!"
 msgstr ""
+".NFI skráin stóðst md5sum undirskrifta próf. Þú getur notað þetta stýrikerfi!"
 
 msgid "/usr/share/enigma2 directory"
 msgstr "/usr/share/enigma2 mappa"
@@ -257,7 +263,7 @@ msgstr ""
 
 #, python-format
 msgid "A required tool (%s) was not found."
-msgstr ""
+msgstr "Nauðsynlegt tól (%s) fannst ekki."
 
 msgid ""
 "A sleep timer wants to set your\n"
@@ -311,7 +317,7 @@ msgid "Action on long powerbutton press"
 msgstr "Hvað skal gera ef ýtt er lengi á power takka"
 
 msgid "Action:"
-msgstr ""
+msgstr "Aðgerð:"
 
 msgid "Activate Picture in Picture"
 msgstr "Virkja Mynd í Mynd"
@@ -320,25 +326,25 @@ msgid "Activate network settings"
 msgstr "Virkja netkerfis stillingar"
 
 msgid "Adapter settings"
-msgstr ""
+msgstr "Stilling tækis"
 
 msgid "Add"
 msgstr "Viðbót"
 
 msgid "Add Bookmark"
-msgstr ""
+msgstr "Bæta við bókamerki"
 
 msgid "Add a mark"
 msgstr "Bæta við merki"
 
 msgid "Add a new title"
-msgstr ""
+msgstr "Bæta við nýjum titli"
 
 msgid "Add timer"
 msgstr "Taka upp"
 
 msgid "Add title"
-msgstr ""
+msgstr "Bæta við titli"
 
 msgid "Add to bouquet"
 msgstr "Bæta við rásavönd"
@@ -379,7 +385,7 @@ msgid "All"
 msgstr "Allt"
 
 msgid "All Satellites"
-msgstr ""
+msgstr "Allir gervihnettir"
 
 msgid "All..."
 msgstr "Allt..."
@@ -397,15 +403,22 @@ msgid "An empty filename is illegal."
 msgstr "Ekkert skráarnafn er ógilt."
 
 msgid "An unknown error occured!"
-msgstr ""
+msgstr "Óþekkt villa varð!"
 
 msgid "Arabic"
 msgstr "Arabíska"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
+"Ertu viss um að þú viljir endurræsa netkortið?\n"
+"\n"
 
 msgid "Artist:"
 msgstr "Listmaður:"
@@ -426,13 +439,13 @@ msgid "Audio Options..."
 msgstr "Hljóð stillingar..."
 
 msgid "Authoring mode"
-msgstr ""
+msgstr "Höfunda hamur"
 
 msgid "Auto"
 msgstr "Sjálfvirkt"
 
 msgid "Auto chapter split every ? minutes (0=never)"
-msgstr ""
+msgstr "Skipta í kafla hverja ? mínútu (0=aldrei)"
 
 msgid "Auto scart switching"
 msgstr "Sjálfvirk skipting á scarti"
@@ -440,14 +453,11 @@ msgstr "Sjálfvirk skipting á scarti"
 msgid "Automatic"
 msgstr "Sjálfvirkt"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Sjálfvirk leit"
 
 msgid "Available format variables"
-msgstr ""
+msgstr "Útfærslur tiltækra forma"
 
 msgid "B"
 msgstr "B"
@@ -465,10 +475,10 @@ msgid "BER:"
 msgstr "BER:"
 
 msgid "Back"
-msgstr ""
+msgstr "Til baka"
 
 msgid "Background"
-msgstr ""
+msgstr "Bakgrunnur"
 
 msgid "Backup"
 msgstr "Afrit"
@@ -507,16 +517,19 @@ msgid "Behavior when a movie reaches the end"
 msgstr "Aðgerð þegar mynd er búin"
 
 msgid "Bookmarks"
-msgstr ""
+msgstr "Bókamerki"
 
 msgid "Brightness"
 msgstr "Birta"
 
 msgid "Burn DVD"
+msgstr "Brenna DVD"
+
+msgid "Burn existing image to DVD"
 msgstr ""
 
 msgid "Burn to DVD..."
-msgstr ""
+msgstr "Brenna á DVD"
 
 msgid "Bus: "
 msgstr "Rás:"
@@ -529,7 +542,7 @@ msgstr ""
 "skjánum."
 
 msgid "C"
-msgstr ""
+msgstr "C"
 
 msgid "C-Band"
 msgstr "C-Band"
@@ -553,7 +566,7 @@ msgid "Cancel"
 msgstr "Hætta við"
 
 msgid "Cannot parse feed directory"
-msgstr ""
+msgstr "Get ekki skoðað fæði möppu"
 
 msgid "Capacity: "
 msgstr "Stærð:"
@@ -568,7 +581,7 @@ msgid "Change bouquets in quickzap"
 msgstr "Skipta á milli rása flétta í rásastökki"
 
 msgid "Change dir."
-msgstr ""
+msgstr "Breyta möppu"
 
 msgid "Change pin code"
 msgstr "Breyta aðgangskóða"
@@ -595,13 +608,13 @@ msgid "Channellist menu"
 msgstr "Valmynd rásalista"
 
 msgid "Chap."
-msgstr ""
+msgstr "Kafli"
 
 msgid "Chapter"
-msgstr ""
+msgstr "Kafli"
 
 msgid "Chapter:"
-msgstr ""
+msgstr "Kafli:"
 
 msgid "Check"
 msgstr "Athuga"
@@ -634,7 +647,7 @@ msgid "Clear log"
 msgstr "Tæma lista"
 
 msgid "Close"
-msgstr ""
+msgstr "Loka"
 
 msgid "Code rate high"
 msgstr "Gagna hraði, hár"
@@ -649,16 +662,16 @@ msgid "Coderate LP"
 msgstr "Gagnahraði LP"
 
 msgid "Collection name"
-msgstr ""
+msgstr "Nafn safns"
 
 msgid "Collection settings"
-msgstr ""
+msgstr "Stillingar safns"
 
 msgid "Color Format"
 msgstr "Lita kerfi"
 
 msgid "Command execution..."
-msgstr ""
+msgstr "Keyrsla skipunar..."
 
 msgid "Command order"
 msgstr "Röðun skipana"
@@ -678,6 +691,9 @@ msgstr "Compact flash kort"
 msgid "Complete"
 msgstr "Búið"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Stillingar"
 
@@ -688,7 +704,7 @@ msgid "Conflicting timer"
 msgstr "Tímastilling skarast"
 
 msgid "Connected to"
-msgstr ""
+msgstr "Tengd við"
 
 msgid "Connected to Fritz!Box!"
 msgstr "Tengi við Fritz!Box!"
@@ -710,24 +726,27 @@ msgid "Constellation"
 msgstr "Constellation"
 
 msgid "Content does not fit on DVD!"
-msgstr ""
+msgstr "Innihald passar ekki á DVD!"
 
 msgid "Continue in background"
-msgstr ""
+msgstr "Halda áfram í bakgrunni"
 
 msgid "Continue playing"
-msgstr ""
+msgstr "Halda áfram að spila"
 
 msgid "Contrast"
 msgstr "Skerpa"
 
 msgid "Copying USB flasher boot image to stick..."
-msgstr ""
+msgstr "Afrita keyranlegt USB stýrikerfi yfir á staut..."
 
 msgid "Could not connect to Dreambox .NFI Image Feed Server:"
-msgstr ""
+msgstr "Gat ekki tengt við Dreambox .NFI stýrikerfis vefþjón:"
 
 msgid "Could not load Medium! No disc inserted?"
+msgstr "Gat ekki lesið disk! Er enginn diskur í drifi?"
+
+msgid "Create DVD-ISO"
 msgstr ""
 
 msgid "Create movie folder failed"
@@ -735,7 +754,7 @@ msgstr "Tókst ekki að búa til bíómyndamöppu"
 
 #, python-format
 msgid "Creating directory %s failed."
-msgstr ""
+msgstr "Tókst ekki að búa möppuna %s."
 
 msgid "Creating partition failed"
 msgstr "Tókst ekki að búa til diskhluta"
@@ -768,16 +787,16 @@ msgid "Cut"
 msgstr "Klippa"
 
 msgid "Cutlist editor..."
-msgstr "Klippingastjóri"
+msgstr "Klippingastjóri..."
 
 msgid "Czech"
 msgstr "Tékkneska"
 
 msgid "D"
-msgstr ""
+msgstr "D"
 
 msgid "DHCP"
-msgstr ""
+msgstr "DHCP"
 
 msgid "DVB-S"
 msgstr "DVB-S"
@@ -786,10 +805,10 @@ msgid "DVB-S2"
 msgstr "DVB-S2"
 
 msgid "DVD Player"
-msgstr ""
+msgstr "DVD spilari"
 
 msgid "DVD media toolbox"
-msgstr ""
+msgstr "DVD miðla tól"
 
 msgid "Danish"
 msgstr "Danska"
@@ -798,16 +817,16 @@ msgid "Date"
 msgstr "Dags"
 
 msgid "Decompressing USB stick flasher boot image..."
-msgstr ""
+msgstr "Afþjappa keyranlegt USB stauts stýrikerfi..."
 
 msgid "Deep Standby"
 msgstr "Djúp biðstaða"
 
 msgid "Default services lists"
-msgstr ""
+msgstr "Sjálfgefinn rásalisti"
 
 msgid "Default settings"
-msgstr ""
+msgstr "Sjálfgefnar stillingar"
 
 msgid "Delay"
 msgstr "Seinkun"
@@ -826,12 +845,14 @@ msgid ""
 "Delete no more configured satellite\n"
 "%s?"
 msgstr ""
+"Ekki eyða fleiri innstilltum gervihnöttum\n"
+"%s?"
 
 msgid "Description"
 msgstr "Lýsing"
 
 msgid "Destination directory"
-msgstr ""
+msgstr "Endanleg mappa"
 
 msgid "Detected HDD:"
 msgstr "Fann harðan disk:"
@@ -848,9 +869,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC Gerð"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC gerð"
 
@@ -858,11 +876,11 @@ msgid "DiSEqC repeats"
 msgstr "DiSEqC endurtekning"
 
 msgid "Direct playback of linked titles without menu"
-msgstr ""
+msgstr "Spila beint tengda titla án valmyndar"
 
 #, python-format
 msgid "Directory %s nonexistent."
-msgstr ""
+msgstr "Mappa %s ekki til."
 
 msgid "Disable"
 msgstr "Gera óvirkt"
@@ -874,7 +892,7 @@ msgid "Disable Subtitles"
 msgstr "Ekki undirtexta"
 
 msgid "Disable timer"
-msgstr ""
+msgstr "Slökkva á tímastillingu"
 
 msgid "Disabled"
 msgstr "Óvirkt"
@@ -906,6 +924,8 @@ msgid ""
 "Do you really want to REMOVE\n"
 "the plugin \"%s\"?"
 msgstr ""
+"Viltu örugglega eyða EYÐA\n"
+"innskoti \"%s\"?"
 
 msgid ""
 "Do you really want to check the filesystem?\n"
@@ -923,6 +943,8 @@ msgid ""
 "Do you really want to download\n"
 "the plugin \"%s\"?"
 msgstr ""
+"Viltu örugglega hala niður\n"
+"innskotinu \"%s\"?"
 
 msgid "Do you really want to exit?"
 msgstr "Viltu virkilega hætta?"
@@ -936,11 +958,11 @@ msgstr ""
 
 #, python-format
 msgid "Do you really want to remove directory %s from the disk?"
-msgstr ""
+msgstr "Viltu örugglega eyða möppunni %s af diskinum?"
 
 #, python-format
 msgid "Do you really want to remove your bookmark of %s?"
-msgstr ""
+msgstr "Viltu örugglega eyða bókamerkinu %s?"
 
 msgid ""
 "Do you want to backup now?\n"
@@ -950,7 +972,7 @@ msgstr ""
 "Eftir að hafa ýtt á OK þá bíðið!"
 
 msgid "Do you want to burn this collection to DVD medium?"
-msgstr ""
+msgstr "Viltu brenna þessa skráar safn á DVD disk?"
 
 msgid "Do you want to do a service scan?"
 msgstr "Viltu leita að rásum?"
@@ -962,13 +984,13 @@ msgid "Do you want to enable the parental control feature on your dreambox?"
 msgstr "Viltu gera virkan foreldrastýrðan aðgang að dreamboxinu?"
 
 msgid "Do you want to install default sat lists?"
-msgstr ""
+msgstr "Viltu setja inn sjálfgefinn gervihnatta lista?"
 
 msgid "Do you want to play DVD in drive?"
-msgstr ""
+msgstr "Viltu spila DVD diskinn sem er í spilaranum?"
 
 msgid "Do you want to preview this DVD before burning?"
-msgstr ""
+msgstr "Viltu forskoða þennan DVD disk fyrir brennslu?"
 
 msgid "Do you want to restore your settings?"
 msgstr "Viltu setja inn stillingarnar þínar aftur?"
@@ -998,16 +1020,16 @@ msgid "Done - Installed or upgraded %d packages with %d errors"
 msgstr "Búinn - %d pakkar settir inn eða upp færðir með %d villum"
 
 msgid "Download"
-msgstr ""
+msgstr "Hlaða niður"
 
 msgid "Download .NFI-Files for USB-Flasher"
-msgstr ""
+msgstr "Hlaða niður .NFI skrár fyrir keyranlegt USB"
 
 msgid "Download Plugins"
 msgstr "Hala niður innskotum"
 
 msgid "Download of USB flasher boot image failed: "
-msgstr ""
+msgstr "Niðurhleðsla keyranlegs USB stýrikerfis tóks ekki:"
 
 msgid "Downloadable new plugins"
 msgstr "Niðurhalanleg ný innskot"
@@ -1019,13 +1041,13 @@ msgid "Downloading"
 msgstr "Hleð  niður"
 
 msgid "Downloading image description..."
-msgstr ""
+msgstr "Hleð niður lýsingu stýrikerfis..."
 
 msgid "Downloading plugin information. Please wait..."
 msgstr "Hala niður innskots upplýsingum. Vinsamlega bíðið..."
 
 msgid "Dreambox format data DVD (HDTV compatible)"
-msgstr ""
+msgstr "Dreambox gagna formaður DVD diskur (HDTV samhæfður)"
 
 msgid "Dutch"
 msgstr "Hollenska"
@@ -1043,26 +1065,32 @@ msgstr "VILLA - gat ekki opnað leit (%s)!"
 msgid "East"
 msgstr "Austur"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
+msgstr "Breyta DNS"
+
+msgid "Edit Title"
 msgstr ""
 
 msgid "Edit chapters of current title"
-msgstr ""
+msgstr "Breyta kafla núverandi titils"
 
 msgid "Edit services list"
 msgstr "Breyta rása lista"
 
 msgid "Edit settings"
-msgstr ""
+msgstr "Breyta stillingum"
 
 msgid "Edit the Nameserver configuration of your Dreambox.\n"
-msgstr ""
+msgstr "Breyta nafnaþjóns stillingum Dreamboxins.\n"
 
 msgid "Edit the network configuration of your Dreambox.\n"
-msgstr ""
+msgstr "Breyta stillingum netkorts í Dreamboxinu.\n"
 
 msgid "Edit title"
-msgstr ""
+msgstr "Breyta titili"
 
 msgid "Electronic Program Guide"
 msgstr "Rafrænn dagskrárstjóri (EPG)"
@@ -1080,19 +1108,22 @@ msgid "Enable parental control"
 msgstr "Virkja foreldra stýringu"
 
 msgid "Enable timer"
-msgstr ""
+msgstr "Virkja tímastillingu"
 
 msgid "Enabled"
 msgstr "Virkt"
 
 msgid "Encryption"
-msgstr ""
+msgstr "Kóðun"
 
 msgid "Encryption Key"
+msgstr "Kóðunar lykill"
+
+msgid "Encryption Keytype"
 msgstr ""
 
 msgid "Encryption Type"
-msgstr ""
+msgstr "Gerð kóðunar"
 
 msgid "End"
 msgstr "Hætta"
@@ -1132,6 +1163,12 @@ msgstr "Hraðspólunar hraði áfram, fyrst"
 msgid "Enter Rewind at speed"
 msgstr "Hraðspólunar hraði til baka, fyrst"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Fara í aðal valmynd..."
 
@@ -1142,13 +1179,15 @@ msgid "Error"
 msgstr "Villa"
 
 msgid "Error executing plugin"
-msgstr ""
+msgstr "Villa við keyrslu innskots"
 
 #, python-format
 msgid ""
 "Error: %s\n"
 "Retry?"
 msgstr ""
+"Villa: %s\n"
+"Reyna aftur?"
 
 msgid "Eventview"
 msgstr "Skoða atriði"
@@ -1163,7 +1202,7 @@ msgid "Execution finished!!"
 msgstr "Keyrslu lokið!"
 
 msgid "Exit"
-msgstr ""
+msgstr "Hætta"
 
 msgid "Exit editor"
 msgstr "Hætta í breytingum"
@@ -1178,7 +1217,7 @@ msgid "Expert"
 msgstr "Sérfræði"
 
 msgid "Extended Networksetup Plugin..."
-msgstr ""
+msgstr "Innskot fyrir nánari stillingar netkerfis..."
 
 msgid "Extended Setup..."
 msgstr "Meiri stillingar..."
@@ -1193,7 +1232,7 @@ msgid "Factory reset"
 msgstr "Verksmiðju stilling"
 
 msgid "Failed"
-msgstr ""
+msgstr "Tókst ekki"
 
 msgid "Fast"
 msgstr "Hratt"
@@ -1220,6 +1259,12 @@ msgid "Finetune"
 msgstr "Fínstilla"
 
 msgid "Finished"
+msgstr "Búið"
+
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
 msgstr ""
 
 msgid "Finnish"
@@ -1228,21 +1273,23 @@ msgstr "Finnska"
 msgid ""
 "First we need to download the latest boot environment for the USB flasher."
 msgstr ""
+"Fyrst þarf að hala niður nýjustu uppfærslum til að búa til keyranlegan USB "
+"Staut. "
 
 msgid "Fix USB stick"
-msgstr ""
+msgstr "Laga USB staut"
 
 msgid "Flash"
-msgstr ""
+msgstr "Forritun"
 
 msgid "Flashing failed"
-msgstr ""
+msgstr "Forritun tókt ekki"
 
 msgid "Font size"
-msgstr ""
+msgstr "Stafa stærð"
 
 msgid "Format"
-msgstr ""
+msgstr "Forma"
 
 msgid "Frame repeat count during non-smooth winding"
 msgstr "Fjöldi ramma við hraðspólun"
@@ -1327,6 +1374,9 @@ msgstr "Uppsetning harða disks"
 msgid "Harddisk standby after"
 msgstr "Harði diskur í biðstöðu eftir"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Stigskipta upplýsingar"
 
@@ -1342,6 +1392,12 @@ msgstr "Ungverska"
 msgid "IP Address"
 msgstr "IP Netfang"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Íslenska"
 
@@ -1375,13 +1431,13 @@ msgstr ""
 "Ef stillingin er orðin eins og þér finnst best ýttu þá á OK."
 
 msgid "Image flash utility"
-msgstr ""
+msgstr "Tól fyrir forritun stýrikerfis"
 
 msgid "Image-Upgrade"
 msgstr "Uppfærsla stýrikerfi"
 
 msgid "In Progress"
-msgstr ""
+msgstr "Í vinnslu"
 
 msgid ""
 "In order to record a timer, the TV was switched to the recording service!\n"
@@ -1425,13 +1481,13 @@ msgid "Installing Software..."
 msgstr "Set inn hugbúnað"
 
 msgid "Installing default sat lists... Please wait..."
-msgstr ""
+msgstr "Set inn sjálfgefna gervihnatta lista... vinsamlega bíðið..."
 
 msgid "Installing defaults... Please wait..."
-msgstr ""
+msgstr "Set inn sjálfgefnar stillingar... vinsamlega bíðið.."
 
 msgid "Installing package content... Please wait..."
-msgstr ""
+msgstr "Set inn innihald pakkans... vinsamlega bíðið..."
 
 msgid "Instant Record..."
 msgstr "Skyndi upptaka..."
@@ -1440,7 +1496,7 @@ msgid "Integrated Ethernet"
 msgstr "Innbyggt Netkort"
 
 msgid "Integrated Wireless"
-msgstr ""
+msgstr "Innbyggt þráðlaust"
 
 msgid "Intermediate"
 msgstr "millistig"
@@ -1453,7 +1509,7 @@ msgstr "Ógildur staður"
 
 #, python-format
 msgid "Invalid directory selected: %s"
-msgstr ""
+msgstr "Ógild mappa valin: %s"
 
 msgid "Inversion"
 msgstr "Umbreyting"
@@ -1465,7 +1521,7 @@ msgid "Italian"
 msgstr "Ítalska"
 
 msgid "Job View"
-msgstr ""
+msgstr "Skoða vinnslu"
 
 #. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect)
 msgid "Just Scale"
@@ -1481,7 +1537,7 @@ msgid "Keymap"
 msgstr "Lyklaborðsstilling"
 
 msgid "LAN Adapter"
-msgstr ""
+msgstr "Netkort"
 
 msgid "LNB"
 msgstr "LNB"
@@ -1508,7 +1564,7 @@ msgid "Latitude"
 msgstr "Breiddargráða"
 
 msgid "Leave DVD Player?"
-msgstr ""
+msgstr "Hætta í DVD spilara?"
 
 msgid "Left"
 msgstr "Vinstri"
@@ -1530,10 +1586,10 @@ msgid "Limits on"
 msgstr "Mörk á"
 
 msgid "Link:"
-msgstr ""
+msgstr "Tengill:"
 
 msgid "Linked titles with a DVD menu"
-msgstr ""
+msgstr "Tengdir titlar við DVD valmynd"
 
 msgid "List of Storage Devices"
 msgstr "Listi minnis hluta"
@@ -1542,13 +1598,13 @@ msgid "Lithuanian"
 msgstr "Litháíska"
 
 msgid "Load"
-msgstr ""
+msgstr "Hleð"
 
 msgid "Load Length of Movies in Movielist"
-msgstr ""
+msgstr "Hlaða lengd myndar í myndalista"
 
 msgid "Local Network"
-msgstr ""
+msgstr "Nærnet"
 
 msgid "Location"
 msgstr "Staðsetning"
@@ -1602,10 +1658,10 @@ msgid "MediaPlayer"
 msgstr "Spilari"
 
 msgid "Medium is not a writeable DVD!"
-msgstr ""
+msgstr "Diskur er ekki skrifanlegur DVD diskur!"
 
 msgid "Medium is not empty!"
-msgstr ""
+msgstr "Diskur er ekki tómur!"
 
 msgid "Menu"
 msgstr "Valmynd"
@@ -1671,7 +1727,7 @@ msgid "NEXT"
 msgstr "NÆST"
 
 msgid "NFI image flashing completed. Press Yellow to Reboot!"
-msgstr ""
+msgstr "NFI forritun er lokið. Ýttu á gulan til að endurræsa!"
 
 msgid "NOW"
 msgstr "NÚNA"
@@ -1693,19 +1749,19 @@ msgid "Nameserver Setup"
 msgstr "Uppsetning nafnaþjóns"
 
 msgid "Nameserver settings"
-msgstr ""
+msgstr "Uppsetning nafnaþjóns"
 
 msgid "Netmask"
 msgstr "Netmaski"
 
 msgid "Network Configuration..."
-msgstr ""
+msgstr "Stilling nettengingar..."
 
 msgid "Network Mount"
 msgstr "Tengingar við netkerfi"
 
 msgid "Network SSID"
-msgstr ""
+msgstr "SSID nets"
 
 msgid "Network Setup"
 msgstr "Stilla netkerfi"
@@ -1717,19 +1773,19 @@ msgid "Network setup"
 msgstr "Stillingar netkerfis"
 
 msgid "Network test"
-msgstr ""
+msgstr "Prufa nettengingu"
 
 msgid "Network test..."
-msgstr ""
+msgstr "Prufa nettengingu..."
 
 msgid "Network..."
 msgstr "Netkerfi..."
 
 msgid "Network:"
-msgstr ""
+msgstr "Nettenging:"
 
 msgid "NetworkWizard"
-msgstr ""
+msgstr "Nettengi álfur"
 
 msgid "New"
 msgstr "Nýtt"
@@ -1747,7 +1803,7 @@ msgid "No"
 msgstr "Nei"
 
 msgid "No (supported) DVDROM found!"
-msgstr ""
+msgstr "Enginn (studdur) DVDROM fannst!"
 
 msgid "No 50 Hz, sorry. :("
 msgstr "Ekki 50 Hz, því miður. :("
@@ -1766,7 +1822,7 @@ msgstr ""
 "(Rann út á tíma við lestur PAT)"
 
 msgid "No details for this image file"
-msgstr ""
+msgstr "Engar upplýsingar um þetta stýrikerfi"
 
 msgid "No event info found, recording indefinitely."
 msgstr "Engar upplýsingar um atriði fundust, tek upp endalaust."
@@ -1799,7 +1855,7 @@ msgstr ""
 "Stilltu móttakara áður er að þú ferð að leita að rásum."
 
 msgid "No useable USB stick found"
-msgstr ""
+msgstr "Ekkert nothæfur USB stautur fannst"
 
 msgid ""
 "No valid service PIN found!\n"
@@ -1820,21 +1876,21 @@ msgstr ""
 "Ef þú svarar \"Nei\" þá er engin læsing virk."
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -1867,6 +1923,8 @@ msgid ""
 "Not enough diskspace. Please free up some diskspace and try again. (%d MB "
 "required, %d MB available)"
 msgstr ""
+"Ekki nóg diskpláss. Taktu til á diskinum og reyndu aftur. (%d MB þarf, %d MB "
+"tiltæk)"
 
 msgid ""
 "Nothing to scan!\n"
@@ -1883,6 +1941,9 @@ msgid ""
 "format and use as .NFI image flasher. Press OK after you've put the stick "
 "back in."
 msgstr ""
+"Tengdu núna USB stautinn (minnsta stærð er 64 MB) sem að þú vilt nota fyrir "
+"keyranlegar USB stýrikerfi. Ýttu á OK þegar þú ert búinn að setja hann í "
+"samband."
 
 msgid ""
 "Now, use the contrast setting to turn up the brightness of the background as "
@@ -1903,7 +1964,7 @@ msgid "OSD Settings"
 msgstr "Stilling valmynda"
 
 msgid "OSD visibility"
-msgstr ""
+msgstr "Sýnileiki OSD"
 
 msgid "Off"
 msgstr "Af"
@@ -1918,7 +1979,7 @@ msgid "Online-Upgrade"
 msgstr "Uppfærsla frá neti"
 
 msgid "Only Free scan"
-msgstr ""
+msgstr "Bara fríar rásir"
 
 msgid "Orbital Position"
 msgstr "Staðsetnging gervihnattar"
@@ -1946,7 +2007,7 @@ msgid "Pan&Scan"
 msgstr "Pan&Scan"
 
 msgid "Parent Directory"
-msgstr ""
+msgstr "Fyrri mappa"
 
 msgid "Parental control"
 msgstr "Foreldrastýring"
@@ -1961,7 +2022,7 @@ msgid "Parental control type"
 msgstr "Gerð foreldrastýringar"
 
 msgid "Partitioning USB stick..."
-msgstr ""
+msgstr "Bý til diskhluta á USB staut..."
 
 msgid "Pause movie at end"
 msgstr "Setja á pásu við enda myndar"
@@ -1974,7 +2035,7 @@ msgid "Pillarbox"
 msgstr "Pillarbox"
 
 msgid "Pilot"
-msgstr ""
+msgstr "Stjóri"
 
 msgid "Pin code needed"
 msgstr "Kóða vantar"
@@ -1983,7 +2044,7 @@ msgid "Play"
 msgstr "Spila"
 
 msgid "Play Audio-CD..."
-msgstr ""
+msgstr "Spila hljóð disk..."
 
 msgid "Play recorded movies..."
 msgstr "Spila uppteknar myndir..."
@@ -1998,19 +2059,19 @@ msgid "Please change recording endtime"
 msgstr "Sláðu inn lokatíma upptöku"
 
 msgid "Please check your network settings!"
-msgstr ""
+msgstr "Vinsamlega athugaðu stillingar netkerfis!"
 
 msgid "Please choose .NFI image file from feed server to download"
-msgstr ""
+msgstr "Vinsamlega veldu .NFI af strauma vefþjón til að hlaða niður"
 
 msgid "Please choose an extension..."
 msgstr "Vinsamlega veldu viðbót.."
 
 msgid "Please choose he package..."
-msgstr ""
+msgstr "Vinsamlega veldur pakka..."
 
 msgid "Please choose the default services lists you want to install."
-msgstr ""
+msgstr "Vinsamlega veldu sjálfgefinn rásalista sem að þú vilt nota."
 
 msgid "Please do not change any values unless you know what you are doing!"
 msgstr "Ekki breyta gildum ef þú veist ekki hvað þú ert að gera!"
@@ -2028,7 +2089,7 @@ msgid "Please enter filename (empty = use current date)"
 msgstr "Sláðu inn skráarnafn (tómt = nota núverandi dag)"
 
 msgid "Please enter name of the new directory"
-msgstr ""
+msgstr "Sláðu inn nafn á nýju möppunni"
 
 msgid "Please enter the correct pin code"
 msgstr "Sláðu inn réttan kóða"
@@ -2043,15 +2104,17 @@ msgid ""
 "Please note that the previously selected media could not be accessed and "
 "therefore the default directory is being used instead."
 msgstr ""
+"Vinsamlega athugið að áður valinn diskur er ekki tiltækur núna og þá verður "
+"notuð sjálfgefin mappa í staðinn."
 
 msgid "Please press OK to continue."
-msgstr ""
+msgstr "Ýttu á OK til að halda áfram."
 
 msgid "Please press OK!"
 msgstr "Ýtið á OK!"
 
 msgid "Please select .NFI flash image file from medium"
-msgstr ""
+msgstr "Vinsamlega veldu .NFI stýrikerfi frá geymslu"
 
 msgid "Please select a playlist to delete..."
 msgstr "Veldu spilunarlista til að eyða..."
@@ -2069,7 +2132,7 @@ msgid "Please select keyword to filter..."
 msgstr "Veldu orð til að leita út..."
 
 msgid "Please select target directory or medium"
-msgstr ""
+msgstr "Vinsamlega veldu möppu eða geymslu"
 
 msgid "Please select the movie path..."
 msgstr "Veldu slóð að mynd..."
@@ -2096,8 +2159,22 @@ msgid ""
 "Please use the UP and DOWN keys to select your language. Afterwards press "
 "the OK button."
 msgstr ""
+"Vinsamlega notið UP og NIÐUR takka til að velja tungumál. Ýttu svo á OK til "
+"að nota."
+
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
 
 msgid "Please wait for md5 signature verification..."
+msgstr "Vinsamlega bíðið eftir staðfestingu md5 staðfestingu..."
+
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
 msgstr ""
 
 msgid "Please wait... Loading list..."
@@ -2158,13 +2235,13 @@ msgid "Preparing... Please wait"
 msgstr "Undirbý...vinsamlega bíðið"
 
 msgid "Press OK on your remote control to continue."
-msgstr ""
+msgstr "Ýttu á OK á fjarstýringunni til að halda áfram."
 
 msgid "Press OK to activate the settings."
 msgstr "Ýtið á OK til að virkja stillingar."
 
 msgid "Press OK to edit the settings."
-msgstr ""
+msgstr "Ýttu á OK til að breyta stillingum."
 
 msgid "Press OK to scan"
 msgstr "Ýtið á OK til að leita"
@@ -2176,9 +2253,12 @@ msgid "Prev"
 msgstr "Fyrri"
 
 msgid "Preview menu"
-msgstr ""
+msgstr "Forskoða valmynd"
 
 msgid "Primary DNS"
+msgstr "Aðal DNS"
+
+msgid "Properties of current title"
 msgstr ""
 
 msgid "Protect services"
@@ -2230,16 +2310,16 @@ msgid "Really exit the subservices quickzap?"
 msgstr "Viltu hætta í undirrása hraðstökki?"
 
 msgid "Really reboot now?"
-msgstr ""
+msgstr "Viltu örugglega endurræsa núna?"
 
 msgid "Really restart now?"
-msgstr ""
+msgstr "Viltu örugglega endurræsa núna?"
 
 msgid "Really shutdown now?"
-msgstr ""
+msgstr "Viltu örugglega slökkva núna?"
 
 msgid "Reboot"
-msgstr ""
+msgstr "Endurræsi"
 
 msgid "Reception Settings"
 msgstr "Stilling móttöku"
@@ -2254,7 +2334,7 @@ msgid "Recording"
 msgstr "Upptaka"
 
 msgid "Recording(s) are in progress or coming up in few seconds!"
-msgstr ""
+msgstr "Upptaka (tökur) eru í gangi núna eða eru væntanlegar fljótlega!"
 
 msgid "Recordings always have priority"
 msgstr "Upptaka hefur alltaf forgang"
@@ -2269,10 +2349,10 @@ msgid "Refresh rate selection."
 msgstr "Hressingar tíðni val."
 
 msgid "Remounting stick partition..."
-msgstr ""
+msgstr "Endurtengi diskhluta stauts..."
 
 msgid "Remove Bookmark"
-msgstr ""
+msgstr "Taka út bókamerki"
 
 msgid "Remove Plugins"
 msgstr "Taka út Innskot"
@@ -2281,23 +2361,23 @@ msgid "Remove a mark"
 msgstr "Eyða merkingu"
 
 msgid "Remove currently selected title"
-msgstr ""
+msgstr "Taka út þegar valinn titil"
 
 msgid "Remove plugins"
 msgstr "Taka út innskot"
 
 msgid "Remove the broken .NFI file?"
-msgstr ""
+msgstr "Taka út skemmda .NFI skrá"
 
 msgid "Remove the incomplete .NFI file?"
-msgstr ""
+msgstr "Taka út skemmda .NFI skrá?"
 
 msgid "Remove title"
-msgstr ""
+msgstr "Taka út titil"
 
 #, python-format
 msgid "Removing directory %s failed. (Maybe not empty.)"
-msgstr ""
+msgstr "Tókst ekki að taka út möppuna %s. (kannski ekki tóm.)"
 
 msgid "Rename"
 msgstr "Endurnefna"
@@ -2317,9 +2397,12 @@ msgstr "Endurtaka"
 msgid "Reset"
 msgstr "Endursetja"
 
-msgid "Resolution"
+msgid "Reset and renumerate title names"
 msgstr ""
 
+msgid "Resolution"
+msgstr "Upplausn"
+
 msgid "Restart"
 msgstr "Endurræsa"
 
@@ -2330,13 +2413,13 @@ msgid "Restart GUI now?"
 msgstr "Endurræsa gluggakerfi núna?"
 
 msgid "Restart network"
-msgstr ""
+msgstr "Endurræsi netkort"
 
 msgid "Restart test"
-msgstr ""
+msgstr "Prufa endurræsingu"
 
 msgid "Restart your network connection and interfaces.\n"
-msgstr ""
+msgstr "Endurræsa nettengingu og netkort.\n"
 
 msgid "Restore"
 msgstr "Setja inn"
@@ -2361,7 +2444,7 @@ msgid "Resuming playback"
 msgstr "Held áfram spilun"
 
 msgid "Return to file browser"
-msgstr ""
+msgstr "Fara til baka í skráarvafra"
 
 msgid "Return to movie list"
 msgstr "Til baka til mynda lista"
@@ -2415,13 +2498,13 @@ msgid "Satfinder"
 msgstr "Gervihnattaleit"
 
 msgid "Sats"
-msgstr ""
+msgstr "Gervihn."
 
 msgid "Saturday"
 msgstr "Laugardagur"
 
 msgid "Save"
-msgstr ""
+msgstr "Vista"
 
 msgid "Save Playlist"
 msgstr "Vista spilunarlista"
@@ -2454,7 +2537,7 @@ msgid "Scan SR6900"
 msgstr "Leita SR6900"
 
 msgid "Scan Wireless Networks"
-msgstr ""
+msgstr "Leita að þráðlausu neti"
 
 msgid "Scan additional SR"
 msgstr "Leita á fleiri SR"
@@ -2499,10 +2582,11 @@ msgid ""
 "Scan your network for wireless Access Points and connect to them using your "
 "WLAN USB Stick\n"
 msgstr ""
+"Leita að þráðlausum netkerfum og tengjast þeim með þráðlausa USB netkortinu\n"
 
 msgid ""
 "Scans default lamedbs sorted by satellite with a connected dish positioner"
-msgstr ""
+msgstr "Leita sjálfgefna gervihnetti, raðað eftir hnöttum með tengdum mótor"
 
 msgid "Search east"
 msgstr "Leita austur"
@@ -2511,7 +2595,7 @@ msgid "Search west"
 msgstr "Leita vestur"
 
 msgid "Secondary DNS"
-msgstr ""
+msgstr "Vara DNS"
 
 msgid "Seek"
 msgstr "Leita"
@@ -2538,7 +2622,7 @@ msgid "Select channel to record from"
 msgstr "Veldu rás til að taka upp frá"
 
 msgid "Select image"
-msgstr ""
+msgstr "Veldu stýrikerfi"
 
 msgid "Select refresh rate"
 msgstr "Veldu hressingar tíðni."
@@ -2550,11 +2634,17 @@ msgid "Select video mode"
 msgstr "Veldu mynd stillingu"
 
 msgid "Selected source image"
+msgstr "Veldu grunn stýrikerfi"
+
+msgid "Send DiSEqC"
 msgstr ""
 
-msgid "Seperate titles with a main menu"
+msgid "Send DiSEqC only on satellite change"
 msgstr ""
 
+msgid "Seperate titles with a main menu"
+msgstr "Taka út titla af aðalvalmynd"
+
 msgid "Sequence repeat"
 msgstr "Endurtaka runu"
 
@@ -2603,7 +2693,13 @@ msgstr "Upplýsingar"
 msgid "Services"
 msgstr "Rásir"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
+msgstr "Gera að sjálfgefnu netkorti"
+
+msgid "Set interface as default Interface"
 msgstr ""
 
 msgid "Set limits"
@@ -2619,10 +2715,10 @@ msgid "Setup Mode"
 msgstr "Uppsetninga hamur"
 
 msgid "Show Info"
-msgstr ""
+msgstr "Sýna upplýsingar"
 
 msgid "Show WLAN Status"
-msgstr ""
+msgstr "Sýna WLAN stöðu"
 
 msgid "Show blinking clock in display during recording"
 msgstr "Láta klukkuna blikka á skjá við upptöku"
@@ -2649,7 +2745,7 @@ msgid "Show the tv player..."
 msgstr "Sýna sjónvarpsspilara"
 
 msgid "Shows the state of your wireless LAN connection.\n"
-msgstr ""
+msgstr "Sýnir stöðu þráðlausrar nettenginar.\n"
 
 msgid "Shutdown Dreambox after"
 msgstr "Slökkva á móttakara eftir"
@@ -2663,6 +2759,9 @@ msgstr "Svipuð útsending:"
 msgid "Simple"
 msgstr "Einfalt"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Einn"
 
@@ -2679,7 +2778,7 @@ msgid "Singlestep (GOP)"
 msgstr "Eitt skref (GOP)"
 
 msgid "Skin..."
-msgstr ""
+msgstr "Skinn..."
 
 msgid "Sleep Timer"
 msgstr "Tímastilling"
@@ -2751,7 +2850,7 @@ msgid "Start recording?"
 msgstr "Byrja upptöku?"
 
 msgid "Start test"
-msgstr ""
+msgstr "Byrja prófun"
 
 msgid "StartTime"
 msgstr "Byrjunartími"
@@ -2784,7 +2883,7 @@ msgid "Stop playing this movie?"
 msgstr "Stoppa spilun?"
 
 msgid "Stop test"
-msgstr ""
+msgstr "Stoppa prófun"
 
 msgid "Store position"
 msgstr "Vista staðsetningu"
@@ -2841,11 +2940,14 @@ msgstr ""
 "Email: oreind@oreind.is\n"
 "Vefur: http://www.oreind.is"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "Sjónvarps kerfi"
 
 msgid "Table of content for collection"
-msgstr ""
+msgstr "Efnisyfirlit yfir safn"
 
 msgid "Terrestrial"
 msgstr "Stafrænt í lofti"
@@ -2857,7 +2959,7 @@ msgid "Test mode"
 msgstr "Prufu hamur"
 
 msgid "Test the network configuration of your Dreambox.\n"
-msgstr ""
+msgstr "Prófa stillingar netkorts í Dreamboxinu.\n"
 
 msgid "Test-Messagebox?"
 msgstr "Prófa skilaboðaskjóðu?"
@@ -2875,12 +2977,18 @@ msgid ""
 "and hold the 'Down' key on the front panel to boot the .NFI flasher from the "
 "stick!"
 msgstr ""
+".NFI stýrikerfis stautur er nú tilbúinn til notkunar. Nú getur þú hlaðið "
+"niður .NFI stýrikerfi frá strauma vefþjón og vistað það á stautnum. Þá getur "
+"þú endurræst og með því að halda niður 'Niður' takka framaná móttakaranum þá "
+"getur þú valið stýrikerfi frá stautnum!"
 
 msgid ""
 "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to "
 "create a Dreambox format data DVD (which will not play in stand-alone DVD "
 "players) instead?"
 msgstr ""
+"DVD staðallinn er ekki með möguleika á H.264 (HDTV). Viltu búa til Dreambox "
+"gagna disk (sem ekki er hægt að venjulegum DVD spilara) í staðinn."
 
 msgid "The backup failed. Please choose a different backup location."
 msgstr "Afritun mistókst. Veldu annan stað fyrir afritið."
@@ -2893,6 +3001,11 @@ msgid ""
 "\n"
 "Do you want to write the USB flasher to this stick?"
 msgstr ""
+"Eftirfarandi tæki fannst:\n"
+"\n"
+"%s\n"
+"\n"
+"Viltu skrifa USB keyrslu skrá á þennan staut?"
 
 msgid ""
 "The input port should be configured now.\n"
@@ -2903,30 +3016,37 @@ msgstr ""
 "Þú getur stillt skjáinn með því að nota prufumyndir. Viltu gera það núna?"
 
 msgid "The installation of the default services lists is finished."
-msgstr ""
+msgstr "Innsetning sjálfgefins rásalista er lokið."
 
 msgid ""
 "The installation of the default settings is finished. You can now continue "
 "configuring your Dreambox by pressing the OK button on the remote control."
 msgstr ""
+"Innsetning sjálfgefins rásalista er lokið. Þú getur nú haldið áfram að "
+"stilla Dreamboxið með því að ýta á OK takkann á fjarstýringunni."
 
 msgid ""
 "The md5sum validation failed, the file may be corrupted! Are you sure that "
 "you want to burn this image to flash memory? You are doing this at your own "
 "risk!"
 msgstr ""
+"Staðfesting md5sum tókst ekki, skráin gæti verið skemmd! Ertu viss um að þú "
+"viljir setja þetta stýrikerfi inn í minni? Það er ekki mælt með því að gera "
+"það!"
 
 msgid ""
 "The md5sum validation failed, the file may be downloaded incompletely or be "
 "corrupted!"
 msgstr ""
+"Staðfesting md5sum tókst ekki, það gæti vantað hluta á skrána eða þá að hún "
+"sé skemmd!"
 
 msgid "The package doesn't contain anything."
-msgstr ""
+msgstr "Þessi pakki inniheldur ekkert."
 
 #, python-format
 msgid "The path %s already exists."
-msgstr ""
+msgstr "Slóðin %s er þegar til."
 
 msgid "The pin code has been changed successfully."
 msgstr "Það tókst að breyta kóðanum."
@@ -2950,6 +3070,8 @@ msgid ""
 "The wireless LAN plugin is not installed!\n"
 "Please install it."
 msgstr ""
+"Þráðlausa netkortið er ekki tengt!\n"
+"Vinsamlega tengið það."
 
 msgid ""
 "The wizard can backup your current settings. Do you want to do a backup now?"
@@ -2959,10 +3081,10 @@ msgid "The wizard is finished now."
 msgstr "Álfurinn er búinn núna."
 
 msgid "There are no default services lists in your image."
-msgstr ""
+msgstr "Það er enginn sjálfgefinn rásalisti í þessu stýrikerfi."
 
 msgid "There are no default settings in your image."
-msgstr ""
+msgstr "Það er engar sjálfgefnar stillingar í þessu stýrikerfi."
 
 msgid ""
 "There might not be enough Space on the selected Partition.\n"
@@ -2973,26 +3095,32 @@ msgstr ""
 
 #, python-format
 msgid "This .NFI file does not contain a valid %s image!"
-msgstr ""
+msgstr "Þessi .NFI skrá inniheldur ekki %s stýrikerfi í lagi!"
 
 msgid ""
 "This .NFI file does not have a md5sum signature and is not guaranteed to "
 "work. Do you really want to burn this image to flash memory?"
 msgstr ""
+"Þessi .NFI skrá er ekki með md5sum undirskrift og er ekki hægt að tryggja að "
+"hún virki. Viltu örugglega forrita hana inn í minni?"
 
 msgid ""
 "This .NFI file has a valid md5 signature. Continue programming this image to "
 "flash memory?"
 msgstr ""
+"Þessi .NFI skrá er með gilda md5 undirskrift. Viltu halda áfram að forrita "
+"minni móttakarans með henni?"
 
 msgid ""
 "This DVD RW medium is already formatted - reformatting will erase all "
 "content on the disc."
 msgstr ""
+"Þessi DVD RW diskur er þegar formaður - endurformun mun eyða öllum gögnum af "
+"honum."
 
 #, python-format
 msgid "This Dreambox can't decode %s video streams!"
-msgstr ""
+msgstr "Þetta Dreambox getur ekki spilað %s mynd strauma!"
 
 msgid "This is step number 2."
 msgstr "Þetta er hluti númer 2"
@@ -3007,6 +3135,11 @@ msgid ""
 "- if you configured your Nameservers manually please verify your entries in "
 "the \"Nameserver\" Configuration"
 msgstr ""
+"Þessi prufun athugar stillingar nafnaþjóns.\n"
+"Ef þú færð \"óstaðfest\" skilaboð:\n"
+"- athugaðu DHCP þjónustu, tengingar og uppsetningu\n"
+"- ef að þú hefur sett upp nafnaþjón handvirkt athugaðu þá þínar nafnaþjóns "
+"stillingar."
 
 msgid ""
 "This test checks whether a network cable is connected to your LAN-Adapter.\n"
@@ -3014,6 +3147,10 @@ msgid ""
 "- verify that a network cable is attached\n"
 "- verify that the cable is not broken"
 msgstr ""
+"Þessi prufun athugar hvort að netkapallinn sé tengdur við netkortið þitt.\n"
+"Ef þú færð skilaboðin \"ótengt\":\n"
+"- athugaðu hvort að kapallinn sé tengur\n"
+"- athugaðu hvort að kapallinn sé skemmdur"
 
 msgid ""
 "This test checks whether a valid IP Address is found for your LAN Adapter.\n"
@@ -3021,6 +3158,10 @@ msgid ""
 "- no valid IP Address was found\n"
 "- please check your DHCP, cabling and adapter setup"
 msgstr ""
+"Þessi prufun athugar hvort að gild IP tala fannst fyrir þitt netkort.\n"
+"Ef þú færð skilaboðin \"óstaðfest\":\n"
+"- það fannst ekki gild IP tala\n"
+"- athugaðu DHCP uppsetningu, tengingar eða uppsetningu nets"
 
 msgid ""
 "This test checks whether your LAN Adapter is set up for automatic IP Address "
@@ -3032,9 +3173,17 @@ msgid ""
 "If you get an \"enabeld\" message:\n"
 "-verify that you have a configured and working DHCP Server in your network."
 msgstr ""
+"Þessi prufun athugar hvort að netkortið þitt sé sett upp fyrir sjálfvirka "
+"úthlutun á IP tölu með DHCP þjón.\n"
+"Ef þú færð skilaboðiin \"óvirkt\":\n"
+"- þá er netkortið stillt fyrir handvirka IP uppsetningu\n"
+"- athugaðu hvort að þú hafir sett inn réttar IP uppsetngingar í stillingum "
+"netkorts\n"
+"Ef þú færð skilaboðin \"virkt\":\n"
+"- athugaðu hvort að það sé DHCP þjónn sem úthlutar IP tölum á innra neti þínu"
 
 msgid "This test detects your configured LAN-Adapter."
-msgstr ""
+msgstr "Þessi prufun skynjar innstillt netkort."
 
 msgid "Three"
 msgstr "Þrír"
@@ -3076,6 +3225,8 @@ msgid ""
 "Timer overlap in timers.xml detected!\n"
 "Please recheck it!"
 msgstr ""
+"Tímastillingar ná yfir hvorn annan!\n"
+"Vinsamlega athugið það!"
 
 msgid "Timer sanity error"
 msgstr "Villa í tímastillingu"
@@ -3096,15 +3247,24 @@ msgid "Timezone"
 msgstr "Tímabelti"
 
 msgid "Title"
+msgstr "Titill"
+
+msgid "Title properties"
 msgstr ""
 
 msgid "Title:"
 msgstr "Titill:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
 msgstr ""
+"Til að vera viss um að þú viljir gera þetta þá átt þú að taka USB stautinn "
+"úr sambandi og tengja hann aftur þegar þú ert beðinn um það. Ýttu á OK þegar "
+"þú er búinn að taka hann úr sambandi."
 
 msgid "Today"
 msgstr "Í dag"
@@ -3119,7 +3279,7 @@ msgid "Toneburst A/B"
 msgstr "Tón stýring A/B"
 
 msgid "Track"
-msgstr ""
+msgstr "Spor"
 
 msgid "Translation"
 msgstr "Þýðing"
@@ -3217,7 +3377,7 @@ msgid "Unmount failed"
 msgstr "Aftenging tókst ekki"
 
 msgid "Update"
-msgstr ""
+msgstr "Uppfæra"
 
 msgid "Updates your receiver's software"
 msgstr "Uppfærir forrit móttakarans"
@@ -3241,7 +3401,7 @@ msgid "Use DHCP"
 msgstr "Nota DHCP"
 
 msgid "Use Interface"
-msgstr ""
+msgstr "Nota netkort"
 
 msgid "Use Power Measurement"
 msgstr "Nota afl mælingu"
@@ -3268,7 +3428,7 @@ msgid "Use power measurement"
 msgstr "Nota aflmælingu"
 
 msgid "Use the Networkwizard to configure your Network\n"
-msgstr ""
+msgstr "Nota netkerfis álf til að stilla inn netkerfið\n"
 
 msgid ""
 "Use the left and right buttons to change an option.\n"
@@ -3300,7 +3460,7 @@ msgid "VCR scart"
 msgstr "Vídeó scart"
 
 msgid "VMGM (intro trailer)"
-msgstr ""
+msgstr "VMGM (mynd sýnishorn)"
 
 msgid "Video Fine-Tuning"
 msgstr "Mynd fínstillingar"
@@ -3340,6 +3500,9 @@ msgstr "Skoða gagnvirkt Útvarp"
 msgid "View teletext..."
 msgstr "Skoða textavarp..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Spennu stýring"
 
@@ -3350,22 +3513,25 @@ msgid "W"
 msgstr "W"
 
 msgid "WEP"
-msgstr ""
+msgstr "WEP"
 
 msgid "WPA"
+msgstr "WPA"
+
+msgid "WPA or WPA2"
 msgstr ""
 
 msgid "WPA2"
-msgstr ""
+msgstr "WPA2"
 
 msgid "WSS on 4:3"
 msgstr "WSS á 4:3"
 
 msgid "Waiting"
-msgstr ""
+msgstr "Bíð"
 
 msgid "Waiting for USB stick to settle..."
-msgstr ""
+msgstr "Bíð eftir að USB tengist..."
 
 msgid ""
 "We will now test if your TV can also display this resolution at 50hz. If "
@@ -3394,6 +3560,13 @@ msgid ""
 "\n"
 "Then seek to the end, press OK, select 'end cut'. That's it."
 msgstr ""
+"Velkominn í klippinga stjórann.\n"
+"\n"
+"Farðu að byrjun á því sem að þú ætlar að klippa. Ýttu á OK og veldu 'byrja "
+"klippingu'.\n"
+"\n"
+"Farðu þá að enda þess og ýttu á OK, veldu 'enda klippingu'. Það er allt og "
+"sumt."
 
 msgid ""
 "Welcome to the Image upgrade wizard. The wizard will assist you in upgrading "
@@ -3416,7 +3589,7 @@ msgstr ""
 "Ýttu á OK hnappinn á fjarstýringunni til að fara á næsta þrep."
 
 msgid "Welcome..."
-msgstr ""
+msgstr "Velkomin(n)..."
 
 msgid "West"
 msgstr "Vestur"
@@ -3431,19 +3604,19 @@ msgid "Wireless"
 msgstr "Þráðlaust"
 
 msgid "Wireless Network"
-msgstr ""
+msgstr "Þráðlaust netkerfi"
 
 msgid "Write error while recording. Disk full?\n"
 msgstr "Villla við upptöku. Diskur fullur?\n"
 
 msgid "Write failed!"
-msgstr ""
+msgstr "Tókst ekki að skrifa!"
 
 msgid "Writing NFI image file to flash completed"
-msgstr ""
+msgstr "Búið að skrifa .NFI stýrikerfi í minni"
 
 msgid "Writing image file to NAND Flash"
-msgstr ""
+msgstr "Skrifa stýrikerfi í NAND Flash"
 
 msgid "YPbPr"
 msgstr "YPbPr"
@@ -3454,6 +3627,9 @@ msgstr "Ár:"
 msgid "Yes"
 msgstr "Já"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Já, taka afrit að stilinunum!"
 
@@ -3482,24 +3658,29 @@ msgid ""
 "You can choose some default settings now. Please select the settings you "
 "want to be installed."
 msgstr ""
+"Þú getur valið sjálfgefnar stillingar núna. Vinsamlega veldu stillignar sem "
+"að þú vilt setja inn."
 
 msgid "You can choose, what you want to install..."
-msgstr ""
+msgstr "Þú getur valið það sem að þú vilt setja inn..."
 
 msgid "You cannot delete this!"
 msgstr "Þú getur ekki eytt þessu!"
 
 msgid "You chose not to install any default services lists."
-msgstr ""
+msgstr "Þú valdir að setja ekki inn neinar sjálfgefnar stillingar."
 
 msgid ""
 "You chose not to install any default settings. You can however install the "
 "default settings later in the settings menu."
 msgstr ""
+"Þú valdir ekki að setja inn neinar sjálfgefnar stillingar. Þú getur "
+"hinsvegar valið að setja inn seinna þessar stillingar."
 
 msgid ""
 "You chose not to install anything. Please press OK finish the install wizard."
 msgstr ""
+"Þú valdir ekki að setja in neitt. Vinsamlega ýttu á OK til að ljúka álfi."
 
 msgid ""
 "You do not seem to have a harddisk in your Dreambox. So backing up to a "
@@ -3538,6 +3719,8 @@ msgid ""
 "You have chosen to create a new .NFI flasher bootable USB stick. This will "
 "repartition the USB stick and therefore all data on it will be erased."
 msgstr ""
+"Þú hefur valið að búa til nýjan keyranlegan .NFI USB staut. Þetta veldur því "
+"að öllum gögnum af USB stautum verður eytt."
 
 #, python-format
 msgid "You have to wait %s!"
@@ -3576,6 +3759,7 @@ msgstr ""
 
 msgid "Your Dreambox will restart after pressing OK on your remote control."
 msgstr ""
+"Dreamboxið þitt mun endurræsa sig eftir að þú ýtir á OK á fjarstýringunni."
 
 msgid "Your TV works with 50 Hz. Good!"
 msgstr "Sjónvarpið þitt virkar á 50 Hz. Gott mál!"
@@ -3600,6 +3784,16 @@ msgstr ""
 "Það þarf að uppfæra heila í framtölvu.\n"
 "Ýtið á OK til að byrja uppfærslu."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Fara aftur á rás fyrir stillingu á mótorstýringu?"
 
@@ -3630,11 +3824,17 @@ msgstr "hætta við að breyta uppáhaldsl ista"
 msgid "about to start"
 msgstr "er að byrja"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "bæta við valkosti"
 
 msgid "add bookmark"
-msgstr ""
+msgstr "bæta við bókamerki"
 
 msgid "add bouquet"
 msgstr "bæta rásavendi við"
@@ -3685,14 +3885,22 @@ msgstr ""
 "ertu viss um að þú viljir setja inn\n"
 "eftirfarandi afrit:\n"
 
-msgid "audio tracks"
+#, python-format
+msgid "audio track (%s) format"
 msgstr ""
 
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
+msgid "audio tracks"
+msgstr "hljóð rás"
+
 msgid "back"
 msgstr "til baka"
 
 msgid "background image"
-msgstr ""
+msgstr "bakgrunns mynd"
 
 msgid "better"
 msgstr "betra"
@@ -3700,6 +3908,10 @@ msgstr "betra"
 msgid "blacklist"
 msgstr "svarti listi"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "by Exif"
 
@@ -3710,10 +3922,10 @@ msgid "change recording (endtime)"
 msgstr "breyta upptöku (lokatíma)"
 
 msgid "chapters"
-msgstr ""
+msgstr "kaflar"
 
 msgid "choose destination directory"
-msgstr ""
+msgstr "veldu ákvörðunar möppu"
 
 msgid "circular left"
 msgstr "hringpólun vinstri"
@@ -3725,7 +3937,7 @@ msgid "clear playlist"
 msgstr "hreinsa spilunarlista"
 
 msgid "color"
-msgstr ""
+msgstr "litur"
 
 msgid "complex"
 msgstr "flókinn"
@@ -3734,10 +3946,10 @@ msgid "config menu"
 msgstr "stillinga valmynd"
 
 msgid "confirmed"
-msgstr ""
+msgstr "staðfest"
 
 msgid "connected"
-msgstr ""
+msgstr "tengt"
 
 msgid "continue"
 msgstr "halda áfram"
@@ -3746,13 +3958,13 @@ msgid "copy to bouquets"
 msgstr "afrita til rásavanda"
 
 msgid "create directory"
-msgstr ""
+msgstr "búa til möppu"
 
 msgid "daily"
 msgstr "daglega"
 
 msgid "day"
-msgstr ""
+msgstr "dagur"
 
 msgid "delete"
 msgstr "eyða"
@@ -3779,7 +3991,7 @@ msgid "disabled"
 msgstr "óvirkt"
 
 msgid "disconnected"
-msgstr ""
+msgstr "ótengt"
 
 msgid "do not change"
 msgstr "ekki breyta"
@@ -3826,14 +4038,17 @@ msgstr "enda klippingu hér"
 msgid "end favourites edit"
 msgstr "hætta að breyta uppáhalds lista"
 
-msgid "equal to"
+msgid "enigma2 and network"
 msgstr ""
 
+msgid "equal to"
+msgstr "jafnt og"
+
 msgid "exceeds dual layer medium!"
-msgstr ""
+msgstr "meira en tveggja laga diskur!"
 
 msgid "exit DVD player or return to file browser"
-msgstr ""
+msgstr "hætta í DVD spilara og fara til baka í skráarvafra"
 
 msgid "exit mediaplayer"
 msgstr "hætta í spilara"
@@ -3841,23 +4056,38 @@ msgstr "hætta í spilara"
 msgid "exit movielist"
 msgstr "loka myndalista"
 
-msgid "failed"
+msgid "exit nameserver configuration"
 msgstr ""
 
-msgid "filename"
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
 msgstr ""
 
+msgid "failed"
+msgstr "tókst ekki"
+
+msgid "filename"
+msgstr "skráarnafn"
+
 msgid "fine-tune your display"
 msgstr "fínstilla sjónvarpið"
 
 msgid "font face"
-msgstr ""
+msgstr "stafagerð"
 
 msgid "forward to the next chapter"
-msgstr ""
+msgstr "stökkva í næsta kafla"
 
 msgid "free"
-msgstr ""
+msgstr "laust"
 
 msgid "free diskspace"
 msgstr "laust diskpláss"
@@ -3869,7 +4099,7 @@ msgid "go to standby"
 msgstr "fara í biðstöðu"
 
 msgid "headline"
-msgstr ""
+msgstr "yfirskrift"
 
 msgid "hear radio..."
 msgstr "hlusta á útvarp...."
@@ -3884,7 +4114,7 @@ msgid "hide player"
 msgstr "fela spilara"
 
 msgid "highlighted button"
-msgstr ""
+msgstr "upplýstir hnappar"
 
 msgid "horizontal"
 msgstr "lárétt"
@@ -3913,10 +4143,10 @@ msgid "insert mark here"
 msgstr "setja merki hér"
 
 msgid "jump back to the previous title"
-msgstr ""
+msgstr "stökkva til baka í fyrri titil"
 
 msgid "jump forward to the next title"
-msgstr ""
+msgstr "stökkva áfram í næsta titil"
 
 msgid "jump to listbegin"
 msgstr "fara í byrjun listans"
@@ -3937,7 +4167,7 @@ msgid "left"
 msgstr "vinstri"
 
 msgid "length"
-msgstr ""
+msgstr "lengd"
 
 msgid "list style compact"
 msgstr "stíll lista lítill"
@@ -3958,7 +4188,7 @@ msgid "locked"
 msgstr "læst"
 
 msgid "loopthrough to"
-msgstr ""
+msgstr "tengt saman við"
 
 msgid "manual"
 msgstr "handvirkt"
@@ -3967,7 +4197,7 @@ msgid "menu"
 msgstr "valmynd"
 
 msgid "menulist"
-msgstr ""
+msgstr "valmynd"
 
 msgid "mins"
 msgstr "mín"
@@ -3979,11 +4209,23 @@ msgid "minutes"
 msgstr "mínútur"
 
 msgid "month"
-msgstr ""
+msgstr "mánuður"
 
 msgid "move PiP to main picture"
 msgstr "nota mynd glugga sem aðal mynd"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "myndalisti"
 
@@ -4027,10 +4269,10 @@ msgid "nothing connected"
 msgstr "ekkert tengt"
 
 msgid "of a DUAL layer medium used."
-msgstr ""
+msgstr "af tveggja laga DVD."
 
 msgid "of a SINGLE layer medium used."
-msgstr ""
+msgstr "af eins lags DVD disk."
 
 msgid "off"
 msgstr "af"
@@ -4039,13 +4281,13 @@ msgid "on"
 msgstr "á"
 
 msgid "on READ ONLY medium."
-msgstr ""
+msgstr "á READ ONLY disk."
 
 msgid "once"
 msgstr "einu sinni"
 
-msgid "only /etc/enigma2 directory"
-msgstr "bara /etc/enigma2 mappa"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "opna rása lista"
@@ -4056,6 +4298,9 @@ msgstr "opna rásalista (niður)"
 msgid "open servicelist(up)"
 msgstr "opna rásalista (upp)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "í lagi"
 
@@ -4084,7 +4329,7 @@ msgid "previous channel in history"
 msgstr "fyrri rás í sögu"
 
 msgid "rebooting..."
-msgstr ""
+msgstr "endurræsi..."
 
 msgid "record"
 msgstr "taka upp"
@@ -4092,6 +4337,9 @@ msgstr "taka upp"
 msgid "recording..."
 msgstr "tek upp...."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "eyða fyrir aftan þetta"
 
@@ -4105,10 +4353,10 @@ msgid "remove before this position"
 msgstr "eyða fyrir framan þetta"
 
 msgid "remove bookmark"
-msgstr ""
+msgstr "eyða bókamerki"
 
 msgid "remove directory"
-msgstr ""
+msgstr "eyða möppu"
 
 msgid "remove entry"
 msgstr "taka út"
@@ -4120,19 +4368,19 @@ msgid "remove new found flag"
 msgstr "eyða merkingu um nýfundna rás"
 
 msgid "remove selected satellite"
-msgstr ""
+msgstr "eyða völdum gervihnetti"
 
 msgid "remove this mark"
 msgstr "taka út þetta merki"
 
 msgid "repeat playlist"
-msgstr ""
+msgstr "endurtaka spilunarlista"
 
 msgid "repeated"
 msgstr "endurtekinn"
 
 msgid "rewind to the previous chapter"
-msgstr ""
+msgstr "fara til baka á fyrri kafla"
 
 msgid "right"
 msgstr "hægri"
@@ -4160,12 +4408,18 @@ msgid "seconds"
 msgstr "sekúndur"
 
 msgid "select"
-msgstr ""
+msgstr "veldu"
 
 msgid "select .NFI flash file"
-msgstr ""
+msgstr "veldu .NFI stýrikerfis skrá"
 
 msgid "select image from server"
+msgstr "veldu stýrikerfi frá vefþjón"
+
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
 msgstr ""
 
 msgid "select movie"
@@ -4181,7 +4435,7 @@ msgid "setup pin"
 msgstr "kóði valmyndar"
 
 msgid "show DVD main menu"
-msgstr ""
+msgstr "sýna aðalvalmynd DVD "
 
 msgid "show EPG..."
 msgstr "sýna EPG"
@@ -4241,7 +4495,7 @@ msgid "sort by date"
 msgstr "raða eftir dagsetningu"
 
 msgid "spaces (top, between rows, left)"
-msgstr ""
+msgstr "bil (topp, milli dálka, vinstri)"
 
 msgid "standard"
 msgstr "venjulegt"
@@ -4274,7 +4528,7 @@ msgid "swap PiP and main picture"
 msgstr "skipta á PiP og aðal mynd"
 
 msgid "switch to bookmarks"
-msgstr ""
+msgstr "fara á bókamerki"
 
 msgid "switch to filelist"
 msgstr "skipta í skráarlista"
@@ -4283,10 +4537,10 @@ msgid "switch to playlist"
 msgstr "skipta í spilunar lista"
 
 msgid "switch to the next audio track"
-msgstr ""
+msgstr "skipta á næstu hljóð rás"
 
 msgid "switch to the next subtitle language"
-msgstr ""
+msgstr "skipta á næsta undirtexta"
 
 msgid "text"
 msgstr "texti"
@@ -4301,10 +4555,10 @@ msgid "toggle a cut mark at the current position"
 msgstr "setja merki á núverandi stað"
 
 msgid "toggle time, chapter, audio, subtitle info"
-msgstr ""
+msgstr "skipta á milli tíma, kafla, undirtexta upplýsingar"
 
 msgid "unconfirmed"
-msgstr ""
+msgstr "óstaðfest"
 
 msgid "unknown service"
 msgstr "óþekkt rás"
@@ -4340,7 +4594,7 @@ msgid "whitelist"
 msgstr "hvíti listi"
 
 msgid "year"
-msgstr ""
+msgstr "ár"
 
 msgid "yes"
 msgstr "já"
@@ -4448,6 +4702,9 @@ msgstr "stokkið"
 #~ msgid "Auto show inforbar"
 #~ msgstr "Sýna upplýsingar sjálfvirkt"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Leita að SSID sjálfvirkt"
+
 #~ msgid "Cable provider"
 #~ msgstr "Kapal sendandi"
 
@@ -4469,6 +4726,9 @@ msgstr "stokkið"
 #~ msgid "Device Setup..."
 #~ msgstr "Uppsetning tækja..."
 
+#~ msgid "DiSEqC Mode"
+#~ msgstr "DiSEqC Gerð"
+
 #~ msgid "Disable subtitles"
 #~ msgstr "Taka af undirtexta"
 
@@ -4556,6 +4816,33 @@ msgstr "stokkið"
 #~ msgid "Network"
 #~ msgstr "Netkerfi"
 
+#~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Engin nothæf nettenging fannst.\n"
+#~ "Vinsamlega athugið hvort að netsnúra sé tengd og að stillingar netkerfis "
+#~ "séu réttar."
+
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Engin nothæf þráðlaus nettenging fannst.\n"
+#~ "Vinsamlega athugið hvort að það sé tengt þráðlaust netkort eða athugaðu "
+#~ "stillingar þínar."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Engin nothæf þráðlaus nettenging fannst.\n"
+#~ "Vinsamlega athugið hvort að það sé tengt þráðlaust USB netkort eða "
+#~ "athugaðu stillingar þínar."
+
 #~ msgid "Nothing connected"
 #~ msgstr "Ekkert tengt"
 
@@ -4730,6 +5017,9 @@ msgstr "stokkið"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "tengt frá tengi A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "bara /etc/enigma2 mappa"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "spila næsta atriði á spilunarlista"
 
index 0b1bde2..b7a6d6f 100755 (executable)
--- a/po/it.po
+++ b/po/it.po
@@ -4,7 +4,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: enigma2 Italian Locale\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-09-23 09:02+0100\n"
 "Last-Translator: Spaeleus <spaeleus@croci.org>\n"
 "Language-Team: WWW.LINSAT.NET <spaeleus@croci.org>\n"
@@ -88,6 +88,12 @@ msgstr "(vuoto)"
 msgid "(show optional DVD audio menu)"
 msgstr "(Mostrare il menu opzionale DVD audio)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -400,6 +406,11 @@ msgid "Arabic"
 msgstr "Arabo"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -439,9 +450,6 @@ msgstr "Scambio automatico scart"
 msgid "Automatic"
 msgstr "Automatico"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Ricerca automatica"
 
@@ -514,6 +522,9 @@ msgstr "Luminosità"
 msgid "Burn DVD"
 msgstr "Masterizzare DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr "Masterizzare su DVD"
 
@@ -675,6 +686,9 @@ msgstr "Compact flash card"
 msgid "Complete"
 msgstr "Completo"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Configurazione"
 
@@ -727,6 +741,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr "Impossibile caricare supporto! Nessun disco Inserito?"
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Creazione cartella video fallita!"
 
@@ -847,9 +864,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "Modalità DiSEqc"
-
 msgid "DiSEqC mode"
 msgstr "Modalità DiSEqC"
 
@@ -1042,9 +1056,15 @@ msgstr "ERRORE - Ricerca fallita (%s)!"
 msgid "East"
 msgstr "Est"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Mod. DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr "Modifica capitolo del titolo corrente"
 
@@ -1090,6 +1110,9 @@ msgstr "Codifica"
 msgid "Encryption Key"
 msgstr "Chiave Codifica"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Tipo Codifica"
 
@@ -1132,6 +1155,12 @@ msgstr "Avviare FFW a velocità"
 msgid "Enter Rewind at speed"
 msgstr "Avviare REW a velocità"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Menu Principale"
 
@@ -1224,6 +1253,12 @@ msgstr "Sint. fine"
 msgid "Finished"
 msgstr "Terminato"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finlandese"
 
@@ -1329,6 +1364,9 @@ msgstr "Configurazione harddisk"
 msgid "Harddisk standby after"
 msgstr "Standby Harddisk dopo"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Informazioni gerarchia"
 
@@ -1344,6 +1382,12 @@ msgstr "Ungherese"
 msgid "IP Address"
 msgstr "Indirizzo IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandese"
 
@@ -1825,28 +1869,22 @@ msgstr ""
 "Scegliendo 'NO' la protezione configurazione sarà disabilitata!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Nessuna scheda di rete locate trovata!\n"
-"Verificare di aver collegato il cavo e che la rete sia configurata "
-"correttamente."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Nessun adattatore di rete wireless trovato!\n"
-"Verificare di aver collegato un adattatore WLAN USB compatibile e che la "
-"rete sia configutata correttamente."
 
 msgid "No, but restart from begin"
 msgstr "No, riprendere dall'inizio"
@@ -2115,9 +2153,21 @@ msgstr ""
 "Selezionare la propria lingua utilizzando i tasti Sù/Giù. Premere OK per "
 "confermare."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Attendere... Lista in caricamento."
 
@@ -2199,6 +2249,9 @@ msgstr "Menu Anteprima"
 msgid "Primary DNS"
 msgstr "DNS Primario"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Proteggere canali"
 
@@ -2335,6 +2388,9 @@ msgstr "Ripetizioni"
 msgid "Reset"
 msgstr "Reset"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Risoluzione"
 
@@ -2575,6 +2631,12 @@ msgstr "Selezionare la modalità video"
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr "Separare i titoli con un Menu Principale"
 
@@ -2626,9 +2688,15 @@ msgstr "Info Canale"
 msgid "Services"
 msgstr "Canali"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr "=> interfaccia predefinita"
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Impostare limiti"
 
@@ -2686,6 +2754,9 @@ msgstr "Programmi simili:"
 msgid "Simple"
 msgstr "Semplice"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Singolo"
 
@@ -2863,6 +2934,9 @@ msgstr ""
 "Supporto: spaeleus@croci.org.\n"
 "- 7 Settembre 2008 -"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "Standard TV"
 
@@ -3152,9 +3226,15 @@ msgstr "Fuso orario"
 msgid "Title"
 msgstr "Titolo"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Titolo:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3397,6 +3477,9 @@ msgstr "Rass interattivi"
 msgid "View teletext..."
 msgstr "Televideo"
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Modalità voltaggio"
 
@@ -3412,6 +3495,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3520,6 +3606,9 @@ msgstr "Anno:"
 msgid "Yes"
 msgstr "Sì"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Sì, eseguire backup configurazione!"
 
@@ -3669,6 +3758,16 @@ msgstr ""
 "Il firmware del frontprocessor deve essere aggiornato.\n"
 "Premere OK per iniziare l'aggiornamento."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr ""
 "Ritornare al canale attivo\n"
@@ -3703,6 +3802,12 @@ msgstr "Annullare edit preferiti"
 msgid "about to start"
 msgstr "Avvio in corso"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "Aggiungere alternative"
 
@@ -3758,6 +3863,14 @@ msgstr ""
 "Ripristinare\n"
 "questo backup?\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr "Tracce audio"
 
@@ -3773,6 +3886,10 @@ msgstr "Migliore"
 msgid "blacklist"
 msgstr "Lista nera"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "by Exif"
 
@@ -3899,6 +4016,9 @@ msgstr "Fine Taglio"
 msgid "end favourites edit"
 msgstr "Fine edit preferiti"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr "Uguale a:"
 
@@ -3914,6 +4034,21 @@ msgstr "Uscire dal Mediaplayer"
 msgid "exit movielist"
 msgstr "Uscire da lista registrazioni"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr "Fallito"
 
@@ -4057,6 +4192,18 @@ msgstr "Mese"
 msgid "move PiP to main picture"
 msgstr "Inviare PiP a schermo principale"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "Lista registrazioni"
 
@@ -4117,8 +4264,8 @@ msgstr ""
 msgid "once"
 msgstr "Una volta"
 
-msgid "only /etc/enigma2 directory"
-msgstr "Solo la cartella /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Lista canali"
@@ -4129,6 +4276,9 @@ msgstr "Lista canali (giù)"
 msgid "open servicelist(up)"
 msgstr "Lista canali (sù)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "Pass"
 
@@ -4165,6 +4315,9 @@ msgstr "Registrare"
 msgid "recording..."
 msgstr "Registrazione in corso..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "Cancellare dopo questa pos."
 
@@ -4241,6 +4394,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "Selezionare registrazione"
 
@@ -4477,6 +4636,15 @@ msgstr "Zapped"
 #~ msgstr "Passare al titolo video 1 (riprodurre dall'inizio)"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Nessuna scheda di rete locate trovata!\n"
+#~ "Verificare di aver collegato il cavo e che la rete sia configurata "
+#~ "correttamente."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN device or enable "
 #~ "you local network interface."
@@ -4486,6 +4654,15 @@ msgstr "Zapped"
 #~ "abilitare l'intefaccia di rete locale."
 
 #~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Nessun adattatore di rete wireless trovato!\n"
+#~ "Verificare di aver collegato un adattatore WLAN USB compatibile e che la "
+#~ "rete sia configutata correttamente."
+
+#~ msgid ""
 #~ "Recording(s) are in progress or coming up in few seconds... really reboot "
 #~ "now?"
 #~ msgstr "Registrazioni in corso o in avvio a breve! Riavviare ora?"
@@ -4502,3 +4679,6 @@ msgstr "Zapped"
 
 #~ msgid "full /etc directory"
 #~ msgstr "Cartella /etc completa"
+
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "Solo la cartella /etc/enigma2"
index 2cdc4f7..6aecc95 100755 (executable)
--- a/po/lt.po
+++ b/po/lt.po
@@ -2,8 +2,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-11-03 17:09+0100\n"
-"PO-Revision-Date: 2008-10-23 21:12+0200\n"
+"POT-Creation-Date: 2008-11-16 23:21+0100\n"
+"PO-Revision-Date: 2008-11-15 22:37+0200\n"
 "Last-Translator: Audronis, Grincevicius <audrgrin@takas.lt>\n"
 "Language-Team: Adga / enigma2 (c) <audrgrin@takas.lt>\n"
 "MIME-Version: 1.0\n"
@@ -85,6 +85,12 @@ msgstr "(laisva)"
 msgid "(show optional DVD audio menu)"
 msgstr "(rodyti pasirenkamą DVD garso meniu)"
 
+msgid "* Only available if more than one interface is active."
+msgstr "* Pasiekiamas tiktai, jei daugiau kaip vienas interfeisas yra aktyvus."
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr "* Pasiekiamas tiktai, surinkus paslėptą SSID ar tinklo raktą"
+
 msgid ".NFI Download failed:"
 msgstr ".NFI parsisiuntimas klaidingas:"
 
@@ -403,6 +409,13 @@ msgid "Arabic"
 msgstr "Arabų"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+"Jūs esate įsitikinęs, kad jūs norite aktyvuoti šią tinklo konfigūraciją?\n"
+"\n"
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -442,9 +455,6 @@ msgstr "Automatinis skarto perjungimas"
 msgid "Automatic"
 msgstr "Automatinis"
 
-msgid "Automatic SSID lookup"
-msgstr "Automatinė SSID paieška"
-
 msgid "Automatic Scan"
 msgstr "Automatinė paieška"
 
@@ -518,7 +528,7 @@ msgid "Burn DVD"
 msgstr "Išdeginti DVD"
 
 msgid "Burn existing image to DVD"
-msgstr ""
+msgstr "Išdeginti esamą atvaizdą į DVD"
 
 msgid "Burn to DVD..."
 msgstr "Išdeginti į DVD..."
@@ -681,6 +691,9 @@ msgstr "Kompaktinė atmintinės kortelė"
 msgid "Complete"
 msgstr "Įvykdyta"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr "Kompleksas (leidžia sumaišyti garso takelius ir aspektus),"
+
 msgid "Configuration Mode"
 msgstr "Konfigūravimo būdas"
 
@@ -734,7 +747,7 @@ msgid "Could not load Medium! No disc inserted?"
 msgstr "Negalima užkrauti! Joks diskas neįdėtas?"
 
 msgid "Create DVD-ISO"
-msgstr ""
+msgstr "Sukurti DVD-ISO"
 
 msgid "Create movie folder failed"
 msgstr "Fimų aplanko sukurti nepavyko"
@@ -856,9 +869,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC pasirinkimas"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC pasirinkimas"
 
@@ -936,9 +946,6 @@ msgstr ""
 "Jūs iš tikrųjų norite parsisiųsti\n"
 "priedą \"%s \"?"
 
-msgid "Do you really want to exit?"
-msgstr "Jūs tikrai norite išeiti?"
-
 msgid ""
 "Do you really want to initialize the harddisk?\n"
 "All data on the disk will be lost!"
@@ -1055,9 +1062,15 @@ msgstr "KLAIDA - nenuskanuota (%s)!"
 msgid "East"
 msgstr "Rytai"
 
+msgid "Edit"
+msgstr "Redaguoti"
+
 msgid "Edit DNS"
 msgstr "Redaguoti DNS"
 
+msgid "Edit Title"
+msgstr "Redaguoti pavadinimą"
+
 msgid "Edit chapters of current title"
 msgstr "Redaguokite dabartinio pavadinimo skyrius"
 
@@ -1103,6 +1116,9 @@ msgstr "Užšifravimas"
 msgid "Encryption Key"
 msgstr "Užšifravimo raktas"
 
+msgid "Encryption Keytype"
+msgstr "Rakto užšifravimo tipas"
+
 msgid "Encryption Type"
 msgstr "Užšifravimo būdas"
 
@@ -1144,6 +1160,12 @@ msgstr "Eiti į greitą persukimą"
 msgid "Enter Rewind at speed"
 msgstr "Eiti į greitą atsukimą "
 
+msgid "Enter WLAN network name/SSID:"
+msgstr "Įveskite WLAN tinklo pavadinimą/SSID:"
+
+msgid "Enter WLAN passphrase/key:"
+msgstr "Įveskite WLAN leidimo frazę/raktą:"
+
 msgid "Enter main menu..."
 msgstr "Eiti į pagrindinį meniu..."
 
@@ -1236,6 +1258,12 @@ msgstr "Tiksliau"
 msgid "Finished"
 msgstr "Baigtas"
 
+msgid "Finished configuring your network"
+msgstr "Baigtas jūsų tinklo konfigūravimas"
+
+msgid "Finished restarting your network"
+msgstr "Baigtas jūsų tinklo paleidimas iš naujo"
+
 msgid "Finnish"
 msgstr "Suomių"
 
@@ -1341,6 +1369,9 @@ msgstr "Kieto disko nustatymas"
 msgid "Harddisk standby after"
 msgstr "Kietas diskas išsijungs po"
 
+msgid "Hidden network SSID"
+msgstr "Paslėptas tinklo SSID"
+
 msgid "Hierarchy Information"
 msgstr "Hierarchijos informacija"
 
@@ -1357,10 +1388,10 @@ msgid "IP Address"
 msgstr "IP adresas"
 
 msgid "ISO file is too large for this filesystem!"
-msgstr ""
+msgstr "ISO failas yra per didelis šiai failų sistemai!"
 
 msgid "ISO path"
-msgstr ""
+msgstr "ISO kelias"
 
 msgid "Icelandic"
 msgstr "Islandų"
@@ -1461,7 +1492,7 @@ msgid "Instant Record..."
 msgstr "Greitas įrašas..."
 
 msgid "Integrated Ethernet"
-msgstr "Integruotas tinklas"
+msgstr "Integruotas tinklo adapteris"
 
 msgid "Integrated Wireless"
 msgstr "Integruotas belaidis tinklas"
@@ -1641,7 +1672,7 @@ msgid "Mkfs failed"
 msgstr "Mkfs nepavyko"
 
 msgid "Mode"
-msgstr "Būdas"
+msgstr "Pasirinkimas"
 
 msgid "Model: "
 msgstr "Modelis:"
@@ -1781,6 +1812,9 @@ msgstr "Nėra 50 Hz,gaila. :("
 msgid "No HDD found or HDD not initialized!"
 msgstr "Kietas diskas nerastas arba neinicializuotas!"
 
+msgid "No Networks found"
+msgstr ""
+
 msgid "No backup needed"
 msgstr "Atsarginės kopijos nereikia"
 
@@ -1850,31 +1884,31 @@ msgstr ""
 "nebus įjungta!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Jokių dirbančių vietinių tinklo adapterių nerasta. \n"
-"prašome patikrinti, kad jūs prijungėte tinklo kabelį, ir jūsų Tinklas yra "
+"Joks veikiantis vietinio tinklo adapteris, nerastas.\n"
+"Prašome patikrinti, ar jūs prijungėte tinklo kabelį, ir ar jūsų tinklas yra "
 "sukonfigūruotas teisingai."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
-"Joks veikiantis belaidis tinklas nesurastas. \n"
-" Prašome patikrinti ar jūs pridėjote suderinamą WLAN prietaisą ar įjungėte "
-"jūsų vietinį tinklą."
+"Joks veikiantis belaidžio tinklo adapteris nerastas.\n"
+"Prašome patikrinti, ar jūs pridėjote suderinamą WLAN prietaisą, ir ar jūsų "
+"tinklas yra sukonfigūruotas teisingai."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Joks dirbantis belaidžio tinklo adapteris nerastas. \n"
-" Prašome patikrinti, ar jūs prijungėte suderinamą USB belaidžio tinklo "
-"įrenginį, ir ar jūsų Tinklas yra sukonfigūruotas teisingai."
+"Joks veikiantis belaidžio tinklo interfeisas nerastas.\n"
+"Prašome patikrinti, kad jūs pridėjote suderinamą WLAN prietaisą ar įjungėte "
+"jūsų vietinio tinklo interfeisą."
 
 msgid "No, but restart from begin"
 msgstr "Ne, paleisti nuo pradžių"
@@ -2146,9 +2180,21 @@ msgstr ""
 "Prašome naudoti AUKŠTYN IR ŽEMYN mygtukus, kad išsirinktumėte savo kalbą. Po "
 "to spauskite OK mygtuką."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr "Prašome laukti jūsų tinklo konfigūracijos aktyvavimo..."
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Prašome laukti md5 parašo patikrinimo..."
 
+msgid "Please wait while we configure your network..."
+msgstr "Prašome laukti kol konfigūruojamas jūsų tinklas..."
+
+msgid "Please wait while your network is restarting..."
+msgstr "Prašome laukti kol paleidžiamas iš naujo jūsų tinklas..."
+
+msgid "Please wait..."
+msgstr "Prašome laukti..."
+
 msgid "Please wait... Loading list..."
 msgstr "Prašome laukti... Užkraunamas sąrašas..."
 
@@ -2230,6 +2276,9 @@ msgstr "Peržiūros meniu"
 msgid "Primary DNS"
 msgstr "Pirminis DNS"
 
+msgid "Properties of current title"
+msgstr "Dabartinio pavadinimo ypatybės"
+
 msgid "Protect services"
 msgstr "Apsaugoti kanalus"
 
@@ -2366,6 +2415,9 @@ msgstr "Pakartojimai"
 msgid "Reset"
 msgstr "Perjungti"
 
+msgid "Reset and renumerate title names"
+msgstr "Perjungti ir pernumeruoti antraštės pavadinimus"
+
 msgid "Resolution"
 msgstr "Rezoliucija"
 
@@ -2606,6 +2658,12 @@ msgstr "Pasirinkite vaizdo būdą"
 msgid "Selected source image"
 msgstr "Išsirinktas šaltinio atvaizdas"
 
+msgid "Send DiSEqC"
+msgstr "Siųskite DiSEqC"
+
+msgid "Send DiSEqC only on satellite change"
+msgstr "Siųskite DiSEqC tik palydovo pakeitimui"
+
 msgid "Seperate titles with a main menu"
 msgstr "Pavadinimai su pagrindiniu meniu"
 
@@ -2657,9 +2715,15 @@ msgstr "Kanalo informacija"
 msgid "Services"
 msgstr "Kanalai"
 
+msgid "Set Voltage and 22KHz"
+msgstr "Nustatyti įtampą ir 22 KHZ"
+
 msgid "Set as default Interface"
 msgstr "Pasirinkti numatytą sąsają"
 
+msgid "Set interface as default Interface"
+msgstr "Nustatytas interfeisas kaip numatytas interfeisas"
+
 msgid "Set limits"
 msgstr "Nustatykite ribas"
 
@@ -2717,6 +2781,9 @@ msgstr "Kartojamos laidos:"
 msgid "Simple"
 msgstr "Paprastas"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr "Paprastas pavadinimo nustatymas (suderinamas žaidėjams)"
+
 msgid "Single"
 msgstr "Vienintelis"
 
@@ -2890,7 +2957,7 @@ msgid "TRANSLATOR_INFO"
 msgstr "Audronis Grincevičius (ADGA) Pasvalys, Lietuva"
 
 msgid "TS file is too large for ISO9660 level 1!"
-msgstr ""
+msgstr "TS failas yra per didelis ISO9660 lygmeniui 1!"
 
 msgid "TV System"
 msgstr "TV sistema"
@@ -3206,9 +3273,15 @@ msgstr "Laiko juosta"
 msgid "Title"
 msgstr "Antraštė"
 
+msgid "Title properties"
+msgstr "Ypatybės"
+
 msgid "Title:"
 msgstr "Pavadinimas:"
 
+msgid "Titleset mode"
+msgstr "Pavadinimo nustatymo būdas"
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3305,6 +3378,9 @@ msgstr "USB"
 msgid "USB Stick"
 msgstr "USB raktelis"
 
+msgid "Ukrainian"
+msgstr ""
+
 msgid ""
 "Unable to complete filesystem check.\n"
 "Error: "
@@ -3349,6 +3425,9 @@ msgstr "Atnaujinama"
 msgid "Upgrading Dreambox... Please wait"
 msgstr "Atnaujinamas imtuvas... Prašome palaukti"
 
+msgid "Use"
+msgstr ""
+
 msgid "Use DHCP"
 msgstr "Naudoti DHCP"
 
@@ -3455,6 +3534,9 @@ msgstr "Žiūrėti Rass interaktyviai..."
 msgid "View teletext..."
 msgstr "Žiūrėti teletekstą..."
 
+msgid "Virtual KeyBoard"
+msgstr "Virtuali Klaviatūra"
+
 msgid "Voltage mode"
 msgstr "Įtampa"
 
@@ -3470,6 +3552,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr "WPA arba WPA2"
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3578,7 +3663,7 @@ msgid "Yes"
 msgstr "Taip"
 
 msgid "Yes, and delete this movie"
-msgstr ""
+msgstr "Taip, ir trinti šį filmą"
 
 msgid "Yes, backup my settings!"
 msgstr "Taip, padarykite atsarginę kopiją mano nustatymų!"
@@ -3737,6 +3822,20 @@ msgstr ""
 "Reikalingas priekinio procesoriaus atnaujinimas.\n"
 "Spauskite OK, kad pradėti atnaujinimą."
 
+msgid "Your network configuration has been activated."
+msgstr "Jūsų tinklo konfigūracija aktyvuota."
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+"Jūsų tinklo konfigūracija aktyvuota.\n"
+"Rastas antras sukonfigūruotas interfeisas.\n"
+"\n"
+"Jūs norite išjungti antrą tinklo interfeisą?"
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Perjungti atgal į kanalą po pozicionieriaus nustatymo?"
 
@@ -3767,6 +3866,12 @@ msgstr "nutraukti mėgstamiausių redagavimą"
 msgid "about to start"
 msgstr "apie pradžią"
 
+msgid "activate current configuration"
+msgstr "aktyvuokite dabartinę konfigūraciją"
+
+msgid "add a nameserver entry"
+msgstr "pridėkite serverio pavadinimo įėjimą"
+
 msgid "add alternatives"
 msgstr "pridėti kitus"
 
@@ -3822,6 +3927,14 @@ msgstr ""
 "Jūs tikrai norite atkurti\n"
 "atsarginė kopija:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr "Garso takelio (%s) formatas"
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr "garso takelio (%s) kalba"
+
 msgid "audio tracks"
 msgstr "garso takeliai"
 
@@ -3837,6 +3950,10 @@ msgstr "geriau"
 msgid "blacklist"
 msgstr "juodas sąrašas"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr "išdeginkite garso takelį (%s)"
+
 msgid "by Exif"
 msgstr "pagal Exif"
 
@@ -3891,12 +4008,12 @@ msgstr "kasdien"
 msgid "day"
 msgstr "diena"
 
-msgid "delete"
-msgstr "trinti"
-
 msgid "delete cut"
 msgstr "trinti iškirpimą"
 
+msgid "delete file"
+msgstr ""
+
 msgid "delete playlist entry"
 msgstr "trinti įrašą iš grojaraščio "
 
@@ -3963,6 +4080,9 @@ msgstr "kirpimo pabaiga čia"
 msgid "end favourites edit"
 msgstr "baigti mėgstamiausių redagavimą"
 
+msgid "enigma2 and network"
+msgstr "enigma2 ir tinklas"
+
 msgid "equal to"
 msgstr "lygus į"
 
@@ -3978,6 +4098,21 @@ msgstr "išjungti media grotuvą"
 msgid "exit movielist"
 msgstr "uždaryti filmų sąrašą"
 
+msgid "exit nameserver configuration"
+msgstr "išeiti iš serverio pavadinimo konfigūracijos"
+
+msgid "exit network adapter configuration"
+msgstr "išeiti iš tinklo adapterio konfigūracijos"
+
+msgid "exit network adapter setup menu"
+msgstr "išeiti iš tinklo adapterio nustatymų meniu"
+
+msgid "exit network interface list"
+msgstr "išeiti iš tinklo interfeiso sąrašo"
+
+msgid "exit networkadapter setup menu"
+msgstr "išeiti iš tinklo adapterio nustatymų meniu"
+
 msgid "failed"
 msgstr "klaidingas"
 
@@ -4014,6 +4149,9 @@ msgstr "Išgirsti radiją..."
 msgid "help..."
 msgstr "Pagalba..."
 
+msgid "hidden network"
+msgstr ""
+
 msgid "hide extended description"
 msgstr "slėpti išplėstą aprašymą"
 
@@ -4121,6 +4259,18 @@ msgstr "mėnuo"
 msgid "move PiP to main picture"
 msgstr "perkelti PiP į mano paveikslėlį"
 
+msgid "move down to last entry"
+msgstr "perkelti žemyn prie paskutinio įėjimo"
+
+msgid "move down to next entry"
+msgstr "perkelti žemyn prie kito įėjimo"
+
+msgid "move up to first entry"
+msgstr "perkelti aukštyn prie pirmo įėjimo"
+
+msgid "move up to previous entry"
+msgstr "perkelti aukštyn prie ankstesnio įėjimo"
+
 msgid "movie list"
 msgstr "filmų sąrašas"
 
@@ -4181,8 +4331,8 @@ msgstr "diskas TIK SKAITYMUI."
 msgid "once"
 msgstr "vieną kartą"
 
-msgid "only /etc/enigma2 directory"
-msgstr "tik /etc/enigma2 direktoriją"
+msgid "open nameserver configuration"
+msgstr "atidaryti serverio pavadinimo konfigūraciją"
 
 msgid "open servicelist"
 msgstr "Atidaryti kanalų sąrašą"
@@ -4193,6 +4343,9 @@ msgstr "Atidaryti kanalų sąrašą (žemyn)"
 msgid "open servicelist(up)"
 msgstr "Atidaryti kanalų sąrašą (aukštyn)"
 
+msgid "open virtual keyboard input help"
+msgstr "atidaryti virtualios klaviatūros įvesties pagalbą"
+
 msgid "pass"
 msgstr "perduoti"
 
@@ -4229,6 +4382,9 @@ msgstr "įrašas"
 msgid "recording..."
 msgstr "įrašoma..."
 
+msgid "remove a nameserver entry"
+msgstr "pašalinkite serverio pavadinimo įėjimą"
+
 msgid "remove after this position"
 msgstr "pašalinti po šios vietos"
 
@@ -4274,9 +4430,15 @@ msgstr "atsukti į ankstesnį skyrių"
 msgid "right"
 msgstr "dešinys"
 
+msgid "save last directory on exit"
+msgstr ""
+
 msgid "save playlist"
 msgstr "išsaugoti grojaraštį"
 
+msgid "save playlist on exit"
+msgstr ""
+
 msgid "scan done!"
 msgstr "skanavimas baigtas!"
 
@@ -4305,6 +4467,12 @@ msgstr "išsirinkite .NFI diegimo failą"
 msgid "select image from server"
 msgstr "išsirinkite atvaizdą iš serverio"
 
+msgid "select interface"
+msgstr "išsrinkite interfeisą"
+
+msgid "select menu entry"
+msgstr "išsirinkite meniu įėjimą"
+
 msgid "select movie"
 msgstr "pasirinkite filmą"
 
@@ -4389,6 +4557,9 @@ msgstr "išjungimas"
 msgid "start cut here"
 msgstr "pradėti iškirpimą čia"
 
+msgid "start directory"
+msgstr ""
+
 msgid "start timeshift"
 msgstr "Pradėti laiko perstumimą"
 
@@ -4541,6 +4712,9 @@ msgstr "įjungta"
 #~ "Jūs esate įsitikinęs, kad jūs norite įjungti savo vietinį tinklą? \n"
 #~ "\n"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Automatinė SSID paieška"
+
 #~ msgid "Autowrite timer"
 #~ msgstr "Automatinis laikamačio perrašymas"
 
@@ -4619,6 +4793,9 @@ msgstr "įjungta"
 #~ "Jūs tikrai norite parsisiųsti\n"
 #~ "priedą \""
 
+#~ msgid "Do you really want to exit?"
+#~ msgstr "Jūs tikrai norite išeiti?"
+
 #~ msgid "Edit current title"
 #~ msgstr "Suredaguokite dabartinį pavadinimą"
 
@@ -4661,6 +4838,15 @@ msgstr "įjungta"
 #~ msgstr "Naujas DVD"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Jokių dirbančių vietinių tinklo adapterių nerasta. \n"
+#~ "prašome patikrinti, kad jūs prijungėte tinklo kabelį, ir jūsų Tinklas yra "
+#~ "sukonfigūruotas teisingai."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4678,6 +4864,24 @@ msgstr "įjungta"
 #~ " Prašome patikrinti, ar jūs pridėjote suderinamą WLAN įrenginį ir ar "
 #~ "įjungėte vietinio tinklo sąsają."
 
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Joks veikiantis belaidis tinklas nesurastas. \n"
+#~ " Prašome patikrinti ar jūs pridėjote suderinamą WLAN prietaisą ar "
+#~ "įjungėte jūsų vietinį tinklą."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Joks dirbantis belaidžio tinklo adapteris nerastas. \n"
+#~ " Prašome patikrinti, ar jūs prijungėte suderinamą USB belaidžio tinklo "
+#~ "įrenginį, ir ar jūsų Tinklas yra sukonfigūruotas teisingai."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Ne, leiskite man pasirinkti numatytuosius sąrašus"
 
@@ -4957,6 +5161,9 @@ msgstr "įjungta"
 #~ msgid "cancel"
 #~ msgstr "panaikinti"
 
+#~ msgid "delete"
+#~ msgstr "trinti"
+
 #~ msgid "equal to Socket A"
 #~ msgstr "lygus lizdui A"
 
@@ -4969,6 +5176,9 @@ msgstr "įjungta"
 #~ msgid "minutes and"
 #~ msgstr "minučių ir"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "tik /etc/enigma2 direktoriją"
+
 #~ msgid "scan done! %d services found!"
 #~ msgstr "Paieška atlikta! %d Kanalai surasti!"
 
index e63e24b..ef3cd85 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-11-03 17:09+0100\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-10-26 01:38+0100\n"
 "Last-Translator: FeReNGi\n"
 "Language-Team: none <michel@weeren.net>\n"
@@ -90,6 +90,12 @@ msgstr "(leeg)"
 msgid "(show optional DVD audio menu)"
 msgstr "(optioneel DVD audio menu weergeven)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ".NFI Download mislukt:"
 
@@ -406,6 +412,11 @@ msgid "Arabic"
 msgstr "Arabisch"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -445,9 +456,6 @@ msgstr "Automatisch scart schakelen"
 msgid "Automatic"
 msgstr "Automatisch"
 
-msgid "Automatic SSID lookup"
-msgstr "Automatisch SSID zoeken"
-
 msgid "Automatic Scan"
 msgstr "Automatisch zoeken"
 
@@ -686,6 +694,9 @@ msgstr "Compact flash kaart"
 msgid "Complete"
 msgstr "Compleet"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Configuratie modus"
 
@@ -861,9 +872,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC-modus"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC-modus"
 
@@ -1060,9 +1068,15 @@ msgstr "Fout - Zoeken mislukt (%s)!"
 msgid "East"
 msgstr "Oost"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "DNS wijzigen"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr "Wijzig hoofdstuk van de huidige titel"
 
@@ -1108,6 +1122,9 @@ msgstr "Encryptie"
 msgid "Encryption Key"
 msgstr "Encryptie sleutel"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Encryptie type"
 
@@ -1149,6 +1166,12 @@ msgstr "Snel vooruitspoelen op volgende snelheid"
 msgid "Enter Rewind at speed"
 msgstr "Snel terugspoelen op volgende snelheid"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Ga naar hoofdmenu..."
 
@@ -1241,6 +1264,12 @@ msgstr "Fijn afst."
 msgid "Finished"
 msgstr "Voltooid"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Fins"
 
@@ -1346,6 +1375,9 @@ msgstr "Harde schijf instellingen"
 msgid "Harddisk standby after"
 msgstr "Harde schijf standby na"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Hiërarchie informatie"
 
@@ -1848,31 +1880,22 @@ msgstr ""
 "Indien u 'nee' kiest, blijft het menu onbeveiligd!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Geen werkende lokale netwerk adapter gevonden.\n"
-"Controleer of u de netwerk kabel goed verbonden hebt en uw netwerk "
-"instellingen correct zijn."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
-"Geen werkende WiFi gevonden.\n"
-"Controleer of u een geschikte WiFi adapter geplaatst heeft of activeer de "
-"netwerk instellingen."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Geen werkende WiFi adapter gevonden.\n"
-"Controleer of u een geschikte USB WiFi adapter geplaatst heeft of controleer "
-"de netwerk instellingen."
 
 msgid "No, but restart from begin"
 msgstr "Nee, vanaf begin herstarten"
@@ -2145,9 +2168,21 @@ msgstr ""
 "Gebruik de omhoog/omlaag toeten om de gewenste taal te selecteren. Druk "
 "daarna op OK."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Wacht op md5 controle verificatie..."
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Ogenblik a.u.b. De lijst wordt geladen..."
 
@@ -2229,6 +2264,9 @@ msgstr "Voorbeeld menu"
 msgid "Primary DNS"
 msgstr "Primaire DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Beveilig zenders"
 
@@ -2365,6 +2403,9 @@ msgstr "Herhalingen"
 msgid "Reset"
 msgstr "Herladen"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Resolutie"
 
@@ -2604,6 +2645,12 @@ msgstr "Selecteer video modus"
 msgid "Selected source image"
 msgstr "Selecteer bron bestand"
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr "Zonder titels af met een hoofdmenu"
 
@@ -2655,9 +2702,15 @@ msgstr "Zender"
 msgid "Services"
 msgstr "Zenders"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr "Als standaard interface instellen"
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Limieten instellen"
 
@@ -2715,6 +2768,9 @@ msgstr "Gelijkwaardige uitzendingen:"
 msgid "Simple"
 msgstr "Eenvoudig"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Enkel"
 
@@ -3202,9 +3258,15 @@ msgstr "Tijdzone"
 msgid "Title"
 msgstr "Titel"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Titel:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3453,6 +3515,9 @@ msgstr "Rass Interactive weergeven"
 msgid "View teletext..."
 msgstr "Teletekst weergeven..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Spanningsmodus"
 
@@ -3468,6 +3533,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3734,6 +3802,16 @@ msgstr ""
 "De frontprocessor firmware moet vernieuwd worden.\n"
 "Druk op OK, om dit proces te starten."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Wilt u terugkeren naar de vorige zender?"
 
@@ -3764,6 +3842,12 @@ msgstr "Favorieten bewerken afsluiten"
 msgid "about to start"
 msgstr "start direct"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "Alternatieven toevoegen"
 
@@ -3819,6 +3903,14 @@ msgstr ""
 "weet u zeker dat u deze instellingen terug\n"
 "wilt zetten:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr "audio sporen"
 
@@ -3834,6 +3926,10 @@ msgstr "beter"
 msgid "blacklist"
 msgstr "zwarte lijst"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "door Exif"
 
@@ -3960,6 +4056,9 @@ msgstr "stop snijpunt hier"
 msgid "end favourites edit"
 msgstr "favorieten bewerken deactiveren "
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr "gelijk aan"
 
@@ -3975,6 +4074,21 @@ msgstr "Mediaspeler afsluiten"
 msgid "exit movielist"
 msgstr "Opname menu afsluiten"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr "mislukt"
 
@@ -4118,6 +4232,18 @@ msgstr "maand"
 msgid "move PiP to main picture"
 msgstr "PiP naar hoofdbeeld"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "Opname menu"
 
@@ -4178,8 +4304,8 @@ msgstr "op ALLEEN LEZEN medium."
 msgid "once"
 msgstr "éénmalig"
 
-msgid "only /etc/enigma2 directory"
-msgstr "alleen map /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Open zenderlijst"
@@ -4190,6 +4316,9 @@ msgstr "Open zenderlijst (omlaag)"
 msgid "open servicelist(up)"
 msgstr "Open zenderlijst (omhoog)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "passage"
 
@@ -4226,6 +4355,9 @@ msgstr "opname"
 msgid "recording..."
 msgstr "opnemen..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "verwijder achter deze positie"
 
@@ -4302,6 +4434,12 @@ msgstr "selecteer .NFI flash bestand"
 msgid "select image from server"
 msgstr "selecteer image van server"
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "Selecteer opname"
 
@@ -4547,6 +4685,9 @@ msgstr "zapte"
 #~ msgid "August"
 #~ msgstr "Augustus"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Automatisch SSID zoeken"
+
 #~ msgid "Behaviour of 'pause' when paused"
 #~ msgstr "Aktie bij 'pauzeren'"
 
@@ -4679,6 +4820,15 @@ msgstr "zapte"
 #~ msgstr "Nieuwe DVD"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Geen werkende lokale netwerk adapter gevonden.\n"
+#~ "Controleer of u de netwerk kabel goed verbonden hebt en uw netwerk "
+#~ "instellingen correct zijn."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN device or enable "
 #~ "you local network interface."
@@ -4687,6 +4837,24 @@ msgstr "zapte"
 #~ "Controleer of u de WiFi module correct geplaatst heeft of schakel de "
 #~ "lokale netwerk adapter aan."
 
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Geen werkende WiFi gevonden.\n"
+#~ "Controleer of u een geschikte WiFi adapter geplaatst heeft of activeer de "
+#~ "netwerk instellingen."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Geen werkende WiFi adapter gevonden.\n"
+#~ "Controleer of u een geschikte USB WiFi adapter geplaatst heeft of "
+#~ "controleer de netwerk instellingen."
+
 #~ msgid "None (Softcam)"
 #~ msgstr "Geen (softcam)"
 
@@ -4841,6 +5009,9 @@ msgstr "zapte"
 #~ msgid "minutes and"
 #~ msgstr "minuten en"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "alleen map /etc/enigma2"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "Volgende afspelen"
 
index a16e088..5613fe9 100755 (executable)
--- a/po/no.po
+++ b/po/no.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-06-12 14:34+0100\n"
 "Last-Translator: MMMMMM <theMMMMMM@gmail.com>\n"
 "Language-Team: none\n"
@@ -86,6 +86,12 @@ msgstr "(tom)"
 msgid "(show optional DVD audio menu)"
 msgstr "(vis alternativ DVD audio meny)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -401,6 +407,11 @@ msgid "Arabic"
 msgstr "Arabisk"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr "Er du sikker på at du vil restarte ditt nettverkskort?\n"
@@ -438,9 +449,6 @@ msgstr "Auto scart bytte"
 msgid "Automatic"
 msgstr "Automatisk"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Automatisk Søk"
 
@@ -513,6 +521,9 @@ msgstr "Lysstyrke"
 msgid "Burn DVD"
 msgstr ""
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -674,6 +685,9 @@ msgstr "Compact flash kort"
 msgid "Complete"
 msgstr "Komplett"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Konfigurasjonsmodus"
 
@@ -726,6 +740,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Oppretting av film mappe feilet"
 
@@ -844,9 +861,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC-Modus"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC-Modus"
 
@@ -1039,9 +1053,15 @@ msgstr "FEIL - kunne ikke søke (%s)!"
 msgid "East"
 msgstr "Øst"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Endre DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1087,6 +1107,9 @@ msgstr "Kryptering"
 msgid "Encryption Key"
 msgstr "Krypteringsnøkkel"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Krypteringstype"
 
@@ -1128,6 +1151,12 @@ msgstr "Inngangshastighet for spoling framover"
 msgid "Enter Rewind at speed"
 msgstr "Inngangshastighet for spoling bakover"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Åpne hovedmenyen"
 
@@ -1218,6 +1247,12 @@ msgstr "Fininstilling."
 msgid "Finished"
 msgstr "Ferdig"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finsk"
 
@@ -1323,6 +1358,9 @@ msgstr "Harddisk oppsett"
 msgid "Harddisk standby after"
 msgstr "Harddisk standby etter"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Hierarkisk Informasjon"
 
@@ -1338,6 +1376,12 @@ msgstr "Ungarsk"
 msgid "IP Address"
 msgstr "IP-Adresse"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandsk"
 
@@ -1820,28 +1864,22 @@ msgstr ""
 "Sier du 'Nei' her vil setup beskyttelsen ikke være aktivert!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Ingen fungerende lokal nettverksadapter funnet.\n"
-"Vennligst verifiser at du har koblet til en nettverkskabel og at nettverket "
-"er konfigurert korrekt."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Ingen fungerende trådløs adapter funnet.\n"
-"Vennligst verifiser at du har koblet til en kompatibel WLAN USB adapter og "
-"at nettverket er konfigurert korrekt."
 
 msgid "No, but restart from begin"
 msgstr "Nei, men start fra begynnelsen"
@@ -2103,9 +2141,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Vennligst vent... laster liste..."
 
@@ -2187,6 +2237,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr "Primær DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Beskytt kanaler"
 
@@ -2323,6 +2376,9 @@ msgstr "Gjentagelser"
 msgid "Reset"
 msgstr "Tilbakestill"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Oppløsning"
 
@@ -2561,6 +2617,12 @@ msgstr "Velg videotype"
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2612,9 +2674,15 @@ msgstr "Kanalinfo"
 msgid "Services"
 msgstr "Kanaler"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Sett grenser"
 
@@ -2672,6 +2740,9 @@ msgstr "Samme utsendelser"
 msgid "Simple"
 msgstr "Enkel"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Singel"
 
@@ -2848,6 +2919,9 @@ msgstr ""
 "\n"
 "Dere finner meg også på www.digsat.net"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "TV System"
 
@@ -3131,9 +3205,15 @@ msgstr "Tidssone"
 msgid "Title"
 msgstr "Tittel"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Tittel:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3374,6 +3454,9 @@ msgstr "Vis Rass interaktiv..."
 msgid "View teletext..."
 msgstr "Vis teletext..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Spenningsmodus"
 
@@ -3389,6 +3472,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3488,6 +3574,9 @@ msgstr "År:"
 msgid "Yes"
 msgstr "Ja"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Ja, ta backup av mine innstillinger!"
 
@@ -3641,6 +3730,16 @@ msgstr ""
 "Din frontprosessor-firmware må oppgraderes.\n"
 "Trykk OK for å starte oppdatering."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Zap tilbake til kanal før motoroppsett"
 
@@ -3671,6 +3770,12 @@ msgstr "avbryt favoritt editering"
 msgid "about to start"
 msgstr "starter snart"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "legg til alternativer"
 
@@ -3726,6 +3831,14 @@ msgstr ""
 "Er du sikker på at du vil gjenopprette\n"
 "følgende backup:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3741,6 +3854,10 @@ msgstr "bedre"
 msgid "blacklist"
 msgstr "svartlist"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "av Exif"
 
@@ -3867,6 +3984,9 @@ msgstr "avslutt klipp her"
 msgid "end favourites edit"
 msgstr "avslutt favorittt editering"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3882,6 +4002,21 @@ msgstr "avslutt mediaspiller"
 msgid "exit movielist"
 msgstr "avslutt filmliste"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -4025,6 +4160,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr "flytt BiB til hovedbilde"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "filmliste"
 
@@ -4085,8 +4232,8 @@ msgstr ""
 msgid "once"
 msgstr "En gang"
 
-msgid "only /etc/enigma2 directory"
-msgstr "bare /etc/enigma2 mappen"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Åpne kanalliste"
@@ -4097,6 +4244,9 @@ msgstr "Åpne kanalliste(ned)"
 msgid "open servicelist(up)"
 msgstr "Åpne kanalliste(opp)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "klart"
 
@@ -4133,6 +4283,9 @@ msgstr "spill inn"
 msgid "recording..."
 msgstr "spiller inn..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "fjern etter denne posisjon"
 
@@ -4209,6 +4362,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "velg film"
 
@@ -4579,6 +4738,15 @@ msgstr "zapped"
 #~ msgstr "Nettverk"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Ingen fungerende lokal nettverksadapter funnet.\n"
+#~ "Vennligst verifiser at du har koblet til en nettverkskabel og at "
+#~ "nettverket er konfigurert korrekt."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4587,6 +4755,15 @@ msgstr "zapped"
 #~ "Vennligst verifiser at du har koblet til en kompatibel WLAN USB adapter "
 #~ "eller aktiver ditt lokal nettverks grensesnitt."
 
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Ingen fungerende trådløs adapter funnet.\n"
+#~ "Vennligst verifiser at du har koblet til en kompatibel WLAN USB adapter "
+#~ "og at nettverket er konfigurert korrekt."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Nei, la meg velge standard lister"
 
@@ -4849,6 +5026,9 @@ msgstr "zapped"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "loopthrough til socket A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "bare /etc/enigma2 mappen"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "spill neste i spillelisten"
 
index eef53bc..bb95e9f 100755 (executable)
--- a/po/pl.po
+++ b/po/pl.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-28 11:20+0100\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-10-24 10:04+0100\n"
 "Last-Translator:  <silelis@tlen.pl>\n"
 "Language-Team: none\n"
@@ -88,6 +88,12 @@ msgstr "(puste)"
 msgid "(show optional DVD audio menu)"
 msgstr "(pokaż opcjonalne menu ustawień DVD audio)"
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr "Ładowanie pliku .NFI nie powiodło się:"
 
@@ -404,6 +410,11 @@ msgid "Arabic"
 msgstr "Arabski"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -443,9 +454,6 @@ msgstr "Auto przełączanie scart"
 msgid "Automatic"
 msgstr "Automatycznie"
 
-msgid "Automatic SSID lookup"
-msgstr "Automatyczne oddzukiwanie SSID"
-
 msgid "Automatic Scan"
 msgstr "Automatyczne skanowanie"
 
@@ -518,6 +526,9 @@ msgstr "Jasność"
 msgid "Burn DVD"
 msgstr "Wypal DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr "Nagrywanie na DVD..."
 
@@ -679,6 +690,9 @@ msgstr "Karta Compact flash"
 msgid "Complete"
 msgstr "Zakończ"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Tryb konfiguracji"
 
@@ -731,6 +745,9 @@ msgstr "Połączenie z Dreambox .NFI Image Serwerem nie powiodło sie:"
 msgid "Could not load Medium! No disc inserted?"
 msgstr "Nie moge odczytać nosnika. Czy nośnik znajduje się w czytniku?"
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Tworzenie katalogu filmu nie powiodło się"
 
@@ -851,9 +868,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "Tryb DiSEqC"
-
 msgid "DiSEqC mode"
 msgstr "Tryb DiSEqC"
 
@@ -1050,9 +1064,15 @@ msgstr "BŁĄD - skanowanie (%s) nie powiodło się!"
 msgid "East"
 msgstr "Wschód"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr "Edytuj DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr "Edycja rozdziału"
 
@@ -1098,6 +1118,9 @@ msgstr "Szyfrowanie"
 msgid "Encryption Key"
 msgstr "Klucz szyfrujący"
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr "Typ szyfrowania"
 
@@ -1139,6 +1162,12 @@ msgstr "Przejdź do przodu bardzo szybko"
 msgid "Enter Rewind at speed"
 msgstr "Przejdź wstecz bardzo szybko"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Wejdź do menu głównego..."
 
@@ -1231,6 +1260,12 @@ msgstr "Strojenie"
 msgid "Finished"
 msgstr "Skończone"
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Fiński"
 
@@ -1339,6 +1374,9 @@ msgstr "Ustawienia dysku twardego"
 msgid "Harddisk standby after"
 msgstr "Tryb czuwania dysku twardego po"
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Informacja hierarchii"
 
@@ -1354,6 +1392,12 @@ msgstr "Węgierski"
 msgid "IP Address"
 msgstr "Adres IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandzki"
 
@@ -1835,31 +1879,22 @@ msgstr ""
 "Gdy wciśniesz NIE ochrona ustawień zostanie wyłączona!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Nie znaleziono działającej sieci.\n"
-"Sprawdź czy masz podłączony przewód sieciowy i czy Twoaj sieć jest "
-"skonfigurowana poprawnie."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
-"Nie znaleziono działającego interfejsu WiFi.\n"
-"Proszę sprawdzić czy urzadzenie WLAN jest kompatybilne ze Dreambox'em oraz "
-"czy interfejs sieciowy jest włączony."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Nie znaleziono działającego adaptera sieci bezprzewodowej.\n"
-"Sprawdź kompatybilność Twojegp WLAN USB Stick oraz poprawność konfiguracji "
-"sieci."
 
 msgid "No, but restart from begin"
 msgstr "Nie, ale zrestartuj od początku"
@@ -2129,9 +2164,21 @@ msgstr ""
 "W celu wyboru języka użyj klawiszy GÓRA i DÓŁ. Nastepnie nacisnij przycisk "
 "OK."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Suma kontrolna md5 jest sprawdzana. Proszę czekać..."
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Proszę czekać... Ładowanie listy..."
 
@@ -2213,6 +2260,9 @@ msgstr "Podgląd menu"
 msgid "Primary DNS"
 msgstr "Pierwszy DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Ochrona serwisów"
 
@@ -2350,6 +2400,9 @@ msgstr "Powtarzaj"
 msgid "Reset"
 msgstr "Resetuj"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Rozdzielczość"
 
@@ -2589,6 +2642,12 @@ msgstr "Wybierz tryb wideo"
 msgid "Selected source image"
 msgstr "Wybierz image źródłowy"
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr "Rozdziel tytuły z wykozystaniem menu"
 
@@ -2640,9 +2699,15 @@ msgstr "Info o serwisie"
 msgid "Services"
 msgstr "Serwisy"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr "Ustaw jako domyslny interfejs"
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Ustaw limity"
 
@@ -2700,6 +2765,9 @@ msgstr "Podobne transmisje:"
 msgid "Simple"
 msgstr "Proste"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Jeden"
 
@@ -2875,6 +2943,9 @@ msgstr ""
 "additional translations made by SileliS® :)\n"
 "Best Regards for DM box owners...  Sebastian :) ... Cheers"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "System TV"
 
@@ -3182,9 +3253,15 @@ msgstr "Strefa czasu"
 msgid "Title"
 msgstr "Tytuł"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Tytuł:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3429,6 +3506,9 @@ msgstr "Pokaż interaktywne Rass..."
 msgid "View teletext..."
 msgstr "Pokaż teletext..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Tryb napięcia"
 
@@ -3444,6 +3524,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3708,6 +3791,16 @@ msgstr ""
 "Twój frontprocessor musi zostać zaktualizowany.\n"
 "Naciśnij OK aby rozpocząć aktualizacje."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Przełączyć z powrotem na serwis przed ustawieniem pozycjonera?"
 
@@ -3738,6 +3831,12 @@ msgstr "przerwij edycje ulubionych"
 msgid "about to start"
 msgstr "jak rozpocząć"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "dodaj wybrane"
 
@@ -3793,6 +3892,14 @@ msgstr ""
 "Jesteś pewien że chcesz przywrócić\n"
 "następującą kopie:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr "ścieżki audio"
 
@@ -3808,6 +3915,10 @@ msgstr "lepszy"
 msgid "blacklist"
 msgstr "Czarna lista"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "przez Exif"
 
@@ -3934,6 +4045,9 @@ msgstr "Zakończ cięcie tutaj"
 msgid "end favourites edit"
 msgstr "Koniec edycji ulubionych"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr "równy"
 
@@ -3949,6 +4063,21 @@ msgstr "Wyjdź z mediaplayera"
 msgid "exit movielist"
 msgstr "Wyjdź z listy filmów"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr "zawiódł"
 
@@ -4092,6 +4221,18 @@ msgstr "miesiąc"
 msgid "move PiP to main picture"
 msgstr "przesuń PiP do głównego obrazu"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "lista filmów"
 
@@ -4152,8 +4293,8 @@ msgstr "nosnik tylko do odczytu."
 msgid "once"
 msgstr "Raz"
 
-msgid "only /etc/enigma2 directory"
-msgstr "Tylko katalog /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Otwórz listę serwisów"
@@ -4164,6 +4305,9 @@ msgstr "Otwórz listę serwisów (dół)"
 msgid "open servicelist(up)"
 msgstr "Otwórz listę serwisów (góra)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "Hasło"
 
@@ -4200,6 +4344,9 @@ msgstr "Nagraj"
 msgid "recording..."
 msgstr "Nagrywanie..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "Usuń po tej pozycji"
 
@@ -4276,6 +4423,12 @@ msgstr "wybierz plik .NFI flash"
 msgid "select image from server"
 msgstr "wybierz plik z serwera"
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "wybierz film"
 
@@ -4505,6 +4658,9 @@ msgstr "Przełączony"
 #~ "Czy jesteś pewien, że chcesz włączyć sieć lokalną?\n"
 #~ "\n"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Automatyczne oddzukiwanie SSID"
+
 #~ msgid "Burn"
 #~ msgstr "Wypal"
 
@@ -4620,6 +4776,15 @@ msgstr "Przełączony"
 #~ msgstr "Nowe DVD"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Nie znaleziono działającej sieci.\n"
+#~ "Sprawdź czy masz podłączony przewód sieciowy i czy Twoaj sieć jest "
+#~ "skonfigurowana poprawnie."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4637,6 +4802,24 @@ msgstr "Przełączony"
 #~ "Sprawdź cz podłączyłeś kompatybilne urządzenie WLAN oraz czy Twoja "
 #~ "urządzenie jest włączone."
 
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Nie znaleziono działającego interfejsu WiFi.\n"
+#~ "Proszę sprawdzić czy urzadzenie WLAN jest kompatybilne ze Dreambox'em "
+#~ "oraz czy interfejs sieciowy jest włączony."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Nie znaleziono działającego adaptera sieci bezprzewodowej.\n"
+#~ "Sprawdź kompatybilność Twojegp WLAN USB Stick oraz poprawność "
+#~ "konfiguracji sieci."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Nie, pozwól mi wybrać listę standardową"
 
@@ -4841,6 +5024,9 @@ msgstr "Przełączony"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "Zapętl bezpośrednio do Gniazda A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "Tylko katalog /etc/enigma2"
+
 #~ msgid ""
 #~ "scan done!\n"
 #~ "%d services found!"
index d37a8e8..c8951a8 100755 (executable)
--- a/po/pt.po
+++ b/po/pt.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma Portuguese\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2008-03-30 18:45-0000\n"
 "Last-Translator: Muaitai <muaitai@gmail.com>\n"
 "Language-Team: Muaitai <muaitai@gmail.com>\n"
@@ -89,6 +89,12 @@ msgstr "(vazio)"
 msgid "(show optional DVD audio menu)"
 msgstr ""
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -403,6 +409,11 @@ msgid "Arabic"
 msgstr "Arabe"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -440,9 +451,6 @@ msgstr "UsarAuto Scart"
 msgid "Automatic"
 msgstr "Automatico"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Busca automatica"
 
@@ -515,6 +523,9 @@ msgstr "Brilho"
 msgid "Burn DVD"
 msgstr "Gravar DVD"
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -677,6 +688,9 @@ msgstr "Cartão Compact Flash"
 msgid "Complete"
 msgstr "Completo"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Modo de configuração"
 
@@ -729,6 +743,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr "Falhou a criação da pasta movie"
 
@@ -847,9 +864,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "Modo DiSEqC"
-
 msgid "DiSEqC mode"
 msgstr "Modo DiSEqC"
 
@@ -1042,9 +1056,15 @@ msgstr "ERRO - falha na busca (%s)!"
 msgid "East"
 msgstr "Este"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr ""
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1090,6 +1110,9 @@ msgstr ""
 msgid "Encryption Key"
 msgstr ""
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr ""
 
@@ -1131,6 +1154,12 @@ msgstr "Velocidade do avance rapido"
 msgid "Enter Rewind at speed"
 msgstr "Velocidade do retrocesso rapido"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Menu Principal"
 
@@ -1221,6 +1250,12 @@ msgstr "Sintonizar fino"
 msgid "Finished"
 msgstr ""
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Finlandês"
 
@@ -1326,6 +1361,9 @@ msgstr "Configuração Disco Rigido"
 msgid "Harddisk standby after"
 msgstr "Disco rigido suspenso após "
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr "Informação hierarquica"
 
@@ -1341,6 +1379,12 @@ msgstr "Hungaro"
 msgid "IP Address"
 msgstr "Endereço IP"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Islandês"
 
@@ -1616,7 +1660,7 @@ msgid "Mkfs failed"
 msgstr "Falha em Mkfs"
 
 msgid "Mode"
-msgstr "Mode"
+msgstr "Modo"
 
 msgid "Model: "
 msgstr "Modelo:"
@@ -1818,21 +1862,21 @@ msgstr ""
 "Se responder 'NÃO' a protecção do canal fica desabilitada!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -2095,9 +2139,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Por favor espere...a carregar a lista..."
 
@@ -2179,6 +2235,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr ""
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Proteger Serviços"
 
@@ -2315,6 +2374,9 @@ msgstr "Repetições"
 msgid "Reset"
 msgstr "Reset"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr ""
 
@@ -2549,6 +2611,12 @@ msgstr "Seleccione modo de Video"
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2600,9 +2668,15 @@ msgstr "Info "
 msgid "Services"
 msgstr "Serviços"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Definir limites"
 
@@ -2660,6 +2734,9 @@ msgstr "Emissões Identicas:"
 msgid "Simple"
 msgstr "Simples"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Unico"
 
@@ -2832,6 +2909,9 @@ msgstr "Sistema"
 msgid "TRANSLATOR_INFO"
 msgstr "TRANSLATOR_INFO"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "Sistema de TV"
 
@@ -3091,9 +3171,15 @@ msgstr "Zona Horária"
 msgid "Title"
 msgstr ""
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Título:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3338,6 +3424,9 @@ msgstr "Ver Rass interactivo..."
 msgid "View teletext..."
 msgstr "Ver teletexto..."
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Modo de voltagem"
 
@@ -3353,6 +3442,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr ""
 
@@ -3450,6 +3542,9 @@ msgstr "Ano:"
 msgid "Yes"
 msgstr "Sim"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Sim, guarde as minhas definições!"
 
@@ -3592,6 +3687,16 @@ msgstr ""
 "O seu processador deve ser actualizado.\n"
 "Carregue OK para iniciar"
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Voltar ao canal  antes de definir o posicionador?"
 
@@ -3622,6 +3727,12 @@ msgstr "Cancelar a edição"
 msgid "about to start"
 msgstr "A iniciar"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr "adicionar alternativas"
 
@@ -3677,6 +3788,14 @@ msgstr ""
 "Deseja instalar\n"
 "Ficheiro guardado:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3692,6 +3811,10 @@ msgstr "melhor"
 msgid "blacklist"
 msgstr "Lista negra"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "por Exif"
 
@@ -3818,6 +3941,9 @@ msgstr "terminar corte aqui"
 msgid "end favourites edit"
 msgstr "Terminar edição de favoritos"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3833,6 +3959,21 @@ msgstr "Saír do mediaplayer"
 msgid "exit movielist"
 msgstr "Saír da lista de filmes"
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -3976,6 +4117,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr "mover o PiP para a imagem principal"
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr "lista de filmes"
 
@@ -4036,8 +4189,8 @@ msgstr ""
 msgid "once"
 msgstr "Uma só vez"
 
-msgid "only /etc/enigma2 directory"
-msgstr "só a pasta /etc/enigma2"
+msgid "open nameserver configuration"
+msgstr ""
 
 msgid "open servicelist"
 msgstr "Abrir lista de canais"
@@ -4048,6 +4201,9 @@ msgstr "Abrir lista de canais (baixo)"
 msgid "open servicelist(up)"
 msgstr "Abrir lista de canais (cima)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "passar"
 
@@ -4084,6 +4240,9 @@ msgstr "gravar"
 msgid "recording..."
 msgstr "a gravar..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr "Remover depois desta posição"
 
@@ -4160,6 +4319,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr "seleccione o filme"
 
@@ -4498,6 +4663,9 @@ msgstr "zapped"
 #~ msgid "loopthrough to socket A"
 #~ msgstr "Passagem atraves do socket A"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "só a pasta /etc/enigma2"
+
 #~ msgid "play next playlist entry"
 #~ msgstr "reproduzir a próxima entrada de lista"
 
index d5c8fff..d0328bb 100755 (executable)
--- a/po/ru.po
+++ b/po/ru.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
 "PO-Revision-Date: 2007-06-14 10:15+0300\n"
 "Last-Translator: enigma® <enigma.ua@gmail.com>\n"
 "Language-Team: Russian / enigma(c) Ukraine, Kiev>\n"
@@ -86,6 +86,12 @@ msgstr ""
 msgid "(show optional DVD audio menu)"
 msgstr ""
 
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
 msgid ".NFI Download failed:"
 msgstr ""
 
@@ -383,6 +389,11 @@ msgid "Arabic"
 msgstr "Арабский"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -420,9 +431,6 @@ msgstr ""
 msgid "Automatic"
 msgstr ""
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Автоматический поиск"
 
@@ -495,6 +503,9 @@ msgstr "Яркость"
 msgid "Burn DVD"
 msgstr ""
 
+msgid "Burn existing image to DVD"
+msgstr ""
+
 msgid "Burn to DVD..."
 msgstr ""
 
@@ -656,6 +667,9 @@ msgstr "Compact Flash карта"
 msgid "Complete"
 msgstr "Полное"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Режим конфигурации"
 
@@ -705,6 +719,9 @@ msgstr ""
 msgid "Could not load Medium! No disc inserted?"
 msgstr ""
 
+msgid "Create DVD-ISO"
+msgstr ""
+
 msgid "Create movie folder failed"
 msgstr ""
 
@@ -823,9 +840,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC-режим"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC-режим"
 
@@ -1013,9 +1027,15 @@ msgstr "ERROR - ошибка сканирования (%s)!"
 msgid "East"
 msgstr "Восток"
 
+msgid "Edit"
+msgstr ""
+
 msgid "Edit DNS"
 msgstr ""
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr ""
 
@@ -1061,6 +1081,9 @@ msgstr ""
 msgid "Encryption Key"
 msgstr ""
 
+msgid "Encryption Keytype"
+msgstr ""
+
 msgid "Encryption Type"
 msgstr ""
 
@@ -1096,6 +1119,12 @@ msgstr ""
 msgid "Enter Rewind at speed"
 msgstr ""
 
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
 msgid "Enter main menu..."
 msgstr "Войти в главное меню..."
 
@@ -1186,6 +1215,12 @@ msgstr "Точно"
 msgid "Finished"
 msgstr ""
 
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
 msgid "Finnish"
 msgstr "Окончание"
 
@@ -1289,6 +1324,9 @@ msgstr ""
 msgid "Harddisk standby after"
 msgstr ""
 
+msgid "Hidden network SSID"
+msgstr ""
+
 msgid "Hierarchy Information"
 msgstr ""
 
@@ -1304,6 +1342,12 @@ msgstr ""
 msgid "IP Address"
 msgstr "IP адрес"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
 msgid "Icelandic"
 msgstr "Исландский"
 
@@ -1569,7 +1613,7 @@ msgid "Mkfs failed"
 msgstr ""
 
 msgid "Mode"
-msgstr ""
+msgstr "режим"
 
 msgid "Model: "
 msgstr "Модель:"
@@ -1771,21 +1815,21 @@ msgstr ""
 "не будет включена!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
 
 msgid "No, but restart from begin"
@@ -2045,9 +2089,21 @@ msgid ""
 "the OK button."
 msgstr ""
 
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
 msgid "Please wait for md5 signature verification..."
 msgstr ""
 
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
 msgid "Please wait... Loading list..."
 msgstr "Пожалуйста, ждите...Загружается список"
 
@@ -2129,6 +2185,9 @@ msgstr ""
 msgid "Primary DNS"
 msgstr ""
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Защитить сервисы"
 
@@ -2265,6 +2324,9 @@ msgstr ""
 msgid "Reset"
 msgstr "Сброс"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr ""
 
@@ -2501,6 +2563,12 @@ msgstr ""
 msgid "Selected source image"
 msgstr ""
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr ""
 
@@ -2546,9 +2614,15 @@ msgstr "Информация о сервисе"
 msgid "Services"
 msgstr "Сервисы"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr ""
 
+msgid "Set interface as default Interface"
+msgstr ""
+
 msgid "Set limits"
 msgstr "Набор ограничений"
 
@@ -2606,6 +2680,9 @@ msgstr "Подобные радиопередачи:"
 msgid "Simple"
 msgstr ""
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Одиночный"
 
@@ -2778,6 +2855,9 @@ msgstr "Система"
 msgid "TRANSLATOR_INFO"
 msgstr ""
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
 msgid "TV System"
 msgstr "TV система"
 
@@ -3032,9 +3112,15 @@ msgstr "Часовой пояс"
 msgid "Title"
 msgstr ""
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Название:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3267,6 +3353,9 @@ msgstr ""
 msgid "View teletext..."
 msgstr "Смотреть телетекст"
 
+msgid "Virtual KeyBoard"
+msgstr ""
+
 msgid "Voltage mode"
 msgstr "Режим напряжения"
 
@@ -3282,6 +3371,9 @@ msgstr ""
 msgid "WPA"
 msgstr ""
 
+msgid "WPA or WPA2"
+msgstr ""
+
 msgid "WPA2"
 msgstr ""
 
@@ -3377,6 +3469,9 @@ msgstr "Год:"
 msgid "Yes"
 msgstr "Да"
 
+msgid "Yes, and delete this movie"
+msgstr ""
+
 msgid "Yes, backup my settings!"
 msgstr "Да, сохранить мои установки!"
 
@@ -3519,6 +3614,16 @@ msgstr ""
 "Требуется обновление фронтпроцессора.\n"
 "Нажмите OK для начала обновления."
 
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Переключить на предыдущий сервис?"
 
@@ -3549,6 +3654,12 @@ msgstr "отменить редактирование избранного"
 msgid "about to start"
 msgstr "about to start"
 
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
 msgid "add alternatives"
 msgstr ""
 
@@ -3604,6 +3715,14 @@ msgstr ""
 "Вы действительно хотите восстановить\n"
 "следующий б:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr ""
 
@@ -3619,6 +3738,10 @@ msgstr ""
 msgid "blacklist"
 msgstr ""
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr ""
 
@@ -3745,6 +3868,9 @@ msgstr ""
 msgid "end favourites edit"
 msgstr "конец редактирования избранного"
 
+msgid "enigma2 and network"
+msgstr ""
+
 msgid "equal to"
 msgstr ""
 
@@ -3760,6 +3886,21 @@ msgstr ""
 msgid "exit movielist"
 msgstr ""
 
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
 msgid "failed"
 msgstr ""
 
@@ -3901,6 +4042,18 @@ msgstr ""
 msgid "move PiP to main picture"
 msgstr ""
 
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
 msgid "movie list"
 msgstr ""
 
@@ -3961,7 +4114,7 @@ msgstr ""
 msgid "once"
 msgstr "один раз"
 
-msgid "only /etc/enigma2 directory"
+msgid "open nameserver configuration"
 msgstr ""
 
 msgid "open servicelist"
@@ -3973,6 +4126,9 @@ msgstr "Открыть список сервисов (вниз)"
 msgid "open servicelist(up)"
 msgstr "Открыть список сервисов(вверх)"
 
+msgid "open virtual keyboard input help"
+msgstr ""
+
 msgid "pass"
 msgstr "передать"
 
@@ -4009,6 +4165,9 @@ msgstr "записать"
 msgid "recording..."
 msgstr "запись..."
 
+msgid "remove a nameserver entry"
+msgstr ""
+
 msgid "remove after this position"
 msgstr ""
 
@@ -4085,6 +4244,12 @@ msgstr ""
 msgid "select image from server"
 msgstr ""
 
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
 msgid "select movie"
 msgstr ""
 
old mode 100755 (executable)
new mode 100644 (file)
index 3f3af66..5e55425
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: tuxbox-enigma 0.0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-23 17:06+0200\n"
-"PO-Revision-Date: 2008-10-23 14:56+0100\n"
+"POT-Creation-Date: 2008-11-14 07:24+0100\n"
+"PO-Revision-Date: 2008-11-12 12:27+0100\n"
 "Last-Translator: WeeGull <weegull@hotmail.com>\n"
 "Language-Team: WeeGull <weegull@hotmail.com>\n"
 "MIME-Version: 1.0\n"
@@ -91,6 +91,12 @@ msgstr "(tom)"
 msgid "(show optional DVD audio menu)"
 msgstr "(visa utökad DVD ljudmeny)"
 
+msgid "* Only available if more than one interface is active."
+msgstr "* Enbart tillgänglig om mer än ett kort är aktivt."
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr "* Enbart tillgänglig vid angiven dold SSID eller nätverksnyckel"
+
 msgid ".NFI Download failed:"
 msgstr ".NFI Nedladdning misslyckades:"
 
@@ -407,6 +413,13 @@ msgid "Arabic"
 msgstr "Arabiska"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+"Är du säker på att du vill aktivera den här nätverkskonfigurationen?\n"
+"\n"
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -446,9 +459,6 @@ msgstr "Auto scart byte"
 msgid "Automatic"
 msgstr "Automatisk"
 
-msgid "Automatic SSID lookup"
-msgstr "Automatisk SSID sökning"
-
 msgid "Automatic Scan"
 msgstr "Automatisk sökning"
 
@@ -521,6 +531,9 @@ msgstr "Ljusstyrka"
 msgid "Burn DVD"
 msgstr "Skapa DVD"
 
+msgid "Burn existing image to DVD"
+msgstr "Bränn existerande image till DVD"
+
 msgid "Burn to DVD..."
 msgstr "Bränn till DVD..."
 
@@ -682,6 +695,9 @@ msgstr "Compact Flash kort"
 msgid "Complete"
 msgstr "Komplett"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
 msgid "Configuration Mode"
 msgstr "Konfigurationsläge"
 
@@ -717,10 +733,10 @@ msgid "Content does not fit on DVD!"
 msgstr "Innehåll för stort för en DVD!"
 
 msgid "Continue in background"
-msgstr "Forsätta i bakgrund"
+msgstr "Fortsätta i bakgrund"
 
 msgid "Continue playing"
-msgstr "Forsätt spela"
+msgstr "Fortsätt spela"
 
 msgid "Contrast"
 msgstr "Kontrast"
@@ -734,6 +750,9 @@ msgstr "Kunde inte ansluta till Dreambox .NFI image feed Server:"
 msgid "Could not load Medium! No disc inserted?"
 msgstr "Kunde inte ladda media! Ingen disk istoppad?"
 
+msgid "Create DVD-ISO"
+msgstr "Skapa DVD-ISO"
+
 msgid "Create movie folder failed"
 msgstr "Det gick inte att skapa en filmkatalog"
 
@@ -854,9 +873,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC Läge"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC läge"
 
@@ -972,7 +988,7 @@ msgid "Do you want to enable the parental control feature on your dreambox?"
 msgstr "Vill du aktivera föräldrakontroll på din Dreambox?"
 
 msgid "Do you want to install default sat lists?"
-msgstr "Vill du installera "
+msgstr "Vill du installera grundsatellitlista?"
 
 msgid "Do you want to play DVD in drive?"
 msgstr "Vill du spela upp DVD i spelaren?"
@@ -1053,9 +1069,15 @@ msgstr "FEL - misslyckades söka (%s)!"
 msgid "East"
 msgstr "Öst"
 
+msgid "Edit"
+msgstr "Ändra"
+
 msgid "Edit DNS"
 msgstr "Ändra DNS"
 
+msgid "Edit Title"
+msgstr ""
+
 msgid "Edit chapters of current title"
 msgstr "Ändra kapitel i nuvarande titel"
 
@@ -1101,6 +1123,9 @@ msgstr "Kryptering"
 msgid "Encryption Key"
 msgstr "Krypteringsnyckel"
 
+msgid "Encryption Keytype"
+msgstr "Krypterings Nyckelvariant"
+
 msgid "Encryption Type"
 msgstr "Krypteringstyp"
 
@@ -1142,6 +1167,12 @@ msgstr "Ange hastighet för snabbspolning framåt"
 msgid "Enter Rewind at speed"
 msgstr "Ange hastighet för snabbspolning bakåt"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr "Ange WLAN nätverks namn/SSID:"
+
+msgid "Enter WLAN passphrase/key:"
+msgstr "Ange WLAN passphrase/nyckel:"
+
 msgid "Enter main menu..."
 msgstr "Gå till huvudmeny..."
 
@@ -1234,6 +1265,12 @@ msgstr "Fininställn."
 msgid "Finished"
 msgstr "Klart"
 
+msgid "Finished configuring your network"
+msgstr "Klar med konfigureringen av ditt nätverk"
+
+msgid "Finished restarting your network"
+msgstr "Klar med omstarten av ditt nätverk"
+
 msgid "Finnish"
 msgstr "Finska"
 
@@ -1339,6 +1376,9 @@ msgstr "Hårddisk installation"
 msgid "Harddisk standby after"
 msgstr "Viloläge för hårddisk efter"
 
+msgid "Hidden network SSID"
+msgstr "Dold nätverks SSID"
+
 msgid "Hierarchy Information"
 msgstr "Hierarkisk information "
 
@@ -1354,6 +1394,12 @@ msgstr "Ungerska"
 msgid "IP Address"
 msgstr "IP adress"
 
+msgid "ISO file is too large for this filesystem!"
+msgstr "ISO fil är för stor för använt filsystem!"
+
+msgid "ISO path"
+msgstr "ISO sökväg"
+
 msgid "Icelandic"
 msgstr "Isländska"
 
@@ -1831,28 +1877,31 @@ msgstr ""
 "Om du anger 'Nej' här kommer installationsskyddet vara avaktiverat!"
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
-"Inget fungerades lokalt nätverkskort hittat.\n"
-"Vänligen bekräfta att du har anslutit en nätverkskabel och att ditt Nätverk "
+"Inget fungerandes lokalt nätverkskort funnet.\n"
+"Vänligen bekräfta att du har anslutit en nätverkskabel och att ditt nätverk "
 "är korrekt konfigurerat."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
+"Inget fungerandes trådlöst nätverkskort funnet.\n"
+"Vänligen bekräfta att du har anslutit ett kompatibelt WLAN enhet och att din "
+"nätverkskonfiguration är korrekt."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Inget fungerande trådlöst nätverkskort hittat.\n"
-"Vänligen bekräfta att du har anslutit ett kompatibelt WLAN USB Stick och "
-"konfigurerat ditt Nätverk korrekt."
+"Inget fungerandes trådlöst nätverkskort funnet.\n"
+"Vänligen bekräfta att du har anslutit ett kompatibelt WLAN enhet eller "
+"aktiverat ditt lokala nätverkskort."
 
 msgid "No, but restart from begin"
 msgstr "Nej, men starta om från början"
@@ -2123,9 +2172,21 @@ msgstr ""
 "Vänligen använd UPP och NER pil för att välja språk. Efter val tryck på OK "
 "knappen."
 
+msgid "Please wait for activation of your network configuration..."
+msgstr "Vänligen vänta för aktivering av din nätverkskonfiguration..."
+
 msgid "Please wait for md5 signature verification..."
 msgstr "Vänligen vänta för md5 signatur verifiering..."
 
+msgid "Please wait while we configure your network..."
+msgstr "Vänligen vänta medans ditt nätverk konfigureras..."
+
+msgid "Please wait while your network is restarting..."
+msgstr "Vänligen vänta medans ditt nätverk startas om..."
+
+msgid "Please wait..."
+msgstr "Vänligen vänta..."
+
 msgid "Please wait... Loading list..."
 msgstr "Vänligen vänta... Laddar lista..."
 
@@ -2184,7 +2245,7 @@ msgid "Preparing... Please wait"
 msgstr "Förbereder... Vänligen vänta"
 
 msgid "Press OK on your remote control to continue."
-msgstr "Tryck OK på din fjärrkontroll för att forsätta."
+msgstr "Tryck OK på din fjärrkontroll för att fortsätta."
 
 msgid "Press OK to activate the settings."
 msgstr "Tryck OK för aktivera inställningarna."
@@ -2207,6 +2268,9 @@ msgstr "Förvisningsmeny"
 msgid "Primary DNS"
 msgstr "Primär DNS"
 
+msgid "Properties of current title"
+msgstr ""
+
 msgid "Protect services"
 msgstr "Skydda kanaler"
 
@@ -2343,6 +2407,9 @@ msgstr "Upprepningar"
 msgid "Reset"
 msgstr "Nollställ"
 
+msgid "Reset and renumerate title names"
+msgstr ""
+
 msgid "Resolution"
 msgstr "Upplösning"
 
@@ -2457,7 +2524,7 @@ msgid "Scaling Mode"
 msgstr "Scalingläge"
 
 msgid "Scan "
-msgstr "Söka"
+msgstr "Söka "
 
 msgid "Scan QAM128"
 msgstr "Söka QAM128"
@@ -2581,6 +2648,12 @@ msgstr "Välj videoläge"
 msgid "Selected source image"
 msgstr "Välj käll image"
 
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
 msgid "Seperate titles with a main menu"
 msgstr "Separera titlar med en huvudmeny"
 
@@ -2632,9 +2705,15 @@ msgstr "Kanalinfo"
 msgid "Services"
 msgstr "Kanaler"
 
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
 msgid "Set as default Interface"
 msgstr "Använd som standard Interface"
 
+msgid "Set interface as default Interface"
+msgstr "Använd kort som standard kort"
+
 msgid "Set limits"
 msgstr "Ange gräns"
 
@@ -2692,6 +2771,9 @@ msgstr "Liknande sändningar:"
 msgid "Simple"
 msgstr "Enkel"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
 msgid "Single"
 msgstr "Singel"
 
@@ -2867,6 +2949,9 @@ msgstr ""
 "Förslag på förändringar skicka ett epost:\n"
 "weegull@hotmail.com"
 
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr "TS fil för stor för ISO9660 level 1!"
+
 msgid "TV System"
 msgstr "TV System"
 
@@ -3017,7 +3102,7 @@ msgid ""
 msgstr ""
 "Det är inte säkert att det finns tillräckligt med utrymme på vald "
 "partition.\n"
-"Vill du verkligen forsätta?"
+"Vill du verkligen fortsätta?"
 
 #, python-format
 msgid "This .NFI file does not contain a valid %s image!"
@@ -3034,7 +3119,7 @@ msgid ""
 "This .NFI file has a valid md5 signature. Continue programming this image to "
 "flash memory?"
 msgstr ""
-"Denna .NFI har giltig md5sum. Forsätta programmera denna image till "
+"Denna .NFI har giltig md5sum. Fortsätta programmera denna image till "
 "flashminnet?"
 
 msgid ""
@@ -3177,9 +3262,15 @@ msgstr "Tidszon"
 msgid "Title"
 msgstr "Titel"
 
+msgid "Title properties"
+msgstr ""
+
 msgid "Title:"
 msgstr "Title:"
 
+msgid "Titleset mode"
+msgstr ""
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
@@ -3424,6 +3515,9 @@ msgstr "Visa Rass interaktivitet..."
 msgid "View teletext..."
 msgstr "Visa teletext..."
 
+msgid "Virtual KeyBoard"
+msgstr "Virtuellt tangentbord"
+
 msgid "Voltage mode"
 msgstr "Spännings läge"
 
@@ -3439,6 +3533,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr "WPA eller WPA2"
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3544,6 +3641,9 @@ msgstr "År:"
 msgid "Yes"
 msgstr "Ja"
 
+msgid "Yes, and delete this movie"
+msgstr "Ja, och ta bort den här filmen."
+
 msgid "Yes, backup my settings!"
 msgstr "Ja, ta backup på inställningar!"
 
@@ -3573,7 +3673,7 @@ msgid ""
 "want to be installed."
 msgstr ""
 "Du kan välja från några grundinställningar nu. Vänligen välj de "
-"instaällningar du vill installera."
+"inställningar du vill installera."
 
 msgid "You can choose, what you want to install..."
 msgstr "Du kan välja, vad vill du ska installeras..."
@@ -3702,6 +3802,20 @@ msgstr ""
 "Din frontprocessors mjukvara måste uppgraderas.\n"
 "Tryck OK för att starta."
 
+msgid "Your network configuration has been activated."
+msgstr "Din nätverkskonfiguration har aktiverats."
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+"Din nätverkskonfiguration har aktiverats.\n"
+"Ett annat konfigurerat kort har hittats.\n"
+"\n"
+"Vill du akaktivera det andra nätverkskortet?"
+
 msgid "Zap back to service before positioner setup?"
 msgstr "Gå till föregående kanal före motorinstallation?"
 
@@ -3732,6 +3846,12 @@ msgstr "avbryt editera favoriter"
 msgid "about to start"
 msgstr "håller på att starta"
 
+msgid "activate current configuration"
+msgstr "aktivera nuvarande konfiguration"
+
+msgid "add a nameserver entry"
+msgstr "lägga till en namnserver post"
+
 msgid "add alternatives"
 msgstr "lägg till alternativ"
 
@@ -3787,6 +3907,14 @@ msgstr ""
 "vill du verkligen återställa\n"
 "med följande backup:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
 msgid "audio tracks"
 msgstr "ljudspår"
 
@@ -3802,6 +3930,10 @@ msgstr "bättre"
 msgid "blacklist"
 msgstr "svartlista"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
 msgid "by Exif"
 msgstr "av Exif"
 
@@ -3928,6 +4060,9 @@ msgstr "slutklipp här"
 msgid "end favourites edit"
 msgstr "avsluta favoriter editor"
 
+msgid "enigma2 and network"
+msgstr "enigma2 och nätverk"
+
 msgid "equal to"
 msgstr "lika med"
 
@@ -3943,6 +4078,21 @@ msgstr "avsluta mediaspelare"
 msgid "exit movielist"
 msgstr "avsluta filmlista"
 
+msgid "exit nameserver configuration"
+msgstr "avsluta namnserver konfiguration"
+
+msgid "exit network adapter configuration"
+msgstr "avsluta nätverkskorts konfiguration"
+
+msgid "exit network adapter setup menu"
+msgstr "avsluta nätverkskorts installationsmeny"
+
+msgid "exit network interface list"
+msgstr "avsluta nätverkskorts lista"
+
+msgid "exit networkadapter setup menu"
+msgstr "avsluta nätverkskort installationsmeny"
+
 msgid "failed"
 msgstr "misslyckades"
 
@@ -4086,6 +4236,18 @@ msgstr "månad"
 msgid "move PiP to main picture"
 msgstr "flytta BiB till huvudbild"
 
+msgid "move down to last entry"
+msgstr "flytta ner till sista posten"
+
+msgid "move down to next entry"
+msgstr "flytta ner till nästa post"
+
+msgid "move up to first entry"
+msgstr "flytta upp till första posten"
+
+msgid "move up to previous entry"
+msgstr "flytta upp till föregående post"
+
 msgid "movie list"
 msgstr "filmlista"
 
@@ -4146,8 +4308,8 @@ msgstr "på READ ONLY media."
 msgid "once"
 msgstr "en gång"
 
-msgid "only /etc/enigma2 directory"
-msgstr "endast /etc/enigma2 bibliotek"
+msgid "open nameserver configuration"
+msgstr "öppna namnserver konfiguration"
 
 msgid "open servicelist"
 msgstr "öppna kanallista"
@@ -4158,6 +4320,9 @@ msgstr "öppna kanallista(ner)"
 msgid "open servicelist(up)"
 msgstr "öppna kanallista(upp)"
 
+msgid "open virtual keyboard input help"
+msgstr "öppna virtuellt tangentbordsinmatningshjälp"
+
 msgid "pass"
 msgstr "klart"
 
@@ -4194,6 +4359,9 @@ msgstr "spela in"
 msgid "recording..."
 msgstr "spelar in..."
 
+msgid "remove a nameserver entry"
+msgstr "ta bort en namnserver post"
+
 msgid "remove after this position"
 msgstr "ta bort efter denna position"
 
@@ -4270,6 +4438,12 @@ msgstr "välj .NFI flash fil"
 msgid "select image from server"
 msgstr "välj image från server"
 
+msgid "select interface"
+msgstr "välj kort"
+
+msgid "select menu entry"
+msgstr "välj meny post"
+
 msgid "select movie"
 msgstr "välj film"
 
@@ -4498,6 +4672,9 @@ msgstr "zapped"
 #~ "Är du säker på att du vill aktivera lokalt nätverk?\n"
 #~ "\n"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Automatisk SSID sökning"
+
 #~ msgid "Burn"
 #~ msgstr "Skapa"
 
@@ -4546,6 +4723,9 @@ msgstr "zapped"
 #~ msgid "Device Setup..."
 #~ msgstr "Nätverksinstallation..."
 
+#~ msgid "DiSEqC Mode"
+#~ msgstr "DiSEqC Läge"
+
 #~ msgid ""
 #~ "Do you really want to REMOVE\n"
 #~ "the plugin \""
@@ -4592,6 +4772,15 @@ msgstr "zapped"
 #~ msgstr "Ny DVD"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Inget fungerades lokalt nätverkskort hittat.\n"
+#~ "Vänligen bekräfta att du har anslutit en nätverkskabel och att ditt "
+#~ "Nätverk är korrekt konfigurerat."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable your local network interface."
@@ -4609,6 +4798,24 @@ msgstr "zapped"
 #~ " Vänligen bekräfta att du har anslutit ett kompatibelt WLAN kort eller "
 #~ "aktiverat lokalt nätverkskort."
 
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Inget fungerandes trådlöst kort hittat.\n"
+#~ " Vänligen bekräfta att du har anslutit ett kompatibelt WLAN kort eller "
+#~ "aktiverat ditt lokala nätverkskort."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Inget fungerande trådlöst nätverkskort hittat.\n"
+#~ "Vänligen bekräfta att du har anslutit ett kompatibelt WLAN USB Stick och "
+#~ "konfigurerat ditt Nätverk korrekt."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Nej, låt mig välja grundlista"
 
@@ -4783,3 +4990,6 @@ msgstr "zapped"
 
 #~ msgid "loopthrough to socket A"
 #~ msgstr "loopthrough till ingång A"
+
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "endast /etc/enigma2 bibliotek"
index 7927deb..67d6891 100644 (file)
--- a/po/tr.po
+++ b/po/tr.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: enigma2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-11-03 17:09+0100\n"
+"POT-Creation-Date: 2008-11-16 23:21+0100\n"
 "PO-Revision-Date: \n"
 "Last-Translator: Zülfikar Veyisoğlu <zveyis@gmail.com>\n"
 "Language-Team: \n"
@@ -84,17 +84,24 @@ msgstr "(boş)"
 msgid "(show optional DVD audio menu)"
 msgstr "(opsiyonel DVD ses menüsünü göster)"
 
+msgid "* Only available if more than one interface is active."
+msgstr "* Yalnızca birden fazla arayüz olduğunda kullanılabilir."
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr "* Yalnızca gizlenmiş SSID veya ağ anahtarı girildiğinde kullanılabilir"
+
 msgid ".NFI Download failed:"
 msgstr ".NFI dosyası indirilirken hata oluştu:"
 
 msgid ".NFI Flasher bootable USB stick successfully created."
 msgstr ""
+"USB bellek için önyükleme yapabilir .NFI Flaşlayıcı başarıyla oluşturuldu."
 
 msgid ""
 ".NFI file passed md5sum signature check. You can safely flash this image!"
 msgstr ""
-".NFI dosyası için yapılan md5sum imza doğrulaması başarıyla sonuçlandı. Bu "
-"imajı güvenle kullanabilirsiniz!"
+".NFI dosyası için yapılan md5sum imza doğrulaması onaylandı. Bu imajı "
+"güvenle kullanabilirsiniz!"
 
 msgid "/usr/share/enigma2 directory"
 msgstr "/usr/share/enigma2 klasörü"
@@ -193,7 +200,8 @@ msgid "<unknown>"
 msgstr "<bilinmiyor>"
 
 msgid "??"
-msgstr "??"
+msgstr ""
+"Güncelleme tamamlandı. Dreambox'ın yeniden başlatılmasını istiyor musunuz?"
 
 msgid "A"
 msgstr "A"
@@ -221,7 +229,7 @@ msgstr ""
 "kapatmak istiyor. Şimdi kapatılsın mı?"
 
 msgid "A graphical EPG for all services of an specific bouquet"
-msgstr ""
+msgstr "Belirtilen buketteki tüm kanallar için grafik EPG"
 
 #, python-format
 msgid ""
@@ -248,11 +256,12 @@ msgstr ""
 msgid ""
 "A recording is currently running. Please stop the recording before trying to "
 "start the satfinder."
-msgstr "Kayıt devam ediyor. Uydu Arayıcıyı başlatmadan önce kaydı durdurun."
+msgstr ""
+"Kayıt devam ediyor. Lütfen Uydu Arayıcıyı başlatmadan önce kaydı durdurun."
 
 #, python-format
 msgid "A required tool (%s) was not found."
-msgstr ""
+msgstr "İhtiyaç duyulan (%s) aracı bulunamadı."
 
 msgid ""
 "A sleep timer wants to set your\n"
@@ -272,6 +281,8 @@ msgid ""
 "A timer failed to record!\n"
 "Disable TV and try again?\n"
 msgstr ""
+"Kayıt zamanlayıcısı başarısız!\n"
+"TV fonksiyonu devre dışı bırakılıp tekrar denensin mi?\n"
 
 msgid "A/V Settings"
 msgstr "Ses/Görüntü Ayarları"
@@ -313,7 +324,7 @@ msgid "Activate network settings"
 msgstr "Ağ ayarlarını etkinleştir"
 
 msgid "Adapter settings"
-msgstr "Ağ donanımı ayarları"
+msgstr "Ağ donanım ayarları"
 
 msgid "Add"
 msgstr "Ekle"
@@ -325,19 +336,19 @@ msgid "Add a mark"
 msgstr "İşaret ekle"
 
 msgid "Add a new title"
-msgstr ""
+msgstr "Yeni başlık ekle"
 
 msgid "Add timer"
 msgstr "Zamanlayıcı"
 
 msgid "Add title"
-msgstr ""
+msgstr "Başlık ekle"
 
 msgid "Add to bouquet"
 msgstr "Buket ekle"
 
 msgid "Add to favourites"
-msgstr "Favori ekle"
+msgstr "Favorilere ekle"
 
 msgid ""
 "Adjust the color settings so that all the color shades are distinguishable, "
@@ -345,6 +356,10 @@ msgid ""
 "OK to close the video fine-tuning, or use the number keys to select other "
 "test screens."
 msgstr ""
+"Renk ayarlarınızı yaparken, renk geçişlerini mümkün olduğunca dolgun ve "
+"ayırt edilebilir şekilde ayarlayın. Sonuçtan memnunsanız, görüntü ince "
+"ayarını kapatmak için OK tuşuna basın yada test ekranında belirtilen "
+"numaraları kumandanızdan tuşlayarak diğer test ekranlarını görün."
 
 msgid "Advanced"
 msgstr "Gelişmiş"
@@ -359,6 +374,9 @@ msgid ""
 "After the start wizard is completed, you need to protect single services. "
 "Refer to your dreambox's manual on how to do that."
 msgstr ""
+"Sihirbaz tamamlandıktan sonra, kanal korumasına ihtiyacınız olacak. Nasıl "
+"yapılacağını öğrenmek istiyorsanız Dreambox'ınızın kullanım kılavuzuna "
+"başvurunuz."
 
 msgid "Album:"
 msgstr "Albüm:"
@@ -367,7 +385,7 @@ msgid "All"
 msgstr "Tümü"
 
 msgid "All Satellites"
-msgstr ""
+msgstr "Tüm uydular"
 
 msgid "All..."
 msgstr "Tümü..."
@@ -385,12 +403,19 @@ msgid "An empty filename is illegal."
 msgstr "Boş dosya adı geçersiz."
 
 msgid "An unknown error occured!"
-msgstr ""
+msgstr "Bilinmeyen bir hata oluştu!"
 
 msgid "Arabic"
 msgstr "Arapça"
 
 msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+"Bu ağ yapılandırmasını aktifleştirmek istediğinizden emin misiniz?\n"
+"\n"
+
+msgid ""
 "Are you sure you want to restart your network interfaces?\n"
 "\n"
 msgstr ""
@@ -416,28 +441,25 @@ msgid "Audio Options..."
 msgstr "Ses Ayarları..."
 
 msgid "Authoring mode"
-msgstr ""
+msgstr "Yayınlama kipi"
 
 msgid "Auto"
 msgstr "Otomatik"
 
 msgid "Auto chapter split every ? minutes (0=never)"
-msgstr ""
+msgstr "Belirtilen sürelerde otomatik bölümlere ayrılsın mı? dakika (0=ayırma)"
 
 msgid "Auto scart switching"
-msgstr ""
+msgstr "Otomatik scart anahtarlama"
 
 msgid "Automatic"
 msgstr "Otomatik"
 
-msgid "Automatic SSID lookup"
-msgstr ""
-
 msgid "Automatic Scan"
 msgstr "Otomatik Arama"
 
 msgid "Available format variables"
-msgstr ""
+msgstr "Kullanılabilir biçim (format) değişkenleri"
 
 msgid "B"
 msgstr "B"
@@ -458,7 +480,7 @@ msgid "Back"
 msgstr "Geri"
 
 msgid "Background"
-msgstr ""
+msgstr "Arkaplan"
 
 msgid "Backup"
 msgstr "Yedek Al"
@@ -482,19 +504,19 @@ msgid "Begin time"
 msgstr "Başlangıç"
 
 msgid "Behavior of 'pause' when paused"
-msgstr "Duraklama modunda 'duraklat' tuşuna basıldığında yapılacak işlem"
+msgstr "Duraklama modunda 'duraklat' tuşuna basıldığında"
 
 msgid "Behavior of 0 key in PiP-mode"
-msgstr "PiP modunda 0 tuşuna basıldığında yapılacak işlem"
+msgstr "PiP modunda 0 tuşuna basıldığında"
 
 msgid "Behavior when a movie is started"
-msgstr "Film başlatıldığı zaman yapılacak işlem"
+msgstr "Film başlatıldığı zaman"
 
 msgid "Behavior when a movie is stopped"
-msgstr "Film durdurulduğu zaman yapılacak işlem"
+msgstr "Film durdurulduğu zaman"
 
 msgid "Behavior when a movie reaches the end"
-msgstr "Filmin sonuna ulaşıldığında yapılacak işlem"
+msgstr "Filmin sonuna ulaşıldığında"
 
 msgid "Bookmarks"
 msgstr "Yer imleri"
@@ -503,13 +525,13 @@ msgid "Brightness"
 msgstr "Parlaklık"
 
 msgid "Burn DVD"
-msgstr ""
+msgstr "DVD yaz"
 
 msgid "Burn existing image to DVD"
-msgstr ""
+msgstr "Varolan imajı DVD'ye yaz"
 
 msgid "Burn to DVD..."
-msgstr ""
+msgstr "DVD'ye yaz..."
 
 msgid "Bus: "
 msgstr "Yol:"
@@ -520,7 +542,7 @@ msgid ""
 msgstr "Kumandanın OK tuşuna basıldığı zaman, Bilgi Çubuğunu göster"
 
 msgid "C"
-msgstr ""
+msgstr "C"
 
 msgid "C-Band"
 msgstr "C-Band"
@@ -553,13 +575,13 @@ msgid "Card"
 msgstr "Kart"
 
 msgid "Catalan"
-msgstr "Catalan"
+msgstr "Katalanca"
 
 msgid "Change bouquets in quickzap"
 msgstr "Kanal değiştirirken buketler arası geçişe izin ver"
 
 msgid "Change dir."
-msgstr ""
+msgstr "Klasör değiştir."
 
 msgid "Change pin code"
 msgstr "Şifre değiştir"
@@ -628,16 +650,16 @@ msgid "Close"
 msgstr "Kapat"
 
 msgid "Code rate high"
-msgstr ""
+msgstr "Yüksek kod oranı"
 
 msgid "Code rate low"
-msgstr ""
+msgstr "Düşük kod oranı"
 
 msgid "Coderate HP"
-msgstr ""
+msgstr "Yüksek güç (HP) kod oranı"
 
 msgid "Coderate LP"
-msgstr ""
+msgstr "Düşük güç (LP) kod oranı"
 
 msgid "Collection name"
 msgstr "Kolleksiyon adı"
@@ -649,7 +671,7 @@ msgid "Color Format"
 msgstr "Renk Biçimi"
 
 msgid "Command execution..."
-msgstr ""
+msgstr "Komut yürütülüyor..."
 
 msgid "Command order"
 msgstr "Emir sıralaması"
@@ -669,6 +691,9 @@ msgstr "Compact flash kartı"
 msgid "Complete"
 msgstr "Tamamlandı"
 
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr "Kompleks (karışık ses izlerine ve açılara izin verir)"
+
 msgid "Configuration Mode"
 msgstr "Konfigürasyon modu"
 
@@ -679,7 +704,7 @@ msgid "Conflicting timer"
 msgstr "Zamanlama çakışması"
 
 msgid "Connected to"
-msgstr ""
+msgstr "Bağlanılıyor"
 
 msgid "Connected to Fritz!Box!"
 msgstr "Fritz!Box! a bağlanıldı!"
@@ -698,13 +723,13 @@ msgstr ""
 "yeniden deneniyor..."
 
 msgid "Constellation"
-msgstr ""
+msgstr "Takımyıldız"
 
 msgid "Content does not fit on DVD!"
-msgstr ""
+msgstr "İçerik DVD'ye sığmıyor!"
 
 msgid "Continue in background"
-msgstr ""
+msgstr "Arkaplanda devam et"
 
 msgid "Continue playing"
 msgstr "Oynatmaya devam et"
@@ -713,16 +738,16 @@ msgid "Contrast"
 msgstr "Kontrast"
 
 msgid "Copying USB flasher boot image to stick..."
-msgstr ""
+msgstr "Önyükleme yapabilir USB flaşlayıcı imajı belleğe kopyalanıyor..."
 
 msgid "Could not connect to Dreambox .NFI Image Feed Server:"
 msgstr "Dreambox .NFI imaj sunucusuna bağlanamıyor:"
 
 msgid "Could not load Medium! No disc inserted?"
-msgstr "DVD medyası yüklenemedi. DVD medyası takılı değil mi?"
+msgstr "DVD medyası yüklenemedi. DVD diski takılı değil mi?"
 
 msgid "Create DVD-ISO"
-msgstr ""
+msgstr "DVD-ISO oluştur"
 
 msgid "Create movie folder failed"
 msgstr "Film klasörü (movie) oluşturulamadı"
@@ -735,7 +760,7 @@ msgid "Creating partition failed"
 msgstr "Diski bölümü oluşturulamadı"
 
 msgid "Croatian"
-msgstr "Croatian"
+msgstr "Hırvatça"
 
 msgid "Current Transponder"
 msgstr "Geçerli Transponder"
@@ -762,13 +787,13 @@ msgid "Cut"
 msgstr "Kes"
 
 msgid "Cutlist editor..."
-msgstr "Kesme listesi düzenleyici..."
+msgstr "Kesim listesi düzenleyici..."
 
 msgid "Czech"
-msgstr "Czech"
+msgstr "Çekçe"
 
 msgid "D"
-msgstr ""
+msgstr "D"
 
 msgid "DHCP"
 msgstr "DHCP"
@@ -786,19 +811,20 @@ msgid "DVD media toolbox"
 msgstr "DVD medya araçları"
 
 msgid "Danish"
-msgstr "Danish"
+msgstr "Danca"
 
 msgid "Date"
 msgstr "Tarih"
 
 msgid "Decompressing USB stick flasher boot image..."
 msgstr ""
+"Sıkıştırılmış önyükleme yapabilir USB bellek flaşlayıcı çıkartılıyor..."
 
 msgid "Deep Standby"
 msgstr "Derin Uyku"
 
 msgid "Default services lists"
-msgstr "Öntanımlı kanal listesi"
+msgstr "Varsayılan kanal listesi"
 
 msgid "Default settings"
 msgstr "Varsayılan ayarlar"
@@ -813,13 +839,15 @@ msgid "Delete entry"
 msgstr "Seçimi sil"
 
 msgid "Delete failed!"
-msgstr "Silmeişlemi başarısız!"
+msgstr "Silme işlemi başarısız!"
 
 #, python-format
 msgid ""
 "Delete no more configured satellite\n"
 "%s?"
 msgstr ""
+"Yapılandırırken ihtiyaç duymadığınız %s\n"
+"uydusunu silmek istiyor musunuz?"
 
 msgid "Description"
 msgstr "Açıklama"
@@ -842,9 +870,6 @@ msgstr "DiSEqC A/B"
 msgid "DiSEqC A/B/C/D"
 msgstr "DiSEqC A/B/C/D"
 
-msgid "DiSEqC Mode"
-msgstr "DiSEqC Modu"
-
 msgid "DiSEqC mode"
 msgstr "DiSEqC modu"
 
@@ -900,13 +925,15 @@ msgid ""
 "Do you really want to REMOVE\n"
 "the plugin \"%s\"?"
 msgstr ""
+" \"%s\" eklentisini KALDIRMAK\n"
+"istediğinizden emin misiniz?"
 
 msgid ""
 "Do you really want to check the filesystem?\n"
 "This could take lots of time!"
 msgstr ""
 "Dosya sistemini kontrol etmek istediğinizden emin misiniz?\n"
-"Bu işlem çok uzun sürecektir!"
+"Bu işlem çok uzun sürebilir!"
 
 #, python-format
 msgid "Do you really want to delete %s?"
@@ -917,9 +944,8 @@ msgid ""
 "Do you really want to download\n"
 "the plugin \"%s\"?"
 msgstr ""
-
-msgid "Do you really want to exit?"
-msgstr "Çıkmak istediğinizden emin misiniz?"
+"\"%s\" eklentisini indirmek\n"
+"istediğinizden emin misiniz?"
 
 msgid ""
 "Do you really want to initialize the harddisk?\n"
@@ -956,7 +982,7 @@ msgid "Do you want to enable the parental control feature on your dreambox?"
 msgstr "Ebeveyn kontrolü özelliğini aktifleştirmek ister misiniz?"
 
 msgid "Do you want to install default sat lists?"
-msgstr "Öntanımlı kanal listesi yüklemek istiyor musunuz?"
+msgstr "Varsayılan kanal listesi yüklemek istiyor musunuz?"
 
 msgid "Do you want to play DVD in drive?"
 msgstr "DVD'yi oynatmak istiyor musunuz?"
@@ -974,7 +1000,7 @@ msgid ""
 "Do you want to update your Dreambox?\n"
 "After pressing OK, please wait!"
 msgstr ""
-"Dreambox u güncellemek istiyor musunuz?\n"
+"Dreambox güncellemek istiyor musunuz?\n"
 "Lütfen OK a bastıktan sonra bekleyin!"
 
 msgid "Do you want to view a tutorial?"
@@ -998,31 +1024,32 @@ msgid "Download .NFI-Files for USB-Flasher"
 msgstr "USB-Flaş için .NFI dosyası indir"
 
 msgid "Download Plugins"
-msgstr "Program İndir"
+msgstr "Eklenti İndir"
 
 msgid "Download of USB flasher boot image failed: "
 msgstr ""
+"Önyükleme yapabilir USB flaşlayıcı imaj dosyası indirilirken hata oluştu:"
 
 msgid "Downloadable new plugins"
-msgstr "İndirilebilir yeni programlar"
+msgstr "İndirilebilir yeni eklentiler"
 
 msgid "Downloadable plugins"
-msgstr "İndirilebilir programlar"
+msgstr "İndirilebilir eklentiler"
 
 msgid "Downloading"
 msgstr "İndiriliyor"
 
 msgid "Downloading image description..."
-msgstr ""
+msgstr "İmaj açıklaması indiriliyor..."
 
 msgid "Downloading plugin information. Please wait..."
-msgstr "Program bilgisi indiriliyor. Lütfen bekleyin..."
+msgstr "Eklenti bilgisi indiriliyor. Lütfen bekleyin..."
 
 msgid "Dreambox format data DVD (HDTV compatible)"
 msgstr "Dreambox DVD biçimi (HDTV uyumlu)"
 
 msgid "Dutch"
-msgstr "Dutch"
+msgstr "Flemenkçe"
 
 msgid "E"
 msgstr "D"
@@ -1037,9 +1064,15 @@ msgstr "HATA - arama başarısız (%s)!"
 msgid "East"
 msgstr "Doğu"
 
+msgid "Edit"
+msgstr "Düzenle"
+
 msgid "Edit DNS"
 msgstr "DNS Düzenle"
 
+msgid "Edit Title"
+msgstr "Başlık Düzenle"
+
 msgid "Edit chapters of current title"
 msgstr "Geçerli başlık için bölümleri düzenle"
 
@@ -1074,7 +1107,7 @@ msgid "Enable parental control"
 msgstr "Ebeveyn kontrolünü aç"
 
 msgid "Enable timer"
-msgstr ""
+msgstr "Zamanlayıcıyı aç"
 
 msgid "Enabled"
 msgstr "Açık"
@@ -1085,6 +1118,9 @@ msgstr "Şifreleme"
 msgid "Encryption Key"
 msgstr "Şifreleme Anahtarı"
 
+msgid "Encryption Keytype"
+msgstr "Şifreleme anahtar tipi"
+
 msgid "Encryption Type"
 msgstr "Şifreleme Tipi"
 
@@ -1098,7 +1134,7 @@ msgid "EndTime"
 msgstr "Bitiş Saati"
 
 msgid "English"
-msgstr "English"
+msgstr "İngilizce"
 
 msgid ""
 "Enigma2 Skinselector v0.5 BETA\n"
@@ -1108,7 +1144,7 @@ msgid ""
 "\n"
 "© 2006 - Stephan Reichholf"
 msgstr ""
-"Enigma2 Arayüz Seçic v0.5 BETA\n"
+"Enigma2 Arayüz Seçici v0.5 BETA\n"
 "\n"
 "Herhangi bir hatayla karşılaştıysanız lüften\n"
 "stephan@reichholf.net ile irtibata geçiniz\n"
@@ -1121,11 +1157,17 @@ msgstr ""
 #.       which "winding mode" is entered when first pressing "rewind" or
 #.       "fast forward". 
 msgid "Enter Fast Forward at speed"
-msgstr "Hızlı sardırma hızını (FF) girin"
+msgstr "Hızlı sardırma hızını (FF) seçin"
 
 msgid "Enter Rewind at speed"
 msgstr "Geri sardırma hızını (RW) seçin"
 
+msgid "Enter WLAN network name/SSID:"
+msgstr "Kablosuz (WLAN) ağ adı/SSID girin:"
+
+msgid "Enter WLAN passphrase/key:"
+msgstr "WLAN ön paylaşımlı anahtarı (passphrase/key) girin:"
+
 msgid "Enter main menu..."
 msgstr "Ana menüye gir..."
 
@@ -1136,7 +1178,7 @@ msgid "Error"
 msgstr "Hata"
 
 msgid "Error executing plugin"
-msgstr ""
+msgstr "Eklentinin çalıştırılması sırasında hata oluştu"
 
 #, python-format
 msgid ""
@@ -1150,13 +1192,13 @@ msgid "Eventview"
 msgstr "Program detayı"
 
 msgid "Everything is fine"
-msgstr "Gerşey güzel"
+msgstr "Herşey güzel"
 
 msgid "Execution Progress:"
-msgstr ""
+msgstr "Uygulama ilerliyor:"
 
 msgid "Execution finished!!"
-msgstr ""
+msgstr "Uygulama bitti!!"
 
 msgid "Exit"
 msgstr "Çıkış"
@@ -1174,7 +1216,7 @@ msgid "Expert"
 msgstr "Uzman"
 
 msgid "Extended Networksetup Plugin..."
-msgstr ""
+msgstr "Gelişmiş Ağ Kurulum Eklentisi..."
 
 msgid "Extended Setup..."
 msgstr "Gelişmiş Kurulum..."
@@ -1201,7 +1243,7 @@ msgid "Fast Forward speeds"
 msgstr "Hızlı sardırma (FF) hızları"
 
 msgid "Fast epoch"
-msgstr ""
+msgstr "Hızlı tur"
 
 msgid "Favourites"
 msgstr "Favoriler"
@@ -1218,15 +1260,23 @@ msgstr "İnce ayar"
 msgid "Finished"
 msgstr "Bitmiş"
 
+msgid "Finished configuring your network"
+msgstr "Ağ yapılandırması tamamlandı."
+
+msgid "Finished restarting your network"
+msgstr "Ağ yeniden başlatıldı"
+
 msgid "Finnish"
-msgstr "Finnish"
+msgstr "Fince"
 
 msgid ""
 "First we need to download the latest boot environment for the USB flasher."
 msgstr ""
+"Öncelikle en güncel önyükleme yapabilir USB flaşlayıcı ortamının indirilmesi "
+"gerekiyor."
 
 msgid "Fix USB stick"
-msgstr "USB çubuğu onar"
+msgstr "USB belleği onar"
 
 msgid "Flash"
 msgstr "Flaşa yaz"
@@ -1238,13 +1288,13 @@ msgid "Font size"
 msgstr "Yazıtipi boyutu"
 
 msgid "Format"
-msgstr ""
+msgstr "Biçimlendir"
 
 msgid "Frame repeat count during non-smooth winding"
-msgstr ""
+msgstr "Adım adım ilerletmede çerçeve tekrar sayısı "
 
 msgid "French"
-msgstr "French"
+msgstr "Fransızca"
 
 msgid "Frequency"
 msgstr "Frekans"
@@ -1282,7 +1332,7 @@ msgid ""
 "Do you want to Restart the GUI now?"
 msgstr ""
 "Yeni arayüzü aktif hale getirmek için yeniden başlatma gerekiyor\n"
-"Grafik arayüzü (GUI)'yi yeniden başlatmak istediğinize emin misiniz?"
+"Grafik arayüzünü (GUI) yeniden başlatmak istediğinize emin misiniz?"
 
 msgid "Gateway"
 msgstr "Ağ geçidi"
@@ -1291,10 +1341,10 @@ msgid "Genre:"
 msgstr "Tür:"
 
 msgid "German"
-msgstr "German"
+msgstr "Almanca"
 
 msgid "Getting plugin information. Please wait..."
-msgstr "Program bilgisi getiriliyor. Lütfen bekleyin..."
+msgstr "Eklenti bilgisi getiriliyor. Lütfen bekleyin..."
 
 msgid "Goto 0"
 msgstr "0 a git"
@@ -1309,10 +1359,10 @@ msgid "Greek"
 msgstr "Greek"
 
 msgid "Guard Interval"
-msgstr ""
+msgstr "Koruma Süresi"
 
 msgid "Guard interval mode"
-msgstr ""
+msgstr "Koruma süre kipi"
 
 msgid "Harddisk"
 msgstr "Sabitdisk"
@@ -1323,6 +1373,9 @@ msgstr "Sabitdisk kurulumu"
 msgid "Harddisk standby after"
 msgstr "Belirtilen süre kullanılmadığında Sabitdiski uyku moduna al"
 
+msgid "Hidden network SSID"
+msgstr "Gizlenmiş ağ SSID"
+
 msgid "Hierarchy Information"
 msgstr "Hiyerarşi Bilgisi"
 
@@ -1333,19 +1386,19 @@ msgid "How many minutes do you want to record?"
 msgstr "Kaç dakikalık kayıt başlatmak istiyorsunuz?"
 
 msgid "Hungarian"
-msgstr "Hungarian"
+msgstr "Macarca"
 
 msgid "IP Address"
 msgstr "IP Adresi"
 
 msgid "ISO file is too large for this filesystem!"
-msgstr ""
+msgstr "ISO dosyası bu dosya sistemi için çok büyük!"
 
 msgid "ISO path"
-msgstr ""
+msgstr "ISO yol adı"
 
 msgid "Icelandic"
-msgstr "Icelandic"
+msgstr "İzlandaca"
 
 msgid "If you can see this page, please press OK."
 msgstr "Bu sayfayı görebiliyorsanız, OK a basınız."
@@ -1368,6 +1421,16 @@ msgid ""
 "step.\n"
 "If you are happy with the result, press OK."
 msgstr ""
+"Eğer TV'nizde parlaklık ve kontrast geliştirme özelliğini kullanıyorsanız, "
+"devre dışı bırakın. TV ayarlarınızda \"dinamik\" ismiyle adlandırılan ayar "
+"aktifse, standart'a getirin. Zemin ışıklandırma (backlight) seviyesini "
+"ayarlayın.\n"
+"Kontrast oranını olabildiğince düşürün. Parlaklık seviyesini mümkün "
+"olduğunca düşürün, en alttaki iki gri tonuda ayırt edebilecek şekilde "
+"ayarlarınızı yapın.\n"
+"Parlak tonları şuan için dert etmeyin. Onları bir sonraki adımda "
+"ayarlayabilirsiniz.\n"
+"Sonuçtan memnunsanız, OK tuşuna basın."
 
 msgid "Image flash utility"
 msgstr "İmaj flaş aracı"
@@ -1376,11 +1439,13 @@ msgid "Image-Upgrade"
 msgstr "İmaj-Güncelle"
 
 msgid "In Progress"
-msgstr ""
+msgstr "İlerliyor"
 
 msgid ""
 "In order to record a timer, the TV was switched to the recording service!\n"
 msgstr ""
+"Zamanlanmış kayıt görevi başlatıldı, TV fonksiyonundan kayıt fonksiyonuna "
+"geçildi!\n"
 
 msgid "Increased voltage"
 msgstr "Arttırılmış voltaj"
@@ -1419,10 +1484,10 @@ msgid "Installing Software..."
 msgstr "Yazılım Yükleniyor..."
 
 msgid "Installing default sat lists... Please wait..."
-msgstr "Öntanımlı uygu listesi yükleniyor... Lütfen bekleyin..."
+msgstr "Varsayılan uydu listesi yükleniyor... Lütfen bekleyin..."
 
 msgid "Installing defaults... Please wait..."
-msgstr "Öntanımlı bilgiler yükleniyor... Lütfen bekleyiniz..."
+msgstr "Varsayılan bilgiler yükleniyor... Lütfen bekleyiniz..."
 
 msgid "Installing package content... Please wait..."
 msgstr "Paket içeriği yükleniyor... Lütfen yükleyiniz..."
@@ -1456,10 +1521,10 @@ msgid "Invert display"
 msgstr "Ekranı ters çevir"
 
 msgid "Italian"
-msgstr "Italian"
+msgstr "İtalyanca"
 
 msgid "Job View"
-msgstr "Görevleri Göster"
+msgstr "Görev Göster"
 
 #. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect)
 msgid "Just Scale"
@@ -1527,19 +1592,19 @@ msgid "Link:"
 msgstr "Link:"
 
 msgid "Linked titles with a DVD menu"
-msgstr ""
+msgstr "DVD Menüsü ile bağlı başlıklar"
 
 msgid "List of Storage Devices"
 msgstr "Depolama Aygıtları"
 
 msgid "Lithuanian"
-msgstr "Lithuanian"
+msgstr "Litvanyaca"
 
 msgid "Load"
 msgstr "Yükle"
 
 msgid "Load Length of Movies in Movielist"
-msgstr ""
+msgstr "Film listesinde, film sürelerini göster"
 
 msgid "Local Network"
 msgstr "Yerel Ağ"
@@ -1551,7 +1616,7 @@ msgid "Lock:"
 msgstr "Kilitli:"
 
 msgid "Long Keypress"
-msgstr ""
+msgstr "Tuşa uzun basıldığında"
 
 msgid "Longitude"
 msgstr "Boylam"
@@ -1569,13 +1634,13 @@ msgid "Mainmenu"
 msgstr "Anamenü"
 
 msgid "Make this mark an 'in' point"
-msgstr ""
+msgstr "'içinde' noktası olarak işaretle"
 
 msgid "Make this mark an 'out' point"
-msgstr ""
+msgstr "'dışında' noktası olarak işaretle"
 
 msgid "Make this mark just a mark"
-msgstr ""
+msgstr "Bu işareti sadece bir işaret olarak kullan"
 
 msgid "Manual Scan"
 msgstr "Elle arama"
@@ -1632,7 +1697,7 @@ msgid "Monday"
 msgstr "Pazartesi"
 
 msgid "Mount failed"
-msgstr "Mount (bağlama) başarısız"
+msgstr "Depolama aygıtı bağlama işlemi (mount) başarısız"
 
 msgid "Move Picture in Picture"
 msgstr "Resim içinde resim (PiP)'i  taşı"
@@ -1659,7 +1724,7 @@ msgid "Mute"
 msgstr "Sessiz"
 
 msgid "N/A"
-msgstr "N/A"
+msgstr "Kullanılamaz (N/A)"
 
 msgid "NEXT"
 msgstr "SONRA"
@@ -1691,16 +1756,16 @@ msgid "Nameserver settings"
 msgstr "İsim sunucusu (DNS) ayarları"
 
 msgid "Netmask"
-msgstr "Ağ maskesi"
+msgstr "Alt ağ maskesi"
 
 msgid "Network Configuration..."
-msgstr "Ağ Konfigürasyonu..."
+msgstr "Ağ Yapılandırması..."
 
 msgid "Network Mount"
 msgstr "Ağ Bağla"
 
 msgid "Network SSID"
-msgstr "SSID Ağı"
+msgstr "Ağ SSID"
 
 msgid "Network Setup"
 msgstr "Ağ Kurulumu"
@@ -1742,7 +1807,7 @@ msgid "No"
 msgstr "Hayır"
 
 msgid "No (supported) DVDROM found!"
-msgstr "Desteklenen DVD bulunamadı!"
+msgstr "Desteklenen DVDROM  bulunamadı!"
 
 msgid "No 50 Hz, sorry. :("
 msgstr "50 Hz desteklemiyor, üzgünüm. :("
@@ -1750,6 +1815,9 @@ msgstr "50 Hz desteklemiyor, üzgünüm. :("
 msgid "No HDD found or HDD not initialized!"
 msgstr "HDD bulunamadı veya HDD ilişkilendirilemedi!"
 
+msgid "No Networks found"
+msgstr "Kablosuz Ağ bulunamadı"
+
 msgid "No backup needed"
 msgstr "Yedekleme gerekmiyor"
 
@@ -1779,10 +1847,10 @@ msgid "No picture on TV? Press EXIT and retry."
 msgstr "TV'nizde resim yoksa EXIT'e basın ve tekrar deneyin."
 
 msgid "No positioner capable frontend found."
-msgstr ""
+msgstr "Pozisyoner uyumlu uç ekipman bulunamadı."
 
 msgid "No satellite frontend found!!"
-msgstr ""
+msgstr "Uydu uç ekipmanı (frontend) bulunamadı!!"
 
 msgid "No tuner is configured for use with a diseqc positioner!"
 msgstr "DiSEqC pozisyoner kullanımı için tuner ayarı yapılmamış."
@@ -1795,7 +1863,7 @@ msgstr ""
 "Lütfen kanal aramasına başlamadan önce tuner ayarlarınızı yapınız."
 
 msgid "No useable USB stick found"
-msgstr "Kullanılabilir USB çubuk bulunamadı"
+msgstr "Kullanılabilir USB bellek bulunamadı"
 
 msgid ""
 "No valid service PIN found!\n"
@@ -1816,8 +1884,8 @@ msgstr ""
 "'Hayır' derseniz kurulum koruması devredışı kalacaktır."
 
 msgid ""
-"No working local networkadapter found.\n"
-"Please verify that you have attached a network cable and your Network is "
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
 "configured correctly."
 msgstr ""
 "Çalışan yerel ağ donanımı bulunamadı.\n"
@@ -1825,22 +1893,25 @@ msgstr ""
 "yapılandırıldığından emin olun."
 
 msgid ""
-"No working wireless interface found.\n"
-" Please verify that you have attached a compatible WLAN device or enable "
-"your local network interface."
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
 msgstr ""
+"Çalışan kablosuz ağ donanımı bulunamadı.\n"
+" Uyumlu WLAN USB donanımının takılı olduğundan emin olun ve ağ "
+"yapılandırmanızı doğru yaptığınızdan emin olun."
 
 msgid ""
-"No working wireless networkadapter found.\n"
-"Please verify that you have attached a compatible WLAN USB Stick and your "
-"Network is configured correctly."
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
 msgstr ""
-"Çalışan kablosuz ağ donanımı bulunamadı.\n"
-" Uyumlu WLAN USB donanımının takılı olduğundan emin olun ve ağ ayarlarınızın "
-"doğru yapılandırıldığından emin olun."
+"Çalışan kablosuz ağ arayüzü bulunamadı.\n"
+" Uyumlu WLAN USB donanımının takılı olduğundan emin olun veya yerel ağ "
+"arayüzünü etkinleştirin."
 
 msgid "No, but restart from begin"
-msgstr ""
+msgstr "Hayır, ama en başından başlat"
 
 msgid "No, do nothing."
 msgstr "Hayır, birşey yapma"
@@ -1862,7 +1933,7 @@ msgid "North"
 msgstr "Kuzey"
 
 msgid "Norwegian"
-msgstr "Norwegian"
+msgstr "Norveççe"
 
 #, python-format
 msgid ""
@@ -1876,6 +1947,8 @@ msgid ""
 "Nothing to scan!\n"
 "Please setup your tuner settings before you start a service scan."
 msgstr ""
+"Kanal araması yapılmadı!\n"
+"Lütfen kanal araması yapmadan önce tuner kurulumunuzu tamamlayın."
 
 msgid "Now Playing"
 msgstr "Oynatılıyor"
@@ -1885,7 +1958,7 @@ msgid ""
 "format and use as .NFI image flasher. Press OK after you've put the stick "
 "back in."
 msgstr ""
-"Lütfen şimdi .NFI imajını yazmak üzere biçimlendirilmesi gereken USB çubuk "
+"Lütfen şimdi .NFI imajını yazmak üzere biçimlendirilmesi gereken USB bellek "
 "takın (en az 64MB kapasiteli). Hazırsanız kumandanızdan OK tuşuna basın."
 
 msgid ""
@@ -1893,6 +1966,9 @@ msgid ""
 "much as possible, but make sure that you can still see the difference "
 "between the two brightest levels of shades.If you have done that, press OK."
 msgstr ""
+"Şimdi, kontrast ayarlarını kullanarak arkazemin üzerinde, ekrandaki iki "
+"parlaklık tonunu ayırt edebilecek şekilde ve mümkün olduğunca parlaklık "
+"seviyesini arttırın. İşlemi tamamladıktan sonra OK tuşuna basın."
 
 msgid "OK"
 msgstr "Tamam"
@@ -1934,7 +2010,7 @@ msgid "PIDs"
 msgstr "PID"
 
 msgid "Package list update"
-msgstr ""
+msgstr "Paket listesi güncelleniyor"
 
 msgid "Packet management"
 msgstr "Paket yönetimi"
@@ -1962,10 +2038,10 @@ msgid "Parental control type"
 msgstr "Ebeveyn kontrolü tipi"
 
 msgid "Partitioning USB stick..."
-msgstr "USB çubuk bölümlendiriliyor..."
+msgstr "USB bellek bölümlendiriliyor..."
 
 msgid "Pause movie at end"
-msgstr ""
+msgstr "Bittiğinde filmi duraklat"
 
 msgid "PiPSetup"
 msgstr "PiP Kurulumu"
@@ -2002,7 +2078,7 @@ msgid "Please check your network settings!"
 msgstr "Lütfen ağ ayarlarını kontrol edin!"
 
 msgid "Please choose .NFI image file from feed server to download"
-msgstr ""
+msgstr "Lütfen sunucudan çekmek istediğiniz .NFI imajını seçin"
 
 msgid "Please choose an extension..."
 msgstr "Lütfen kullanmak istediğiniz eklentiyi seçin..."
@@ -2011,7 +2087,7 @@ msgid "Please choose he package..."
 msgstr "Lütfen paket seçin..."
 
 msgid "Please choose the default services lists you want to install."
-msgstr "Lütfen yüklemek istediğiniz öntanımlı kanal listelerini seçin."
+msgstr "Lütfen yüklemek istediğiniz varsayılan kanal listesini seçin."
 
 msgid "Please do not change any values unless you know what you are doing!"
 msgstr "Lütfen ne yaptığınızı bilmiyorsanız hiçbir değeri değiştirmeyin!"
@@ -2044,6 +2120,8 @@ msgid ""
 "Please note that the previously selected media could not be accessed and "
 "therefore the default directory is being used instead."
 msgstr ""
+"Seçtiğiniz medyaya erişilemedi, bu yüzden yerine varsayılan klasör "
+"kullanılıyor."
 
 msgid "Please press OK to continue."
 msgstr "Devam etmek için lütfen OK'a basın"
@@ -2052,7 +2130,7 @@ msgid "Please press OK!"
 msgstr "Lütfen OK! e basın"
 
 msgid "Please select .NFI flash image file from medium"
-msgstr ""
+msgstr "Lütfen DVD/CD medyasından, istediğiniz .NFI imajını seçin"
 
 msgid "Please select a playlist to delete..."
 msgstr "Seçili oynatma listesini sil..."
@@ -2061,10 +2139,10 @@ msgid "Please select a playlist..."
 msgstr "Lütfen bir oynatma listesi seçin..."
 
 msgid "Please select a subservice to record..."
-msgstr ""
+msgstr "Lütfen kaydedilmesini istediğiniz alt servisi seçin..."
 
 msgid "Please select a subservice..."
-msgstr ""
+msgstr "Lütfen bir alt servis seçin..."
 
 msgid "Please select keyword to filter..."
 msgstr "Lütfen filtre için anahtar kelime girin..."
@@ -2073,16 +2151,16 @@ msgid "Please select target directory or medium"
 msgstr "Lütfen hedef klasörü veya medyayı seçin"
 
 msgid "Please select the movie path..."
-msgstr ""
+msgstr "Lütfen film yol adını seçin..."
 
 msgid "Please set up tuner B"
-msgstr "Lütfen tuner B'yi ayarlayın"
+msgstr "Lütfen tuner B'yi yapılandırın"
 
 msgid "Please set up tuner C"
-msgstr "Lütfen tuner C'yi ayarlayın"
+msgstr "Lütfen tuner C'yi yapılandırın"
 
 msgid "Please set up tuner D"
-msgstr "Lütfen tuner D'yi ayarlayın"
+msgstr "Lütfen tuner D'yi yapılandırın"
 
 msgid ""
 "Please use direction keys to move the PiP window.\n"
@@ -2097,18 +2175,32 @@ msgid ""
 "Please use the UP and DOWN keys to select your language. Afterwards press "
 "the OK button."
 msgstr ""
+"Dil seçiminizi, yapmak için YUKARI ve AŞAĞI tuşlarını, onaylamak için OK "
+"tuşunu kullanın."
+
+msgid "Please wait for activation of your network configuration..."
+msgstr "Ağ yapılandırmanızın aktifleştirmesi için lütfen bekleyin..."
 
 msgid "Please wait for md5 signature verification..."
 msgstr "md5 imza doğrulamasının yapılabilmesi için lütfen bekleyin..."
 
+msgid "Please wait while we configure your network..."
+msgstr "Lütfen ağ yapılandırılırken bekleyin..."
+
+msgid "Please wait while your network is restarting..."
+msgstr "Lütfen ağ yeniden başlatılırken bekleyin..."
+
+msgid "Please wait..."
+msgstr "Lütfen bekleyin..."
+
 msgid "Please wait... Loading list..."
 msgstr "Lütfen bekleyiniz... Liste yükleniyor..."
 
 msgid "Plugin browser"
-msgstr "Program listesi"
+msgstr "Eklenti listesi"
 
 msgid "Plugins"
-msgstr "Programlar"
+msgstr "Eklentiler"
 
 msgid "Polarity"
 msgstr "Polarite"
@@ -2132,25 +2224,25 @@ msgid "Port D"
 msgstr "Port D"
 
 msgid "Portuguese"
-msgstr "Portuguese"
+msgstr "Portekizce"
 
 msgid "Positioner"
 msgstr "Pozisyoner"
 
 msgid "Positioner fine movement"
-msgstr ""
+msgstr "Pozisyoner ince ayarı"
 
 msgid "Positioner movement"
-msgstr "Pozisyoner hareketi"
+msgstr "Pozisyoner'i hareket ettir"
 
 msgid "Positioner setup"
-msgstr "Pozisyoner ayarı"
+msgstr "Pozisyoner kurulumu"
 
 msgid "Positioner storage"
-msgstr ""
+msgstr "Pozisyoner konumunu hafızaya al"
 
 msgid "Power threshold in mA"
-msgstr ""
+msgstr "Güç eşiği (mA)"
 
 msgid "Predefined transponder"
 msgstr "Önceden tanımlanmış transponder"
@@ -2165,7 +2257,7 @@ msgid "Press OK to activate the settings."
 msgstr "Ayarlarınızı etkinleştirmek için OK'a basın."
 
 msgid "Press OK to edit the settings."
-msgstr ""
+msgstr "Yapılandırma ayarlarınızı düzenlemek için OK tuşuna basın."
 
 msgid "Press OK to scan"
 msgstr "Tarama için OK'a basın"
@@ -2182,6 +2274,9 @@ msgstr "Önizleme menüsü"
 msgid "Primary DNS"
 msgstr "Birincil DNS"
 
+msgid "Properties of current title"
+msgstr "Geçerli başlığın özellikleri"
+
 msgid "Protect services"
 msgstr "Kanallar korunsun mu?"
 
@@ -2192,7 +2287,7 @@ msgid "Provider"
 msgstr "Yayıncı"
 
 msgid "Provider to scan"
-msgstr ""
+msgstr "Yayıncıya göre ara"
 
 msgid "Providers"
 msgstr "Sağlayıcılar"
@@ -2229,7 +2324,7 @@ msgid "Really delete this timer?"
 msgstr "Bu zamanlayıcıyı silmek istediğinizden gerçekten emin misiniz?"
 
 msgid "Really exit the subservices quickzap?"
-msgstr ""
+msgstr "Alt servis hızlı geçişinden çıkmak istiyor musunuz?"
 
 msgid "Really reboot now?"
 msgstr "Yeniden başlatılmasını istiyor musunuz?"
@@ -2256,13 +2351,13 @@ msgid "Recording"
 msgstr "Kaydediliyor"
 
 msgid "Recording(s) are in progress or coming up in few seconds!"
-msgstr ""
+msgstr "Kayıt işlemi devam ediyor veya birkaç saniye içinde başlayacak!"
 
 msgid "Recordings always have priority"
 msgstr "Kayıt işlemine öncelik ver"
 
 msgid "Reenter new pin"
-msgstr "Yeni şifreyi yeniden girin"
+msgstr "Yeni şifreyi tekrar girin"
 
 msgid "Refresh Rate"
 msgstr "Yenileme Hızı"
@@ -2271,13 +2366,13 @@ msgid "Refresh rate selection."
 msgstr "Tazeleme hızı seçimi."
 
 msgid "Remounting stick partition..."
-msgstr "USB çubuk bölümü (partition) yeniden yapılandırılıyor..."
+msgstr "USB bellek bölümlendirmesi (partition) yeniden yapılandırılıyor..."
 
 msgid "Remove Bookmark"
 msgstr "Yer imini Sil"
 
 msgid "Remove Plugins"
-msgstr "Program Kaldır"
+msgstr "Eklenti Kaldır"
 
 msgid "Remove a mark"
 msgstr "İşaret Kaldır"
@@ -2286,7 +2381,7 @@ msgid "Remove currently selected title"
 msgstr "Seçilen geçerli başlığı sil"
 
 msgid "Remove plugins"
-msgstr "Programları kaldır"
+msgstr "Eklentileri kaldır"
 
 msgid "Remove the broken .NFI file?"
 msgstr "Bozuk .NFI dosyası silinsin mi?"
@@ -2315,11 +2410,14 @@ msgstr ""
 "Tekrarlama görevi verilmiş kayıt işlemi yapılıyor. Ne yapmak istersiniz?"
 
 msgid "Repeats"
-msgstr "Tekrarlama aralığı"
+msgstr "Tekrarlama sıklığı"
 
 msgid "Reset"
 msgstr "Sıfırla"
 
+msgid "Reset and renumerate title names"
+msgstr "Başlık ve adları sıfırla ve yeniden numarala"
+
 msgid "Resolution"
 msgstr "Çözünürlük"
 
@@ -2339,7 +2437,7 @@ msgid "Restart test"
 msgstr "Test'i yenile"
 
 msgid "Restart your network connection and interfaces.\n"
-msgstr "Ağ bağlantısını ve ağ arayüzlerini yeniden başlat.\n"
+msgstr "Ağ bağlantısını ve ağ arayüzlerini yeniden başlatın.\n"
 
 msgid "Restore"
 msgstr "Geri yükle"
@@ -2380,16 +2478,16 @@ msgid "Right"
 msgstr "Sağ"
 
 msgid "Rolloff"
-msgstr ""
+msgstr "Rolloff"
 
 msgid "Rotor turning speed"
-msgstr "Motor dönüş devri"
+msgstr "Motor dönüş hızı"
 
 msgid "Running"
 msgstr "Çalıştırılıyor"
 
 msgid "Russian"
-msgstr "Russian"
+msgstr "Rusça"
 
 msgid "S-Video"
 msgstr "S-Video"
@@ -2434,70 +2532,70 @@ msgid "Scaling Mode"
 msgstr "Ölçeklendirme Modu"
 
 msgid "Scan "
-msgstr "Tara"
+msgstr "Ara"
 
 msgid "Scan QAM128"
-msgstr "QAM128'i tara"
+msgstr "QAM128'i ara"
 
 msgid "Scan QAM16"
-msgstr "QAM16'yı tara"
+msgstr "QAM16'yı ara"
 
 msgid "Scan QAM256"
-msgstr "QAM256'yı tara"
+msgstr "QAM256'yı ara"
 
 msgid "Scan QAM32"
-msgstr "QAM32'yi tara"
+msgstr "QAM32'yi ara"
 
 msgid "Scan QAM64"
-msgstr "QAM64'ü tara"
+msgstr "QAM64'ü ara"
 
 msgid "Scan SR6875"
-msgstr "SR6875'i tara"
+msgstr "SR6875'i ara"
 
 msgid "Scan SR6900"
-msgstr "SR6900'ü tara"
+msgstr "SR6900'ü ara"
 
 msgid "Scan Wireless Networks"
 msgstr "Kablosuz Ağları Ara"
 
 msgid "Scan additional SR"
-msgstr ""
+msgstr "Eklenen SR'leri ara"
 
 msgid "Scan band EU HYPER"
-msgstr "EU HYPER bantını tara"
+msgstr "EU HYPER bantını ara"
 
 msgid "Scan band EU MID"
-msgstr "EU MID bantını tara"
+msgstr "EU MID bantını ara"
 
 msgid "Scan band EU SUPER"
-msgstr "EU SUPER bantını tara"
+msgstr "EU SUPER bantını ara"
 
 msgid "Scan band EU UHF IV"
-msgstr "EU UHF IV bantını tara"
+msgstr "EU UHF IV bantını ara"
 
 msgid "Scan band EU UHF V"
-msgstr "EU UHF V bantını tara"
+msgstr "EU UHF V bantını ara"
 
 msgid "Scan band EU VHF I"
-msgstr "EU VHF I bantını tara"
+msgstr "EU VHF I bantını ara"
 
 msgid "Scan band EU VHF III"
-msgstr "EU VHF III bantını tara"
+msgstr "EU VHF III bantını ara"
 
 msgid "Scan band US HIGH"
-msgstr "US HIGH bantını tara"
+msgstr "US HIGH bantını ara"
 
 msgid "Scan band US HYPER"
-msgstr "US HYPER bantını tara"
+msgstr "US HYPER bantını ara"
 
 msgid "Scan band US LOW"
-msgstr "US LOW bantını tara"
+msgstr "US LOW bantını ara"
 
 msgid "Scan band US MID"
-msgstr "US MID bantını tara"
+msgstr "US MID bantını ara"
 
 msgid "Scan band US SUPER"
-msgstr "US SUPER bantını tara"
+msgstr "US SUPER bantını ara"
 
 msgid ""
 "Scan your network for wireless Access Points and connect to them using your "
@@ -2508,6 +2606,8 @@ msgstr ""
 msgid ""
 "Scans default lamedbs sorted by satellite with a connected dish positioner"
 msgstr ""
+"Bağlı pozisyoner üzerinden varsayılan lamedb dosyasıyla uydu sıralı arama "
+"yapar"
 
 msgid "Search east"
 msgstr "Doğu'yu ara"
@@ -2534,7 +2634,7 @@ msgid "Select a movie"
 msgstr "Bir film seçin"
 
 msgid "Select audio mode"
-msgstr "Ses modunu seç"
+msgstr "Ses kanalını seçin"
 
 msgid "Select audio track"
 msgstr "Kullanmak istediğiniz ses izini seçin"
@@ -2555,10 +2655,16 @@ msgid "Select video mode"
 msgstr "Görüntü modunu seç"
 
 msgid "Selected source image"
-msgstr ""
+msgstr "Seçilen kaynak imaj"
+
+msgid "Send DiSEqC"
+msgstr "DiSEqC komutu gönder"
+
+msgid "Send DiSEqC only on satellite change"
+msgstr "DiSEqC komutunu yalnızca uydu değiştiğinde gönder"
 
 msgid "Seperate titles with a main menu"
-msgstr ""
+msgstr "Ana menü ile başlıkları ayır"
 
 msgid "Sequence repeat"
 msgstr "Sıralama tekrarı"
@@ -2608,9 +2714,15 @@ msgstr "Kanal bilgisi"
 msgid "Services"
 msgstr "Kanallar"
 
+msgid "Set Voltage and 22KHz"
+msgstr "Voltaj ve 22KHz ayarla"
+
 msgid "Set as default Interface"
 msgstr "Varsayılan arayüz olarak ayarla"
 
+msgid "Set interface as default Interface"
+msgstr "Arayüzü varsayılan arayüz olarak ata"
+
 msgid "Set limits"
 msgstr "Limitleri belirle"
 
@@ -2630,13 +2742,13 @@ msgid "Show WLAN Status"
 msgstr "WLAN Durumunu Göster"
 
 msgid "Show blinking clock in display during recording"
-msgstr ""
+msgstr "Ekran üzerindeki saat, kayıt esnasında yanıp sönsün"
 
 msgid "Show infobar on channel change"
 msgstr "Kanal değiştirildiğinde bilgi çubuğunu göster"
 
 msgid "Show infobar on event change"
-msgstr "EPG programı değişikliklerinde bilgi barını göster"
+msgstr "EPG programı değişikliklerinde bilgi çubuğunu göster"
 
 msgid "Show infobar on skip forward/backward"
 msgstr "İleri/geri sardırma yapıldığında bilgi çubuğunu göster"
@@ -2645,7 +2757,7 @@ msgid "Show positioner movement"
 msgstr "Pozisyoner haraketini göster"
 
 msgid "Show services beginning with"
-msgstr ""
+msgstr "Cihaz açılırken bu kanalla başla"
 
 msgid "Show the radio player..."
 msgstr "Radyo oynatıcıyı göster..."
@@ -2654,10 +2766,10 @@ msgid "Show the tv player..."
 msgstr "TV oynatıcıyı göster..."
 
 msgid "Shows the state of your wireless LAN connection.\n"
-msgstr "Kablosuz Ağ bağlantı durumunu göster.\n"
+msgstr "Kablosuz ağ bağlantısı durumunu gösterir.\n"
 
 msgid "Shutdown Dreambox after"
-msgstr ""
+msgstr "sonrasında Dreambox'ı kapat."
 
 msgid "Similar"
 msgstr "Benzer"
@@ -2668,8 +2780,11 @@ msgstr "Benzer yayınlar:"
 msgid "Simple"
 msgstr "Basit"
 
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr "Basit başlıkseti (klasik oynatıcılarla uyumlu)"
+
 msgid "Single"
-msgstr "Tek"
+msgstr "Tekli"
 
 msgid "Single EPG"
 msgstr "Tekli EPG"
@@ -2681,7 +2796,7 @@ msgid "Single transponder"
 msgstr "Tek transponder"
 
 msgid "Singlestep (GOP)"
-msgstr ""
+msgstr "Tekadım (GOP)"
 
 msgid "Skin..."
 msgstr "Arayüz..."
@@ -2706,10 +2821,10 @@ msgid "Slow Motion speeds"
 msgstr "Ağır Çekim hızları"
 
 msgid "Some plugins are not available:\n"
-msgstr "Programların bazıları kullanılamaz:\n"
+msgstr "Eklentilerin bazıları kullanılamaz:\n"
 
 msgid "Somewhere else"
-msgstr ""
+msgstr "Başka bir yere"
 
 msgid ""
 "Sorry your Backup destination does not exist\n"
@@ -2732,13 +2847,13 @@ msgid "Sound"
 msgstr "Ses"
 
 msgid "Soundcarrier"
-msgstr ""
+msgstr "Ses taşıyıcı"
 
 msgid "South"
 msgstr "Güney"
 
 msgid "Spanish"
-msgstr "Spanish"
+msgstr "İspanyolca"
 
 msgid "Standby"
 msgstr "Uyku modu"
@@ -2777,13 +2892,13 @@ msgid "Stop"
 msgstr "Durdur"
 
 msgid "Stop Timeshift?"
-msgstr "Timeshift i durdur?"
+msgstr "Zaman bükmeyi (timeshift) durdur?"
 
 msgid "Stop current event and disable coming events"
-msgstr ""
+msgstr "Geçerli ve gelecek zamanlanmış eylemleri devre dışı bırak"
 
 msgid "Stop current event but not coming events"
-msgstr ""
+msgstr "Geçerli zamanlanmış eylemi devre dışı bırak, sonrakilere dokunma"
 
 msgid "Stop playing this movie?"
 msgstr "Filmi durdurmak istiyor musunuz?"
@@ -2798,10 +2913,10 @@ msgid "Stored position"
 msgstr "Kaydedilen pozisyonlar"
 
 msgid "Subservice list..."
-msgstr ""
+msgstr "Alt servis listesi"
 
 msgid "Subservices"
-msgstr ""
+msgstr "Alt servisler"
 
 msgid "Subtitle selection"
 msgstr "Altyazı seçimi"
@@ -2816,16 +2931,16 @@ msgid "Sunday"
 msgstr "Pazar"
 
 msgid "Swap Services"
-msgstr ""
+msgstr "Ana <-> PiP yer değiştir"
 
 msgid "Swedish"
-msgstr "Swedish"
+msgstr "İsveççe"
 
 msgid "Switch to next subservice"
-msgstr ""
+msgstr "Sonraki alt servise geç"
 
 msgid "Switch to previous subservice"
-msgstr ""
+msgstr "Önceki alt servise geç"
 
 msgid "Symbol Rate"
 msgstr "Sembol Oranı"
@@ -2841,7 +2956,7 @@ msgid "TRANSLATOR_INFO"
 msgstr "ÇEVİRMEN HAKKINDA"
 
 msgid "TS file is too large for ISO9660 level 1!"
-msgstr ""
+msgstr "TS dosyası ISO9660 level 1 standartları için çok büyük!"
 
 msgid "TV System"
 msgstr "TV Sistemi"
@@ -2868,6 +2983,9 @@ msgid ""
 "Thank you for using the wizard. Your box is now ready to use.\n"
 "Please press OK to start using your Dreambox."
 msgstr ""
+"Sihirbazı kullandığınız için teşekkür ederiz. Dreambox'ınız kullanıma "
+"hazır.\n"
+"Dreambox'ınızı kullanmaya başlamak için OK tuşuna basın."
 
 msgid ""
 "The .NFI Image flasher USB stick is now ready to use. Please download an ."
@@ -2875,6 +2993,10 @@ msgid ""
 "and hold the 'Down' key on the front panel to boot the .NFI flasher from the "
 "stick!"
 msgstr ""
+".NFI İmaj flaşlayıcı USB bellek kullanıma hazır. Lütfen .NFI imaj dosyasını "
+"sunucudan çekin ve belleğe kaydedin. Ardından önyüklemenin USB bellekten "
+"yapılabilmesi için cihazı yeniden açarken, ön panelde bulunan 'Down' tuşuna "
+"basılı tutun!"
 
 msgid ""
 "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to "
@@ -2896,6 +3018,11 @@ msgid ""
 "\n"
 "Do you want to write the USB flasher to this stick?"
 msgstr ""
+"Aşağıdaki aygıt bulundu:\n"
+"\n"
+"%s\n"
+"\n"
+"USB flaşlayıcıyı bu USB belleğe yazmak istiyor musunuz?"
 
 msgid ""
 "The input port should be configured now.\n"
@@ -2907,7 +3034,7 @@ msgstr ""
 "ayarlayabilirsiniz. Bunu şimdi yapmak istiyor musunuz?"
 
 msgid "The installation of the default services lists is finished."
-msgstr "Öntanımlı kanal listesi kurulumu tamamlandı."
+msgstr "Varsayılan kanal listesi kurulumu tamamlandı."
 
 msgid ""
 "The installation of the default settings is finished. You can now continue "
@@ -2960,7 +3087,7 @@ msgid ""
 "The wireless LAN plugin is not installed!\n"
 "Please install it."
 msgstr ""
-"Kablosuz ağ (WLAN) programı yüklenmemiş!\n"
+"Kablosuz ağ (WLAN) eklentisi yüklenmemiş!\n"
 "Lütfen yükleyin."
 
 msgid ""
@@ -2973,7 +3100,7 @@ msgid "The wizard is finished now."
 msgstr "Sihirbaz tamamlandı."
 
 msgid "There are no default services lists in your image."
-msgstr "Kurulu imajda kayıtlı öntanımlı kanal listesi yok."
+msgstr "Kurulu imajda kayıtlı, varsayılan kanal listesi yok."
 
 msgid "There are no default settings in your image."
 msgstr "Kurulu imajda kayıtlı varsayılan ayar yok."
@@ -3067,7 +3194,7 @@ msgid ""
 "If you get an \"enabeld\" message:\n"
 "-verify that you have a configured and working DHCP Server in your network."
 msgstr ""
-"Bu işlem ağ bağlantınızın IP adresini DHCP servisinden alıp almadığını test "
+"Bu işlem ağ donanımınızın, IP adresini DHCP servisinden alıp almadığını test "
 "eder.\n"
 "Eğer \"devre dışı\" mesajı alıyorsanız:\n"
 "- Yerel ağ donanım yapılandırmanızda IP adresini elle girmiş olabilirsiniz.\n"
@@ -3123,7 +3250,7 @@ msgstr ""
 "Lütfen tekrar kontrol edin!"
 
 msgid "Timer sanity error"
-msgstr ""
+msgstr "Zamanlayıcı mantık hatası"
 
 msgid "Timer selection"
 msgstr "Zamanlayıcı seçimi"
@@ -3132,10 +3259,10 @@ msgid "Timer status:"
 msgstr "Zamanlayıcı durumu:"
 
 msgid "Timeshift"
-msgstr "Timeshift"
+msgstr "Zamanı bük (Timeshift)"
 
 msgid "Timeshift not possible!"
-msgstr "Timeshift kullanılamaz!"
+msgstr "Zaman bükme kullanılamaz!"
 
 msgid "Timezone"
 msgstr "Zaman dilimi"
@@ -3143,13 +3270,22 @@ msgstr "Zaman dilimi"
 msgid "Title"
 msgstr "Başlık"
 
+msgid "Title properties"
+msgstr "Başlık özellikleri"
+
 msgid "Title:"
 msgstr "Başlık:"
 
+msgid "Titleset mode"
+msgstr "Başlıkseti kipi"
+
 msgid ""
 "To make sure you intend to do this, please remove the target USB stick now "
 "and stick it back in upon prompt. Press OK when you have taken the stick out."
 msgstr ""
+"Bunu yapmak istediğinizden eminseniz, lütfen hedef USB çubuğu yerinden "
+"çıkarın ve istenildiğinde tekrar takın. USB çubuğu çıkardıysanız lütfen OK "
+"tuşuna basın."
 
 msgid "Today"
 msgstr "Bugün"
@@ -3185,13 +3321,15 @@ msgid "Transponder Type"
 msgstr "Transponder Tipi"
 
 msgid "Tries left:"
-msgstr ""
+msgstr "Denendi:"
 
 msgid "Try to find used Transponders in cable network.. please wait..."
 msgstr ""
+"Kullanılan Transponderlar kablolu yayın ağında aranıyor.. lütfen bekleyin..."
 
 msgid "Try to find used transponders in cable network.. please wait..."
 msgstr ""
+"Kullanılan transponderlar kablolu yayın ağında aranıyor.. lütfen bekleyin..."
 
 msgid "Tue"
 msgstr "Salı"
@@ -3230,13 +3368,16 @@ msgid "Type of scan"
 msgstr "Tarama tipi"
 
 msgid "USALS"
-msgstr "USALS (Uluslararası Otomatik Uydu Konumlandırma Sistemi)"
+msgstr "DiSEqC 1.3 (USALS) (Uluslararası Oto. Uydu Kon. Sist)"
 
 msgid "USB"
 msgstr "USB"
 
 msgid "USB Stick"
-msgstr "USB Çubuk (stick)"
+msgstr "USB Bellek"
+
+msgid "Ukrainian"
+msgstr ""
 
 msgid ""
 "Unable to complete filesystem check.\n"
@@ -3257,7 +3398,7 @@ msgid "Universal LNB"
 msgstr "Üniversal LNB"
 
 msgid "Unmount failed"
-msgstr ""
+msgstr "Depolama aygıtı çözme işlemi (unmount) başarısız"
 
 msgid "Update"
 msgstr "Güncelle"
@@ -3282,6 +3423,9 @@ msgstr "Güncelleniyor"
 msgid "Upgrading Dreambox... Please wait"
 msgstr "Dreambox güncelleniyor... Lütfen bekleyin"
 
+msgid "Use"
+msgstr ""
+
 msgid "Use DHCP"
 msgstr "DHCP Kullan"
 
@@ -3289,7 +3433,7 @@ msgid "Use Interface"
 msgstr "Arayüzü Kullan"
 
 msgid "Use Power Measurement"
-msgstr "Enerji Ölçümünü Kullan"
+msgstr "Güç Ölçümünü Kullan"
 
 msgid "Use a gateway"
 msgstr "Ağ geçidi kullan"
@@ -3307,10 +3451,10 @@ msgstr "Ağ geçidi kullan"
 #.       better suited for translation to other languages may be "stepwise
 #.       winding/playback", or "winding/playback using stills". 
 msgid "Use non-smooth winding at speeds above"
-msgstr ""
+msgstr "Adım adım ilerletmeyi bu hızda kullan"
 
 msgid "Use power measurement"
-msgstr "Eneji kullanımını ölç"
+msgstr "Güç kullanımını ölç"
 
 msgid "Use the Networkwizard to configure your Network\n"
 msgstr "Ağınızı yapılandırmak için Ağ sihirbazını kullanın\n"
@@ -3320,9 +3464,9 @@ msgid ""
 "\n"
 "Please set up tuner A"
 msgstr ""
-"Seçenekleri değiştirmek için Sol ve sağ tuşlarını kullanın.\n"
+"Seçenekleri değiştirmek için sol ve sağ tuşlarını kullanın.\n"
 "\n"
-"Lütfen tuner A'yi ayarlayın"
+"Lütfen tuner A'yi yapılandırın"
 
 msgid ""
 "Use the up/down keys on your remote control to select an option. After that, "
@@ -3332,7 +3476,7 @@ msgstr ""
 "OK tuşunu kullanın."
 
 msgid "Use usals for this sat"
-msgstr ""
+msgstr "Bu uydu için DiSEqC 1.3 (USALS) kullan."
 
 msgid "Use wizard to set up basic features"
 msgstr "Basit kurulum sihirbazını kullan."
@@ -3347,7 +3491,7 @@ msgid "VCR scart"
 msgstr "VCR scart"
 
 msgid "VMGM (intro trailer)"
-msgstr ""
+msgstr "VMGM (tanıtım filmi)"
 
 msgid "Video Fine-Tuning"
 msgstr "Görüntü İnce Ayarı"
@@ -3383,10 +3527,13 @@ msgid "Video mode selection."
 msgstr "Görüntü modu seçimi."
 
 msgid "View Rass interactive..."
-msgstr ""
+msgstr "Etkileşimli Rass'ı (Radio acoustic sounding system) göster"
 
 msgid "View teletext..."
-msgstr "Teleteksi gör..."
+msgstr "Teletekse bak..."
+
+msgid "Virtual KeyBoard"
+msgstr "Sanal Klavye"
 
 msgid "Voltage mode"
 msgstr "Voltaj modu"
@@ -3403,6 +3550,9 @@ msgstr "WEP"
 msgid "WPA"
 msgstr "WPA"
 
+msgid "WPA or WPA2"
+msgstr "WPA veya WPA2"
+
 msgid "WPA2"
 msgstr "WPA2"
 
@@ -3442,6 +3592,13 @@ msgid ""
 "\n"
 "Then seek to the end, press OK, select 'end cut'. That's it."
 msgstr ""
+"Kesim listesi düzenleyiciye hoşgeldiniz.\n"
+"\n"
+"Kesmek istediğiniz bölümün başına konumlanın. OK tuşuna basın ve 'buradan "
+"kes' deyin.\n"
+"\n"
+"Sonrasında kesmek istediğiniz bölümün sonuna konumlanın. Tekrar OK tuşuna "
+"basın ve 'kesimi burada bitir' deyin."
 
 msgid ""
 "Welcome to the Image upgrade wizard. The wizard will assist you in upgrading "
@@ -3471,7 +3628,7 @@ msgid "West"
 msgstr "Batı"
 
 msgid "What do you want to scan?"
-msgstr ""
+msgstr "Neleri aramak istiyorsunuz?"
 
 msgid "Where do you want to backup your settings?"
 msgstr "Ayarlarınızın yedeğini nereye almak istiyorsunuz?"
@@ -3504,7 +3661,7 @@ msgid "Yes"
 msgstr "Evet"
 
 msgid "Yes, and delete this movie"
-msgstr ""
+msgstr "Evet, ve bu filmi sil"
 
 msgid "Yes, backup my settings!"
 msgstr "Evet, ayarlarımın yedeğini al!"
@@ -3544,7 +3701,7 @@ msgid "You cannot delete this!"
 msgstr "Bunu silemezsiniz!"
 
 msgid "You chose not to install any default services lists."
-msgstr "Öntanımlı kanal listesi seçmediniz."
+msgstr "Varsayılan kanal listesi seçmediniz."
 
 msgid ""
 "You chose not to install any default settings. You can however install the "
@@ -3564,6 +3721,8 @@ msgid ""
 "You do not seem to have a harddisk in your Dreambox. So backing up to a "
 "harddisk is not an option for you."
 msgstr ""
+"Dreambox'a bağlı bir sabit disk görünmüyor. Bu işlem için sabit diski "
+"kullanma opsiyonunuz bulunmamaktadır."
 
 msgid ""
 "You have chosen to backup to a compact flash card. The card must be in the "
@@ -3571,11 +3730,17 @@ msgid ""
 "to the harddisk!\n"
 "Please press OK to start the backup now."
 msgstr ""
+"Ayarlarınızın yedeğini CF (compact flash) karta almayı seçtiniz. Kart, "
+"yuvasına takılmış olmalıdır. Sabit diske yedek almak daha güvenlidir!\n"
+"Yedeklemeyi başlatmak için OK tuşuna basın."
 
 msgid ""
 "You have chosen to backup to an usb drive. Better backup to the harddisk!\n"
 "Please press OK to start the backup now."
 msgstr ""
+"Ayarlarınızın yedeğini USB sürücüye almayı seçtiniz. Sabit diske yedek almak "
+"daha güvenlidir!\n"
+"Yedeklemeyi başlatmak için OK tuşuna basın."
 
 msgid ""
 "You have chosen to backup to your harddisk. Please press OK to start the "
@@ -3588,10 +3753,13 @@ msgid ""
 "You have chosen to create a new .NFI flasher bootable USB stick. This will "
 "repartition the USB stick and therefore all data on it will be erased."
 msgstr ""
+"Önyükleme yapabilir .NFI flaşlayıcı USB bellek oluşturmayı seçtiniz. Bu "
+"işlem USB belleğin yeniden bölümlendirmesini gerektirdiğinden içeriğindeki "
+"tüm veriler silinecektir."
 
 #, python-format
 msgid "You have to wait %s!"
-msgstr ""
+msgstr "Bekleme süresi : %s!"
 
 msgid ""
 "You need a PC connected to your dreambox. If you need further instructions, "
@@ -3600,6 +3768,11 @@ msgid ""
 "instructions from the website, your new firmware will ask you to restore "
 "your settings."
 msgstr ""
+"Dreambox'ınızın PC bağlantısına ihtiyacı var. Eğer daha fazla açıklamaya "
+"ihtiyacınız varsa, lütfen http://www.dm7025.de adresini ziyaret edin.\n"
+"Şimdi Dreambox'ınız kapatlıyor. Web sitesinde belirtilen güncelleme "
+"talimatlarını yerine getirdikten sonra, yeni cihaz yazılımı ayarlarınızı "
+"geri yüklemek isteyip istemediğiniz sorusunu soracaktır."
 
 msgid ""
 "You need to define some keywords first!\n"
@@ -3621,7 +3794,7 @@ msgstr ""
 
 msgid "Your Dreambox will restart after pressing OK on your remote control."
 msgstr ""
-"Kumandanızda OK tuşuna bastıktan sonra Dreambox'unuz yeniden başlatılacak."
+"Kumandanızda OK tuşuna bastıktan sonra Dreambox'ınız yeniden başlatılacak."
 
 msgid "Your TV works with 50 Hz. Good!"
 msgstr "Televizyonunuz 50Hz destekliyor. Güzel!"
@@ -3638,12 +3811,28 @@ msgid ""
 "Your dreambox isn't connected to the internet properly. Please check it and "
 "try again."
 msgstr ""
-"Dreambox'unuz internete bağlı değil. Kontrol ettikten sonra tekrar deneyin."
+"Dreambox'ınız internete bağlı değil. Kontrol ettikten sonra tekrar deneyin."
 
 msgid ""
 "Your frontprocessor firmware must be upgraded.\n"
 "Press OK to start upgrade."
 msgstr ""
+"Frontprocessor aygıt yazılımının güncellenmesi gerekiyor.\n"
+"Güncellemeye başlamak için OK tuşuna basın."
+
+msgid "Your network configuration has been activated."
+msgstr "Ağ yapılandırmanız etkinleştirildi."
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+"Ağ yapılandırmanız etkinleştirildi.\n"
+"Yapılandırılmış ikinci bir arayüz bulundu.\n"
+"\n"
+"İkinci ağ arayüzünüzü devre dışı bırakmak istiyor musunuz?"
 
 msgid "Zap back to service before positioner setup?"
 msgstr ""
@@ -3676,7 +3865,13 @@ msgid "abort favourites edit"
 msgstr "favori düzenlemekten vazgeç"
 
 msgid "about to start"
-msgstr ""
+msgstr "başlamak üzere"
+
+msgid "activate current configuration"
+msgstr "geçerli yapılandırmayı aktif et"
+
+msgid "add a nameserver entry"
+msgstr "isim sunucu kaydı ekle"
 
 msgid "add alternatives"
 msgstr "alternatiflere ekle"
@@ -3733,6 +3928,14 @@ msgstr ""
 "Belirtilen yedeği geri yüklemek\n"
 "istediğinizden emin misiniz?:\n"
 
+#, python-format
+msgid "audio track (%s) format"
+msgstr "(%s) ses izi biçimi"
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr "(%s) ses izi dili"
+
 msgid "audio tracks"
 msgstr "ses izleri"
 
@@ -3748,8 +3951,12 @@ msgstr "daha iyi"
 msgid "blacklist"
 msgstr "kara liste"
 
+#, python-format
+msgid "burn audio track (%s)"
+msgstr "(%s) ses izini yaz"
+
 msgid "by Exif"
-msgstr ""
+msgstr "Exif'ten al"
 
 msgid "change recording (duration)"
 msgstr "kaydı değiştir (süre)"
@@ -3802,12 +4009,12 @@ msgstr "günlük"
 msgid "day"
 msgstr "gün"
 
-msgid "delete"
-msgstr "sil"
-
 msgid "delete cut"
 msgstr "kesimi sil"
 
+msgid "delete file"
+msgstr ""
+
 msgid "delete playlist entry"
 msgstr "seçilen oynatma listesini sil"
 
@@ -3874,6 +4081,9 @@ msgstr "kesimi burada bitir"
 msgid "end favourites edit"
 msgstr "favori düzenlemeyi bitir"
 
+msgid "enigma2 and network"
+msgstr "enigma2 ve ağ"
+
 msgid "equal to"
 msgstr "eşittir"
 
@@ -3889,6 +4099,21 @@ msgstr "ortam oynatıcıdan çık"
 msgid "exit movielist"
 msgstr "film listesinden çık"
 
+msgid "exit nameserver configuration"
+msgstr "isim sunucu yapılandırmasından çık"
+
+msgid "exit network adapter configuration"
+msgstr "ağ donanımı yapılandırmasından çık"
+
+msgid "exit network adapter setup menu"
+msgstr "ağ donanımı kurulum menüsünden çık"
+
+msgid "exit network interface list"
+msgstr "ağ arayüzleri listesinden çık"
+
+msgid "exit networkadapter setup menu"
+msgstr "ağ donanımı kurulum menüsünden çık"
+
 msgid "failed"
 msgstr "başarısız"
 
@@ -3925,6 +4150,9 @@ msgstr "radyo dinle..."
 msgid "help..."
 msgstr "yardım..."
 
+msgid "hidden network"
+msgstr "gizlenmiş ağ"
+
 msgid "hide extended description"
 msgstr "genişletilmiş açıklamayı gizle"
 
@@ -3932,7 +4160,7 @@ msgid "hide player"
 msgstr "oynatıcıyı gizle"
 
 msgid "highlighted button"
-msgstr ""
+msgstr "belirtilmiş tuş"
 
 msgid "horizontal"
 msgstr "yatay (h)"
@@ -3955,7 +4183,7 @@ msgstr ""
 "%s sizi arıyor %s!"
 
 msgid "init module"
-msgstr ""
+msgstr "modülü başlat"
 
 msgid "insert mark here"
 msgstr "buraya işaret koy"
@@ -3994,7 +4222,7 @@ msgid "list style compact with description"
 msgstr "Kompakt ve açıklamalı liste biçimi"
 
 msgid "list style default"
-msgstr "Öntanımlı liste biçimi"
+msgstr "Varsayılan liste biçimi"
 
 msgid "list style single line"
 msgstr "Tek satır halinde liste biçimi"
@@ -4006,7 +4234,7 @@ msgid "locked"
 msgstr "kilitli"
 
 msgid "loopthrough to"
-msgstr ""
+msgstr "üzerinden bağla"
 
 msgid "manual"
 msgstr "elle"
@@ -4032,11 +4260,23 @@ msgstr "ay"
 msgid "move PiP to main picture"
 msgstr "PiP'i ana ekrana taşı"
 
+msgid "move down to last entry"
+msgstr "en sona taşı"
+
+msgid "move down to next entry"
+msgstr "bir alta taşı"
+
+msgid "move up to first entry"
+msgstr "en üste taşı"
+
+msgid "move up to previous entry"
+msgstr "bir üste taşı"
+
 msgid "movie list"
 msgstr "film listesi"
 
 msgid "multinorm"
-msgstr ""
+msgstr "PAL/NTSC"
 
 msgid "never"
 msgstr "hiç"
@@ -4057,13 +4297,13 @@ msgid "no Picture found"
 msgstr "Resim/fotoğraf bulunamadı"
 
 msgid "no module found"
-msgstr "modüş bulunamadı"
+msgstr "modül bulunamadı"
 
 msgid "no standby"
-msgstr ""
+msgstr "uyku moduna geçilmesin"
 
 msgid "no timeout"
-msgstr ""
+msgstr "zaman aşımı kullanılmasın"
 
 msgid "none"
 msgstr "yok"
@@ -4075,10 +4315,10 @@ msgid "nothing connected"
 msgstr "bağlı değil"
 
 msgid "of a DUAL layer medium used."
-msgstr ""
+msgstr "ÇİFT katmanlı medya kullanıldığında."
 
 msgid "of a SINGLE layer medium used."
-msgstr ""
+msgstr "TEK katmanlı medya kullanıldığında"
 
 msgid "off"
 msgstr "kapalı"
@@ -4092,8 +4332,8 @@ msgstr "yalnızca okunabilir (READ ONLY) medya"
 msgid "once"
 msgstr "birkez"
 
-msgid "only /etc/enigma2 directory"
-msgstr "yalnızca /etc/enigma2 klasörü"
+msgid "open nameserver configuration"
+msgstr "isim sunucu yapılandırmasını aç"
 
 msgid "open servicelist"
 msgstr "kanal listesini aç"
@@ -4104,6 +4344,9 @@ msgstr "kanal listesini aç (aşağı)"
 msgid "open servicelist(up)"
 msgstr "kanal listesini aç (yukarı)"
 
+msgid "open virtual keyboard input help"
+msgstr "sanal klayve girişi yardımını aç"
+
 msgid "pass"
 msgstr "geç"
 
@@ -4114,10 +4357,10 @@ msgid "play entry"
 msgstr "seçimi oynat"
 
 msgid "play from next mark or playlist entry"
-msgstr ""
+msgstr "sonraki işaretten veya oynatma listesinden oynat"
 
 msgid "play from previous mark or playlist entry"
-msgstr ""
+msgstr "önceki işaretten veya oynatma listesinden oynat"
 
 msgid "please press OK when ready"
 msgstr "Lütfen hazır olduğunuzda OK' a basın"
@@ -4140,6 +4383,9 @@ msgstr "kayıt"
 msgid "recording..."
 msgstr "kaydediliyor..."
 
+msgid "remove a nameserver entry"
+msgstr "isim sunucusu kaydı silin"
+
 msgid "remove after this position"
 msgstr "bu noktadan sonrasını kaldır"
 
@@ -4185,9 +4431,15 @@ msgstr "önceki bölüme geri git"
 msgid "right"
 msgstr "sağ"
 
+msgid "save last directory on exit"
+msgstr ""
+
 msgid "save playlist"
 msgstr "oynatma listesini kaydet"
 
+msgid "save playlist on exit"
+msgstr ""
+
 msgid "scan done!"
 msgstr "arama tamamlandı!"
 
@@ -4202,7 +4454,7 @@ msgid "second"
 msgstr "saniye"
 
 msgid "second cable of motorized LNB"
-msgstr ""
+msgstr "Motorlu LNB'nin ikinci kablosu"
 
 msgid "seconds"
 msgstr "saniye"
@@ -4216,11 +4468,17 @@ msgstr ".NFI flaş dosyası seçin"
 msgid "select image from server"
 msgstr "imajı sunucudan seç"
 
+msgid "select interface"
+msgstr "arayüzü seçin"
+
+msgid "select menu entry"
+msgstr "menü girişini seçin"
+
 msgid "select movie"
 msgstr "film seç"
 
 msgid "select the movie path"
-msgstr ""
+msgstr "film yol adını seçin"
 
 msgid "service pin"
 msgstr "kanal şifresi"
@@ -4274,22 +4532,22 @@ msgid "simple"
 msgstr "basit"
 
 msgid "skip backward"
-msgstr ""
+msgstr "önceki kanala atla"
 
 msgid "skip backward (enter time)"
-msgstr ""
+msgstr "önceki kanala atla (zaman girin)"
 
 msgid "skip forward"
-msgstr ""
+msgstr "sonraki kanala atla"
 
 msgid "skip forward (enter time)"
-msgstr ""
+msgstr "sonraki kanala atla (zaman girin)"
 
 msgid "sort by date"
 msgstr "tarihe göre sırala"
 
 msgid "spaces (top, between rows, left)"
-msgstr ""
+msgstr "boşluklar (üst, satır arası, sol)"
 
 msgid "standard"
 msgstr "standart"
@@ -4300,8 +4558,11 @@ msgstr "uyku modu"
 msgid "start cut here"
 msgstr "buradan kes"
 
+msgid "start directory"
+msgstr ""
+
 msgid "start timeshift"
-msgstr "timeshift'i başlat"
+msgstr "zaman bükmeyi başlat"
 
 msgid "stereo"
 msgstr "stereo"
@@ -4316,7 +4577,7 @@ msgid "stop recording"
 msgstr "kaydır durdur"
 
 msgid "stop timeshift"
-msgstr "timeshift'i durdur"
+msgstr "zaman bükmeyi durdur"
 
 msgid "swap PiP and main picture"
 msgstr "PiP ile ana ekranın yerlerini değiştir"
@@ -4340,16 +4601,16 @@ msgid "text"
 msgstr "metin"
 
 msgid "this recording"
-msgstr ""
+msgstr "bu kaydın"
 
 msgid "this service is protected by a parental control pin"
 msgstr "bu kanal ebeveyn kontrol şifresiyle korunuyor"
 
 msgid "toggle a cut mark at the current position"
-msgstr ""
+msgstr "geçerli pozisyondaki kesme işaretini ekle/kaldır"
 
 msgid "toggle time, chapter, audio, subtitle info"
-msgstr ""
+msgstr "zaman, bölüm, ses, altyazı bilgisini aç/kapa"
 
 msgid "unconfirmed"
 msgstr "doğrulanamadı"
@@ -4388,7 +4649,7 @@ msgid "whitelist"
 msgstr "beyaz liste"
 
 msgid "year"
-msgstr ""
+msgstr "yıl"
 
 msgid "yes"
 msgstr "evet"
@@ -4400,6 +4661,8 @@ msgid ""
 "your dreambox might be unusable now. Please consult the manual for further "
 "assistance before rebooting your dreambox."
 msgstr ""
+"Dreambox'ınız şu an kullanılamaz durumda. Lütfen Dreambox'ınızı yeniden "
+"açmadan önce kullanım kılavuzundan yardım alın."
 
 msgid "zap"
 msgstr "kanal değiştir"
@@ -4433,6 +4696,9 @@ msgstr "kanal değiştirildi"
 #~ "Yerel ağı aktif etmek istediğinizden emin msiiniz?\n"
 #~ "\n"
 
+#~ msgid "Automatic SSID lookup"
+#~ msgstr "Otomatik SSID arama"
+
 #~ msgid "Configure your internal LAN"
 #~ msgstr "Yerel ağ ayarlarınızı yapılandırın"
 
@@ -4469,6 +4735,9 @@ msgstr "kanal değiştirildi"
 #~ msgid "DVD up key"
 #~ msgstr "DVD yukarı"
 
+#~ msgid "DiSEqC Mode"
+#~ msgstr "DiSEqC Modu"
+
 #~ msgid ""
 #~ "Do you really want to REMOVE\n"
 #~ "the plugin \""
@@ -4483,6 +4752,9 @@ msgstr "kanal değiştirildi"
 #~ "%s programını indirmek\n"
 #~ "istediğinizden emin misiniz? \""
 
+#~ msgid "Do you really want to exit?"
+#~ msgstr "Çıkmak istediğinizden emin misiniz?"
+
 #~ msgid "Enable LAN"
 #~ msgstr "LAN'ı Aç"
 
@@ -4496,10 +4768,22 @@ msgstr "kanal değiştirildi"
 #~ "Dreambox'un yerel ağ bağlantısını aç.\n"
 #~ "\n"
 
+#~ msgid "Enter WLAN networkname/SSID:"
+#~ msgstr "Kablosuz (WLAN) ağ adı/SSID girin:"
+
 #~ msgid "Exit wizard and configure later manually"
 #~ msgstr "Sihirbazdan çık ve ayarları daha sonra elle yap"
 
 #~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Çalışan yerel ağ donanımı bulunamadı.\n"
+#~ "Lütfen ağ kablonuzun bağlı olduğundan ve ağ ayarlarınızın doğru "
+#~ "yapılandırıldığından emin olun."
+
+#~ msgid ""
 #~ "No working wireless interface found.\n"
 #~ " Please verify that you have attached a compatible WLAN USB Stick or "
 #~ "enable you local network interface."
@@ -4508,6 +4792,33 @@ msgstr "kanal değiştirildi"
 #~ " Uyumlu WLAN USB donanımının takılı olduğundan emin olun veya yeral ağ "
 #~ "arayüzünü kullanın."
 
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "you local network interface."
+#~ msgstr ""
+#~ "Çalışan kablosuz ağ arayüzü bulunamadı.\n"
+#~ " Uyumlu WLAN USB donanımının takılı olduğundan emin olun veya yerel ağ "
+#~ "arayüzünü kullanın."
+
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "your local network interface."
+#~ msgstr ""
+#~ "Çalışan kablosuz ağ arayüzü bulunamadı.\n"
+#~ " Uyumlu WLAN USB donanımının takılı olduğundan emin olun veya yerel ağ "
+#~ "arayüzünü kullanın."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Çalışan kablosuz ağ donanımı bulunamadı.\n"
+#~ " Uyumlu WLAN USB donanımının takılı olduğundan emin olun ve ağ "
+#~ "ayarlarınızın doğru yapılandırıldığından emin olun."
+
 #~ msgid "No, let me choose default lists"
 #~ msgstr "Hayır, öntanımlı listeleri seçmeme izin ver"
 
@@ -4674,6 +4985,9 @@ msgstr "kanal değiştirildi"
 #~ "Kablosuz internet bağlantınız çalışmıyor!\n"
 #~ "Lütfen sonraki adımda ne yapmak istediğinizi seçiniz."
 
+#~ msgid "delete"
+#~ msgstr "sil"
+
 #~ msgid "equal to Socket A"
 #~ msgstr "Soket A'ya eşit"
 
@@ -4683,6 +4997,9 @@ msgstr "kanal değiştirildi"
 #~ msgid "minutes and"
 #~ msgstr "dakika ve"
 
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "yalnızca /etc/enigma2 klasörü"
+
 #~ msgid "scan done! %d services found!"
 #~ msgstr "kanal araması tamamlandı! %d kanal bulundu!"
 
diff --git a/po/uk.po b/po/uk.po
new file mode 100644 (file)
index 0000000..34a2998
--- /dev/null
+++ b/po/uk.po
@@ -0,0 +1,4863 @@
+# Ukrainian translations for tuxbox-enigma package.
+# Copyright (C) 2005 THE tuxbox-enigma'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the tuxbox-enigma package.
+# Automatically generated, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: tuxbox-enigma 0.0.1\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-11-16 23:21+0100\n"
+"PO-Revision-Date: 2008-09-28 14:03+0200\n"
+"Last-Translator: stepan_kv <stepan_kv@mail.ru>\n"
+"Language-Team: http://sat-ukraine.info/\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Poedit-Language: Ukrainian\n"
+"X-Poedit-Country: UKRAINE\n"
+"X-Poedit-SourceCharset: iso-8859-15\n"
+
+msgid " "
+msgstr ""
+
+msgid "#000000"
+msgstr ""
+
+msgid "#0064c7"
+msgstr ""
+
+msgid "#25062748"
+msgstr ""
+
+msgid "#389416"
+msgstr ""
+
+msgid "#80000000"
+msgstr ""
+
+msgid "#80ffffff"
+msgstr ""
+
+msgid "#bab329"
+msgstr ""
+
+msgid "#f23d21"
+msgstr ""
+
+msgid "#ffffff"
+msgstr ""
+
+msgid "#ffffffff"
+msgstr ""
+
+msgid "%H:%M"
+msgstr "%Г:%ХВ"
+
+#, python-format
+msgid "%d jobs are running in the background!"
+msgstr ""
+
+#, python-format
+msgid "%d min"
+msgstr "%d хвил."
+
+#, python-format
+msgid "%d services found!"
+msgstr "%d каналів знайдено!"
+
+msgid "%d.%B %Y"
+msgstr "%d.%B %Y"
+
+#, python-format
+msgid ""
+"%s\n"
+"(%s, %d MB free)"
+msgstr ""
+"%s\n"
+"(%s, %d MB вільно)"
+
+#, python-format
+msgid "%s (%s)\n"
+msgstr "%s (%s)\n"
+
+msgid "(ZAP)"
+msgstr "(Переключити)"
+
+msgid "(empty)"
+msgstr "(пусто)"
+
+msgid "(show optional DVD audio menu)"
+msgstr "(показати додаткове DVD аудіо меню)"
+
+msgid "* Only available if more than one interface is active."
+msgstr ""
+
+msgid "* Only available when entering hidden SSID or network key"
+msgstr ""
+
+msgid ".NFI Download failed:"
+msgstr ""
+
+msgid ".NFI Flasher bootable USB stick successfully created."
+msgstr ""
+
+msgid ""
+".NFI file passed md5sum signature check. You can safely flash this image!"
+msgstr ""
+
+msgid "/usr/share/enigma2 directory"
+msgstr "директорія /usr/share/enigma2"
+
+msgid "/var directory"
+msgstr "директорія /var"
+
+msgid "0"
+msgstr ""
+
+msgid "1"
+msgstr ""
+
+msgid "1.0"
+msgstr "1.0"
+
+msgid "1.1"
+msgstr "1.1"
+
+msgid "1.2"
+msgstr "1.2"
+
+msgid "12V output"
+msgstr "12V Вихід"
+
+msgid "13 V"
+msgstr "13 V"
+
+msgid "16:10"
+msgstr ""
+
+msgid "16:10 Letterbox"
+msgstr ""
+
+msgid "16:10 PanScan"
+msgstr ""
+
+msgid "16:9"
+msgstr "16:9"
+
+msgid "16:9 Letterbox"
+msgstr ""
+
+msgid "16:9 always"
+msgstr "16:9 завжди"
+
+msgid "18 V"
+msgstr "18 V"
+
+msgid "2"
+msgstr ""
+
+msgid "3"
+msgstr ""
+
+msgid "30 minutes"
+msgstr "30 хвилин"
+
+msgid "4"
+msgstr ""
+
+msgid "4:3"
+msgstr ""
+
+msgid "4:3 Letterbox"
+msgstr ""
+
+msgid "4:3 PanScan"
+msgstr ""
+
+msgid "5"
+msgstr ""
+
+msgid "5 minutes"
+msgstr "5 хвилин"
+
+msgid "50 Hz"
+msgstr ""
+
+msgid "6"
+msgstr ""
+
+msgid "60 minutes"
+msgstr "60 хвилин"
+
+msgid "7"
+msgstr ""
+
+msgid "8"
+msgstr ""
+
+msgid "9"
+msgstr ""
+
+msgid "<unknown>"
+msgstr "<невідомий>"
+
+msgid "??"
+msgstr "??"
+
+msgid "A"
+msgstr "A"
+
+#, python-format
+msgid ""
+"A configuration file (%s) was modified since Installation.\n"
+"Do you want to keep your version?"
+msgstr ""
+"Файл конфігурації (%s) був змінений від моменту інсталяції.\n"
+"Бажаєте зберегти ці зміни?"
+
+msgid ""
+"A finished record timer wants to set your\n"
+"Dreambox to standby. Do that now?"
+msgstr ""
+"Запис закінчено. Таймер переведе ваш Dreambox\n"
+"в режим очікування. Зробити це?"
+
+msgid ""
+"A finished record timer wants to shut down\n"
+"your Dreambox. Shutdown now?"
+msgstr ""
+"Запис закінчено. Таймер зараз вимкне ваш\n"
+"Dreamboxa. Зробити це?"
+
+msgid "A graphical EPG for all services of an specific bouquet"
+msgstr "Графічний EPG для всіх каналів цього списку"
+
+#, python-format
+msgid ""
+"A record has been started:\n"
+"%s"
+msgstr ""
+"Запис почався:\n"
+"%s"
+
+msgid ""
+"A recording is currently running.\n"
+"What do you want to do?"
+msgstr ""
+"В даний час йде запис.\n"
+"Що хочете зробити?"
+
+msgid ""
+"A recording is currently running. Please stop the recording before trying to "
+"configure the positioner."
+msgstr "В даний час йде запис. Зупиніть запис перед налаштуванням позиціонера."
+
+msgid ""
+"A recording is currently running. Please stop the recording before trying to "
+"start the satfinder."
+msgstr "В даний час йде запис. Зупиніть запис перед стартом satfinder'а."
+
+#, python-format
+msgid "A required tool (%s) was not found."
+msgstr "Потрібний інструмент (%s) не знайдено."
+
+msgid ""
+"A sleep timer wants to set your\n"
+"Dreambox to standby. Do that now?"
+msgstr ""
+"Таймер переведе ваш Dreambox\n"
+"в режим очікування. Зробити це?"
+
+msgid ""
+"A sleep timer wants to shut down\n"
+"your Dreambox. Shutdown now?"
+msgstr ""
+"Таймер зараз вимкне\n"
+"ваш Dreambox. Зробити це?"
+
+msgid ""
+"A timer failed to record!\n"
+"Disable TV and try again?\n"
+msgstr ""
+"Таймер не в змозі виконати запис!\n"
+"Вибрати іншу TV-програму і спробувати знову?\n"
+
+msgid "A/V Settings"
+msgstr "Аудіо/Відео налаштування"
+
+msgid "AA"
+msgstr "AA"
+
+msgid "AB"
+msgstr "AB"
+
+msgid "AC3 default"
+msgstr "AC3 за замовчуванням"
+
+msgid "AC3 downmix"
+msgstr ""
+
+msgid "AGC"
+msgstr ""
+
+msgid "AGC:"
+msgstr "AGC:"
+
+msgid "About"
+msgstr "Інформація"
+
+msgid "About..."
+msgstr "Інформація про Dreambox"
+
+msgid "Action on long powerbutton press"
+msgstr "Дія при утримуванні кнопки вимкнення"
+
+msgid "Action:"
+msgstr "Дія: "
+
+msgid "Activate Picture in Picture"
+msgstr "Ввімкнути PiP"
+
+msgid "Activate network settings"
+msgstr "Задіяти налаштування мережі"
+
+msgid "Adapter settings"
+msgstr "Налаштування адаптера"
+
+msgid "Add"
+msgstr "Додати"
+
+msgid "Add Bookmark"
+msgstr "Закладка"
+
+msgid "Add a mark"
+msgstr "Додати закладку"
+
+msgid "Add a new title"
+msgstr "Додати нову назву"
+
+msgid "Add timer"
+msgstr "Таймер"
+
+msgid "Add title"
+msgstr "Додати назву"
+
+msgid "Add to bouquet"
+msgstr "Додати до списку"
+
+msgid "Add to favourites"
+msgstr "Додати до фаворитів"
+
+msgid ""
+"Adjust the color settings so that all the color shades are distinguishable, "
+"but appear as saturated as possible. If you are happy with the result, press "
+"OK to close the video fine-tuning, or use the number keys to select other "
+"test screens."
+msgstr ""
+"Налаштуйте параметри кольору так щоб всі відтінки були відображені, але щоб "
+"залишались насиченими, настільки наскільки це можливо.Якщо результат вас "
+"задовільняє, натисніть ОК, щоб вийти з налаштувань, або на цифрові кнопки "
+"від 1 до 6, щоб вибрати інший тестовий екран."
+
+msgid "Advanced"
+msgstr "Розширене"
+
+msgid "Advanced Video Setup"
+msgstr "Розширене налаштування відео"
+
+msgid "After event"
+msgstr "Після виконання"
+
+msgid ""
+"After the start wizard is completed, you need to protect single services. "
+"Refer to your dreambox's manual on how to do that."
+msgstr ""
+"Після завершення роботи помічника Ви можете встановити обмеження на деякі "
+"сервіси. Як це зробити, Ви можете прочитати в інструкції. "
+
+msgid "Album:"
+msgstr "Альбом:"
+
+msgid "All"
+msgstr "Всі канали"
+
+msgid "All Satellites"
+msgstr ""
+
+msgid "All..."
+msgstr "Всі..."
+
+msgid "Alpha"
+msgstr "Прозорість"
+
+msgid "Alternative radio mode"
+msgstr "Альтернативний радіо режим"
+
+msgid "Alternative services tuner priority"
+msgstr "Альтернативний приорітет налаштування сервісів"
+
+msgid "An empty filename is illegal."
+msgstr "Пусте ім'я файлу є недопустимим."
+
+msgid "An unknown error occured!"
+msgstr "Виникла невідома помилка!"
+
+msgid "Arabic"
+msgstr "Арабський"
+
+msgid ""
+"Are you sure you want to activate this network configuration?\n"
+"\n"
+msgstr ""
+
+msgid ""
+"Are you sure you want to restart your network interfaces?\n"
+"\n"
+msgstr ""
+"Ви впевнені, що хочете перезавантажити мережеві інтерфейси?\n"
+"\n"
+
+msgid "Artist:"
+msgstr "Артист:"
+
+msgid "Ask before shutdown:"
+msgstr "Запитувати перед вимкненням:"
+
+msgid "Ask user"
+msgstr "Запитувати користувача"
+
+msgid "Aspect Ratio"
+msgstr "Співвідношення сторін:"
+
+msgid "Audio"
+msgstr "Аудіо"
+
+msgid "Audio Options..."
+msgstr "вибір аудіо-доріжки..."
+
+msgid "Authoring mode"
+msgstr "Режим авторинга"
+
+msgid "Auto"
+msgstr "Авто"
+
+msgid "Auto chapter split every ? minutes (0=never)"
+msgstr "Автоматична розбивка на фрагмети через кожні ? хвилин (0=ні)"
+
+msgid "Auto scart switching"
+msgstr "Авто переключення на скарт"
+
+msgid "Automatic"
+msgstr "Автоматично"
+
+msgid "Automatic Scan"
+msgstr "Автоматичний пошук"
+
+msgid "Available format variables"
+msgstr "Доступні формати"
+
+msgid "B"
+msgstr "B"
+
+msgid "BA"
+msgstr "BA"
+
+msgid "BB"
+msgstr "BB"
+
+msgid "BER"
+msgstr ""
+
+msgid "BER:"
+msgstr "BER:"
+
+msgid "Back"
+msgstr "Назад"
+
+msgid "Background"
+msgstr ""
+
+msgid "Backup"
+msgstr "Копія"
+
+msgid "Backup Location"
+msgstr "Місце збереження"
+
+msgid "Backup Mode"
+msgstr "Режим збереження"
+
+msgid "Backup is done. Please press OK to see the result."
+msgstr "Збережено. Натисніть ОК, щоб побачити результат."
+
+msgid "Band"
+msgstr "Діапазон"
+
+msgid "Bandwidth"
+msgstr "Ширина діапазону"
+
+msgid "Begin time"
+msgstr "Час початку"
+
+msgid "Behavior of 'pause' when paused"
+msgstr "Дія при натисканні на кнопку 'пауза'"
+
+msgid "Behavior of 0 key in PiP-mode"
+msgstr "Дія при натискання на кнопку 0 в PiP-режимі"
+
+msgid "Behavior when a movie is started"
+msgstr "Дія коли фільм почався"
+
+msgid "Behavior when a movie is stopped"
+msgstr "Дія коли фільм закінчився"
+
+msgid "Behavior when a movie reaches the end"
+msgstr "Дія коли фільм доходить до кінця"
+
+msgid "Bookmarks"
+msgstr "Закладки"
+
+msgid "Brightness"
+msgstr "Яскравість"
+
+msgid "Burn DVD"
+msgstr "Записати DVD"
+
+msgid "Burn existing image to DVD"
+msgstr ""
+
+msgid "Burn to DVD..."
+msgstr "Запис на DVD..."
+
+msgid "Bus: "
+msgstr "Шина:"
+
+msgid ""
+"By pressing the OK Button on your remote control, the info bar is being "
+"displayed."
+msgstr "При натисканні на кнопку ОК буде відображено інфопанель."
+
+msgid "C"
+msgstr ""
+
+msgid "C-Band"
+msgstr "С-Діапазон"
+
+msgid "CF Drive"
+msgstr "Карта CF"
+
+msgid "CVBS"
+msgstr "CVBS"
+
+msgid "Cable"
+msgstr "Кабель"
+
+msgid "Cache Thumbnails"
+msgstr "Кешувати ескізи"
+
+msgid "Call monitoring"
+msgstr "Монітор розмов"
+
+msgid "Cancel"
+msgstr "Відмінити"
+
+msgid "Cannot parse feed directory"
+msgstr ""
+
+msgid "Capacity: "
+msgstr "Емність: "
+
+msgid "Card"
+msgstr "Карта"
+
+msgid "Catalan"
+msgstr "Каталонська"
+
+msgid "Change bouquets in quickzap"
+msgstr "Автоматична зміна пакетів користувача"
+
+msgid "Change dir."
+msgstr ""
+
+msgid "Change pin code"
+msgstr "Змінити PIN-код"
+
+msgid "Change service pin"
+msgstr "Змінити PIN-код каналу"
+
+msgid "Change service pins"
+msgstr "Змінити PIN-код каналів"
+
+msgid "Change setup pin"
+msgstr "Змінити PIN-код для налаштувань"
+
+msgid "Channel"
+msgstr "Канал"
+
+msgid "Channel Selection"
+msgstr "Вибір каналу"
+
+msgid "Channel:"
+msgstr "Канал:"
+
+msgid "Channellist menu"
+msgstr "Меню списку каналів"
+
+msgid "Chap."
+msgstr "Kap."
+
+msgid "Chapter"
+msgstr "Розд."
+
+msgid "Chapter:"
+msgstr "Розділ"
+
+msgid "Check"
+msgstr "Перевірити"
+
+msgid "Checking Filesystem..."
+msgstr "Перевірка файлової системи..."
+
+msgid "Choose Tuner"
+msgstr "Виберіть Тюнер"
+
+msgid "Choose bouquet"
+msgstr "Виберіть список"
+
+msgid "Choose source"
+msgstr "Виберіть джерело"
+
+msgid "Choose target folder"
+msgstr "Виберіть кінцеву папку"
+
+msgid "Choose your Skin"
+msgstr "Виберіть свою оболонку"
+
+msgid "Cleanup"
+msgstr "Очистити"
+
+msgid "Clear before scan"
+msgstr "Очистити перед пошуком"
+
+msgid "Clear log"
+msgstr "Очистити лог"
+
+msgid "Close"
+msgstr "Закрити"
+
+msgid "Code rate high"
+msgstr "Швидкість кодування висока"
+
+msgid "Code rate low"
+msgstr "Швидкість кодування низька"
+
+msgid "Coderate HP"
+msgstr "Швидкість кодування HP"
+
+msgid "Coderate LP"
+msgstr "Швидкість кодування LP"
+
+msgid "Collection name"
+msgstr "Назва проекту"
+
+msgid "Collection settings"
+msgstr "Налаштування проекту"
+
+msgid "Color Format"
+msgstr "Формат кольору"
+
+msgid "Command execution..."
+msgstr "Команда виконується..."
+
+msgid "Command order"
+msgstr "Послідовність команд"
+
+msgid "Committed DiSEqC command"
+msgstr "Команда переключення DiSEqC"
+
+msgid "Common Interface"
+msgstr "CI-модуль"
+
+msgid "Compact Flash"
+msgstr "Compact Flash"
+
+msgid "Compact flash card"
+msgstr "Compact Flash карта"
+
+msgid "Complete"
+msgstr "Виконано"
+
+msgid "Complex (allows mixing audio tracks and aspects)"
+msgstr ""
+
+msgid "Configuration Mode"
+msgstr "Режим конфігурації"
+
+msgid "Configuring"
+msgstr "Конфігурування"
+
+msgid "Conflicting timer"
+msgstr "Конфлікт таймера"
+
+msgid "Connected to"
+msgstr "Під'єднано до"
+
+msgid "Connected to Fritz!Box!"
+msgstr "Під'єднано до  Fritz!Box!"
+
+msgid "Connecting to Fritz!Box..."
+msgstr "Під'єднання до  Fritz!Box..."
+
+#, python-format
+msgid ""
+"Connection to Fritz!Box\n"
+"failed! (%s)\n"
+"retrying..."
+msgstr ""
+"Під'єднання до  Fritz!Box\n"
+"невдале! (%s)\n"
+"повторно..."
+
+msgid "Constellation"
+msgstr "Сукупність"
+
+msgid "Content does not fit on DVD!"
+msgstr "Інформація не поміститься на DVD!!"
+
+msgid "Continue in background"
+msgstr ""
+
+msgid "Continue playing"
+msgstr "Продовжити перегляд"
+
+msgid "Contrast"
+msgstr "Контрастність"
+
+msgid "Copying USB flasher boot image to stick..."
+msgstr ""
+
+msgid "Could not connect to Dreambox .NFI Image Feed Server:"
+msgstr ""
+
+msgid "Could not load Medium! No disc inserted?"
+msgstr "Неможливо визначити носій! DVD диск вставлений?"
+
+msgid "Create DVD-ISO"
+msgstr ""
+
+msgid "Create movie folder failed"
+msgstr "Створення папки невдале"
+
+#, python-format
+msgid "Creating directory %s failed."
+msgstr "Створення директорії %s невдале."
+
+msgid "Creating partition failed"
+msgstr "Створення розділу невдале"
+
+msgid "Croatian"
+msgstr "Хорватьска"
+
+msgid "Current Transponder"
+msgstr "Поточний транспондер"
+
+msgid "Current settings:"
+msgstr "Поточні налаштування:"
+
+msgid "Current version:"
+msgstr "Актуальна версія:"
+
+msgid "Custom skip time for '1'/'3'-keys"
+msgstr "Встановіть час пропущення ключів '1'/'3'"
+
+msgid "Custom skip time for '4'/'6'-keys"
+msgstr "Встановіть час пропущення ключів '4'/'6'"
+
+msgid "Custom skip time for '7'/'9'-keys"
+msgstr "Встановіть час пропущення ключів '7'/'9'"
+
+msgid "Customize"
+msgstr "Додаткові налаштування"
+
+msgid "Cut"
+msgstr "Вирізати"
+
+msgid "Cutlist editor..."
+msgstr "Редактор..."
+
+msgid "Czech"
+msgstr "Чешська"
+
+msgid "D"
+msgstr ""
+
+msgid "DHCP"
+msgstr ""
+
+msgid "DVB-S"
+msgstr "DVB-S"
+
+msgid "DVB-S2"
+msgstr "DVB-S2"
+
+msgid "DVD Player"
+msgstr "DVD Програвач"
+
+msgid "DVD media toolbox"
+msgstr ""
+
+msgid "Danish"
+msgstr "Данська"
+
+msgid "Date"
+msgstr "Дата"
+
+msgid "Decompressing USB stick flasher boot image..."
+msgstr ""
+
+msgid "Deep Standby"
+msgstr "Вимкнути Dreambox"
+
+msgid "Default services lists"
+msgstr "Стандартний список каналів"
+
+msgid "Default settings"
+msgstr "Стандартні налаштування"
+
+msgid "Delay"
+msgstr "Затримка"
+
+msgid "Delete"
+msgstr "Видалити"
+
+msgid "Delete entry"
+msgstr "Відмінити завдання"
+
+msgid "Delete failed!"
+msgstr "Видалення невдале!"
+
+#, python-format
+msgid ""
+"Delete no more configured satellite\n"
+"%s?"
+msgstr ""
+"Видалити не налаштовані супутники\n"
+"%s?"
+
+msgid "Description"
+msgstr "Опис"
+
+msgid "Destination directory"
+msgstr ""
+
+msgid "Detected HDD:"
+msgstr "Виявлено HDD:"
+
+msgid "Detected NIMs:"
+msgstr "Виявлено NIMs:"
+
+msgid "DiSEqC"
+msgstr "DiSEqC"
+
+msgid "DiSEqC A/B"
+msgstr "DiSEqC A/B"
+
+msgid "DiSEqC A/B/C/D"
+msgstr "DiSEqC A/B/C/D"
+
+msgid "DiSEqC mode"
+msgstr "DiSEqC режим"
+
+msgid "DiSEqC repeats"
+msgstr "DiSEqC повторювання"
+
+msgid "Direct playback of linked titles without menu"
+msgstr "Пряме програвання звязаних епізодів без меню"
+
+#, python-format
+msgid "Directory %s nonexistent."
+msgstr "Директорія %s неіснує."
+
+msgid "Disable"
+msgstr "Вимкнути"
+
+msgid "Disable Picture in Picture"
+msgstr "Вимкнути PiP"
+
+msgid "Disable Subtitles"
+msgstr "Вимкнути субтитри"
+
+msgid "Disable timer"
+msgstr "Відмінити таймер"
+
+msgid "Disabled"
+msgstr "Вимкнуто"
+
+#, python-format
+msgid ""
+"Disconnected from\n"
+"Fritz!Box! (%s)\n"
+"retrying..."
+msgstr ""
+"Від'єднано від\n"
+"Fritz!Box! (%s)\n"
+"повторно..."
+
+msgid "Dish"
+msgstr "Антена"
+
+msgid "Display 16:9 content as"
+msgstr "Показувати 16:9 як"
+
+msgid "Display 4:3 content as"
+msgstr "Показувати 4:3 як"
+
+msgid "Display Setup"
+msgstr "Налаштування LCD"
+
+#, python-format
+msgid ""
+"Do you really want to REMOVE\n"
+"the plugin \"%s\"?"
+msgstr ""
+
+msgid ""
+"Do you really want to check the filesystem?\n"
+"This could take lots of time!"
+msgstr ""
+"Ви дійсно хочете перевірити файлову систему?\n"
+"Це може зайняти багато часу!"
+
+#, python-format
+msgid "Do you really want to delete %s?"
+msgstr "Ви дійсно хочете видалити %s?"
+
+#, python-format
+msgid ""
+"Do you really want to download\n"
+"the plugin \"%s\"?"
+msgstr ""
+
+msgid ""
+"Do you really want to initialize the harddisk?\n"
+"All data on the disk will be lost!"
+msgstr ""
+"Ви дійсно хочете ініціалізувати HDD?\n"
+"Всі дані на диску будуть втрачені!"
+
+#, python-format
+msgid "Do you really want to remove directory %s from the disk?"
+msgstr "Ви дійсно хочете видалити директорію  %s з диску"
+
+#, python-format
+msgid "Do you really want to remove your bookmark of %s?"
+msgstr "Ви дійсно хочете видалити Вашу закладку з %s?"
+
+msgid ""
+"Do you want to backup now?\n"
+"After pressing OK, please wait!"
+msgstr ""
+"Ви хочете зробити резервну копію зараз?\n"
+"Натисніть на ОК і зачекайте будь ласка!"
+
+msgid "Do you want to burn this collection to DVD medium?"
+msgstr "Ви хочете записати цей проект на DVD диск?"
+
+msgid "Do you want to do a service scan?"
+msgstr "Хочете виконати пошук каналів?"
+
+msgid "Do you want to do another manual service scan?"
+msgstr "Хочете виконати інший ручний пошук каналів?"
+
+msgid "Do you want to enable the parental control feature on your dreambox?"
+msgstr "Ви хочете встановити батьківський контроль на Dreambox?"
+
+msgid "Do you want to install default sat lists?"
+msgstr "Ви хочете встановити стандартний список супутників?"
+
+msgid "Do you want to play DVD in drive?"
+msgstr "Ви хочете відтворити DVD, який є в приводі?"
+
+msgid "Do you want to preview this DVD before burning?"
+msgstr "Ви хочете переглянути цей DVD перед записом?"
+
+msgid "Do you want to restore your settings?"
+msgstr "Ви хочете відновити свої налаштування?"
+
+msgid "Do you want to resume this playback?"
+msgstr "Ви хочете продовжити відтворення?"
+
+msgid ""
+"Do you want to update your Dreambox?\n"
+"After pressing OK, please wait!"
+msgstr ""
+"Ви хочете обновити свій Dreambox?\n"
+"Після натискання на OK, будь ласка зачекайте!"
+
+msgid "Do you want to view a tutorial?"
+msgstr "Ви хочете переглянути інструкцію?"
+
+msgid "Don't stop current event but disable coming events"
+msgstr "Не зупиняйте поточне завдання, але відмініть слідуючі"
+
+#, python-format
+msgid "Done - Installed or upgraded %d packages"
+msgstr "Виконано - Встановлено або обновлено %d пакети"
+
+#, python-format
+msgid "Done - Installed or upgraded %d packages with %d errors"
+msgstr "Виконано - Встановлено або обновлено %d пакети з %d помилками"
+
+msgid "Download"
+msgstr ""
+
+msgid "Download .NFI-Files for USB-Flasher"
+msgstr ""
+
+msgid "Download Plugins"
+msgstr "Завантажити"
+
+msgid "Download of USB flasher boot image failed: "
+msgstr ""
+
+msgid "Downloadable new plugins"
+msgstr "Доступні нові додатки"
+
+msgid "Downloadable plugins"
+msgstr "Доступні додатки"
+
+msgid "Downloading"
+msgstr "Завантажується..."
+
+msgid "Downloading image description..."
+msgstr ""
+
+msgid "Downloading plugin information. Please wait..."
+msgstr "Завантаження інформації про додатки. Зачекайте..."
+
+msgid "Dreambox format data DVD (HDTV compatible)"
+msgstr "DVD дані в Dreambox-формат (HDTV-сумісний)"
+
+msgid "Dutch"
+msgstr "Данська"
+
+msgid "E"
+msgstr "O"
+
+msgid "EPG Selection"
+msgstr "Вибір EPG"
+
+#, python-format
+msgid "ERROR - failed to scan (%s)!"
+msgstr "ПОМИЛКА - сканування невдале (%s)!"
+
+msgid "East"
+msgstr "Схід"
+
+msgid "Edit"
+msgstr ""
+
+msgid "Edit DNS"
+msgstr "Змінити DNS"
+
+msgid "Edit Title"
+msgstr ""
+
+msgid "Edit chapters of current title"
+msgstr "Редагувати фрагменти цього розділу"
+
+msgid "Edit services list"
+msgstr "Редагувати список каналів"
+
+msgid "Edit settings"
+msgstr "Редагування налаштувань"
+
+msgid "Edit the Nameserver configuration of your Dreambox.\n"
+msgstr "Редагувати налаштування Nameserver вашого Dreambox.\n"
+
+msgid "Edit the network configuration of your Dreambox.\n"
+msgstr "Редагувати налаштування мережі Dreambox.\n"
+
+msgid "Edit title"
+msgstr "Редагувати назву"
+
+msgid "Electronic Program Guide"
+msgstr "Електронний Гід"
+
+msgid "Enable"
+msgstr "Ввімкнути"
+
+msgid "Enable 5V for active antenna"
+msgstr "Подати 5V для активної антени"
+
+msgid "Enable multiple bouquets"
+msgstr "Відображати фаворитні списки"
+
+msgid "Enable parental control"
+msgstr "Ввімкнути батьківський контроль"
+
+msgid "Enable timer"
+msgstr "Ввімкнути таймер"
+
+msgid "Enabled"
+msgstr "Ввімкнено"
+
+msgid "Encryption"
+msgstr "Шифрування"
+
+msgid "Encryption Key"
+msgstr "WLAN ключ шифрування"
+
+msgid "Encryption Keytype"
+msgstr ""
+
+msgid "Encryption Type"
+msgstr "Тип шифрування"
+
+msgid "End"
+msgstr "Кінець"
+
+msgid "End time"
+msgstr "Час закінчення"
+
+msgid "EndTime"
+msgstr "Кінець часу"
+
+msgid "English"
+msgstr "Англійська"
+
+msgid ""
+"Enigma2 Skinselector v0.5 BETA\n"
+"\n"
+"If you experience any problems please contact\n"
+"stephan@reichholf.net\n"
+"\n"
+"© 2006 - Stephan Reichholf"
+msgstr ""
+"Enigma2 Skinselector v0.5 BETA\n"
+"\n"
+"Якщо в Вас виникли певні проблеми, будь ласка звертайтесь на\n"
+"stephan@reichholf.net\n"
+"\n"
+"© 2006 - Stephan Reichholf"
+
+#.   TRANSLATORS: Note that "Enter" in the two strings below should *not*
+#.       be interpreted as "Give speed as input". The intended meaning is
+#.       instead "Initial speed when starting winding", i.e. the speed at
+#.       which "winding mode" is entered when first pressing "rewind" or
+#.       "fast forward". 
+msgid "Enter Fast Forward at speed"
+msgstr "Швидкість перемотування вперед"
+
+msgid "Enter Rewind at speed"
+msgstr "Швидкість перемотування"
+
+msgid "Enter WLAN network name/SSID:"
+msgstr ""
+
+msgid "Enter WLAN passphrase/key:"
+msgstr ""
+
+msgid "Enter main menu..."
+msgstr "вхід до Головного Меню..."
+
+msgid "Enter the service pin"
+msgstr "Введіть PIN-код каналу"
+
+msgid "Error"
+msgstr "Помилка"
+
+msgid "Error executing plugin"
+msgstr ""
+
+#, python-format
+msgid ""
+"Error: %s\n"
+"Retry?"
+msgstr ""
+"Помилка: %s\n"
+"Повторити?"
+
+msgid "Eventview"
+msgstr "Перегдяд завдань"
+
+msgid "Everything is fine"
+msgstr "Все є OK"
+
+msgid "Execution Progress:"
+msgstr "Хід виконання:"
+
+msgid "Execution finished!!"
+msgstr "Виконання завершено!!"
+
+msgid "Exit"
+msgstr "Вийти"
+
+msgid "Exit editor"
+msgstr "Вийти з редактора"
+
+msgid "Exit the wizard"
+msgstr "Вихід з помічника"
+
+msgid "Exit wizard"
+msgstr "Закрити помічник"
+
+msgid "Expert"
+msgstr "Експерт"
+
+msgid "Extended Networksetup Plugin..."
+msgstr ""
+
+msgid "Extended Setup..."
+msgstr "Розширені налаштування..."
+
+msgid "Extensions"
+msgstr "Розширення"
+
+msgid "FEC"
+msgstr "FEC"
+
+msgid "Factory reset"
+msgstr "Скидання до заводських налаштувань"
+
+msgid "Failed"
+msgstr "Невдало"
+
+msgid "Fast"
+msgstr "Швидко"
+
+msgid "Fast DiSEqC"
+msgstr "Швидкий DiSEqC"
+
+msgid "Fast Forward speeds"
+msgstr "Швидкість перемотування вперед"
+
+msgid "Fast epoch"
+msgstr "Швидкий період"
+
+msgid "Favourites"
+msgstr "Фаворити"
+
+msgid "Filesystem Check..."
+msgstr "Перевірка файлової системи..."
+
+msgid "Filesystem contains uncorrectable errors"
+msgstr "Файлова система містить невиправні помилки"
+
+msgid "Finetune"
+msgstr "Точно"
+
+msgid "Finished"
+msgstr "Закінчено"
+
+msgid "Finished configuring your network"
+msgstr ""
+
+msgid "Finished restarting your network"
+msgstr ""
+
+msgid "Finnish"
+msgstr "Фінська"
+
+msgid ""
+"First we need to download the latest boot environment for the USB flasher."
+msgstr ""
+
+msgid "Fix USB stick"
+msgstr ""
+
+msgid "Flash"
+msgstr ""
+
+msgid "Flashing failed"
+msgstr ""
+
+msgid "Font size"
+msgstr "Розмір шрифта"
+
+msgid "Format"
+msgstr "Форматування"
+
+msgid "Frame repeat count during non-smooth winding"
+msgstr "Кількість повторів кадру під час неплавного переходу"
+
+msgid "French"
+msgstr "Французька"
+
+msgid "Frequency"
+msgstr "Частота"
+
+msgid "Frequency bands"
+msgstr "Полоси частоти"
+
+msgid "Frequency scan step size(khz)"
+msgstr "Розмір кроку пошуку (khz)"
+
+msgid "Frequency steps"
+msgstr "Кроки частоти"
+
+msgid "Fri"
+msgstr "П'ятн"
+
+msgid "Friday"
+msgstr "П'ятниця"
+
+msgid "Fritz!Box FON IP address"
+msgstr "Fritz!Box FON IP адрес"
+
+#, python-format
+msgid "Frontprocessor version: %d"
+msgstr "Версія фронтпроцесора: %d"
+
+msgid "Fsck failed"
+msgstr "Fsck невдала"
+
+msgid "Function not yet implemented"
+msgstr "Функція не реалізована"
+
+msgid ""
+"GUI needs a restart to apply a new skin\n"
+"Do you want to Restart the GUI now?"
+msgstr ""
+"Для застосування нової оболонки\n"
+"потрібно перезавантажити GUI.\n"
+"Хочете перезавантажити GUI зараз??"
+
+msgid "Gateway"
+msgstr "Шлюз"
+
+msgid "Genre:"
+msgstr "Жанр:"
+
+msgid "German"
+msgstr "Німецька"
+
+msgid "Getting plugin information. Please wait..."
+msgstr "Отримування інформації про додатки. Прохання зачекати..."
+
+msgid "Goto 0"
+msgstr "Йти до 0"
+
+msgid "Goto position"
+msgstr "Йти на позицію"
+
+msgid "Graphical Multi EPG"
+msgstr "Графічний Multi EPG"
+
+msgid "Greek"
+msgstr "Грецька"
+
+msgid "Guard Interval"
+msgstr ""
+
+msgid "Guard interval mode"
+msgstr "Режим Guard Interval"
+
+msgid "Harddisk"
+msgstr "Жорсткий диск..."
+
+msgid "Harddisk setup"
+msgstr "Налаштування HDD"
+
+msgid "Harddisk standby after"
+msgstr "Режим очікування HDD після"
+
+msgid "Hidden network SSID"
+msgstr ""
+
+msgid "Hierarchy Information"
+msgstr "Ієрархічна Інформація"
+
+msgid "Hierarchy mode"
+msgstr "Ієрархічний режим"
+
+msgid "How many minutes do you want to record?"
+msgstr "Скільки хвилин Ви хочете записати?"
+
+msgid "Hungarian"
+msgstr "Угорська"
+
+msgid "IP Address"
+msgstr "IP адреса"
+
+msgid "ISO file is too large for this filesystem!"
+msgstr ""
+
+msgid "ISO path"
+msgstr ""
+
+msgid "Icelandic"
+msgstr "Ісландська"
+
+msgid "If you can see this page, please press OK."
+msgstr "Якщо ви хочете побачити цю сторінку, натисніть OK."
+
+msgid ""
+"If you see this, something is wrong with\n"
+"your scart connection. Press OK to return."
+msgstr ""
+"Якщо Ви бачите це, значить щось неправильно з\n"
+"Scart приєднанням. Натисніть ОК для повернення."
+
+msgid ""
+"If your TV has a brightness or contrast enhancement, disable it. If there is "
+"something called \"dynamic\", set it to standard. Adjust the backlight level "
+"to a value suiting your taste. Turn down contrast on your TV as much as "
+"possible.\n"
+"Then turn the brightness setting as low as possible, but make sure that the "
+"two lowermost shades of gray stay distinguishable.\n"
+"Do not care about the bright shades now. They will be set up in the next "
+"step.\n"
+"If you are happy with the result, press OK."
+msgstr ""
+"Якщо у Вашому TV завищена яскравість чи контрастність, виправте це. Якщо "
+"опції виставлені на \"Динамічну\", змініть на \"Стандартну\". Виставте "
+"рівень підсвічування на власний смак .Зменшіть контрастність TV до "
+"максимально можливої.\n"
+"Потім понизьте рівень яскравості, настільки низько, наскільки це можливо, "
+"але щоб два самих нижніх відтінки сірого відрізнялись.\n"
+"Не турбуйтесь про яскраві відтінки зараз. Вони будуть налаштовані в "
+"наступному кроці.\n"
+"Якщо Ви задоволені результатом натисніть OK."
+
+msgid "Image flash utility"
+msgstr ""
+
+msgid "Image-Upgrade"
+msgstr "Обновлення Іміджу"
+
+msgid "In Progress"
+msgstr "Виконується"
+
+msgid ""
+"In order to record a timer, the TV was switched to the recording service!\n"
+msgstr ""
+"Щоб розпочати запис по таймеру, TV буде змінено на записуваний канал!\n"
+
+msgid "Increased voltage"
+msgstr "Збільшена напруга"
+
+msgid "Index"
+msgstr "Індекс"
+
+msgid "InfoBar"
+msgstr "Інфо панель"
+
+msgid "Infobar timeout"
+msgstr "Час показу інфо панелі"
+
+msgid "Information"
+msgstr "Інформація"
+
+msgid "Init"
+msgstr "Ініціалізувати"
+
+msgid "Initialization..."
+msgstr "Ініціалізація..."
+
+msgid "Initialize"
+msgstr "Ініціалізувати"
+
+msgid "Initializing Harddisk..."
+msgstr "Ініціалізація HDD..."
+
+msgid "Input"
+msgstr "Вхід"
+
+msgid "Installing"
+msgstr "Встановлення"
+
+msgid "Installing Software..."
+msgstr "Встановлення ПЗ..."
+
+msgid "Installing default sat lists... Please wait..."
+msgstr "Встановлення стандартного списку супутників...Прохання зачекати..."
+
+msgid "Installing defaults... Please wait..."
+msgstr "Встановлення стандартних налаштувань...Прохання зачекати..."
+
+msgid "Installing package content... Please wait..."
+msgstr "Встановлення пакетів...Прохання зачекати..."
+
+msgid "Instant Record..."
+msgstr "миттєвий запис..."
+
+msgid "Integrated Ethernet"
+msgstr "Інтегрований Ethernet"
+
+msgid "Integrated Wireless"
+msgstr "Інтегрований Wireless"
+
+msgid "Intermediate"
+msgstr "Посередній"
+
+msgid "Internal Flash"
+msgstr "Внутрішня Флеш"
+
+msgid "Invalid Location"
+msgstr "Неправильне розміщення"
+
+#, python-format
+msgid "Invalid directory selected: %s"
+msgstr "Вибрано неіснуючу директорію: %s"
+
+msgid "Inversion"
+msgstr "Інверсія"
+
+msgid "Invert display"
+msgstr "Інверсія LCD"
+
+msgid "Italian"
+msgstr "Італійська"
+
+msgid "Job View"
+msgstr "Перегляд завдань"
+
+#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect)
+msgid "Just Scale"
+msgstr "Тільки масштабування"
+
+msgid "Keyboard Map"
+msgstr "Розкладка клавіатури"
+
+msgid "Keyboard Setup"
+msgstr "Налаштування клавіатури"
+
+msgid "Keymap"
+msgstr "Розкладка кнопок"
+
+msgid "LAN Adapter"
+msgstr "LAN Адаптер"
+
+msgid "LNB"
+msgstr "LNB"
+
+msgid "LOF"
+msgstr "LOF"
+
+msgid "LOF/H"
+msgstr "LOF/H"
+
+msgid "LOF/L"
+msgstr "LOF/L"
+
+msgid "Language selection"
+msgstr "Вибір мови"
+
+msgid "Language..."
+msgstr "Мова..."
+
+msgid "Last speed"
+msgstr "Остання швидкість"
+
+msgid "Latitude"
+msgstr "Широта"
+
+msgid "Leave DVD Player?"
+msgstr "Закрити DVD плеєр?"
+
+msgid "Left"
+msgstr "Вліво"
+
+#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term.
+msgid "Letterbox"
+msgstr ""
+
+msgid "Limit east"
+msgstr "Обмеження на схід"
+
+msgid "Limit west"
+msgstr "Обмеження на захід"
+
+msgid "Limits off"
+msgstr "Вимкнути обмеження"
+
+msgid "Limits on"
+msgstr "Ввімкнути обмеження"
+
+msgid "Link:"
+msgstr "Посилання:"
+
+msgid "Linked titles with a DVD menu"
+msgstr "Зв'язані заголовки DVD-Меню"
+
+msgid "List of Storage Devices"
+msgstr "Список запам'ятовуючих пристроїв"
+
+msgid "Lithuanian"
+msgstr "Литовська"
+
+msgid "Load"
+msgstr "Завантажити"
+
+msgid "Load Length of Movies in Movielist"
+msgstr ""
+
+msgid "Local Network"
+msgstr "Локальна Мережа"
+
+msgid "Location"
+msgstr "Розміщення"
+
+msgid "Lock:"
+msgstr "Сигнал:"
+
+msgid "Long Keypress"
+msgstr "Утримування кнопки"
+
+msgid "Longitude"
+msgstr "Довгота"
+
+msgid "MMC Card"
+msgstr "Карта ММС"
+
+msgid "MORE"
+msgstr "Більше"
+
+msgid "Main menu"
+msgstr "Головне Меню"
+
+msgid "Mainmenu"
+msgstr "Головне Меню"
+
+msgid "Make this mark an 'in' point"
+msgstr "Зробити цю закладку як внутрішню"
+
+msgid "Make this mark an 'out' point"
+msgstr "Зробити цю закладку як зовнішню"
+
+msgid "Make this mark just a mark"
+msgstr "Зробити цю закладку як звичайну"
+
+msgid "Manual Scan"
+msgstr "Ручний пошук"
+
+msgid "Manual transponder"
+msgstr "Вибірковий транспондер"
+
+msgid "Margin after record"
+msgstr "Відступ після запису (в хвил.)"
+
+msgid "Margin before record (minutes)"
+msgstr "Відступ перед записом (в хвил.)"
+
+msgid "Media player"
+msgstr "Медіа Програвач"
+
+msgid "MediaPlayer"
+msgstr "Медіа Програвач"
+
+msgid "Medium is not a writeable DVD!"
+msgstr "Носій не є записуючим DVD!"
+
+msgid "Medium is not empty!"
+msgstr "Носій не порожній!"
+
+msgid "Menu"
+msgstr "Меню"
+
+msgid "Message"
+msgstr "Повідомлення"
+
+msgid "Mkfs failed"
+msgstr "Mkfs невдале"
+
+msgid "Mode"
+msgstr "Режим"
+
+msgid "Model: "
+msgstr "Модель: "
+
+msgid "Modulation"
+msgstr "Модуляція"
+
+msgid "Modulator"
+msgstr "Модулятор"
+
+msgid "Mon"
+msgstr "Пон"
+
+msgid "Mon-Fri"
+msgstr "Пон-П'ятн"
+
+msgid "Monday"
+msgstr "Понеділок"
+
+msgid "Mount failed"
+msgstr "Монтування невдале"
+
+msgid "Move Picture in Picture"
+msgstr "Перемістити PiP"
+
+msgid "Move east"
+msgstr "Перемістити на схід"
+
+msgid "Move west"
+msgstr "Перемістити на захід"
+
+msgid "Movielist menu"
+msgstr "Меню списку фільмів"
+
+msgid "Multi EPG"
+msgstr "Multi-EPG"
+
+msgid "Multiple service support"
+msgstr "Підтримка мультисервісів"
+
+msgid "Multisat"
+msgstr "Декілька супутників"
+
+msgid "Mute"
+msgstr "Без звуку"
+
+msgid "N/A"
+msgstr "N/A"
+
+msgid "NEXT"
+msgstr "НАСТУПНИЙ"
+
+msgid "NFI image flashing completed. Press Yellow to Reboot!"
+msgstr ""
+
+msgid "NOW"
+msgstr "ЗАРАЗ"
+
+msgid "NTSC"
+msgstr "NTSC"
+
+msgid "Name"
+msgstr "Ім'я"
+
+msgid "Nameserver"
+msgstr "Nameserver"
+
+#, python-format
+msgid "Nameserver %d"
+msgstr "Nameserver %d"
+
+msgid "Nameserver Setup"
+msgstr "Налаштування DNS"
+
+msgid "Nameserver settings"
+msgstr "Параметри  DNS"
+
+msgid "Netmask"
+msgstr "Маска мережі"
+
+msgid "Network Configuration..."
+msgstr "Конфігурація мережі..."
+
+msgid "Network Mount"
+msgstr "Network Mount"
+
+msgid "Network SSID"
+msgstr "Мережевий SSID"
+
+msgid "Network Setup"
+msgstr "Налаштування мережі"
+
+msgid "Network scan"
+msgstr "Мережевий пошук"
+
+msgid "Network setup"
+msgstr "Налаштування мережі"
+
+msgid "Network test"
+msgstr "Тест мережевого з'єднання"
+
+msgid "Network test..."
+msgstr "Тест мережевого з'єднання..."
+
+msgid "Network..."
+msgstr "Мережа..."
+
+msgid "Network:"
+msgstr "Мережа:"
+
+msgid "NetworkWizard"
+msgstr "Майстер налаштувань мережі"
+
+msgid "New"
+msgstr "Нові канали"
+
+msgid "New pin"
+msgstr "Новий PIN"
+
+msgid "New version:"
+msgstr "Нова версія:"
+
+msgid "Next"
+msgstr "Наступний"
+
+msgid "No"
+msgstr "Ні"
+
+msgid "No (supported) DVDROM found!"
+msgstr "Ніякого (сумісного)DVD привода не знайдено!"
+
+msgid "No 50 Hz, sorry. :("
+msgstr "Нема 50 Hz, вибачайте. :("
+
+msgid "No HDD found or HDD not initialized!"
+msgstr ""
+"HDD не знайдено або\n"
+"HDD не ініціалізований!"
+
+msgid "No Networks found"
+msgstr ""
+
+msgid "No backup needed"
+msgstr "Резервна копія не потрібна"
+
+msgid ""
+"No data on transponder!\n"
+"(Timeout reading PAT)"
+msgstr ""
+"Нема даних на транспондері!\n"
+"(Кінець часу читання PAT)"
+
+msgid "No details for this image file"
+msgstr ""
+
+msgid "No event info found, recording indefinitely."
+msgstr "Не знайдено інформаціїї про завдання, записування не визначене."
+
+msgid "No free tuner!"
+msgstr "Нема вільного тюнера!"
+
+msgid ""
+"No packages were upgraded yet. So you can check your network and try again."
+msgstr ""
+"Жоден пакет не був обновлений. Перевірте налаштування мережі і спробуйте "
+"знову."
+
+msgid "No picture on TV? Press EXIT and retry."
+msgstr ""
+"Нема зображення на TV?\n"
+"Натисніть EXIT і повторіть."
+
+msgid "No positioner capable frontend found."
+msgstr "Не знайдено позиціонера."
+
+msgid "No satellite frontend found!!"
+msgstr "Не знайдено супутник!!!"
+
+msgid "No tuner is configured for use with a diseqc positioner!"
+msgstr "Нема тюнера налаштованого для роботи з позиціонером!"
+
+msgid ""
+"No tuner is enabled!\n"
+"Please setup your tuner settings before you start a service scan."
+msgstr ""
+"Нема активного тюнера!\n"
+"Налаштуй параметри свого тюнера перед початком сканування."
+
+msgid "No useable USB stick found"
+msgstr ""
+
+msgid ""
+"No valid service PIN found!\n"
+"Do you like to change the service PIN now?\n"
+"When you say 'No' here the service protection stay disabled!"
+msgstr ""
+"Не знайдено PIN-код каналу!\n"
+"Хочете змінити PIN-код каналу?\n"
+"Якщо вибрати НІ, то захист каналу буде вимкнуто!"
+
+msgid ""
+"No valid setup PIN found!\n"
+"Do you like to change the setup PIN now?\n"
+"When you say 'No' here the setup protection stay disabled!"
+msgstr ""
+"Не знайдено PIN-код налаштувань!\n"
+"Хочете змінити PIN-код налаштувань?\n"
+"Якщо вибрати НІ, то захист налаштувань буде вимкнуто!!"
+
+msgid ""
+"No working local network adapter found.\n"
+"Please verify that you have attached a network cable and your network is "
+"configured correctly."
+msgstr ""
+
+msgid ""
+"No working wireless network adapter found.\n"
+"Please verify that you have attached a compatible WLAN device and your "
+"network is configured correctly."
+msgstr ""
+
+msgid ""
+"No working wireless network interface found.\n"
+" Please verify that you have attached a compatible WLAN device or enable "
+"your local network interface."
+msgstr ""
+
+msgid "No, but restart from begin"
+msgstr "Ні, але відтворити фільм з початку"
+
+msgid "No, do nothing."
+msgstr "Ні, не робити нічого."
+
+msgid "No, just start my dreambox"
+msgstr "Ні, тільки ввімкнути мого Dreambox'a"
+
+msgid "No, scan later manually"
+msgstr "Ні, сканувати вручну пізніше"
+
+msgid "None"
+msgstr "Нічого"
+
+#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right)
+msgid "Nonlinear"
+msgstr "Нелінійний"
+
+msgid "North"
+msgstr "Північ"
+
+msgid "Norwegian"
+msgstr "Норвежська"
+
+#, python-format
+msgid ""
+"Not enough diskspace. Please free up some diskspace and try again. (%d MB "
+"required, %d MB available)"
+msgstr ""
+"Не достатньо вільного місця. Будь ласка звільніть місце на диску і спробуйте "
+"знов. (%d MB потрібно, %d MB вільно)"
+
+msgid ""
+"Nothing to scan!\n"
+"Please setup your tuner settings before you start a service scan."
+msgstr ""
+"Нічого не знайдено!\n"
+"Налаштуй параметри свого тюнера перед початком сканування."
+
+msgid "Now Playing"
+msgstr "Зараз програється"
+
+msgid ""
+"Now please insert the USB stick (minimum size is 64 MB) that you want to "
+"format and use as .NFI image flasher. Press OK after you've put the stick "
+"back in."
+msgstr ""
+
+msgid ""
+"Now, use the contrast setting to turn up the brightness of the background as "
+"much as possible, but make sure that you can still see the difference "
+"between the two brightest levels of shades.If you have done that, press OK."
+msgstr ""
+"Тепер, використовуйте регулювання контрастності, щоб збільшити яскравісь  "
+"фонунаскільки це можливо, але переконайтесь, що Ви все ще бачите різницю між "
+"двума самими яскравими рівнями відтінків. Якщо Ви зробили це, то натисніть "
+"ОК."
+
+msgid "OK"
+msgstr "OK"
+
+msgid "OK, guide me through the upgrade process"
+msgstr "OK, допоможіть мені в процесі оновлення"
+
+msgid "OSD Settings"
+msgstr "Налаштування OSD"
+
+msgid "OSD visibility"
+msgstr ""
+
+msgid "Off"
+msgstr "Вимкнути"
+
+msgid "On"
+msgstr "Ввімкнути"
+
+msgid "One"
+msgstr "Один"
+
+msgid "Online-Upgrade"
+msgstr "Онлайн-Оновлення"
+
+msgid "Only Free scan"
+msgstr ""
+
+msgid "Orbital Position"
+msgstr "Орбітальна позиція"
+
+msgid "Other..."
+msgstr "Інше..."
+
+msgid "PAL"
+msgstr "PAL"
+
+msgid "PIDs"
+msgstr "Піди"
+
+msgid "Package list update"
+msgstr "Оновлення списку пакетів"
+
+msgid "Packet management"
+msgstr "Управління пакетом"
+
+msgid "Page"
+msgstr "Сторінка"
+
+#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term
+msgid "Pan&Scan"
+msgstr ""
+
+msgid "Parent Directory"
+msgstr "Початкова директорія"
+
+msgid "Parental control"
+msgstr "Батьківський контроль"
+
+msgid "Parental control services Editor"
+msgstr "Редактор каналів батьківського контролю"
+
+msgid "Parental control setup"
+msgstr "Встановлення батьківського контролю"
+
+msgid "Parental control type"
+msgstr "Тип батьківського контролю"
+
+msgid "Partitioning USB stick..."
+msgstr ""
+
+msgid "Pause movie at end"
+msgstr "Затримати фільм в кінці"
+
+msgid "PiPSetup"
+msgstr "Налаштування PiP"
+
+#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term.
+msgid "Pillarbox"
+msgstr ""
+
+msgid "Pilot"
+msgstr ""
+
+msgid "Pin code needed"
+msgstr "Потрібно PIN-код"
+
+msgid "Play"
+msgstr "Відтворення"
+
+msgid "Play Audio-CD..."
+msgstr ""
+
+msgid "Play recorded movies..."
+msgstr "відтворити записані передачі..."
+
+msgid "Please Reboot"
+msgstr "Будь ласка перезавантажте"
+
+msgid "Please Select Medium to be Scanned"
+msgstr "Будь ласка виберіть носій, який буде проскановано"
+
+msgid "Please change recording endtime"
+msgstr "Будь ласка змініть час закінчення запису"
+
+msgid "Please check your network settings!"
+msgstr ""
+
+msgid "Please choose .NFI image file from feed server to download"
+msgstr ""
+
+msgid "Please choose an extension..."
+msgstr "Будь ласка виберіть..."
+
+msgid "Please choose he package..."
+msgstr "Будь ласка виберіть пакет ..."
+
+msgid "Please choose the default services lists you want to install."
+msgstr ""
+"Будь ласка виберіть стандартний список каналів, який хочете встановити."
+
+msgid "Please do not change any values unless you know what you are doing!"
+msgstr "Будь ласка не міняйте ніякі значення, якщо не розумієте що робите!"
+
+msgid "Please enter a name for the new bouquet"
+msgstr "Введіть назву нового списку"
+
+msgid "Please enter a name for the new marker"
+msgstr "Введіть назву для нової закладки"
+
+msgid "Please enter a new filename"
+msgstr "Введіть нову назву файла"
+
+msgid "Please enter filename (empty = use current date)"
+msgstr "Введіть назву файла (пусто = актуальна дата)"
+
+msgid "Please enter name of the new directory"
+msgstr "Введіть назву нової директорії"
+
+msgid "Please enter the correct pin code"
+msgstr "Введіть правильний PIN-код"
+
+msgid "Please enter the old pin code"
+msgstr "Введіть старий PIN-код"
+
+msgid "Please follow the instructions on the TV"
+msgstr "Будь ласка, слідкуйте за інструкціями TV"
+
+msgid ""
+"Please note that the previously selected media could not be accessed and "
+"therefore the default directory is being used instead."
+msgstr ""
+"Будь ласка відмітьте, що до раніше вибраних носіїв не було доступу, і тому "
+"замість них використовується директорія за замовчуванням"
+
+msgid "Please press OK to continue."
+msgstr "Будь ласка натисніть OK для продовження."
+
+msgid "Please press OK!"
+msgstr "Натисніть OK!"
+
+msgid "Please select .NFI flash image file from medium"
+msgstr ""
+
+msgid "Please select a playlist to delete..."
+msgstr "Виберіть плейлист для видалення..."
+
+msgid "Please select a playlist..."
+msgstr "Виберіть плейлист..."
+
+msgid "Please select a subservice to record..."
+msgstr "Виберіть підсервіс для запису..."
+
+msgid "Please select a subservice..."
+msgstr "Виберіть підсервіс..."
+
+msgid "Please select keyword to filter..."
+msgstr "Виберіть ключове слово для фільтрування..."
+
+msgid "Please select target directory or medium"
+msgstr ""
+
+msgid "Please select the movie path..."
+msgstr "Виберіть шлях до фільму..."
+
+msgid "Please set up tuner B"
+msgstr "Налаштуйте тюнер B"
+
+msgid "Please set up tuner C"
+msgstr "Налаштуйте тюнер C"
+
+msgid "Please set up tuner D"
+msgstr "Налаштуйте тюнер D"
+
+msgid ""
+"Please use direction keys to move the PiP window.\n"
+"Press Bouquet +/- to resize the window.\n"
+"Press OK to go back to the TV mode or EXIT to cancel the moving."
+msgstr ""
+"Використовуйте кнопки управління для переміщення вікна PiP.\n"
+"Натисніть +/-, для зміни розміру вікна.\n"
+"Натисніть OK, щоб повернутись в режим TV, або EXIT для відміни."
+
+msgid ""
+"Please use the UP and DOWN keys to select your language. Afterwards press "
+"the OK button."
+msgstr ""
+"Використовуйте кнопки ВВЕРХ і ВНИЗ, щоб вибрати Вашу мову. Після вибору "
+"натисніть OK."
+
+msgid "Please wait for activation of your network configuration..."
+msgstr ""
+
+msgid "Please wait for md5 signature verification..."
+msgstr ""
+
+msgid "Please wait while we configure your network..."
+msgstr ""
+
+msgid "Please wait while your network is restarting..."
+msgstr ""
+
+msgid "Please wait..."
+msgstr ""
+
+msgid "Please wait... Loading list..."
+msgstr "Прохання зачекати... Завантаження списку..."
+
+msgid "Plugin browser"
+msgstr "Список додатків"
+
+msgid "Plugins"
+msgstr "Додатки"
+
+msgid "Polarity"
+msgstr "Поляризація"
+
+msgid "Polarization"
+msgstr "Поляризація"
+
+msgid "Polish"
+msgstr "Польська"
+
+msgid "Port A"
+msgstr "Порт A"
+
+msgid "Port B"
+msgstr "Порт B"
+
+msgid "Port C"
+msgstr "Порт C"
+
+msgid "Port D"
+msgstr "Порт D"
+
+msgid "Portuguese"
+msgstr "Португальська"
+
+msgid "Positioner"
+msgstr "Позиціонер"
+
+msgid "Positioner fine movement"
+msgstr "Точний рух позиціонера"
+
+msgid "Positioner movement"
+msgstr "Рух позиціонера"
+
+msgid "Positioner setup"
+msgstr "Налаштування позиціонера"
+
+msgid "Positioner storage"
+msgstr "Збереження позиціонера"
+
+msgid "Power threshold in mA"
+msgstr "Поріг потужності в  mA"
+
+msgid "Predefined transponder"
+msgstr "Визначений транспондер"
+
+msgid "Preparing... Please wait"
+msgstr "Йде приготування... Зачекайте будь ласка"
+
+msgid "Press OK on your remote control to continue."
+msgstr "Натисніть на ОК для продовження."
+
+msgid "Press OK to activate the settings."
+msgstr "Натисніть ОК для для активації налаштувань."
+
+msgid "Press OK to edit the settings."
+msgstr "Натисніть ОК для редагування налаштувань"
+
+msgid "Press OK to scan"
+msgstr "Натисніть ОК для пошуку"
+
+msgid "Press OK to start the scan"
+msgstr "Натисніть ОК щоб почати пошук"
+
+msgid "Prev"
+msgstr "Попередній"
+
+msgid "Preview menu"
+msgstr "Перегляд DVD-Меню"
+
+msgid "Primary DNS"
+msgstr "Первинний DNS"
+
+msgid "Properties of current title"
+msgstr ""
+
+msgid "Protect services"
+msgstr "Захист каналів"
+
+msgid "Protect setup"
+msgstr "Налаштування захисту"
+
+msgid "Provider"
+msgstr "Провайдери"
+
+msgid "Provider to scan"
+msgstr "Сканування провайдера"
+
+msgid "Providers"
+msgstr "Провайдери"
+
+msgid "Quickzap"
+msgstr "Швидке перемикання"
+
+msgid "RC Menu"
+msgstr "Меню ДУ"
+
+msgid "RF output"
+msgstr "RF вихід"
+
+msgid "RGB"
+msgstr "RGB"
+
+msgid "RSS Feed URI"
+msgstr "RSS-Feed-URI"
+
+msgid "Radio"
+msgstr "Радіо"
+
+msgid "Ram Disk"
+msgstr "Ram диск"
+
+msgid "Really close without saving settings?"
+msgstr "Вийти без збереження налаштувань?"
+
+msgid "Really delete done timers?"
+msgstr "Видалити виконане завдання?"
+
+msgid "Really delete this timer?"
+msgstr "Видалити це завдання?"
+
+msgid "Really exit the subservices quickzap?"
+msgstr "Вийти з підсервісів?"
+
+msgid "Really reboot now?"
+msgstr ""
+
+msgid "Really restart now?"
+msgstr ""
+
+msgid "Really shutdown now?"
+msgstr ""
+
+msgid "Reboot"
+msgstr ""
+
+msgid "Reception Settings"
+msgstr "Параметри прийому"
+
+msgid "Record"
+msgstr "Запис"
+
+msgid "Recorded files..."
+msgstr "Записані файли..."
+
+msgid "Recording"
+msgstr "Запис"
+
+msgid "Recording(s) are in progress or coming up in few seconds!"
+msgstr ""
+
+msgid "Recordings always have priority"
+msgstr "Запис завжди має перевагу"
+
+msgid "Reenter new pin"
+msgstr "Введіть новий PIN-код ще раз"
+
+msgid "Refresh Rate"
+msgstr "Частота оновлення"
+
+msgid "Refresh rate selection."
+msgstr "Вибір частоти оновлення"
+
+msgid "Remounting stick partition..."
+msgstr ""
+
+msgid "Remove Bookmark"
+msgstr "Видалити закладку"
+
+msgid "Remove Plugins"
+msgstr "Видалити"
+
+msgid "Remove a mark"
+msgstr "Видалити закладку"
+
+msgid "Remove currently selected title"
+msgstr "Видалити вибрану назву"
+
+msgid "Remove plugins"
+msgstr "Видалення додатків"
+
+msgid "Remove the broken .NFI file?"
+msgstr ""
+
+msgid "Remove the incomplete .NFI file?"
+msgstr ""
+
+msgid "Remove title"
+msgstr "Видалити назву"
+
+#, python-format
+msgid "Removing directory %s failed. (Maybe not empty.)"
+msgstr "Видалення директорії %s невдале. (Можливо не пуста)"
+
+msgid "Rename"
+msgstr "Перейменувати"
+
+msgid "Repeat"
+msgstr "Повторити"
+
+msgid "Repeat Type"
+msgstr "Тип повторення"
+
+msgid "Repeating event currently recording... What do you want to do?"
+msgstr ""
+"Повторення завдання, яке вже записується...\n"
+"Що хочете зробити??"
+
+msgid "Repeats"
+msgstr "Повторення"
+
+msgid "Reset"
+msgstr "Скидання"
+
+msgid "Reset and renumerate title names"
+msgstr ""
+
+msgid "Resolution"
+msgstr "Роздільча здатність"
+
+msgid "Restart"
+msgstr "Перезавантажити"
+
+msgid "Restart GUI"
+msgstr "Перезавантажити GUI"
+
+msgid "Restart GUI now?"
+msgstr "Перезавантажити GUI зараз?"
+
+msgid "Restart network"
+msgstr "Перезавантаження мережі"
+
+msgid "Restart test"
+msgstr "Повторити тест"
+
+msgid "Restart your network connection and interfaces.\n"
+msgstr "Перезавантаження мережевого з'єднання.\n"
+
+msgid "Restore"
+msgstr "Відновлення"
+
+msgid ""
+"Restoring the settings is done. Please press OK to activate the restored "
+"settings now."
+msgstr ""
+"Відновлення параметрів виконано. Натисніть OK щоб зберегти відновлені "
+"параметри."
+
+msgid "Resume from last position"
+msgstr "Продовжити з останньої позиції"
+
+#. TRANSLATORS: The string "Resuming playback" flashes for a moment
+#. TRANSLATORS: at the start of a movie, when the user has selected
+#. TRANSLATORS: "Resume from last position" as start behavior.
+#. TRANSLATORS: The purpose is to notify the user that the movie starts
+#. TRANSLATORS: in the middle somewhere and not from the beginning.
+#. TRANSLATORS: (Some translators seem to have interpreted it as a
+#. TRANSLATORS: question or a choice, but it is a statement.)
+msgid "Resuming playback"
+msgstr "Продовжити програвання"
+
+msgid "Return to file browser"
+msgstr "Повернутись до оглядача файлів"
+
+msgid "Return to movie list"
+msgstr "Повернутись до списку фільмів"
+
+msgid "Return to previous service"
+msgstr "Повернутись до попереднього каналу"
+
+msgid "Rewind speeds"
+msgstr "Швидкість перемотування"
+
+msgid "Right"
+msgstr "Вправо"
+
+msgid "Rolloff"
+msgstr ""
+
+msgid "Rotor turning speed"
+msgstr "Швидкість обертання ротора"
+
+msgid "Running"
+msgstr "Швидкість обертання ротора"
+
+msgid "Russian"
+msgstr "Російська"
+
+msgid "S-Video"
+msgstr "S-Відео"
+
+msgid "SNR"
+msgstr ""
+
+msgid "SNR:"
+msgstr ""
+
+msgid "Sat"
+msgstr "Суб"
+
+msgid "Sat / Dish Setup"
+msgstr "Налаштування антени"
+
+msgid "Satellite"
+msgstr "Супутник"
+
+msgid "Satellite Equipment Setup"
+msgstr "Налашування супутникового обладнання"
+
+msgid "Satellites"
+msgstr "Супутники"
+
+msgid "Satfinder"
+msgstr "Рівень сигналу"
+
+msgid "Sats"
+msgstr ""
+
+msgid "Saturday"
+msgstr "Субота"
+
+msgid "Save"
+msgstr "Зберегти"
+
+msgid "Save Playlist"
+msgstr "Зберегти плейлист"
+
+msgid "Scaling Mode"
+msgstr "Режим масштабування"
+
+msgid "Scan "
+msgstr "Пошук "
+
+msgid "Scan QAM128"
+msgstr "Сканувати QAM128"
+
+msgid "Scan QAM16"
+msgstr "Сканувати QAM16"
+
+msgid "Scan QAM256"
+msgstr "Сканувати QAM256"
+
+msgid "Scan QAM32"
+msgstr "Сканувати QAM32"
+
+msgid "Scan QAM64"
+msgstr "Сканувати QAM64"
+
+msgid "Scan SR6875"
+msgstr "Сканувати SR6875"
+
+msgid "Scan SR6900"
+msgstr "Сканувати SR6900"
+
+msgid "Scan Wireless Networks"
+msgstr "Пошук WI-FI мереж"
+
+msgid "Scan additional SR"
+msgstr "Сканувати додатковий SR"
+
+msgid "Scan band EU HYPER"
+msgstr "Сканувати полосу EU HYPER"
+
+msgid "Scan band EU MID"
+msgstr "Сканувати полосу EU MID"
+
+msgid "Scan band EU SUPER"
+msgstr "Сканувати полосу EU SUPER"
+
+msgid "Scan band EU UHF IV"
+msgstr "Сканувати полосу EU UHF IV"
+
+msgid "Scan band EU UHF V"
+msgstr "Сканувати полосу EU UHF V"
+
+msgid "Scan band EU VHF I"
+msgstr "Сканувати полосу EU VHF I"
+
+msgid "Scan band EU VHF III"
+msgstr "Сканувати полосу EU VHF III"
+
+msgid "Scan band US HIGH"
+msgstr "Сканувати полосу US HIGH"
+
+msgid "Scan band US HYPER"
+msgstr "Сканувати полосу US HYPER"
+
+msgid "Scan band US LOW"
+msgstr "Сканувати полосу US LOW"
+
+msgid "Scan band US MID"
+msgstr "Сканувати полосу US MID"
+
+msgid "Scan band US SUPER"
+msgstr "Сканувати полосу US SUPER"
+
+msgid ""
+"Scan your network for wireless Access Points and connect to them using your "
+"WLAN USB Stick\n"
+msgstr ""
+"Сканувати мережу на доступність WI-FI точок доступу і з'єднатися с ними "
+"використовуючи Ваш USB WI-FI адаптер\n"
+
+msgid ""
+"Scans default lamedbs sorted by satellite with a connected dish positioner"
+msgstr "Просканувати снандартні супутники записані в позиціонері"
+
+msgid "Search east"
+msgstr "Пошук на схід"
+
+msgid "Search west"
+msgstr "Пошук на захід"
+
+msgid "Secondary DNS"
+msgstr "Вторинний DNS"
+
+msgid "Seek"
+msgstr ""
+
+msgid "Select HDD"
+msgstr "Вибрати HDD"
+
+msgid "Select Location"
+msgstr "Вибрати місце розташування"
+
+msgid "Select Network Adapter"
+msgstr "Виберіть мережевий адаптер"
+
+msgid "Select a movie"
+msgstr "Виберіть фільм"
+
+msgid "Select audio mode"
+msgstr "Виберіть аудіо режим"
+
+msgid "Select audio track"
+msgstr "Виберіть аудіо доріжку"
+
+msgid "Select channel to record from"
+msgstr "Виберіть канал для запису з"
+
+msgid "Select image"
+msgstr ""
+
+msgid "Select refresh rate"
+msgstr "Виберіть частоту оновлення"
+
+msgid "Select video input"
+msgstr "Виберіть відео вхід"
+
+msgid "Select video mode"
+msgstr "Виберіть режим відео"
+
+msgid "Selected source image"
+msgstr ""
+
+msgid "Send DiSEqC"
+msgstr ""
+
+msgid "Send DiSEqC only on satellite change"
+msgstr ""
+
+msgid "Seperate titles with a main menu"
+msgstr "Окремі заголовки з головного меню"
+
+msgid "Sequence repeat"
+msgstr "Повторення послідовності"
+
+msgid "Service"
+msgstr "Інформація каналу"
+
+msgid "Service Scan"
+msgstr "Пошук каналів"
+
+msgid "Service Searching"
+msgstr "Пошук каналів"
+
+msgid "Service has been added to the favourites."
+msgstr "Канал додано до фаворитів."
+
+msgid "Service has been added to the selected bouquet."
+msgstr "Канал додано до вибраного списку."
+
+msgid ""
+"Service invalid!\n"
+"(Timeout reading PMT)"
+msgstr ""
+"Канал недійсний!\n"
+"(Кінець часу читання PMT)"
+
+msgid ""
+"Service not found!\n"
+"(SID not found in PAT)"
+msgstr ""
+"Канал не знайдено!\n"
+"(SID не знайдено в PAT)"
+
+msgid "Service scan"
+msgstr "Пошук каналів"
+
+msgid ""
+"Service unavailable!\n"
+"Check tuner configuration!"
+msgstr ""
+"Канал не доступний!\n"
+"Перевірте налаштування тюнера!"
+
+msgid "Serviceinfo"
+msgstr "Інформація"
+
+msgid "Services"
+msgstr "Канали"
+
+msgid "Set Voltage and 22KHz"
+msgstr ""
+
+msgid "Set as default Interface"
+msgstr "Встановити як Інтерфейс за замовчуванням"
+
+msgid "Set interface as default Interface"
+msgstr ""
+
+msgid "Set limits"
+msgstr "Встановити обмеження"
+
+msgid "Settings"
+msgstr "Параметри"
+
+msgid "Setup"
+msgstr "Налаштування"
+
+msgid "Setup Mode"
+msgstr "Режим Налаштування"
+
+msgid "Show Info"
+msgstr "Показати інформацію"
+
+msgid "Show WLAN Status"
+msgstr "Показати WLAN статус"
+
+msgid "Show blinking clock in display during recording"
+msgstr "Показувати блимаючий годинник під час запису"
+
+msgid "Show infobar on channel change"
+msgstr "Показувати інфопанель при зміні каналу"
+
+msgid "Show infobar on event change"
+msgstr "Показувати інфопанель під час зміни передачі"
+
+msgid "Show infobar on skip forward/backward"
+msgstr "Показувати інфопанель під час перемотки"
+
+msgid "Show positioner movement"
+msgstr "Показувати рух позиціонера"
+
+msgid "Show services beginning with"
+msgstr "Показати канали починаючи з"
+
+msgid "Show the radio player..."
+msgstr "Радіо-режим..."
+
+msgid "Show the tv player..."
+msgstr "ТБ-режим..."
+
+msgid "Shows the state of your wireless LAN connection.\n"
+msgstr "Показати стан безпровідного LAN з'єднання.\n"
+
+msgid "Shutdown Dreambox after"
+msgstr "Вимкнути Dreambox після"
+
+msgid "Similar"
+msgstr "Подібне"
+
+msgid "Similar broadcasts:"
+msgstr "Подібні передачі:"
+
+msgid "Simple"
+msgstr "Простий"
+
+msgid "Simple titleset (compatibility for legacy players)"
+msgstr ""
+
+msgid "Single"
+msgstr "Один"
+
+msgid "Single EPG"
+msgstr " Простий EPG"
+
+msgid "Single satellite"
+msgstr "Один супутник"
+
+msgid "Single transponder"
+msgstr "Один транспондер"
+
+msgid "Singlestep (GOP)"
+msgstr "Однокроковий (GOP)"
+
+msgid "Skin..."
+msgstr ""
+
+msgid "Sleep Timer"
+msgstr "Таймер Вимкнення"
+
+msgid "Sleep timer action:"
+msgstr "Дія таймера: "
+
+msgid "Slideshow Interval (sec.)"
+msgstr "Інтервал слайдшоу (в сек.)"
+
+#, python-format
+msgid "Slot %d"
+msgstr "Слот %d"
+
+msgid "Slow"
+msgstr "Повільно"
+
+msgid "Slow Motion speeds"
+msgstr "Slow Motion швидкість"
+
+msgid "Some plugins are not available:\n"
+msgstr "Деякі додатки не доступні:\n"
+
+msgid "Somewhere else"
+msgstr "Десь інакше"
+
+msgid ""
+"Sorry your Backup destination does not exist\n"
+"\n"
+"Please choose an other one."
+msgstr ""
+"Вибачте, але шлях доступу до копії не існує\n"
+"\n"
+"Будь ласка, виберіть інший."
+
+#. TRANSLATORS: This must fit into the header button in the EPG-List
+msgid "Sort A-Z"
+msgstr "Сорт. A-Z"
+
+#. TRANSLATORS: This must fit into the header button in the EPG-List
+msgid "Sort Time"
+msgstr "Сорт. по часу"
+
+msgid "Sound"
+msgstr "Звук"
+
+msgid "Soundcarrier"
+msgstr "Soundcarrier"
+
+msgid "South"
+msgstr "Південь"
+
+msgid "Spanish"
+msgstr "Іспанська"
+
+msgid "Standby"
+msgstr "Режим очікування"
+
+msgid "Standby / Restart"
+msgstr "Меню вимкнення"
+
+msgid "Start"
+msgstr "Початок"
+
+msgid "Start from the beginning"
+msgstr "Почати з початку"
+
+msgid "Start recording?"
+msgstr "Почати запис?"
+
+msgid "Start test"
+msgstr "Почати тест"
+
+msgid "StartTime"
+msgstr "Час початку"
+
+msgid "Starting on"
+msgstr "Почати на"
+
+msgid "Step east"
+msgstr "Крок на схід"
+
+msgid "Step west"
+msgstr "Крок на схід"
+
+msgid "Stereo"
+msgstr "Стерео"
+
+msgid "Stop"
+msgstr "Зупинити"
+
+msgid "Stop Timeshift?"
+msgstr "Зупинити Timeshift?"
+
+msgid "Stop current event and disable coming events"
+msgstr "Зупинити активне завдання і відмінити наступне"
+
+msgid "Stop current event but not coming events"
+msgstr "Зупинити активне завдання але не наступне"
+
+msgid "Stop playing this movie?"
+msgstr "Зупинити відтворення цього фільму?"
+
+msgid "Stop test"
+msgstr "Зупинити тест"
+
+msgid "Store position"
+msgstr "Зберегти позицію"
+
+msgid "Stored position"
+msgstr "Збережена позиція"
+
+msgid "Subservice list..."
+msgstr "список підсервісів..."
+
+msgid "Subservices"
+msgstr "Підсервіси"
+
+msgid "Subtitle selection"
+msgstr "Вибір субтитрів"
+
+msgid "Subtitles"
+msgstr "Субтитри"
+
+msgid "Sun"
+msgstr "Нед"
+
+msgid "Sunday"
+msgstr "Неділя"
+
+msgid "Swap Services"
+msgstr "Заміна каналів"
+
+msgid "Swedish"
+msgstr "Шведська"
+
+msgid "Switch to next subservice"
+msgstr "перемкнути на наступний підсервіс"
+
+msgid "Switch to previous subservice"
+msgstr "перемкнути на попередній підсервіс"
+
+msgid "Symbol Rate"
+msgstr "Символьна швидкість"
+
+msgid "Symbolrate"
+msgstr "Символ. швидкість"
+
+msgid "System"
+msgstr "Система"
+
+#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline)
+msgid "TRANSLATOR_INFO"
+msgstr ""
+
+msgid "TS file is too large for ISO9660 level 1!"
+msgstr ""
+
+msgid "TV System"
+msgstr "TV Система"
+
+msgid "Table of content for collection"
+msgstr "Таблиця вмісту для колекції"
+
+msgid "Terrestrial"
+msgstr "Наземний"
+
+msgid "Terrestrial provider"
+msgstr "Наземний провайдер"
+
+msgid "Test mode"
+msgstr "Тестовий режим"
+
+msgid "Test the network configuration of your Dreambox.\n"
+msgstr "Тест мережевого з'єднання Вашого Dreambox'а.\n"
+
+msgid "Test-Messagebox?"
+msgstr "Тест-Messagebox?"
+
+msgid ""
+"Thank you for using the wizard. Your box is now ready to use.\n"
+"Please press OK to start using your Dreambox."
+msgstr ""
+
+msgid ""
+"The .NFI Image flasher USB stick is now ready to use. Please download an ."
+"NFI image file from the feed server and save it on the stick. Then reboot "
+"and hold the 'Down' key on the front panel to boot the .NFI flasher from the "
+"stick!"
+msgstr ""
+
+msgid ""
+"The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to "
+"create a Dreambox format data DVD (which will not play in stand-alone DVD "
+"players) instead?"
+msgstr ""
+"DVD-стандарт не підтримує H.264 (HDTV) відео. Ви хочете створити DVD з "
+"даними в Dreambox-форматі (який не буде програватись в стандартних DVD "
+"програвачах)?"
+
+msgid "The backup failed. Please choose a different backup location."
+msgstr "Збереження невдале. Виберіть інше місце для розташування копії."
+
+#, python-format
+msgid ""
+"The following device was found:\n"
+"\n"
+"%s\n"
+"\n"
+"Do you want to write the USB flasher to this stick?"
+msgstr ""
+
+msgid ""
+"The input port should be configured now.\n"
+"You can now configure the screen by displaying some test pictures. Do you "
+"want to do that now?"
+msgstr ""
+"Вхідний порт повинен бути налаштований зараз.\n"
+"Ви можете налаштувати зображення за допомогою декількох тестових екранів. "
+"Бажаєте це зробити зараз?"
+
+msgid "The installation of the default services lists is finished."
+msgstr "Встановлення стандартного списку каналів завершено."
+
+msgid ""
+"The installation of the default settings is finished. You can now continue "
+"configuring your Dreambox by pressing the OK button on the remote control."
+msgstr ""
+"Встановлення стандартних параметрів завершено. Ви можете продовжити "
+"налаштування Dreambox'а натиснувши OK на пульті."
+
+msgid ""
+"The md5sum validation failed, the file may be corrupted! Are you sure that "
+"you want to burn this image to flash memory? You are doing this at your own "
+"risk!"
+msgstr ""
+
+msgid ""
+"The md5sum validation failed, the file may be downloaded incompletely or be "
+"corrupted!"
+msgstr ""
+
+msgid "The package doesn't contain anything."
+msgstr "Пакет не містить в собі ніяких даних."
+
+#, python-format
+msgid "The path %s already exists."
+msgstr "Шлях %s вже існує "
+
+msgid "The pin code has been changed successfully."
+msgstr "PIN-код змінено успішно."
+
+msgid "The pin code you entered is wrong."
+msgstr "Введений PIN-код невірний."
+
+msgid "The pin codes you entered are different."
+msgstr "Введений PIN-код є іншим."
+
+msgid "The sleep timer has been activated."
+msgstr "Таймер сну активний."
+
+msgid "The sleep timer has been disabled."
+msgstr "Таймер сну було відмінено."
+
+msgid "The timer file (timers.xml) is corrupt and could not be loaded."
+msgstr "Файл таймера (timers.xml) є пошкодженим і не може бути виконаний."
+
+msgid ""
+"The wireless LAN plugin is not installed!\n"
+"Please install it."
+msgstr ""
+"WI-FI додаток не встановлений!\n"
+"Будь ласка встановіть його."
+
+msgid ""
+"The wizard can backup your current settings. Do you want to do a backup now?"
+msgstr "Майстер може зберегти Ваші налаштування. Бажаєте зробити копію зараз?"
+
+msgid "The wizard is finished now."
+msgstr "Майстер завершив роботу."
+
+msgid "There are no default services lists in your image."
+msgstr "Цей імідж не містить стандартного списку каналів."
+
+msgid "There are no default settings in your image."
+msgstr "Цей імідж не містить стандартних налаштувань."
+
+msgid ""
+"There might not be enough Space on the selected Partition.\n"
+"Do you really want to continue?"
+msgstr ""
+"Недостатньо місця на вибраному розділі.\n"
+"Ви дійсно хочете продовжити?"
+
+#, python-format
+msgid "This .NFI file does not contain a valid %s image!"
+msgstr ""
+
+msgid ""
+"This .NFI file does not have a md5sum signature and is not guaranteed to "
+"work. Do you really want to burn this image to flash memory?"
+msgstr ""
+
+msgid ""
+"This .NFI file has a valid md5 signature. Continue programming this image to "
+"flash memory?"
+msgstr ""
+
+msgid ""
+"This DVD RW medium is already formatted - reformatting will erase all "
+"content on the disc."
+msgstr ""
+"Цей DVD-RW диск вже відформатований - переформатування знищить всі дані на "
+"диску"
+
+#, python-format
+msgid "This Dreambox can't decode %s video streams!"
+msgstr "Цей Dreambox не в змозі декодувати %s відео потік!"
+
+msgid "This is step number 2."
+msgstr "Це крок номер 2."
+
+msgid "This is unsupported at the moment."
+msgstr "Це не підтримується на даний час."
+
+msgid ""
+"This test checks for configured Nameservers.\n"
+"If you get a \"unconfirmed\" message:\n"
+"- please check your DHCP, cabling and Adapter setup\n"
+"- if you configured your Nameservers manually please verify your entries in "
+"the \"Nameserver\" Configuration"
+msgstr ""
+"Цей тест перевіряє правильність налаштувань Nameserver'ів.\n"
+"Якщо побачите повідомлення \"unconfirmed\":\n"
+"- перевірте DHCP, кабель і налаштування мережі\n"
+"- якщо ви налаштовували Nameserver вручну, будь ласка перевірте записи в "
+"\"Nameserver\" Конфігурація"
+
+msgid ""
+"This test checks whether a network cable is connected to your LAN-Adapter.\n"
+"If you get a \"disconnected\" message:\n"
+"- verify that a network cable is attached\n"
+"- verify that the cable is not broken"
+msgstr ""
+"Цей тест перевірить чи під'єднаний кабель до Вашого мережевого адаптера.\n"
+"Якщо побачите повідомлення \"disconnected\":\n"
+"- перевірте чи мережевий кабель дійсно під'єднано\n"
+"- перевірте чи мережевий кабель не пошкоджений"
+
+msgid ""
+"This test checks whether a valid IP Address is found for your LAN Adapter.\n"
+"If you get a \"unconfirmed\" message:\n"
+"- no valid IP Address was found\n"
+"- please check your DHCP, cabling and adapter setup"
+msgstr ""
+"Цей тест перевірить чи знайдено дійсний IP-адрес для Вашого мережевого "
+"адаптера.\n"
+"Якщо побачите повідомлення \"unconfirmed\":\n"
+"- не знайдено дійсний IP-адрес\n"
+"- перевірте DHCP, кабель і мережевий адаптер"
+
+msgid ""
+"This test checks whether your LAN Adapter is set up for automatic IP Address "
+"configuration with DHCP.\n"
+"If you get a \"disabled\" message:\n"
+" - then your LAN Adapter is configured for manual IP Setup\n"
+"- verify thay you have entered correct IP informations in the AdapterSetup "
+"dialog.\n"
+"If you get an \"enabeld\" message:\n"
+"-verify that you have a configured and working DHCP Server in your network."
+msgstr ""
+"Цей тест перевірить чи налаштований Ваш мережевий адаптер для "
+"автоматичноїконфігурації IP-адреси з DHCP.\n"
+"Якщо побачите повідомлення \"disabled\":\n"
+"- тоді мережевий адаптер налаштований для ручної конфігурації IP-адреси без "
+"DHCP\n"
+"- перевірте чи в налаштуваннях адаптера введена правильна IP інформація.\n"
+"Якщо побачите повідомлення \"enabled\":\n"
+"- перевірте чи є в Вашій мережі правильно налаштований і працюючий DHCP "
+"сервер"
+
+msgid "This test detects your configured LAN-Adapter."
+msgstr "Цей тест визначить Ваш мережевий адаптер."
+
+msgid "Three"
+msgstr "Три"
+
+msgid "Threshold"
+msgstr "Поріг"
+
+msgid "Thu"
+msgstr "Четв"
+
+msgid "Thursday"
+msgstr "Четвер"
+
+msgid "Time"
+msgstr "Час"
+
+msgid "Time/Date Input"
+msgstr "Час / Дата"
+
+msgid "Timer"
+msgstr "Таймер"
+
+msgid "Timer Edit"
+msgstr "Редагування Таймера"
+
+msgid "Timer Editor"
+msgstr "Редактор Таймера"
+
+msgid "Timer Type"
+msgstr "Тип Таймера"
+
+msgid "Timer entry"
+msgstr "Ввід таймера"
+
+msgid "Timer log"
+msgstr "Лог таймера"
+
+msgid ""
+"Timer overlap in timers.xml detected!\n"
+"Please recheck it!"
+msgstr ""
+
+msgid "Timer sanity error"
+msgstr "Помилка таймера"
+
+msgid "Timer selection"
+msgstr "Вибір таймера"
+
+msgid "Timer status:"
+msgstr "Статус таймера:"
+
+msgid "Timeshift"
+msgstr "Timeshift"
+
+msgid "Timeshift not possible!"
+msgstr "Timeshift неможливий!"
+
+msgid "Timezone"
+msgstr "Часовий пояс"
+
+msgid "Title"
+msgstr "Епізод"
+
+msgid "Title properties"
+msgstr ""
+
+msgid "Title:"
+msgstr "Заголовок:"
+
+msgid "Titleset mode"
+msgstr ""
+
+msgid ""
+"To make sure you intend to do this, please remove the target USB stick now "
+"and stick it back in upon prompt. Press OK when you have taken the stick out."
+msgstr ""
+
+msgid "Today"
+msgstr "Сьогодні"
+
+msgid "Tone mode"
+msgstr "Тоновий режим"
+
+msgid "Toneburst"
+msgstr "Тоновий сигнал"
+
+msgid "Toneburst A/B"
+msgstr "Тоновий сигнал A/B"
+
+msgid "Track"
+msgstr "Трек"
+
+msgid "Translation"
+msgstr ""
+
+msgid "Translation:"
+msgstr ""
+
+msgid "Transmission Mode"
+msgstr "Режим передавання"
+
+msgid "Transmission mode"
+msgstr "Режим передавання"
+
+msgid "Transponder"
+msgstr "Транспондер"
+
+msgid "Transponder Type"
+msgstr "Тип Транспондера"
+
+msgid "Tries left:"
+msgstr "Залишилось спроб:"
+
+msgid "Try to find used Transponders in cable network.. please wait..."
+msgstr ""
+"Спроба знайти використовувані транспондери в кабельній мережі... Зачекайте "
+"будь ласка..."
+
+msgid "Try to find used transponders in cable network.. please wait..."
+msgstr ""
+"Спроба знайти використовувані транспондери в кабельній мережі... Зачекайте "
+"будь ласка..."
+
+msgid "Tue"
+msgstr "Вівт"
+
+msgid "Tuesday"
+msgstr "Вівторок"
+
+msgid "Tune"
+msgstr ""
+
+msgid "Tune failed!"
+msgstr ""
+
+msgid "Tuner"
+msgstr "Тюнер"
+
+msgid "Tuner "
+msgstr "Тюнер "
+
+msgid "Tuner Slot"
+msgstr "Слот Тюнера"
+
+msgid "Tuner configuration"
+msgstr "Конфігурація тюнера"
+
+msgid "Tuner status"
+msgstr "Статус тюнера"
+
+msgid "Turkish"
+msgstr "Турецька"
+
+msgid "Two"
+msgstr "Два"
+
+msgid "Type of scan"
+msgstr "Тип сканування"
+
+msgid "USALS"
+msgstr "USALS"
+
+msgid "USB"
+msgstr "USB"
+
+msgid "USB Stick"
+msgstr "USB-Stick"
+
+msgid "Ukrainian"
+msgstr ""
+
+msgid ""
+"Unable to complete filesystem check.\n"
+"Error: "
+msgstr ""
+"Неможливо завершити перевірку файлової системи.\n"
+"Помилка: "
+
+msgid ""
+"Unable to initialize harddisk.\n"
+"Error: "
+msgstr ""
+"Неможливо визначити HDD.\n"
+"Помилка: "
+
+msgid "Uncommitted DiSEqC command"
+msgstr "Нейтральна DiSEqC команда"
+
+msgid "Universal LNB"
+msgstr "Універсальна LNB"
+
+msgid "Unmount failed"
+msgstr "Розмонтування невдале"
+
+msgid "Update"
+msgstr ""
+
+msgid "Updates your receiver's software"
+msgstr "Оновлення ПЗ Вашого ресівера"
+
+msgid "Updating finished. Here is the result:"
+msgstr "Оновлення завершено. Ось результат:"
+
+msgid "Updating... Please wait... This can take some minutes..."
+msgstr "Йде оновлення... Прохання зачекати... Це займе декілька хвилин..."
+
+msgid "Upgrade finished. Do you want to reboot your Dreambox?"
+msgstr "Оновлення завершено. Бажаєте перезавантажити Dreambox?"
+
+msgid "Upgrading"
+msgstr "Оновлення"
+
+msgid "Upgrading Dreambox... Please wait"
+msgstr "Оновлення Dreambox'a... Прохання зачекати"
+
+msgid "Use"
+msgstr ""
+
+msgid "Use DHCP"
+msgstr "Використовувати DHCP"
+
+msgid "Use Interface"
+msgstr ""
+
+msgid "Use Power Measurement"
+msgstr "Використовувати вимірювання потужності"
+
+msgid "Use a gateway"
+msgstr "Використовувати шлюз"
+
+#.   TRANSLATORS: The effect of "Non-smooth winding" is that rather
+#.       than using ordinary "continuous" or "smooth" winding, a fast
+#.       sequence of stills is shown when winding at high speeds. This
+#.       makes it much easier too follow when almost each frame comes from
+#.       a new scene. The effect is achieved by repeating each shown frame
+#.       a couple of times. The settings control both at which speed this
+#.       winding mode sets in, and how many times each frame should be
+#.       repeated. This was previously called "Discontinuous playback"
+#.       which was incomprehensible. "Non-smooth winding" may be a better
+#.       term, but note that there is nothing irregular about it. Synonyms
+#.       better suited for translation to other languages may be "stepwise
+#.       winding/playback", or "winding/playback using stills". 
+msgid "Use non-smooth winding at speeds above"
+msgstr "Неплавне перемотування на швидкостях вище"
+
+msgid "Use power measurement"
+msgstr "Використовувати вимірювання потужності"
+
+msgid "Use the Networkwizard to configure your Network\n"
+msgstr "Використовувати Networkwizard для налаштувань мережі\n"
+
+msgid ""
+"Use the left and right buttons to change an option.\n"
+"\n"
+"Please set up tuner A"
+msgstr ""
+"Для зміни параметрів використовуйте кнопки вліво/вправо.\n"
+"\n"
+"Виберіть Тюнер A"
+
+msgid ""
+"Use the up/down keys on your remote control to select an option. After that, "
+"press OK."
+msgstr ""
+"Для зміни параметрів використовуйте кнопки вверх/вниз. Після цього, "
+"натисніть OK."
+
+msgid "Use usals for this sat"
+msgstr "Використовувати USALS для цього супутника"
+
+msgid "Use wizard to set up basic features"
+msgstr "Використати помічник для налаштування"
+
+msgid "Used service scan type"
+msgstr "Тип пошуку каналів"
+
+msgid "User defined"
+msgstr "Визначені користувачем"
+
+msgid "VCR scart"
+msgstr "VCR скарт"
+
+msgid "VMGM (intro trailer)"
+msgstr ""
+
+msgid "Video Fine-Tuning"
+msgstr "Налаштування зображення"
+
+msgid "Video Fine-Tuning Wizard"
+msgstr "Майстер налаштування зображення"
+
+msgid "Video Output"
+msgstr "Відео вихід"
+
+msgid "Video Setup"
+msgstr "Налаштування відео"
+
+msgid "Video Wizard"
+msgstr "Майстер налаштувань відео"
+
+msgid ""
+"Video input selection\n"
+"\n"
+"Please press OK if you can see this page on your TV (or select a different "
+"input port).\n"
+"\n"
+"The next input port will be automatically probed in 10 seconds."
+msgstr ""
+"Вибір відео виходу\n"
+"\n"
+"Якщо Ви бачити цю сторінку на екрані TV то натисніть ОК (або виберіть інший "
+"вхідний порт).\n"
+"\n"
+"Наступний вхідний порт буде автоматично випробувано через 10 сек.."
+
+msgid "Video mode selection."
+msgstr "Вибір Відео режиму"
+
+msgid "View Rass interactive..."
+msgstr "Показати інтерактивний Rass..."
+
+msgid "View teletext..."
+msgstr "показати телетекст..."
+
+msgid "Virtual KeyBoard"
+msgstr ""
+
+msgid "Voltage mode"
+msgstr "Режим напруги"
+
+msgid "Volume"
+msgstr "Гучність"
+
+msgid "W"
+msgstr "W"
+
+msgid "WEP"
+msgstr ""
+
+msgid "WPA"
+msgstr ""
+
+msgid "WPA or WPA2"
+msgstr ""
+
+msgid "WPA2"
+msgstr ""
+
+msgid "WSS on 4:3"
+msgstr "WSS na 4:3"
+
+msgid "Waiting"
+msgstr "Очікування"
+
+msgid "Waiting for USB stick to settle..."
+msgstr ""
+
+msgid ""
+"We will now test if your TV can also display this resolution at 50hz. If "
+"your screen goes black, wait 20 seconds and it will switch back to 60hz.\n"
+"Please press OK to begin."
+msgstr ""
+"Зараз перевірим чи Ваш може TV відобразити цю роздільчу здатність при 50Гц "
+"Якщо екран буде чорним, то зачекайте 20 сек. і він перключиться назад на "
+"60Гц\n"
+"Для початку натисніть на ОК."
+
+msgid "Wed"
+msgstr "Сер"
+
+msgid "Wednesday"
+msgstr "Середа"
+
+msgid "Weekday"
+msgstr "День тижня"
+
+msgid ""
+"Welcome to the Cutlist editor.\n"
+"\n"
+"Seek to the start of the stuff you want to cut away. Press OK, select 'start "
+"cut'.\n"
+"\n"
+"Then seek to the end, press OK, select 'end cut'. That's it."
+msgstr ""
+
+msgid ""
+"Welcome to the Image upgrade wizard. The wizard will assist you in upgrading "
+"the firmware of your Dreambox by providing a backup facility for your "
+"current settings and a short explanation of how to upgrade your firmware."
+msgstr ""
+"Ласкаво просимо до помічника оновлення Іміджів. Він допоможе Вам в оновленні "
+"програмного забезпечення, забезпечуючи резервне копіювання параметрів та "
+"налаштувань і коротко пояснить як оновити програмне забезпечення."
+
+msgid ""
+"Welcome.\n"
+"\n"
+"This start wizard will guide you through the basic setup of your Dreambox.\n"
+"Press the OK button on your remote control to move to the next step."
+msgstr ""
+"Ласкаво просимо.\n"
+"\n"
+"Цей помічник допоможе Вам зробити основні налаштування вашого Dreambox'а\n"
+"Натисніть на ОК щоб перейти до слідуючого кроку."
+
+msgid "Welcome..."
+msgstr "Ласкаво просимо..."
+
+msgid "West"
+msgstr "Захід"
+
+msgid "What do you want to scan?"
+msgstr "Що хочете сканувати?"
+
+msgid "Where do you want to backup your settings?"
+msgstr "Де хочете зробити копію своїх налаштувань?"
+
+msgid "Wireless"
+msgstr "Безпровідний"
+
+msgid "Wireless Network"
+msgstr "Безпровідна мережа"
+
+msgid "Write error while recording. Disk full?\n"
+msgstr "Виникла помилка під час запису. Диск заповнений?\n"
+
+msgid "Write failed!"
+msgstr "Записати невдалось!"
+
+msgid "Writing NFI image file to flash completed"
+msgstr ""
+
+msgid "Writing image file to NAND Flash"
+msgstr ""
+
+msgid "YPbPr"
+msgstr "YPbPr"
+
+msgid "Year:"
+msgstr "Рік:"
+
+msgid "Yes"
+msgstr "Так"
+
+msgid "Yes, and delete this movie"
+msgstr ""
+
+msgid "Yes, backup my settings!"
+msgstr "Так, зробити копію моїх налаштувань!"
+
+msgid "Yes, do a manual scan now"
+msgstr "Так, розпочати ручний пошук"
+
+msgid "Yes, do an automatic scan now"
+msgstr "Так, розпочати автоматичний пошук"
+
+msgid "Yes, do another manual scan now"
+msgstr "Так, почати інший ручний пошук"
+
+msgid "Yes, perform a shutdown now."
+msgstr "Так вимкнути зараз."
+
+msgid "Yes, restore the settings now"
+msgstr "Так, відновити мої налаштування зараз"
+
+msgid "Yes, returning to movie list"
+msgstr "Так, але повернутись до списку фільмів"
+
+msgid "Yes, view the tutorial"
+msgstr "Так, показати інструкцію"
+
+msgid ""
+"You can choose some default settings now. Please select the settings you "
+"want to be installed."
+msgstr ""
+"Ви можете вибрати деякі стандартні налаштування зараз. Будь ласка виберіть "
+"налаштування які хочете встановити."
+
+msgid "You can choose, what you want to install..."
+msgstr "Ви можете вибрати, що хочете встановити..."
+
+msgid "You cannot delete this!"
+msgstr "Ви не можете це видалити!"
+
+msgid "You chose not to install any default services lists."
+msgstr "Не вибрано жодного стандартного списку для встановлення."
+
+msgid ""
+"You chose not to install any default settings. You can however install the "
+"default settings later in the settings menu."
+msgstr ""
+"Не вибрано жодних стандартних налаштувань до встановлення. Ви можете "
+"встановити стандартні налаштування пізніше з меню налаштувань."
+
+msgid ""
+"You chose not to install anything. Please press OK finish the install wizard."
+msgstr ""
+"Не вибрано нічого до встановлення. Натисніть ОК для завершення роботи "
+"помічника.."
+
+msgid ""
+"You do not seem to have a harddisk in your Dreambox. So backing up to a "
+"harddisk is not an option for you."
+msgstr ""
+"Здається, що нема жорсткого диску в Dreambox'і. Отже створити копію на HDD "
+"неможливо."
+
+msgid ""
+"You have chosen to backup to a compact flash card. The card must be in the "
+"slot. We do not verify if it is really used at the moment. So better backup "
+"to the harddisk!\n"
+"Please press OK to start the backup now."
+msgstr ""
+"Ви вибрали створення копії на карту CF. Карта повинна бути в слоті. "
+"Неможливо перевірити чи дійсно карта використовується зараз. Краще зробити "
+"копію на HDD!\n"
+"Натисніть на OK щоб створити копію зараз."
+
+msgid ""
+"You have chosen to backup to an usb drive. Better backup to the harddisk!\n"
+"Please press OK to start the backup now."
+msgstr ""
+"Ви вибрали створення копії на USB флеш. Краще зробити копію на HDD!\n"
+"Натисніть на OK щоб створити копію зараз."
+
+msgid ""
+"You have chosen to backup to your harddisk. Please press OK to start the "
+"backup now."
+msgstr ""
+"Ви вибрали створення копії на HDD. Будь ласка, натисніть на OK щоб створити "
+"копію зараз."
+
+msgid ""
+"You have chosen to create a new .NFI flasher bootable USB stick. This will "
+"repartition the USB stick and therefore all data on it will be erased."
+msgstr ""
+
+#, python-format
+msgid "You have to wait %s!"
+msgstr ""
+
+msgid ""
+"You need a PC connected to your dreambox. If you need further instructions, "
+"please visit the website http://www.dm7025.de.\n"
+"Your dreambox will now be halted. After you have performed the update "
+"instructions from the website, your new firmware will ask you to restore "
+"your settings."
+msgstr ""
+"Вам потрібно з'єднати PC з Вашим Drembox'ом. Якщо необхідно більше "
+"інформації, будь ласка відвідайте сайт http://www.dm7025.de.\n"
+"Зараз Ваш Drembox буде вимкнено. Після виконання всіх інструкцій з сайта, "
+"Ваше нове програмне забезпечення запропонує відновити свої налаштування."
+
+msgid ""
+"You need to define some keywords first!\n"
+"Press the menu-key to define keywords.\n"
+"Do you want to define keywords now?"
+msgstr ""
+"Спочатку Ви повинні визначити деякі ключові слова!\n"
+"Натисніть клавішу MENU, щоб визначити\n"
+"Ви хочете визначити ключові слова зараз?"
+
+msgid ""
+"You need to set a pin code and hide it from your children.\n"
+"\n"
+"Do you want to set the pin now?"
+msgstr ""
+"Ви повинні ввести PIN-код і сховати це від своїх дітей.\n"
+"\n"
+"Хочете ввести PIN-код зараз?"
+
+msgid "Your Dreambox will restart after pressing OK on your remote control."
+msgstr "Ваш Dreambox перезавантажиться після натиснення на ОК пульта ДУ."
+
+msgid "Your TV works with 50 Hz. Good!"
+msgstr "Ваш TБ працює з 50 Гц. Добре!"
+
+msgid ""
+"Your backup succeeded. We will now continue to explain the further upgrade "
+"process."
+msgstr ""
+"Копію зроблено успішно. Зараз ми продовжимо пояснення подальшого процесу "
+"оновлення."
+
+msgid "Your dreambox is shutting down. Please stand by..."
+msgstr "Ваш Dreambox вимикається. Прохання зачекати..."
+
+msgid ""
+"Your dreambox isn't connected to the internet properly. Please check it and "
+"try again."
+msgstr ""
+"Ваш Dreambox не під'єднаний до інтернету належним чином. Будь ласка "
+"перевірте і спробуйте знов."
+
+msgid ""
+"Your frontprocessor firmware must be upgraded.\n"
+"Press OK to start upgrade."
+msgstr ""
+"ПЗ фронтпроцесора повинно бути оновлене.\n"
+"Натисніть OK для початку оновлення."
+
+msgid "Your network configuration has been activated."
+msgstr ""
+
+msgid ""
+"Your network configuration has been activated.\n"
+"A second configured interface has been found.\n"
+"\n"
+"Do you want to disable the second network interface?"
+msgstr ""
+
+msgid "Zap back to service before positioner setup?"
+msgstr ""
+"Перемкнути назад на канал перед\n"
+"налаштуванням позиціонера?"
+
+msgid "Zap back to service before satfinder?"
+msgstr "Повернутись назад на канал?"
+
+msgid "[alternative edit]"
+msgstr "[редагування вибраного]"
+
+msgid "[bouquet edit]"
+msgstr "[редагування пакету]"
+
+msgid "[favourite edit]"
+msgstr "[редагування фаворитів]"
+
+msgid "[move mode]"
+msgstr "[режим переміщення]"
+
+msgid "abort alternatives edit"
+msgstr "відмінити редагування вибраного"
+
+msgid "abort bouquet edit"
+msgstr "відмінити редагування пакету"
+
+msgid "abort favourites edit"
+msgstr "відмінити редагування фаворитів"
+
+msgid "about to start"
+msgstr "Як почати"
+
+msgid "activate current configuration"
+msgstr ""
+
+msgid "add a nameserver entry"
+msgstr ""
+
+msgid "add alternatives"
+msgstr "додати вибране"
+
+msgid "add bookmark"
+msgstr "додати закладку"
+
+msgid "add bouquet"
+msgstr "додати пакет"
+
+msgid "add directory to playlist"
+msgstr "додати папку до плейлиста"
+
+msgid "add file to playlist"
+msgstr "додати файл до плейлиста"
+
+msgid "add files to playlist"
+msgstr "додати файли до плейлиста"
+
+msgid "add marker"
+msgstr "додати закладку"
+
+msgid "add recording (enter recording duration)"
+msgstr "додати запис (вкажіть тривалість запису)"
+
+msgid "add recording (enter recording endtime)"
+msgstr "додати запис (вкажіть час закінчення запису)"
+
+msgid "add recording (indefinitely)"
+msgstr "додати запис (на невизначений час)"
+
+msgid "add recording (stop after current event)"
+msgstr "додати запис (зупинити після виконання)"
+
+msgid "add service to bouquet"
+msgstr "додати канал до списку"
+
+msgid "add service to favourites"
+msgstr "додати канал до фаворитів"
+
+msgid "add to parental protection"
+msgstr "додати в батьківський контроль"
+
+msgid "advanced"
+msgstr "додати в батьківський контроль"
+
+msgid "alphabetic sort"
+msgstr "сортувати за алфавітом"
+
+msgid ""
+"are you sure you want to restore\n"
+"following backup:\n"
+msgstr ""
+"Ви дійсно бажаєте відновити\n"
+"наступну копію:\n"
+
+#, python-format
+msgid "audio track (%s) format"
+msgstr ""
+
+#, python-format
+msgid "audio track (%s) language"
+msgstr ""
+
+msgid "audio tracks"
+msgstr "звукова доріжка"
+
+msgid "back"
+msgstr "назад"
+
+msgid "background image"
+msgstr "фонове зображення"
+
+msgid "better"
+msgstr "кращий"
+
+msgid "blacklist"
+msgstr "чорний список"
+
+#, python-format
+msgid "burn audio track (%s)"
+msgstr ""
+
+msgid "by Exif"
+msgstr ""
+
+msgid "change recording (duration)"
+msgstr "змінити тривалість запису"
+
+msgid "change recording (endtime)"
+msgstr "змінити час закінчення запису"
+
+msgid "chapters"
+msgstr "фрагменти"
+
+msgid "choose destination directory"
+msgstr ""
+
+msgid "circular left"
+msgstr "кругова ліва"
+
+msgid "circular right"
+msgstr "кругова права"
+
+msgid "clear playlist"
+msgstr "очистити плейлист"
+
+msgid "color"
+msgstr "колір"
+
+msgid "complex"
+msgstr "комплексний"
+
+msgid "config menu"
+msgstr "меню конфігурації"
+
+msgid "confirmed"
+msgstr "підтверджений"
+
+msgid "connected"
+msgstr "під'єднаний"
+
+msgid "continue"
+msgstr "продовжити"
+
+msgid "copy to bouquets"
+msgstr "копіювати до пакетів"
+
+msgid "create directory"
+msgstr "створити директорію"
+
+msgid "daily"
+msgstr "щодня"
+
+msgid "day"
+msgstr "день"
+
+msgid "delete cut"
+msgstr "видалити вирізане"
+
+msgid "delete file"
+msgstr ""
+
+msgid "delete playlist entry"
+msgstr "видалити запис з плейлиста"
+
+msgid "delete saved playlist"
+msgstr "видалити збережений плейлист"
+
+msgid "delete..."
+msgstr "видалити..."
+
+msgid "disable"
+msgstr "вимкнути"
+
+msgid "disable move mode"
+msgstr "вимкнути режим переміщення"
+
+msgid "disabled"
+msgstr "вимкнуто"
+
+msgid "disconnected"
+msgstr "роз'єднано"
+
+msgid "do not change"
+msgstr "не змінювати"
+
+msgid "do nothing"
+msgstr "не робити нічого"
+
+msgid "don't record"
+msgstr "не записувати"
+
+msgid "done!"
+msgstr "виконано!"
+
+msgid "edit alternatives"
+msgstr "редагувати вибрані канали"
+
+msgid "empty"
+msgstr "пусто"
+
+msgid "enable"
+msgstr "ввівмкнути"
+
+msgid "enable bouquet edit"
+msgstr "ввівмкнути редагування пакету"
+
+msgid "enable favourite edit"
+msgstr "ввівмкнути редагування фаворитів"
+
+msgid "enable move mode"
+msgstr "ввімкнути режим переміщення"
+
+msgid "enabled"
+msgstr "ввімкнуто"
+
+msgid "end alternatives edit"
+msgstr "кінець редагування вибраного"
+
+msgid "end bouquet edit"
+msgstr "кінець редагування пакету"
+
+msgid "end cut here"
+msgstr "кінець вирізання тут"
+
+msgid "end favourites edit"
+msgstr "кінець редагування фаворитів"
+
+msgid "enigma2 and network"
+msgstr ""
+
+msgid "equal to"
+msgstr "однаково як"
+
+msgid "exceeds dual layer medium!"
+msgstr "перевищує розмір Dual-Layer диску!"
+
+msgid "exit DVD player or return to file browser"
+msgstr "вийти з DVD програвача"
+
+msgid "exit mediaplayer"
+msgstr "вийти з медіапрогравача"
+
+msgid "exit movielist"
+msgstr "вийти з списку файлів"
+
+msgid "exit nameserver configuration"
+msgstr ""
+
+msgid "exit network adapter configuration"
+msgstr ""
+
+msgid "exit network adapter setup menu"
+msgstr ""
+
+msgid "exit network interface list"
+msgstr ""
+
+msgid "exit networkadapter setup menu"
+msgstr ""
+
+msgid "failed"
+msgstr ""
+
+msgid "filename"
+msgstr "назва файлу"
+
+msgid "fine-tune your display"
+msgstr "налаштуйте зображення екрану"
+
+msgid "font face"
+msgstr "шрифт"
+
+msgid "forward to the next chapter"
+msgstr "перейти до наступного фрагменту"
+
+msgid "free"
+msgstr "вільно"
+
+msgid "free diskspace"
+msgstr "вільного місця"
+
+msgid "go to deep standby"
+msgstr "вимкнути Dreambox"
+
+msgid "go to standby"
+msgstr "перейти в режим очікування"
+
+msgid "headline"
+msgstr "надпис"
+
+msgid "hear radio..."
+msgstr "слухати радіо..."
+
+msgid "help..."
+msgstr "допомога..."
+
+msgid "hidden network"
+msgstr ""
+
+msgid "hide extended description"
+msgstr "не показувати розширений опис"
+
+msgid "hide player"
+msgstr "не показувати програвач"
+
+msgid "highlighted button"
+msgstr "підсвічена кнопка"
+
+msgid "horizontal"
+msgstr "горизонталь (H)"
+
+msgid "hour"
+msgstr "година"
+
+msgid "hours"
+msgstr "годин"
+
+msgid "immediate shutdown"
+msgstr "миттєве вимкнення"
+
+#, python-format
+msgid ""
+"incoming call!\n"
+"%s calls on %s!"
+msgstr ""
+"вхідний дзвінок!\n"
+"%s розмову почато %s!"
+
+msgid "init module"
+msgstr "ініціалізувати модуль"
+
+msgid "insert mark here"
+msgstr "вставити закладку тут"
+
+msgid "jump back to the previous title"
+msgstr "перейти до попереднього епізоду"
+
+msgid "jump forward to the next title"
+msgstr "перейти до наступного епізоду"
+
+msgid "jump to listbegin"
+msgstr "перейти до початку списку"
+
+msgid "jump to listend"
+msgstr "перейти до кінця списку"
+
+msgid "jump to next marked position"
+msgstr "перейти до наступної закладки"
+
+msgid "jump to previous marked position"
+msgstr "перейти до попередньої закладки"
+
+msgid "leave movie player..."
+msgstr "вийти з програвача..."
+
+msgid "left"
+msgstr "Лівий канал"
+
+msgid "length"
+msgstr "тривалість"
+
+msgid "list style compact"
+msgstr "компактний стиль списку"
+
+msgid "list style compact with description"
+msgstr "компактний стиль списку з описом"
+
+msgid "list style default"
+msgstr "стандартний стиль списку"
+
+msgid "list style single line"
+msgstr "простий лінійний стиль"
+
+msgid "load playlist"
+msgstr "завантажити плейлист"
+
+msgid "locked"
+msgstr "сигнал"
+
+msgid "loopthrough to"
+msgstr "зв'язаний з"
+
+msgid "manual"
+msgstr "вручну"
+
+msgid "menu"
+msgstr "меню"
+
+msgid "menulist"
+msgstr ""
+
+msgid "mins"
+msgstr "хвилин"
+
+msgid "minute"
+msgstr "хвилина"
+
+msgid "minutes"
+msgstr "хвилин"
+
+msgid "month"
+msgstr "Monat"
+
+msgid "move PiP to main picture"
+msgstr "перемістити PiP до головного зображення"
+
+msgid "move down to last entry"
+msgstr ""
+
+msgid "move down to next entry"
+msgstr ""
+
+msgid "move up to first entry"
+msgstr ""
+
+msgid "move up to previous entry"
+msgstr ""
+
+msgid "movie list"
+msgstr "список фільмів"
+
+msgid "multinorm"
+msgstr ""
+
+msgid "never"
+msgstr "ніколи"
+
+msgid "next channel"
+msgstr "наступний канал в списку"
+
+msgid "next channel in history"
+msgstr "наступний канал в історії перемикання"
+
+msgid "no"
+msgstr "Ні"
+
+msgid "no HDD found"
+msgstr "HDD не знайдено"
+
+msgid "no Picture found"
+msgstr "не знайдено зображення"
+
+msgid "no module found"
+msgstr "модуль не знайдено"
+
+msgid "no standby"
+msgstr "без режиму очікування"
+
+msgid "no timeout"
+msgstr "без зупинки"
+
+msgid "none"
+msgstr "HDD не виявлено"
+
+msgid "not locked"
+msgstr "нема сигналу"
+
+msgid "nothing connected"
+msgstr "нічого не під'єднано"
+
+msgid "of a DUAL layer medium used."
+msgstr "використовується DUAL-Layer диск."
+
+msgid "of a SINGLE layer medium used."
+msgstr "eines SINGLE-Layer-Mediums benutzt."
+
+msgid "off"
+msgstr "Ні"
+
+msgid "on"
+msgstr "Так"
+
+msgid "on READ ONLY medium."
+msgstr "на READ ONLY носії."
+
+msgid "once"
+msgstr "один раз"
+
+msgid "open nameserver configuration"
+msgstr ""
+
+msgid "open servicelist"
+msgstr "відкрити список каналів"
+
+msgid "open servicelist(down)"
+msgstr "відкрити список каналів (вниз)"
+
+msgid "open servicelist(up)"
+msgstr "відкрити список каналів (вгору)"
+
+msgid "open virtual keyboard input help"
+msgstr ""
+
+msgid "pass"
+msgstr "пароль"
+
+msgid "pause"
+msgstr "пауза"
+
+msgid "play entry"
+msgstr "відтворити вибране"
+
+msgid "play from next mark or playlist entry"
+msgstr "слід. закладка або запис плейлиста"
+
+msgid "play from previous mark or playlist entry"
+msgstr "попер. закладка або запис плейлиста"
+
+msgid "please press OK when ready"
+msgstr "Натисніть ОК коли буде виконано"
+
+msgid "please wait, loading picture..."
+msgstr "Почекайте, йде завантаження зображення..."
+
+msgid "previous channel"
+msgstr "попередній канал"
+
+msgid "previous channel in history"
+msgstr "попередній канал в історії"
+
+msgid "rebooting..."
+msgstr ""
+
+msgid "record"
+msgstr "запис"
+
+msgid "recording..."
+msgstr "йде запис..."
+
+msgid "remove a nameserver entry"
+msgstr ""
+
+msgid "remove after this position"
+msgstr "Видалити після цієї позиції"
+
+msgid "remove all alternatives"
+msgstr "видалити вибрані канали"
+
+msgid "remove all new found flags"
+msgstr "очистити список нових каналів"
+
+msgid "remove before this position"
+msgstr "видалити перед цією позицією"
+
+msgid "remove bookmark"
+msgstr "видалити закладку"
+
+msgid "remove directory"
+msgstr "видалити директорію"
+
+msgid "remove entry"
+msgstr "видалити канал зі списку"
+
+msgid "remove from parental protection"
+msgstr "видалити з батьківського контролю"
+
+msgid "remove new found flag"
+msgstr "видалити позначку new found "
+
+msgid "remove selected satellite"
+msgstr "видалити вибраний супутник"
+
+msgid "remove this mark"
+msgstr "видалити цю закладку"
+
+msgid "repeat playlist"
+msgstr "повторне програвання плейлиста"
+
+msgid "repeated"
+msgstr "повторно"
+
+msgid "rewind to the previous chapter"
+msgstr "перейти до попереднього фрагменту"
+
+msgid "right"
+msgstr "Правий канал"
+
+msgid "save last directory on exit"
+msgstr ""
+
+msgid "save playlist"
+msgstr "зберегти плейлист"
+
+msgid "save playlist on exit"
+msgstr ""
+
+msgid "scan done!"
+msgstr "пошук завершено!"
+
+#, python-format
+msgid "scan in progress - %d%% done!"
+msgstr "триває пошук - %d%% виконано!"
+
+msgid "scan state"
+msgstr "Статус пошуку"
+
+msgid "second"
+msgstr "секунда"
+
+msgid "second cable of motorized LNB"
+msgstr "другий кабель моторизованої LNB"
+
+msgid "seconds"
+msgstr "секунди"
+
+msgid "select"
+msgstr "вибрати"
+
+msgid "select .NFI flash file"
+msgstr ""
+
+msgid "select image from server"
+msgstr ""
+
+msgid "select interface"
+msgstr ""
+
+msgid "select menu entry"
+msgstr ""
+
+msgid "select movie"
+msgstr "виберіть фільм"
+
+msgid "select the movie path"
+msgstr "виберіть шлях до фільму"
+
+msgid "service pin"
+msgstr "PIN-код каналу"
+
+msgid "setup pin"
+msgstr "PIN-код налаштувань"
+
+msgid "show DVD main menu"
+msgstr "показати головне меню DVD"
+
+msgid "show EPG..."
+msgstr "показати EPG..."
+
+msgid "show all"
+msgstr "показати все"
+
+msgid "show alternatives"
+msgstr "показати вибрані канали"
+
+msgid "show event details"
+msgstr "показати деталі"
+
+msgid "show extended description"
+msgstr "показати розширений опис"
+
+msgid "show first tag"
+msgstr "показати першу помітку"
+
+msgid "show second tag"
+msgstr "показати другу помітку"
+
+msgid "show shutdown menu"
+msgstr "показати меню вимкнення"
+
+msgid "show single service EPG..."
+msgstr "показати EPG одного каналу..."
+
+msgid "show tag menu"
+msgstr "показати меню"
+
+msgid "show transponder info"
+msgstr "інформація транспондера"
+
+msgid "shuffle playlist"
+msgstr "перемішати плейлист"
+
+msgid "shutdown"
+msgstr "вимкнути"
+
+msgid "simple"
+msgstr "простий"
+
+msgid "skip backward"
+msgstr "перескочити назад"
+
+msgid "skip backward (enter time)"
+msgstr "перескочити назад (введіть час)"
+
+msgid "skip forward"
+msgstr "перескочити вперед"
+
+msgid "skip forward (enter time)"
+msgstr "перескочити вперед (введіть час)"
+
+msgid "sort by date"
+msgstr "сортувати по даті"
+
+msgid "spaces (top, between rows, left)"
+msgstr "відстані (зверху, між рядами, зліва)"
+
+msgid "standard"
+msgstr "стандартний"
+
+msgid "standby"
+msgstr "режим очікування"
+
+msgid "start cut here"
+msgstr "початок вирізання тут"
+
+msgid "start directory"
+msgstr ""
+
+msgid "start timeshift"
+msgstr "включити timeshift"
+
+msgid "stereo"
+msgstr "Стерео"
+
+msgid "stop PiP"
+msgstr "вимкнути PiP"
+
+msgid "stop entry"
+msgstr "зупинити вибране"
+
+msgid "stop recording"
+msgstr "зупинити запис"
+
+msgid "stop timeshift"
+msgstr "зупинити timeshift"
+
+msgid "swap PiP and main picture"
+msgstr "змінити PiP і головне зображення"
+
+msgid "switch to bookmarks"
+msgstr "перейти до закладок"
+
+msgid "switch to filelist"
+msgstr "перейти до списку файлів"
+
+msgid "switch to playlist"
+msgstr "перейти до плейлиста"
+
+msgid "switch to the next audio track"
+msgstr "вибрати наступну аудіо доріжку"
+
+msgid "switch to the next subtitle language"
+msgstr "вибрати наступну мову субтитрів"
+
+msgid "text"
+msgstr "текст"
+
+msgid "this recording"
+msgstr "цей запис"
+
+msgid "this service is protected by a parental control pin"
+msgstr "цей канал захищений PIN кодом"
+
+msgid "toggle a cut mark at the current position"
+msgstr "додати мітку вирізання в цю позицію"
+
+msgid "toggle time, chapter, audio, subtitle info"
+msgstr "основна інформація"
+
+msgid "unconfirmed"
+msgstr "неперевірене"
+
+msgid "unknown service"
+msgstr "невідомий канал"
+
+msgid "until restart"
+msgstr "аж до перезапуску"
+
+msgid "user defined"
+msgstr "на вибір користувача"
+
+msgid "vertical"
+msgstr "вертикальна (V)"
+
+msgid "view extensions..."
+msgstr "додаткове меню..."
+
+msgid "view recordings..."
+msgstr "перегляд записаних передач..."
+
+msgid "wait for ci..."
+msgstr "почекайте на CI..."
+
+msgid "wait for mmi..."
+msgstr "почекайте на mmi..."
+
+msgid "waiting"
+msgstr "очікування"
+
+msgid "weekly"
+msgstr "щотижня"
+
+msgid "whitelist"
+msgstr "білий список"
+
+msgid "year"
+msgstr "рік"
+
+msgid "yes"
+msgstr "Так"
+
+msgid "yes (keep feeds)"
+msgstr "Так"
+
+msgid ""
+"your dreambox might be unusable now. Please consult the manual for further "
+"assistance before rebooting your dreambox."
+msgstr ""
+"Ваш Dreambox зараз може бути непридатним для роботи. Будь ласка перегляньте "
+"інструкцію користувача перед тим як перезавантажити ваш Dreambox."
+
+msgid "zap"
+msgstr "переключити"
+
+msgid "zapped"
+msgstr "Переключений"
+
+#~ msgid ""
+#~ "\n"
+#~ "Enigma2 will restart after the restore"
+#~ msgstr ""
+#~ "\n"
+#~ "Enigma2 буде перезавантажена після відновлення"
+
+#~ msgid ""
+#~ "Are you sure you want to enable WLAN support?\n"
+#~ "Connect your Wlan USB Stick to your Dreambox and press OK.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Ви дійсно бажаєте задіяти мережу WLAN?\n"
+#~ "Підключіть WI-FI USB адаптер і натисніть OK.\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Are you sure you want to reset \n"
+#~ "your network configuration to defaults?\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Ви впевнені що Ви хочете скинути\n"
+#~ "свої налаштування мережі до стандартних?\n"
+#~ "\n"
+
+#~ msgid "Confirm"
+#~ msgstr "Перевірити"
+
+#~ msgid "Custom skip time for 1/3 keys"
+#~ msgstr "Час пропуску для клавіш 1/3"
+
+#~ msgid "DVD ENTER key"
+#~ msgstr "DVD кнопка 'ENTER'"
+
+#~ msgid "DVD down key"
+#~ msgstr "DVD кнопка 'вниз'"
+
+#~ msgid "DVD left key"
+#~ msgstr "DVD кнопка 'вліво'"
+
+#~ msgid "DVD right key"
+#~ msgstr "DVD кнопка 'вправо'"
+
+#~ msgid "DVD up key"
+#~ msgstr "DVD кнопка 'догори'"
+
+#~ msgid "Default-Wizard"
+#~ msgstr "Майстер стандартних налаштувань"
+
+#~ msgid "Device Setup..."
+#~ msgstr "Налаштування пристроїв..."
+
+#~ msgid "DiSEqC Mode"
+#~ msgstr "DiSEqC Режим"
+
+#~ msgid ""
+#~ "Do you really want to REMOVE\n"
+#~ "the plugin \""
+#~ msgstr ""
+#~ "Ви дійсно бажаєте видалити\n"
+#~ "додаток \""
+
+#~ msgid ""
+#~ "Do you really want to download\n"
+#~ "the plugin \""
+#~ msgstr ""
+#~ "Ви дійсно хочете завантажити\n"
+#~ "додаток \""
+
+#~ msgid "Do you really want to exit?"
+#~ msgstr "Ви дійсно хочете вийти?"
+
+#~ msgid "Enable WLAN Support"
+#~ msgstr "Активувати підтримку WLAN"
+
+#~ msgid "Games / Plugins"
+#~ msgstr "Ігри / Додатки"
+
+#~ msgid "Jump to video title 1 (play movie from start)"
+#~ msgstr "Перейти до епізоду 1 (з початку)"
+
+#~ msgid "Movie Menu"
+#~ msgstr "Меню фільмів"
+
+#~ msgid "Nameserver Setup..."
+#~ msgstr "Налаштування Nameserver'а..."
+
+#~ msgid ""
+#~ "No working local networkadapter found.\n"
+#~ "Please verify that you have attached a network cable and your Network is "
+#~ "configured correctly."
+#~ msgstr ""
+#~ "Не знайдено працюючого мережевого адаптера.\n"
+#~ "Перевірте чи під'єднано мережевий кабель і чи мережа налаштована вірно."
+
+#~ msgid ""
+#~ "No working wireless interface found.\n"
+#~ " Please verify that you have attached a compatible WLAN device or enable "
+#~ "you local network interface."
+#~ msgstr ""
+#~ "Не знайдено працюючого WI-FI інтерфейсу.\n"
+#~ "Перевірте чи під'єднано сумісний WLAN USB Stick і чи активовано локальну "
+#~ "мережу."
+
+#~ msgid ""
+#~ "No working wireless networkadapter found.\n"
+#~ "Please verify that you have attached a compatible WLAN USB Stick and your "
+#~ "Network is configured correctly."
+#~ msgstr ""
+#~ "Не знайдено працюючого WI-FI адаптера.\n"
+#~ "Перевірте чи під'єднано сумісний WI-FI USB адаптер і чи мережа "
+#~ "налаштована вірно."
+
+#~ msgid "No, let me choose default lists"
+#~ msgstr "Ні, дозволити мені вибрати стандартний список."
+
+#~ msgid ""
+#~ "Pressing OK enables the built in wireless LAN support of your Dreambox.\n"
+#~ "Wlan USB Sticks with Zydas ZD1211B and RAlink RT73 Chipset are "
+#~ "supported.\n"
+#~ "Connect your Wlan USB Stick to your Dreambox before pressing OK.\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Натисніть ОК для активації WI-FI мережі на вашому Dreambox.\n"
+#~ "Підтримуюються USB адаптери з чіпсетами Zydas ZD1211B i RAlink RT73.\n"
+#~ "Перед тим як натиснути OK вставте USB WI-FI адаптер.\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Recording(s) are in progress or coming up in few seconds... really reboot "
+#~ "now?"
+#~ msgstr ""
+#~ "Запис триває або розпочнеться через декілька секунд...\n"
+#~ "Дійсно перезавантажити зараз?"
+
+#~ msgid ""
+#~ "Recording(s) are in progress or coming up in few seconds... really "
+#~ "restart now?"
+#~ msgstr ""
+#~ "Запис триває або розпочнеться через декілька секунд...\n"
+#~ "Дійсно почати запис по новому?"
+
+#~ msgid ""
+#~ "Recording(s) are in progress or coming up in few seconds... really "
+#~ "shutdown now?"
+#~ msgstr ""
+#~ "Запис триває або розпочнеться через декілька секунд...\n"
+#~ "Дійсно вимкнути зараз?"
+
+#~ msgid "Reset configuration"
+#~ msgstr "Скидання налаштувань"
+
+#~ msgid ""
+#~ "Reset the network configuration of your Dreambox.\n"
+#~ "\n"
+#~ msgstr "Скинути мережеві налаштування Вашого Dreambox.\n"
+
+#~ msgid "Show files from %s"
+#~ msgstr "Показати файли %s"
+
+#~ msgid "Startwizard"
+#~ msgstr "Майстер налаштувань"
+
+#~ msgid "Step "
+#~ msgstr "Крок "
+
+#~ msgid ""
+#~ "Thank you for using the wizard. Your box is now ready to use.\n"
+#~ "Please press OK to start using you Dreambox."
+#~ msgstr ""
+#~ "Дякуєм за використання помічника. Ваш бокс готовий до використання.\n"
+#~ "Натисніть на ОК і почніть користуватись вашим Dreambox'ом."
+
+#~ msgid ""
+#~ "The installation of the default settings is finished. Your can now "
+#~ "continue configuring your Dreambox by pressing the OK button on the "
+#~ "remote control."
+#~ msgstr ""
+#~ "Встановлення стандартних параметрів завершено. Ви можете продовжити "
+#~ "налаштування Dreambox'а натиснувши OK на пульті."
+
+#~ msgid ""
+#~ "Unable to initialize harddisk.\n"
+#~ "Please refer to the user manual.\n"
+#~ "Error: "
+#~ msgstr ""
+#~ "Неможливо визначити HDD.\n"
+#~ "\n"
+#~ "Будь ласка перегляньте інструкцію.\n"
+#~ "Помилка: "
+
+#~ msgid "VCR Switch"
+#~ msgstr "Переключення VCR"
+
+#~ msgid "You have to wait for"
+#~ msgstr "Ви повинні зачекати на"
+
+#~ msgid "delete"
+#~ msgstr "видалити"
+
+#~ msgid "equal to Socket A"
+#~ msgstr "Як і тюнер A"
+
+#~ msgid "full /etc directory"
+#~ msgstr "повністю директорію /etc"
+
+#~ msgid "loopthrough to socket A"
+#~ msgstr "зв'язаний з тюнером A"
+
+#~ msgid "only /etc/enigma2 directory"
+#~ msgstr "тільки директорія /etc/enigma2"
+
+#~ msgid "play next playlist entry"
+#~ msgstr "відтворити наступний запис плейлиста"
+
+#~ msgid "play previous playlist entry"
+#~ msgstr "відтворити попередній запис плейлиста"
+
+#~ msgid ""
+#~ "scan done!\n"
+#~ "%d services found!"
+#~ msgstr ""
+#~ "пошук завершено!\n"
+#~ "%d каналів знайдено!."
+
+#~ msgid ""
+#~ "scan done!\n"
+#~ "No service found!"
+#~ msgstr ""
+#~ "пошук завершено!\n"
+#~ "Не знайдено жодного каналу!"
+
+#~ msgid ""
+#~ "scan done!\n"
+#~ "One service found!"
+#~ msgstr ""
+#~ "пошук завершено!\n"
+#~ "Один канал зайдено!"
+
+#~ msgid ""
+#~ "scan in progress - %d %% done!\n"
+#~ "%d services found!"
+#~ msgstr ""
+#~ "триває пошук - %d %% виконано!\n"
+#~ "%d каналів знайдено!"
+
+#~ msgid "skip backward (self defined)"
+#~ msgstr "перескочити назад (визнач. користувачем)"
+
+#~ msgid "skip forward (self defined)"
+#~ msgstr "перескочити вперед (визнач. користувачем)"