diff options
author | Frank Schmirler <schmirl@puter.linogate.de> | 2010-12-02 08:53:01 +0100 |
---|---|---|
committer | Frank Schmirler <schmirl@puter.linogate.de> | 2010-12-02 08:53:01 +0100 |
commit | 5e30711bfdb28085234a5ef6da4f4e44305ac3e4 (patch) | |
tree | d15809d23eeeed7fda55d9450b1af7c99d6eb5d6 /client/setup.c | |
download | vdr-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.c | 79 |
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(); +} + |