diff options
author | schmirl <schmirl> | 2009-09-18 10:41:41 +0000 |
---|---|---|
committer | schmirl <schmirl> | 2009-09-18 10:41:41 +0000 |
commit | 1cf41fb16f8a0ea06fa0dd8cabadc8a3e3610dc6 (patch) | |
tree | 252d15da3ce3dbe8813a70854fe67537c5037c83 /server/setup.c | |
parent | 6fb88f8d99af82c301ace0f0448eb7dbb964f2be (diff) | |
download | vdr-plugin-streamdev-1cf41fb16f8a0ea06fa0dd8cabadc8a3e3610dc6.tar.gz vdr-plugin-streamdev-1cf41fb16f8a0ea06fa0dd8cabadc8a3e3610dc6.tar.bz2 |
- cleaned up common.h / common.c
- dropped cStreamdevMenuSetupPage
Diffstat (limited to 'server/setup.c')
-rw-r--r-- | server/setup.c | 61 |
1 files changed, 46 insertions, 15 deletions
diff --git a/server/setup.c b/server/setup.c index 710b1fa..3d93b6b 100644 --- a/server/setup.c +++ b/server/setup.c @@ -1,5 +1,5 @@ /* - * $Id: setup.c,v 1.6 2009/02/13 10:39:22 schmirl Exp $ + * $Id: setup.c,v 1.7 2009/09/18 10:43:26 schmirl Exp $ */ #include <vdr/menuitems.h> @@ -45,35 +45,66 @@ bool cStreamdevServerSetup::SetupParse(const char *Name, const char *Value) { return true; } +const char* cStreamdevServerMenuSetupPage::StreamTypes[st_Count - 1] = { + "TS", + "PES", + "PS", + "ES", + "Extern" +}; + +const char* cStreamdevServerMenuSetupPage::SuspendModes[sm_Count] = { + "Offer suspend mode", + "Always suspended", + "Never suspended" +}; + cStreamdevServerMenuSetupPage::cStreamdevServerMenuSetupPage(void) { m_NewSetup = StreamdevServerSetup; + static const char* modes[sm_Count]; + for (int i = 0; i < sm_Count; i++) + modes[i] = tr(SuspendModes[i]); + AddCategory (tr("Common Settings")); - AddRangeEdit(tr("Maximum Number of Clients"), m_NewSetup.MaxClients, 0, 100); - AddSuspEdit (tr("Suspend behaviour"), m_NewSetup.SuspendMode); - AddBoolEdit (tr("Client may suspend"), m_NewSetup.AllowSuspend); + Add(new cMenuEditIntItem (tr("Maximum Number of Clients"), &m_NewSetup.MaxClients, 0, 100)); + + Add(new cMenuEditStraItem(tr("Suspend behaviour"), &m_NewSetup.SuspendMode, sm_Count, modes)); + Add(new cMenuEditBoolItem(tr("Client may suspend"), &m_NewSetup.AllowSuspend)); AddCategory (tr("VDR-to-VDR Server")); - AddBoolEdit (tr("Start VDR-to-VDR Server"), m_NewSetup.StartVTPServer); - AddShortEdit(tr("VDR-to-VDR Server Port"), m_NewSetup.VTPServerPort); - AddIpEdit (tr("Bind to IP"), m_NewSetup.VTPBindIP); + Add(new cMenuEditBoolItem(tr("Start VDR-to-VDR Server"), &m_NewSetup.StartVTPServer)); + Add(new cMenuEditIntItem (tr("VDR-to-VDR Server Port"), &m_NewSetup.VTPServerPort, 0, 65535)); + Add(new cMenuEditIpItem (tr("Bind to IP"), m_NewSetup.VTPBindIP)); AddCategory (tr("HTTP Server")); - AddBoolEdit (tr("Start HTTP Server"), m_NewSetup.StartHTTPServer); - AddShortEdit(tr("HTTP Server Port"), m_NewSetup.HTTPServerPort); - AddTypeEdit (tr("HTTP Streamtype"), m_NewSetup.HTTPStreamType); - AddIpEdit (tr("Bind to IP"), m_NewSetup.HTTPBindIP); + Add(new cMenuEditBoolItem(tr("Start HTTP Server"), &m_NewSetup.StartHTTPServer)); + Add(new cMenuEditIntItem (tr("HTTP Server Port"), &m_NewSetup.HTTPServerPort, 0, 65535)); + Add(new cMenuEditStraItem(tr("HTTP Streamtype"), &m_NewSetup.HTTPStreamType, st_Count - 1, StreamTypes)); + Add(new cMenuEditIpItem (tr("Bind to IP"), m_NewSetup.HTTPBindIP)); AddCategory (tr("Multicast Streaming Server")); - AddBoolEdit (tr("Start IGMP Server"), m_NewSetup.StartIGMPServer); - AddShortEdit(tr("Multicast Client Port"), m_NewSetup.IGMPClientPort); - AddTypeEdit (tr("Multicast Streamtype"), m_NewSetup.IGMPStreamType); - AddIpEdit (tr("Bind to IP"), m_NewSetup.IGMPBindIP); + Add(new cMenuEditBoolItem(tr("Start IGMP Server"), &m_NewSetup.StartIGMPServer)); + Add(new cMenuEditIntItem (tr("Multicast Client Port"), &m_NewSetup.IGMPClientPort, 0, 65535)); + Add(new cMenuEditStraItem(tr("Multicast Streamtype"), &m_NewSetup.IGMPStreamType, st_Count - 1, StreamTypes)); + Add(new cMenuEditIpItem (tr("Bind to IP"), m_NewSetup.IGMPBindIP)); SetCurrent(Get(1)); } cStreamdevServerMenuSetupPage::~cStreamdevServerMenuSetupPage() { } +void cStreamdevServerMenuSetupPage::AddCategory(const char *Title) { + char *buffer = NULL; + + asprintf(&buffer, "--- %s -------------------------------------------------" + "---------------", Title ); + + cOsdItem *item = new cOsdItem(buffer); + free(buffer); + item->SetSelectable(false); + Add(item); +} + void cStreamdevServerMenuSetupPage::Store(void) { bool restart = false; if (m_NewSetup.StartVTPServer != StreamdevServerSetup.StartVTPServer |