diff options
| author | Midas <vdrportal_midas@gmx.de> | 2010-04-22 14:46:15 +0200 |
|---|---|---|
| committer | Midas <vdrportal_midas@gmx.de> | 2010-04-22 14:46:15 +0200 |
| commit | 3fa663475460280a83864eaf65f9fb59f44fe3b6 (patch) | |
| tree | 042156c9ad4ec4b99f9b47c4112baf6d85d8c00d /block/setup.c | |
| parent | d8df53ab68aa2031da1d49a8eb8897aa52ae0b2d (diff) | |
| download | vdr-plugin-block-3fa663475460280a83864eaf65f9fb59f44fe3b6.tar.gz vdr-plugin-block-3fa663475460280a83864eaf65f9fb59f44fe3b6.tar.bz2 | |
Source dir structure changed.
Diffstat (limited to 'block/setup.c')
| -rw-r--r-- | block/setup.c | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/block/setup.c b/block/setup.c deleted file mode 100644 index 4f48739..0000000 --- a/block/setup.c +++ /dev/null @@ -1,178 +0,0 @@ -/** - * based on setup.c,v 1.1.1.1 2006/02/26 14:11:02 lordjaxom - * - * version by Midas - * - */ - -#include "setup.h" - -#include <vdr/interface.h> - -cMenuSetupBlock::cMenuSetupBlock(): - cMenuSetupPage() -{ - mEventsData = EventsBlock; // need to use copy constructor - mSetupData = SetupBlock; - Set(); -} - -void cMenuSetupBlock::Set(void) { - int current = Current(); - cOsdItem *item; - - Clear(); - - Add(new cMenuEditBoolItem(tr("Hide Mainmenu Entry"), &mSetupData.HideMenuEntry)); - Add(new cMenuEditIntItem(tr("Message Timeout [s]"), &mSetupData.MessageTimeout, 0, 10)); - - item = new cOsdItem(""); - item->SetSelectable(false); - Add(item); - - item = new cOsdItem(tr("--- Keywords -------------------------------------------------------------------")); - item->SetSelectable(false); - Add(item); - -#define NONKEYWORDITEMS 4 - - int index = 0; - cEventBlock *event = mEventsData.First(); - while (event != NULL) { - Add(new cOsdItem(event->Pattern())); - event = mEventsData.Next(event); - ++index; - } - - SetCurrent(Get(current)); - SetHelpKeys(); - Display(); -} - -void cMenuSetupBlock::SetHelpKeys(void) -{ - const char *red = NULL; - const char *yellow = NULL; - - printf("sethelpkeys, current = %d\n", Current()); - - if (Current() >= NONKEYWORDITEMS) { - red = trVDR("Button$Edit"); - yellow = trVDR("Button$Delete"); - } - SetHelp(red, trVDR("Button$New"), yellow, NULL); -} - -void cMenuSetupBlock::Store(void) -{ - EventsBlock = mEventsData; - EventsBlock.Save(); - - SetupBlock = mSetupData; - SetupStore("HideMenuEntry", SetupBlock.HideMenuEntry); - SetupStore("MessageTimeout", SetupBlock.MessageTimeout); -} - -eOSState cMenuSetupBlock::Edit(void) -{ - if (HasSubMenu() || Current() < NONKEYWORDITEMS) - return osContinue; - - cEventBlock *event = mEventsData.Get(Current() - NONKEYWORDITEMS); - if (event != NULL) - return AddSubMenu(new cMenuSetupEditBlock(event)); - return osContinue; -} - -eOSState cMenuSetupBlock::New(void) -{ - if (HasSubMenu()) - return osContinue; - - mEventsData.Add(new cEventBlock()); - Set(); - return osContinue; -} - -eOSState cMenuSetupBlock::Delete(void) -{ - if (HasSubMenu() || Current() < NONKEYWORDITEMS) - return osContinue; - - cEventBlock *event = mEventsData.Get(Current() - NONKEYWORDITEMS); - if (event != NULL) { - if (Interface->Confirm(tr("Delete keyword?"))) - mEventsData.Del(event); - } - Set(); - return osContinue; -} - -eOSState cMenuSetupBlock::ProcessKey(eKeys Key) { - bool hadSubMenu = HasSubMenu(); - eOSState state = cMenuSetupPage::ProcessKey(Key); - - if (hadSubMenu && !HasSubMenu()) { - Set(); - return state; - } - - switch (state) { - case osUnknown: // normal key handling - switch (Key) { - case kRed: return Edit(); - case kGreen: return New(); - case kYellow: return Delete(); - - default: - break; - } - break; - - default: - break; - } - - if (!HasSubMenu()) - Set(); - - return state; -} - -static const char *ALLOWEDCHARS = "$ abcdefghijklmnopqrstuvwxyz0123456789-_.#~/[]{}()+*^$"; - -cMenuSetupEditBlock::cMenuSetupEditBlock(cEventBlock *Event): - cOsdMenu("", 33), - mEvent(Event), - mData(*Event) -{ - char buf[80]; - snprintf(buf, sizeof(buf), "%s - %s '%s'", trVDR("Setup"), trVDR("Plugin"), "block"); - SetTitle(buf); - Add(new cMenuEditStrItem(tr("Pattern"), mData.mPattern, sizeof(mData.mPattern), tr(ALLOWEDCHARS))); - Add(new cMenuEditBoolItem(tr("Regular Expression"), &mData.mRegularExp)); - Add(new cMenuEditBoolItem(tr("Ignore Case"), &mData.mIgnoreCase)); -} - -eOSState cMenuSetupEditBlock::ProcessKey(eKeys Key) -{ - eOSState state = cOsdMenu::ProcessKey(Key); - - if (state == osUnknown) { - switch (Key) { - case kOk: - if (!mData.Compile()) { - Skins.Message(mtError, tr("Malformed regular expression!")); - state = osContinue; - } else { - *mEvent = mData; - state = osBack; - } - break; - - default: - break; - } - } - return state; -} |
