summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY12
-rw-r--r--Makefile81
-rw-r--r--README26
-rw-r--r--config.h1
-rw-r--r--po/de_DE.po28
-rw-r--r--po/es_ES.po18
-rw-r--r--po/fi_FI.po18
-rw-r--r--po/fr_FR.po14
-rw-r--r--po/it_IT.po22
-rw-r--r--po/sk_SK.po26
-rw-r--r--zappilot.c4
-rw-r--r--zappilotosd.c24
-rw-r--r--zappilotosd.h1
-rw-r--r--zappilotsetup.c4
-rw-r--r--zappilotsetup.h1
15 files changed, 176 insertions, 104 deletions
diff --git a/HISTORY b/HISTORY
index d0cc20c..82458dc 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,11 +1,15 @@
VDR Plugin 'zappilot' Revision History
------------------------------------
-2010-??-??:Version 0.0.5
- - reformated code
+--------------------------------------
+2013-03-17:Version 0.0.5
+ - skip changing channel when pressing OK button on the same channel
+ - added alternative key layout for fast browse mode
+ (up/down switches channels, left/right next/previous epg item)
+ - updated Makefile for vdr-1.7.34+
+ - reformatted code
- added support for epgsearch switch timer
- in fast browse mode yellow and blue buttons now change the channel group
-2010-08-06:Version 0.0.4
+2010-08-06: Version 0.0.4
- Renamed plugin to zappilot
- Added fast browse
- Moved homepage to http://projects.vdr-developer.org/projects/show/plg-zappilot
diff --git a/Makefile b/Makefile
index 11beff4..e29afd1 100644
--- a/Makefile
+++ b/Makefile
@@ -6,51 +6,50 @@
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
# By default the main source file also carries this name.
-# IMPORTANT: the presence of this macro is important for the Make.config
-# file. So it must be defined, even if it is not used here!
-#
+
PLUGIN = zappilot
### The version number of this plugin (taken from the main source file):
VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ print $$6 }' | sed -e 's/[";]//g')
-### The C++ compiler and options:
-
-CXX ?= g++
-CXXFLAGS ?= -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses
-
### The directory environment:
-VDRDIR = ../../..
-LIBDIR = ../../lib
-TMPDIR = /tmp
-
-### Make sure that necessary options are included:
+# Use package data if installed...otherwise assume we're under the VDR source directory:
+PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell pkg-config --variable=$(1) vdr || pkg-config --variable=$(1) ../../../vdr.pc))
+LIBDIR = $(call PKGCFG,libdir)
+LOCDIR = $(call PKGCFG,locdir)
+PLGCFG = $(call PKGCFG,plgcfg)
+#
+TMPDIR ?= /tmp
-### For backward compatibility vdr-1.6.0:
-CXXFLAGS += -fPIC
+### The compiler options:
--include $(VDRDIR)/Make.global
+export CFLAGS = $(call PKGCFG,cflags)
+export CXXFLAGS = $(call PKGCFG,cxxflags)
-### Allow user defined options to overwrite defaults:
+### The version number of VDR's plugin API:
--include $(VDRDIR)/Make.config
+APIVERSION = $(call PKGCFG,apiversion)
-### The version number of VDR's plugin API (taken from VDR's "config.h"):
+### Allow user defined options to overwrite defaults:
-APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
+-include $(PLGCFG)
### The name of the distribution archive:
ARCHIVE = $(PLUGIN)-$(VERSION)
PACKAGE = vdr-$(ARCHIVE)
+### The name of the shared object file:
+
+SOFILE = libvdr-$(PLUGIN).so
+
### Includes and Defines (add further entries here):
-INCLUDES += -I$(VDRDIR)/include
+INCLUDES +=
-DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
+DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
### The object files (add further files here):
@@ -58,54 +57,59 @@ OBJS = $(PLUGIN).o zappilotosd.o zappilotsetup.o
### The main target:
-all: libvdr-$(PLUGIN).so i18n
+all: $(SOFILE) i18n
### Implicit rules:
%.o: %.c
- $(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $<
+ $(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) -o $@ $<
### Dependencies:
MAKEDEP = $(CXX) -MM -MG
DEPFILE = .dependencies
$(DEPFILE): Makefile
- @$(MAKEDEP) $(DEFINES) $(INCLUDES) $(OBJS:%.o=%.c) > $@
+ @$(MAKEDEP) $(CXXFLAGS) $(DEFINES) $(INCLUDES) $(OBJS:%.o=%.c) > $@
-include $(DEPFILE)
### Internationalization (I18N):
PODIR = po
-LOCALEDIR = $(VDRDIR)/locale
I18Npo = $(wildcard $(PODIR)/*.po)
-I18Nmsgs = $(addprefix $(LOCALEDIR)/, $(addsuffix /LC_MESSAGES/vdr-$(PLUGIN).mo, $(notdir $(foreach file, $(I18Npo), $(basename $(file))))))
+I18Nmo = $(addsuffix .mo, $(foreach file, $(I18Npo), $(basename $(file))))
+I18Nmsgs = $(addprefix $(DESTDIR)$(LOCDIR)/, $(addsuffix /LC_MESSAGES/vdr-$(PLUGIN).mo, $(notdir $(foreach file, $(I18Npo), $(basename $(file))))))
I18Npot = $(PODIR)/$(PLUGIN).pot
%.mo: %.po
msgfmt -c -o $@ $<
$(I18Npot): $(wildcard *.c)
- xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --msgid-bugs-address='<see README>' -o $@ $^
+ xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --package-name=vdr-$(PLUGIN) --package-version=$(VERSION) --msgid-bugs-address='<see README>' -o $@ `ls $^`
%.po: $(I18Npot)
- msgmerge -U --no-wrap --no-location --backup=none -q $@ $<
+ msgmerge -U --no-wrap --no-location --backup=none -q -N $@ $<
@touch $@
-$(I18Nmsgs): $(LOCALEDIR)/%/LC_MESSAGES/vdr-$(PLUGIN).mo: $(PODIR)/%.mo
- @mkdir -p $(dir $@)
- cp $< $@
+$(I18Nmsgs): $(DESTDIR)$(LOCDIR)/%/LC_MESSAGES/vdr-$(PLUGIN).mo: $(PODIR)/%.mo
+ install -D -m644 $< $@
.PHONY: i18n
-i18n: $(I18Nmsgs) $(I18Npot)
+i18n: $(I18Nmo) $(I18Npot)
+
+install-i18n: $(I18Nmsgs)
### Targets:
-libvdr-$(PLUGIN).so: $(OBJS)
- $(CXX) $(CXXFLAGS) -shared $(OBJS) -o $@
- @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
+$(SOFILE): $(OBJS)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) -o $@
+
+install-lib: $(SOFILE)
+ install -D $^ $(DESTDIR)$(LIBDIR)/$^.$(APIVERSION)
+
+install: install-lib install-i18n
-dist: clean
+dist: $(I18Npo) clean
@-rm -rf $(TMPDIR)/$(ARCHIVE)
@mkdir $(TMPDIR)/$(ARCHIVE)
@cp -a * $(TMPDIR)/$(ARCHIVE)
@@ -114,4 +118,5 @@ dist: clean
@echo Distribution package created as $(PACKAGE).tgz
clean:
- @-rm -f $(OBJS) $(DEPFILE) *.so *.tgz core* *~ $(PODIR)/*.mo $(PODIR)/*.pot
+ @-rm -f $(PODIR)/*.mo $(PODIR)/*.pot
+ @-rm -f $(OBJS) $(DEPFILE) *.so *.tgz core* *~
diff --git a/README b/README
index ff09ad8..e707c95 100644
--- a/README
+++ b/README
@@ -35,7 +35,7 @@ User1 @zappilot
Customization:
-------------
-Pilot plugin can be tuned to your own preferences.
+Zappilot plugin can be tuned to your own preferences.
Go to Configuration/Plugins/zappilot to access the setup menu.
Hide main menu entry : Hide the plugin entry in the main menu
Close on OK : Close the Pilot plugin when pressing OK button
@@ -43,6 +43,10 @@ Close on OK : Close the Pilot plugin when pressing OK button
Otherwise, switch to the channel but keep
the pilot opened.
Fast browse : Changes keys for faster EPG browsing
+
+Fast browse (alt. key layout) :
+ like fast browse mode but up/down key switches channel and left/right the epg entries
+
Switch timer : If the plugin epgsearch is found, switch timer can
be set by pressing 0.
Switch ... minutes
@@ -56,7 +60,7 @@ DOWN : go one channel down
LEFT : go prev group
RIGHT : go next group
OK : switch to the selected channel
-BACK : exit Pilotskin plugin
+BACK : exit Zappilot plugin
RED : edit a timer
GREEN : Show extra infos
YELLOW : previous event
@@ -70,14 +74,28 @@ DOWN : next event
LEFT : prev channel
RIGHT : next channel up go next group
OK : switch to the selected channel
-BACK : exit Pilotskin plugin
+BACK : exit Zappilot plugin
RED : edit a timer
GREEN : Show extra infos
YELLOW : go prev group
BLUE : go next group
0 : adds/deletes epgsearch switch timer
+Usage fast browse (alt. key layout):
+-----------------
+UP : next channel
+DOWN : prev channel
+LEFT : next event
+RIGHT : prev event
+OK : switch to the selected channel
+BACK : exit Zappilot plugin
+RED : edit a timer
+GREEN : Show extra infos
+YELLOW : go prev group
+BLUE : go next group
+0 : adds/deletes epgsearch switch timer
To do:
------
+------
+
diff --git a/config.h b/config.h
index 42ca882..867255b 100644
--- a/config.h
+++ b/config.h
@@ -8,6 +8,7 @@ struct sZappilotConfig
int closeonswitch;
int hidemenu;
int fastbrowse;
+ int fastbrowsealt;
int switchtimer;
int switchminsbefore;
cPlugin* pEPGSearch;
diff --git a/po/de_DE.po b/po/de_DE.po
index cc7d9e5..1495a6d 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
@@ -1,18 +1,19 @@
-# VDR plugin language source file.
-# Copyright (C) 2007 Klaus Schmidinger <kls@cadsoft.de>
+# VDR language source file.
+# Copyright (C) 2013 Klaus Schmidinger <vdr@tvdr.de>
# This file is distributed under the same license as the VDR package.
-# Klaus Schmidinger <kls@cadsoft.de>, 2000
+# Klaus Schmidinger <vdr@tvdr.de>, 2000-2008
#
msgid ""
msgstr ""
-"Project-Id-Version: VDR 1.5.7\n"
+"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2010-09-30 17:11+0200\n"
-"PO-Revision-Date: 2007-08-21 23:24+0200\n"
-"Last-Translator: Klaus Schmidinger <kls@cadsoft.de>\n"
-"Language-Team: <vdr@linuxtv.org>\n"
+"POT-Creation-Date: 2013-03-16 13:28+0100\n"
+"PO-Revision-Date: 2010-01-16 16:46+0100\n"
+"Last-Translator: gnapheus <>\n"
+"Language-Team: German <vdr@linuxtv.org>\n"
+"Language: de\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "A zapping co-pilot"
@@ -25,17 +26,20 @@ msgid "Switch timer added!"
msgstr "Umschalttimer angelegt!"
msgid "Switch timer deleted!"
-msgstr "Umschalttimer gelöscht!"
+msgstr "Umschalttimer gelöscht!"
msgid "Close on OK"
-msgstr "Schließen bei OK"
+msgstr "Schließen bei OK"
msgid "Hide main menu entry"
-msgstr "Hauptmenüeintrag verstecken"
+msgstr "Hauptmenüeintrag verstecken"
msgid "Fast browse"
msgstr "Schnell navigieren"
+msgid "Fast browse (alt. key layout)"
+msgstr "Schnell navigieren (alt. Tastenbelegung)"
+
msgid "Switch timer"
msgstr "Umschalttimer"
diff --git a/po/es_ES.po b/po/es_ES.po
index 4ba850a..d7cbadf 100644
--- a/po/es_ES.po
+++ b/po/es_ES.po
@@ -1,18 +1,19 @@
-# VDR plugin language source file.
-# Copyright (C) 2007 Klaus Schmidinger <kls@cadsoft.de>
+# VDR language source file.
+# Copyright (C) 2013 Klaus Schmidinger <vdr@tvdr.de>
# This file is distributed under the same license as the VDR package.
-# Ruben Nunez Francisco <ruben.nunez@tang-it.com>, 2002
+# Ruben Nunez Francisco <ruben.nunez@tang-it.com> 2007
#
msgid ""
msgstr ""
-"Project-Id-Version: VDR 1.5.7\n"
+"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2010-09-30 17:11+0200\n"
+"POT-Creation-Date: 2013-03-16 13:01+0100\n"
"PO-Revision-Date: 2007-08-21 23:24+0200\n"
"Last-Translator: Ruben Nunez Francisco <ruben.nunez@tang-it.com>\n"
"Language-Team: <vdr@linuxtv.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "A zapping co-pilot"
@@ -31,11 +32,14 @@ msgid "Close on OK"
msgstr ""
msgid "Hide main menu entry"
-msgstr "Ocultar en el menú principal"
+msgstr "Ocultar en el menú principal"
msgid "Fast browse"
msgstr ""
+msgid "Fast browse (alt. key layout)"
+msgstr ""
+
msgid "Switch timer"
msgstr ""
diff --git a/po/fi_FI.po b/po/fi_FI.po
index 0159de6..5721f85 100644
--- a/po/fi_FI.po
+++ b/po/fi_FI.po
@@ -1,21 +1,22 @@
-# VDR plugin language source file.
-# Copyright (C) 2007 Klaus Schmidinger <kls@cadsoft.de>
+# VDR language source file.
+# Copyright (C) 2013 Klaus Schmidinger <vdr@tvdr.de>
# This file is distributed under the same license as the VDR package.
# Hannu Savolainen <hannu@opensound.com>, 2002
-# Jaakko Hyvätti <jaakko@hyvatti.iki.fi>, 2002
+# Jaakko Hyvätti <jaakko@hyvatti.iki.fi>, 2002
# Niko Tarnanen <niko.tarnanen@hut.fi>, 2003
# Rolf Ahrenberg <rahrenbe@cc.hut.fi>, 2003
#
msgid ""
msgstr ""
-"Project-Id-Version: VDR 1.5.7\n"
+"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2010-09-30 17:11+0200\n"
+"POT-Creation-Date: 2013-03-16 13:01+0100\n"
"PO-Revision-Date: 2007-08-21 23:24+0200\n"
"Last-Translator: Rolf Ahrenberg <rahrenbe@cc.hut.fi>\n"
"Language-Team: <vdr@linuxtv.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "A zapping co-pilot"
@@ -34,11 +35,14 @@ msgid "Close on OK"
msgstr "Sulje painamalla OK"
msgid "Hide main menu entry"
-msgstr "Piilota valinta päävalikosta"
+msgstr "Piilota valinta päävalikosta"
msgid "Fast browse"
msgstr ""
+msgid "Fast browse (alt. key layout)"
+msgstr ""
+
msgid "Switch timer"
msgstr ""
diff --git a/po/fr_FR.po b/po/fr_FR.po
index e8deaec..bc3631c 100644
--- a/po/fr_FR.po
+++ b/po/fr_FR.po
@@ -1,5 +1,5 @@
-# VDR plugin language source file.
-# Copyright (C) 2007 Klaus Schmidinger <kls@cadsoft.de>
+# VDR language source file.
+# Copyright (C) 2013 Klaus Schmidinger <vdr@tvdr.de>
# This file is distributed under the same license as the VDR package.
# Jean-Claude Repetto <jc@repetto.org>, 2001
# Olivier Jacques <jacquesolivier@hotmail.com>, 2003
@@ -8,14 +8,15 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: VDR 1.5.7\n"
+"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2010-09-30 17:11+0200\n"
+"POT-Creation-Date: 2013-03-16 13:01+0100\n"
"PO-Revision-Date: 2007-08-21 23:24+0200\n"
"Last-Translator: Nicolas Huillard <nhuillard@e-dition.fr>\n"
"Language-Team: <vdr@linuxtv.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "A zapping co-pilot"
@@ -39,6 +40,9 @@ msgstr "Masquer dans le menu principal"
msgid "Fast browse"
msgstr ""
+msgid "Fast browse (alt. key layout)"
+msgstr ""
+
msgid "Switch timer"
msgstr ""
diff --git a/po/it_IT.po b/po/it_IT.po
index 3dfb320..2e959af 100644
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -1,22 +1,20 @@
-# VDR plugin language source file.
-# Copyright (C) 2007 Klaus Schmidinger <kls@cadsoft.de>
+# VDR language source file.
+# Copyright (C) 2013 Klaus Schmidinger <vdr@tvdr.de>
# This file is distributed under the same license as the VDR package.
-# Klaus Schmidinger <kls@cadsoft.de>, 2000
+# Diego Pierotto <vdr-italian@tiscali.it>, 2010
#
msgid ""
msgstr ""
-"Project-Id-Version: VDR 1.5.7\n"
+"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2010-09-30 17:27+0200\n"
+"POT-Creation-Date: 2013-03-16 13:01+0100\n"
"PO-Revision-Date: 2010-08-09 19:40+0100\n"
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
-"Language-Team: <vdr@linuxtv.org>\n"
+"Language-Team: <vdr@linuxtv.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Italian\n"
-"X-Poedit-Country: ITALY\n"
-"X-Poedit-SourceCharset: utf-8\n"
msgid "A zapping co-pilot"
msgstr "Assistente per il cambio canale"
@@ -39,9 +37,11 @@ msgstr "Nascondi voce menu principale"
msgid "Fast browse"
msgstr "Sfoglia veloce"
+msgid "Fast browse (alt. key layout)"
+msgstr ""
+
msgid "Switch timer"
msgstr ""
msgid "Switch ... minutes before start"
msgstr "Cambia ... minuti prima dell'inizio"
-
diff --git a/po/sk_SK.po b/po/sk_SK.po
index 13aa8ed..dd7b156 100644
--- a/po/sk_SK.po
+++ b/po/sk_SK.po
@@ -1,22 +1,23 @@
-# SOME DESCRIPTIVE TITLE.
-# 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.
+# VDR language source file.
+# Copyright (C) 2013 Klaus Schmidinger <vdr@tvdr.de>
+# This file is distributed under the same license as the VDR package.
+# Milan Hrala <hrala.milan@gmail.com>
#
msgid ""
msgstr ""
"Project-Id-Version: zappilot-0.0.4\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2011-06-12 18:10+0200\n"
+"POT-Creation-Date: 2013-03-16 13:01+0100\n"
"PO-Revision-Date: 2011-02-15 21:31+0100\n"
"Last-Translator: Milan Hrala <hrala.milan@gmail.com>\n"
"Language-Team: Milan Hrala <hrala.milan@gmail.com>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=iso-8859-2\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "A zapping co-pilot"
-msgstr "Prepínanie co-pilota"
+msgstr "Prepínanie co-pilota"
msgid "ZapPilot"
msgstr ""
@@ -28,16 +29,19 @@ msgid "Switch timer deleted!"
msgstr ""
msgid "Close on OK"
-msgstr "Zavrie» pri stlaèení OK"
+msgstr "Zavrie pri stlaèení OK"
msgid "Hide main menu entry"
-msgstr "Schova» v hlavnom menu"
+msgstr "Schova v hlavnom menu"
msgid "Fast browse"
-msgstr "Rýchlej¹ia navigácia"
+msgstr "Rýchlejšia navigácia"
+
+msgid "Fast browse (alt. key layout)"
+msgstr ""
msgid "Switch timer"
msgstr ""
msgid "Switch ... minutes before start"
-msgstr ""
+msgstr "Rýchlejšia navigácia"
diff --git a/zappilot.c b/zappilot.c
index 3cbdd95..06e1147 100644
--- a/zappilot.c
+++ b/zappilot.c
@@ -12,7 +12,7 @@
#include <vdr/plugin.h>
-static const char *VERSION = "0.0.4";
+static const char *VERSION = "0.0.5";
static const char *DESCRIPTION = trNOOP("A zapping co-pilot");
static const char *MAINMENUENTRY = trNOOP("ZapPilot");
@@ -48,6 +48,7 @@ cPluginZappilot::cPluginZappilot(void)
config.closeonswitch=1;
config.hidemenu=0;
config.fastbrowse=0;
+ config.fastbrowsealt=0;
config.switchtimer=0;
config.switchminsbefore=1;
config.pEPGSearch=NULL;
@@ -114,6 +115,7 @@ bool cPluginZappilot::SetupParse(const char *Name, const char *Value)
if (!strcasecmp(Name, "CloseOnSwitch")) config.closeonswitch = atoi(Value);
else if (!strcasecmp(Name, "HideMenu")) config.hidemenu = atoi(Value);
else if (!strcasecmp(Name, "FastBrowse")) config.fastbrowse = atoi(Value);
+ else if (!strcasecmp(Name, "FastBrowseAlt")) config.fastbrowsealt = atoi(Value);
else if (!strcasecmp(Name, "SwitchTimer")) config.switchtimer = atoi(Value);
else if (!strcasecmp(Name, "SwitchMinsBefore")) config.switchminsbefore = atoi(Value);
else
diff --git a/zappilotosd.c b/zappilotosd.c
index eb5036a..898a921 100644
--- a/zappilotosd.c
+++ b/zappilotosd.c
@@ -268,6 +268,7 @@ void cZappilotOsd::Show()
{
// find the actual current
cChannel *Channel = Channels.GetByNumber(cDevice::PrimaryDevice()->CurrentChannel());
+ currentChannel = Channels.GetByNumber(cDevice::PrimaryDevice()->CurrentChannel());
if (Channel)
{
@@ -367,6 +368,13 @@ eOSState cZappilotOsd::ProcessKey(eKeys Key)
group = channel->Index()-1;
break;
}
+ else if (config.fastbrowsealt)
+ {
+ // Scroll back in time
+ UpdateEPGInfo(3);
+ DrawMenu(0,0);
+ return osContinue;
+ }
case kRight|k_Repeat:
case kRight:
if (config.fastbrowse)
@@ -377,6 +385,13 @@ eOSState cZappilotOsd::ProcessKey(eKeys Key)
group = channel->Index()-1;
break;
}
+ else if (config.fastbrowsealt)
+ {
+ // Scroll forward in time
+ UpdateEPGInfo(2);
+ DrawMenu(0,0);
+ return osContinue;
+ }
else
{
if (group < 0)
@@ -678,10 +693,13 @@ void cZappilotOsd::CursorDown()
void cZappilotOsd::CursorOK()
{
DrawMenu(0,2);
- cChannel *Channel = Channels.GetByNumber(PilotChannelNumber);
- if (Channel)
+ if (currentChannel != Channels.GetByNumber(PilotChannelNumber))
{
- cDevice::PrimaryDevice()->SwitchChannel(Channel, true);
+ cChannel *Channel = Channels.GetByNumber(PilotChannelNumber);
+ if (Channel)
+ {
+ cDevice::PrimaryDevice()->SwitchChannel(Channel, true);
+ }
}
}
diff --git a/zappilotosd.h b/zappilotosd.h
index 3f5aef5..d455fc4 100644
--- a/zappilotosd.h
+++ b/zappilotosd.h
@@ -39,6 +39,7 @@ class cZappilotOsd : public cOsdObject
int offset;
int lines;
int type;
+ cChannel* currentChannel;
public:
cZappilotOsd(void);
diff --git a/zappilotsetup.c b/zappilotsetup.c
index 7b6f5a6..888205c 100644
--- a/zappilotsetup.c
+++ b/zappilotsetup.c
@@ -15,12 +15,14 @@ cZappilotSetup::cZappilotSetup(void)
CloseOnSwitch = config.closeonswitch;
Hidemenu = config.hidemenu;
FastBrowse = config.fastbrowse;
+ FastBrowseAlt = config.fastbrowsealt;
SwitchTimer = config.switchtimer;
SwitchMinsBefore = config.switchminsbefore;
Add(new cMenuEditBoolItem( tr("Close on OK"), &CloseOnSwitch));
Add(new cMenuEditBoolItem( tr("Hide main menu entry"), &Hidemenu, trVDR("no"), trVDR("yes")));
Add(new cMenuEditBoolItem( tr("Fast browse"), &FastBrowse, trVDR("no"), trVDR("yes")));
+ Add(new cMenuEditBoolItem( tr("Fast browse (alt. key layout)"), &FastBrowseAlt, trVDR("no"), trVDR("yes")));
if (config.pEPGSearch)
{
Add(new cMenuEditBoolItem( tr("Switch timer"), &SwitchTimer, trVDR("no"), trVDR("yes")));
@@ -28,12 +30,12 @@ cZappilotSetup::cZappilotSetup(void)
}
}
-
void cZappilotSetup::Store(void)
{
SetupStore("CloseOnSwitch", config.closeonswitch = CloseOnSwitch);
SetupStore("Hidemenu", config.hidemenu = Hidemenu);
SetupStore("FastBrowse", config.fastbrowse = FastBrowse);
+ SetupStore("FastBrowseAlt", config.fastbrowsealt = FastBrowseAlt);
SetupStore("SwitchTimer", config.switchtimer = SwitchTimer);
SetupStore("SwitchMinsBefore", config.switchminsbefore = SwitchMinsBefore);
}
diff --git a/zappilotsetup.h b/zappilotsetup.h
index 98d0b43..2b0cb71 100644
--- a/zappilotsetup.h
+++ b/zappilotsetup.h
@@ -9,6 +9,7 @@ class cZappilotSetup : public cMenuSetupPage
int CloseOnSwitch;
int Hidemenu;
int FastBrowse;
+ int FastBrowseAlt;
int SwitchTimer;
int SwitchMinsBefore;
protected: