summaryrefslogtreecommitdiff
path: root/client/setup.c
diff options
context:
space:
mode:
authorFrank Schmirler <schmirl@puter.linogate.de>2010-12-02 08:53:01 +0100
committerFrank Schmirler <schmirl@puter.linogate.de>2010-12-02 08:53:01 +0100
commit5e30711bfdb28085234a5ef6da4f4e44305ac3e4 (patch)
treed15809d23eeeed7fda55d9450b1af7c99d6eb5d6 /client/setup.c
downloadvdr-plugin-streamdev-5e30711bfdb28085234a5ef6da4f4e44305ac3e4.tar.gz
vdr-plugin-streamdev-5e30711bfdb28085234a5ef6da4f4e44305ac3e4.tar.bz2
Snapshot 2007-03-20
Diffstat (limited to 'client/setup.c')
-rw-r--r--client/setup.c79
1 files changed, 79 insertions, 0 deletions
diff --git a/client/setup.c b/client/setup.c
new file mode 100644
index 0000000..8d7b9cb
--- /dev/null
+++ b/client/setup.c
@@ -0,0 +1,79 @@
+/*
+ * $Id: setup.c,v 1.2 2005/02/08 15:34:38 lordjaxom Exp $
+ */
+
+#include <vdr/menuitems.h>
+
+#include "client/setup.h"
+#include "client/device.h"
+#include "i18n.h"
+
+cStreamdevClientSetup StreamdevClientSetup;
+
+cStreamdevClientSetup::cStreamdevClientSetup(void) {
+ StartClient = false;
+ RemotePort = 2004;
+#if VDRVERSNUM >= 10300
+ StreamFilters = false;
+#endif
+ SyncEPG = false;
+ strcpy(RemoteIp, "");
+}
+
+bool cStreamdevClientSetup::SetupParse(const char *Name, const char *Value) {
+ if (strcmp(Name, "StartClient") == 0) StartClient = atoi(Value);
+ else if (strcmp(Name, "RemoteIp") == 0) {
+ if (strcmp(Value, "-none-") == 0)
+ strcpy(RemoteIp, "");
+ else
+ strcpy(RemoteIp, Value);
+ }
+ else if (strcmp(Name, "RemotePort") == 0) RemotePort = atoi(Value);
+#if VDRVERSNUM >= 10300
+ else if (strcmp(Name, "StreamFilters") == 0) StreamFilters = atoi(Value);
+#endif
+ else if (strcmp(Name, "SyncEPG") == 0) SyncEPG = atoi(Value);
+ else return false;
+ return true;
+}
+
+cStreamdevClientMenuSetupPage::cStreamdevClientMenuSetupPage(void) {
+ m_NewSetup = StreamdevClientSetup;
+
+ AddBoolEdit (tr("Start Client"), m_NewSetup.StartClient);
+ AddIpEdit (tr("Remote IP"), m_NewSetup.RemoteIp);
+ AddShortEdit(tr("Remote Port"), m_NewSetup.RemotePort);
+#if VDRVERSNUM >= 10300
+ AddBoolEdit (tr("Filter Streaming"), m_NewSetup.StreamFilters);
+#endif
+ AddBoolEdit (tr("Synchronize EPG"), m_NewSetup.SyncEPG);
+ SetCurrent(Get(0));
+}
+
+cStreamdevClientMenuSetupPage::~cStreamdevClientMenuSetupPage() {
+}
+
+void cStreamdevClientMenuSetupPage::Store(void) {
+ if (m_NewSetup.StartClient != StreamdevClientSetup.StartClient) {
+ if (m_NewSetup.StartClient)
+ cStreamdevDevice::Init();
+ else
+ INFO(tr("Please restart VDR to activate changes"));
+ }
+
+ SetupStore("StartClient", m_NewSetup.StartClient);
+ if (strcmp(m_NewSetup.RemoteIp, "") == 0)
+ SetupStore("RemoteIp", "-none-");
+ else
+ SetupStore("RemoteIp", m_NewSetup.RemoteIp);
+ SetupStore("RemotePort", m_NewSetup.RemotePort);
+#if VDRVERSNUM >= 10300
+ SetupStore("StreamFilters", m_NewSetup.StreamFilters);
+#endif
+ SetupStore("SyncEPG", m_NewSetup.SyncEPG);
+
+ StreamdevClientSetup = m_NewSetup;
+
+ cStreamdevDevice::ReInit();
+}
+