diff options
| author | root <root@server.(none)> | 2010-07-22 22:27:37 +0200 |
|---|---|---|
| committer | root <root@server.(none)> | 2010-07-22 22:27:37 +0200 |
| commit | 10bf7cbcc974fd391fc2b21e227efc6df83d1bce (patch) | |
| tree | 7e743eb7a60ab104d566761234c17a8d5d21d0b1 | |
| parent | c081bef7ddc50672b9fb88bdb2ed4cf2da0a590b (diff) | |
| download | vdr-plugin-pvrinput-10bf7cbcc974fd391fc2b21e227efc6df83d1bce.tar.gz vdr-plugin-pvrinput-10bf7cbcc974fd391fc2b21e227efc6df83d1bce.tar.bz2 | |
Fix bug when editing parameters
When a parameter has not the same scala in the gui and in the logic, the
back button in a submenu corrupts the parameter
| -rw-r--r-- | menu.c | 5 | ||||
| -rw-r--r-- | menu.h | 1 |
2 files changed, 5 insertions, 1 deletions
@@ -34,6 +34,7 @@ and StreamType.value via OSD menu (see README) */ cPvrMenuSetup::cPvrMenuSetup() { newPvrSetup = PvrSetup; + // videobitrate in setup.conf is 0..27000, but ivtv 0..27000000 newPvrSetup.VideoBitrateTV.value = (int)(PvrSetup.VideoBitrateTV.value / 1000); newPvrSetup.VideoBitrateTV.queryctrl.minimum = (int)(PvrSetup.VideoBitrateTV.queryctrl.minimum / 1000); @@ -69,6 +70,7 @@ cPvrMenuSetup::cPvrMenuSetup() newPvrSetup.StreamType.value = (newPvrSetup.StreamType.value == 0 ? 0 : 1); + cachedPvrSetup = newPvrSetup; Add(new cOsdItem(tr("Setup.pvrinput$General Parameters"))); Add(new cOsdItem(tr("Setup.pvrinput$Video Parameters"))); Add(new cOsdItem(tr("Setup.pvrinput$Audio Parameters"))); @@ -84,7 +86,7 @@ eOSState cPvrMenuSetup::ProcessKey(eKeys Key) { Store(); } if (Key == kBack && HasSubMenu()) { - newPvrSetup = PvrSetup; + newPvrSetup = cachedPvrSetup; } if (!HasSubMenu()) { if (Key == kOk) { @@ -115,6 +117,7 @@ eOSState cPvrMenuSetup::ProcessKey(eKeys Key) { void cPvrMenuSetup::Store() { + cachedPvrSetup = newPvrSetup; SetupStore("HideMainMenuEntry", PvrSetup.HideMainMenuEntry = newPvrSetup.HideMainMenuEntry); SetupStore("UseOnlyCard", PvrSetup.UseOnlyCard = newPvrSetup.UseOnlyCard); @@ -41,6 +41,7 @@ typedef enum { class cPvrMenuSetup : public cMenuSetupPage { private: cPvrSetup newPvrSetup; + cPvrSetup cachedPvrSetup; protected: virtual void Store(); public: |
