diff options
author | Andreas Mair <amair.sob@googlemail.com> | 2010-04-05 12:31:58 +0200 |
---|---|---|
committer | Andreas Mair <amair.sob@googlemail.com> | 2010-04-05 12:31:58 +0200 |
commit | eebfdf1a3d737db58e6d2d3c6945584dd5e5054f (patch) | |
tree | 6a28dcd5ab8c85a14a8957f221d8ef0a5680a7fc /setup.c | |
parent | 95977e11c0a5c1170351f2fafe400519d7b1086b (diff) | |
download | vdr-plugin-skinenigmang-0.1.1.tar.gz vdr-plugin-skinenigmang-0.1.1.tar.bz2 |
2010-04-05: Version 0.1.1v0.1.1
- Moved "General / Show progressbar" to "Logos & Symbols / Show progressbar in lists".
- Fixed gcc 4.3 compiler warnings.
- Show "Parental Rating" and "Contents" in EPG and recording details (requires at least VDR 1.7.11).
- Show estimated bitrate and recording format (TS/PES) in recording's details.
- Show subtitle tracks in EPG and recording details.
- Changed defaults for setup options.
- Don't define CLEAR_BUG_WORKAROUND by default.
- Added new setup option "Colored status symbols in EPG details".
- Added new theme "bgw" (Submitted by jlacvdr @gmail.com).
- Added new setup option "Round corners".
- Display cut length and size of recordings in recording's details (based on skinelchi-0.2.1).
- Fixed calculation of channel info OSD areas.
- Check for valid OSD width and height and font size and width.
- Added VDR's default fonts to the TrueTypeFont selector.
- Unselectable rows in menu OSD starting with "---" will be formated as headlines if "Show symbols in lists" is set.
- New "elapsed/remaining" option for "Show remaining/elapsed time" setting.
- New "active only" option for "Show status symbols" setting.
- Added setup option for minimal info area width.
- Restructured setup menu.
Diffstat (limited to 'setup.c')
-rw-r--r-- | setup.c | 70 |
1 files changed, 54 insertions, 16 deletions
@@ -42,17 +42,18 @@ cPluginSkinEnigmaSetup::cPluginSkinEnigmaSetup(void) Setup(); } -void cPluginSkinEnigmaSetup::AddCategory(const char *Title) { +void cMenuSetupSubMenu::AddCategory(const char *Title) { char *buffer = NULL; - asprintf(&buffer, "---\t%s ----------------------------------------------------------------------------------", Title ); + if (-1 != asprintf(&buffer, "--- %s ---", Title )) { - cOsdItem *item = new cOsdItem(buffer); - free(buffer); + cOsdItem *item = new cOsdItem(buffer); + free(buffer); - if (item) { - item->SetSelectable(false); - Add(item); + if (item) { + item->SetSelectable(false); + Add(item); + } } } @@ -96,8 +97,10 @@ void cPluginSkinEnigmaSetup::Store(void) SetupStore("ShowSymbolsReplay", EnigmaConfig.showSymbolsReplay); SetupStore("ShowSymbolsMsgs", EnigmaConfig.showSymbolsMsgs); SetupStore("ShowSymbolsAudio", EnigmaConfig.showSymbolsAudio); + SetupStore("ShowColSymbolsDetails", EnigmaConfig.showColSymbolsDetails); SetupStore("ShowLogo", EnigmaConfig.showLogo); SetupStore("ShowInfo", EnigmaConfig.showInfo); + SetupStore("MinInfoWidth", EnigmaConfig.minInfoWidth); SetupStore("ShowVPS", EnigmaConfig.showVps); SetupStore("ShowFlags", EnigmaConfig.showFlags); SetupStore("ShowMarker", EnigmaConfig.showMarker); @@ -130,6 +133,7 @@ void cPluginSkinEnigmaSetup::Store(void) SetupStore("ShowScrollbar", EnigmaConfig.showScrollbar); SetupStore("ShowSignalInfo", EnigmaConfig.showSignalInfo); SetupStore("ShowCaMode", EnigmaConfig.showCaMode); + SetupStore("DrawRoundCorners", EnigmaConfig.drawRoundCorners); char tmp[sizeof(EnigmaConfig.allFonts[0].Name) + 8]; for (int id = 0; id < FONT_NUMFONTS; id++) { @@ -201,6 +205,7 @@ cMenuSetupGeneral::cMenuSetupGeneral(cEnigmaConfig* Data) : cMenuSetupSubMenu(tr showRemainingTexts[0] = tr("elapsed"); showRemainingTexts[1] = tr("remaining"); showRemainingTexts[2] = tr("percent"); + showRemainingTexts[3] = tr("elapsed/remaining"); showRecSizeTexts[0] = tr("never"); showRecSizeTexts[1] = tr("use size.vdr only"); @@ -218,7 +223,26 @@ cMenuSetupGeneral::cMenuSetupGeneral(cEnigmaConfig* Data) : cMenuSetupSubMenu(tr eOSState cMenuSetupGeneral::ProcessKey(eKeys Key) { - return cMenuSetupSubMenu::ProcessKey(Key); + int oldShowInfo = data->showInfo; + + eOSState state = cMenuSetupSubMenu::ProcessKey(Key); + + if (Key != kNone && + ((data->showInfo != oldShowInfo) + )) { + Set(); + } + + if (state == osUnknown) { + switch (Key) { + case kOk: + return osBack; + default: + break; + } + } + + return state; } void cMenuSetupGeneral::Set(void) @@ -227,20 +251,25 @@ void cMenuSetupGeneral::Set(void) Clear(); Add(new cMenuEditBoolItem(tr("Try 8bpp single area"), &data->singleArea8Bpp)); + Add(new cMenuEditBoolItem(tr("Round corners"), &data->drawRoundCorners)); + Add(new cMenuEditBoolItem(tr("Full title width"), &data->fullTitleWidth)); // channel info / replay / tracks + Add(new cMenuEditBoolItem(tr("Show VPS"), &data->showVps)); // channel info / epg details + Add(new cMenuEditBoolItem(tr("Dynamic OSD size"), &data->dynOsd)); + AddCategory(tr("Menu OSD")); Add(new cMenuEditBoolItem(tr("Show info area in main menu"), &data->showInfo)); + if (data->showInfo) + Add(new cMenuEditIntItem(tr(" Min width of info area"), &data->minInfoWidth, 80, Setup.OSDWidth)); + Add(new cMenuEditStraItem(tr("Show messages in menu on"), &data->statusLineMode, 3, statusLineModeTexts)); + Add(new cMenuEditStraItem(tr("Show scrollbar in menu"), &data->showScrollbar, 3, showScrollbarTexts)); + AddCategory(tr("EPG & Recording Details OSD")); Add(new cMenuEditBoolItem(tr("Show auxiliary information"), &data->showAuxInfo, trVDR("top"), trVDR("bottom"))); Add(new cMenuEditStraItem(tr("Show recording's size"), &data->showRecSize, 3, showRecSizeTexts)); - Add(new cMenuEditBoolItem(tr("Full title width"), &data->fullTitleWidth)); - Add(new cMenuEditStraItem(tr("Show remaining/elapsed time"), &data->showRemaining, 3, showRemainingTexts)); - Add(new cMenuEditBoolItem(tr("Show VPS"), &data->showVps)); + AddCategory(tr("Channel Info OSD")); + Add(new cMenuEditStraItem(tr("Show remaining/elapsed time"), &data->showRemaining, 4, showRemainingTexts)); #ifndef DISABLE_SIGNALINFO Add(new cMenuEditBoolItem(tr("Show signal info"), &data->showSignalInfo)); #endif //DISABLE_SIGNALINFO Add(new cMenuEditBoolItem(tr("Show CA system as text"), &data->showCaMode)); - Add(new cMenuEditBoolItem(tr("Show progressbar"), &data->showProgressbar)); - Add(new cMenuEditBoolItem(tr("Dynamic OSD size"), &data->dynOsd)); - Add(new cMenuEditStraItem(tr("Show messages in menu on"), &data->statusLineMode, 3, statusLineModeTexts)); - Add(new cMenuEditStraItem(tr("Show scrollbar in menu"), &data->showScrollbar, 3, showScrollbarTexts)); SetCurrent(Get(currentItem)); Display(); @@ -262,6 +291,10 @@ cMenuSetupLogos::cMenuSetupLogos(cEnigmaConfig* Data) : cMenuSetupSubMenu(tr("Lo showMailIconTexts[2] = tr("always"); #endif + showStatusSymbolsTexts[0] = trVDR("no"); + showStatusSymbolsTexts[1] = trVDR("yes"); + showStatusSymbolsTexts[2] = tr("active only"); + Set(); } @@ -320,9 +353,11 @@ void cMenuSetupLogos::Set(void) Add(new cMenuEditBoolItem(tr(" Show symbols in audio"), &data->showSymbolsAudio)); } + Add(new cMenuEditBoolItem(tr("Colored status symbols in EPG details"), &data->showColSymbolsDetails)); Add(new cMenuEditBoolItem(tr("Show symbols in lists"), &data->showListSymbols)); + Add(new cMenuEditBoolItem(tr("Show progressbar in lists"), &data->showProgressbar)); Add(new cMenuEditBoolItem(tr("Show marker in lists"), &data->showMarker)); - Add(new cMenuEditBoolItem(tr("Show status symbols"), &data->showStatusSymbols)); + Add(new cMenuEditStraItem(tr("Show status symbols"), &data->showStatusSymbols, 3, showStatusSymbolsTexts)); if (data->showStatusSymbols) { Add(new cMenuEditBoolItem(tr(" Show flags"), &data->showFlags)); #ifdef USE_PLUGIN_AVARDS @@ -494,6 +529,9 @@ cMenuSetupFonts::cMenuSetupFonts(cEnigmaConfig* Data) : cMenuSetupSubMenu(tr("Fo cFont::GetAvailableFontNames(&fontMonoNames, true); cFont::GetAvailableFontNames(&fontNames); + fontNames.Insert(strdup(DefaultFontSml)); + fontNames.Insert(strdup(DefaultFontOsd)); + fontMonoNames.Insert(strdup(DefaultFontFix)); Set(); } |