summaryrefslogtreecommitdiff
path: root/menueditkeys.c
diff options
context:
space:
mode:
authorMartin Dummer <martin.dummer@gmx.net>2012-06-18 22:18:47 +0200
committerMartin Dummer <martin.dummer@gmx.net>2012-06-18 22:18:47 +0200
commit699d66c8380cac5e22fd48cc57e274bafbfeaa6b (patch)
tree83a78ed2c01242ca403e2a4f21060edd2801d924 /menueditkeys.c
parent5c5d72ee401f48587ef385637496a3445fee94c9 (diff)
downloadvdr-plugin-undelete-0.0.4.tar.gz
vdr-plugin-undelete-0.0.4.tar.bz2
import of version 0.0.4v0.0.4
Diffstat (limited to 'menueditkeys.c')
-rw-r--r--menueditkeys.c51
1 files changed, 51 insertions, 0 deletions
diff --git a/menueditkeys.c b/menueditkeys.c
new file mode 100644
index 0000000..7eb9933
--- /dev/null
+++ b/menueditkeys.c
@@ -0,0 +1,51 @@
+/*
+ * autotimeredit: A plugin for the Video Disk Recorder
+ *
+ * See the README file for copyright information and how to reach the author.
+ *
+ * $Id: menueditkeys.c 0.4 2005/11/16 18:39:18 hflor Exp $
+ */
+
+#include "menueditkeys.h"
+#include "undelete.h"
+
+// --- cMenuEditKeysItem -----------------------------------------------------
+
+cMenuEditKeysItem::cMenuEditKeysItem(const char *Name, int *Value)
+:cMenuEditStraItem(Name, Value, MaxKeysName, KeysName)
+{
+}
+
+eOSState cMenuEditKeysItem::ProcessKey(eKeys Key)
+{
+ eOSState state = osUnknown;
+
+ int newkey = -1;
+ switch (Key)
+ {
+ case kBlue: newkey += 2; // no break!
+ case kYellow: newkey += 2; // no break!
+ case kGreen: newkey += 2; // no break!
+ case kRed: newkey += 2; // newkey red=1 green=3 yellow=5 blue=7
+ if (*value == newkey)
+ newkey++;
+ if (*value == (newkey + 1))
+ newkey = 0;
+ break;
+ case k0...k9: newkey = Key - k0 + 9;
+ break;
+ case kUser1...kUser9: newkey = Key - kUser1 + 19;
+ break;
+ default: state = cMenuEditStraItem::ProcessKey(Key);
+ break;
+ }
+ if (*value == newkey)
+ newkey = 0;
+ if (newkey >= 0)
+ {
+ state = osContinue;
+ *value = newkey;
+ Set();
+ }
+ return state;
+}