diff options
Diffstat (limited to 'menu.c')
-rw-r--r-- | menu.c | 566 |
1 files changed, 249 insertions, 317 deletions
@@ -46,23 +46,24 @@ static const char * audioBitrateValues[] = { "256", "320", "384" -}; + }; -static const char * bitrateModes[] = { +static const char *bitrateModes[] = { "VBR", "CBR" -}; + }; /* order must match the 'audmode' values in videodev2.h */ -static const char * tunerAudioModes[] = { +static const char *tunerAudioModes[] = { "mono", "stereo", "lang2", "lang1", "bilingual" -}; + }; + #ifdef PVR_DEBUG -static const char * useOnlyCard[] = { +static const char *useOnlyCard[] = { "/dev/video0", "/dev/video1", "/dev/video2", @@ -83,21 +84,24 @@ static const char * useOnlyCard[] = { "HVR1950", //17 "PVRUSB2", //18 "HDPVR" //19 - }; + }; #endif -static const char * aspectRatios[] = { + +static const char *aspectRatios[] = { "1:1", "4:3", "16:9", "2.21:1" -}; + }; + #ifdef PVR_DEBUG -static const char * streamType[] = { +static const char *streamType[] = { "MPEG2 PS", "MPEG2 DVD" -}; + }; #endif -static const char * exceptionVolumeForCard[] = { + +static const char *exceptionVolumeForCard[] = { "/dev/video0", "/dev/video1", "/dev/video2", @@ -117,231 +121,214 @@ static const char * exceptionVolumeForCard[] = { "HVR1900", //16 "HVR1950", //17 "PVRUSB2" //18 - }; - -cPvrMenuSetup::cPvrMenuSetup() { - - static const char * FilterModes[2]; - FilterModes[0]=tr("Setup.pvrinput$manual"); - FilterModes[1]=tr("Setup.pvrinput$auto"); - - static const char * SpatialTypes[5]; - SpatialTypes[0]=tr("Setup.pvrinput$off"); - SpatialTypes[1]=tr("Setup.pvrinput$1D horizontal"); - SpatialTypes[2]=tr("Setup.pvrinput$1D vertical"); - SpatialTypes[3]=tr("Setup.pvrinput$2D hv separable"); - SpatialTypes[4]=tr("Setup.pvrinput$2D sym non separable"); - - static const char * MedianTypes[5]; - MedianTypes[0]=tr("Setup.pvrinput$off"); - MedianTypes[1]=tr("Setup.pvrinput$horizontal"); - MedianTypes[2]=tr("Setup.pvrinput$vertical"); - MedianTypes[3]=tr("Setup.pvrinput$horizontal + vertical"); - MedianTypes[4]=tr("Setup.pvrinput$diagonal"); - - static const char * SamplingFreqs[3]; - SamplingFreqs[0]=tr("Setup.pvrinput$44.1 kHz"); - SamplingFreqs[1]=tr("Setup.pvrinput$48 kHz"); - SamplingFreqs[2]=tr("Setup.pvrinput$32 kHz"); - - static const char * HDPVR_AudioEncodings[2]; - HDPVR_AudioEncodings[0]=tr("Setup.pvrinput$AAC"); - HDPVR_AudioEncodings[1]=tr("Setup.pvrinput$AC3"); - - static const char * HDPVR_AudioInputs[3]; - HDPVR_AudioInputs[0]=tr("Setup.pvrinput$RCA back"); - HDPVR_AudioInputs[1]=tr("Setup.pvrinput$RCA front"); - HDPVR_AudioInputs[2]=tr("Setup.pvrinput$SPDIF"); + }; + +cPvrMenuSetup::cPvrMenuSetup() +{ + static const char *FilterModes[2]; + FilterModes[0] = tr("Setup.pvrinput$manual"); + FilterModes[1] = tr("Setup.pvrinput$auto"); + + static const char *SpatialTypes[5]; + SpatialTypes[0] = tr("Setup.pvrinput$off"); + SpatialTypes[1] = tr("Setup.pvrinput$1D horizontal"); + SpatialTypes[2] = tr("Setup.pvrinput$1D vertical"); + SpatialTypes[3] = tr("Setup.pvrinput$2D hv separable"); + SpatialTypes[4] = tr("Setup.pvrinput$2D sym non separable"); + + static const char *MedianTypes[5]; + MedianTypes[0] = tr("Setup.pvrinput$off"); + MedianTypes[1] = tr("Setup.pvrinput$horizontal"); + MedianTypes[2] = tr("Setup.pvrinput$vertical"); + MedianTypes[3] = tr("Setup.pvrinput$horizontal + vertical"); + MedianTypes[4] = tr("Setup.pvrinput$diagonal"); + + static const char *SamplingFreqs[3]; + SamplingFreqs[0] = tr("Setup.pvrinput$44.1 kHz"); + SamplingFreqs[1] = tr("Setup.pvrinput$48 kHz"); + SamplingFreqs[2] = tr("Setup.pvrinput$32 kHz"); + + static const char *HDPVR_AudioEncodings[2]; + HDPVR_AudioEncodings[0] = tr("Setup.pvrinput$AAC"); + HDPVR_AudioEncodings[1] = tr("Setup.pvrinput$AC3"); + + static const char *HDPVR_AudioInputs[3]; + HDPVR_AudioInputs[0] = tr("Setup.pvrinput$RCA back"); + HDPVR_AudioInputs[1] = tr("Setup.pvrinput$RCA front"); + HDPVR_AudioInputs[2] = tr("Setup.pvrinput$SPDIF"); 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); - newPvrSetup.VideoBitrateTV.queryctrl.maximum = - (int) (PvrSetup.VideoBitrateTV.queryctrl.maximum/1000); - - newPvrSetup.Brightness.value=IntVal2Percent(PvrSetup.Brightness.value, - PvrSetup.Brightness.queryctrl.minimum, - PvrSetup.Brightness.queryctrl.maximum); - - newPvrSetup.Contrast.value=IntVal2Percent(PvrSetup.Contrast.value, - PvrSetup.Contrast.queryctrl.minimum, - PvrSetup.Contrast.queryctrl.maximum); - - newPvrSetup.Saturation.value=IntVal2Percent(PvrSetup.Saturation.value, - PvrSetup.Saturation.queryctrl.minimum, - PvrSetup.Saturation.queryctrl.maximum); - - newPvrSetup.Hue.value=IntVal2Percent(PvrSetup.Hue.value, - PvrSetup.Hue.queryctrl.minimum, - PvrSetup.Hue.queryctrl.maximum); - - newPvrSetup.AudioVolumeTVCommon.value=IntVal2Percent(PvrSetup.AudioVolumeTVCommon.value, - PvrSetup.AudioVolumeTVCommon.queryctrl.minimum, - PvrSetup.AudioVolumeTVCommon.queryctrl.maximum); - - newPvrSetup.AudioVolumeTVException.value=IntVal2Percent(PvrSetup.AudioVolumeTVException.value, - PvrSetup.AudioVolumeTVException.queryctrl.minimum, - PvrSetup.AudioVolumeTVException.queryctrl.maximum); - - newPvrSetup.AudioVolumeFM.value=IntVal2Percent(PvrSetup.AudioVolumeFM.value, - PvrSetup.AudioVolumeFM.queryctrl.minimum, - PvrSetup.AudioVolumeFM.queryctrl.maximum); - - Add(new cMenuEditBoolItem(tr("Setup.pvrinput$Hide main menu entry"), - &newPvrSetup.HideMainMenuEntry)); + newPvrSetup.VideoBitrateTV.value = (int)(PvrSetup.VideoBitrateTV.value / 1000); + newPvrSetup.VideoBitrateTV.queryctrl.minimum = (int)(PvrSetup.VideoBitrateTV.queryctrl.minimum / 1000); + newPvrSetup.VideoBitrateTV.queryctrl.maximum = (int)(PvrSetup.VideoBitrateTV.queryctrl.maximum / 1000); + + newPvrSetup.Brightness.value = IntVal2Percent(PvrSetup.Brightness.value, + PvrSetup.Brightness.queryctrl.minimum, + PvrSetup.Brightness.queryctrl.maximum); + + newPvrSetup.Contrast.value = IntVal2Percent(PvrSetup.Contrast.value, + PvrSetup.Contrast.queryctrl.minimum, + PvrSetup.Contrast.queryctrl.maximum); + + newPvrSetup.Saturation.value = IntVal2Percent(PvrSetup.Saturation.value, + PvrSetup.Saturation.queryctrl.minimum, + PvrSetup.Saturation.queryctrl.maximum); + + newPvrSetup.Hue.value = IntVal2Percent(PvrSetup.Hue.value, + PvrSetup.Hue.queryctrl.minimum, + PvrSetup.Hue.queryctrl.maximum); + + newPvrSetup.AudioVolumeTVCommon.value = IntVal2Percent(PvrSetup.AudioVolumeTVCommon.value, + PvrSetup.AudioVolumeTVCommon.queryctrl.minimum, + PvrSetup.AudioVolumeTVCommon.queryctrl.maximum); + + newPvrSetup.AudioVolumeTVException.value = IntVal2Percent(PvrSetup.AudioVolumeTVException.value, + PvrSetup.AudioVolumeTVException.queryctrl.minimum, + PvrSetup.AudioVolumeTVException.queryctrl.maximum); + + newPvrSetup.AudioVolumeFM.value = IntVal2Percent(PvrSetup.AudioVolumeFM.value, + PvrSetup.AudioVolumeFM.queryctrl.minimum, + PvrSetup.AudioVolumeFM.queryctrl.maximum); + + Add(new cMenuEditBoolItem(tr("Setup.pvrinput$Hide main menu entry"), &newPvrSetup.HideMainMenuEntry)); #ifdef PVR_DEBUG - Add(new cMenuEditStraItem(tr("Setup.pvrinput$Use only card"), - &newPvrSetup.UseOnlyCard, 20, useOnlyCard)); + Add(new cMenuEditStraItem(tr("Setup.pvrinput$Use only card"), &newPvrSetup.UseOnlyCard, 20, useOnlyCard)); #endif - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Log level"), - &newPvrSetup.LogLevel, 0, 4)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Log level"), &newPvrSetup.LogLevel, 0, 4)); - Add(new cMenuEditBoolItem(tr("Setup.pvrinput$Slice VBI Teletext"), - &newPvrSetup.SliceVBI)); + Add(new cMenuEditBoolItem(tr("Setup.pvrinput$Slice VBI Teletext"), &newPvrSetup.SliceVBI)); - Add(new cMenuEditStraItem(tr("Setup.pvrinput$Tuner Audio Mode"), - &newPvrSetup.TunerAudioMode, 5, tunerAudioModes)); + Add(new cMenuEditStraItem(tr("Setup.pvrinput$Tuner Audio Mode"), &newPvrSetup.TunerAudioMode, 5, tunerAudioModes)); - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Brightness"), - &newPvrSetup.Brightness.value, 0, 100)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Brightness"), &newPvrSetup.Brightness.value, 0, 100)); - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Contrast"), - &newPvrSetup.Contrast.value, 0, 100)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Contrast"), &newPvrSetup.Contrast.value, 0, 100)); - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Saturation"), - &newPvrSetup.Saturation.value, 0, 100)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Saturation"), &newPvrSetup.Saturation.value, 0, 100)); - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Hue"), - &newPvrSetup.Hue.value, 0, 100)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Hue"), &newPvrSetup.Hue.value, 0, 100)); - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Common Audio volume (TV)"), - &newPvrSetup.AudioVolumeTVCommon.value, 0, 100)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Common Audio volume (TV)"), &newPvrSetup.AudioVolumeTVCommon.value, 0, 100)); - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Exception Audio volume (TV)"), - &newPvrSetup.AudioVolumeTVException.value, 0, 100)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Exception Audio volume (TV)"), &newPvrSetup.AudioVolumeTVException.value, 0, 100)); - Add(new cMenuEditStraItem(tr("Setup.pvrinput$Exception TV Volume for Card"), - &newPvrSetup.AudioVolumeTVExceptionCard, 19, exceptionVolumeForCard)); + Add(new cMenuEditStraItem(tr("Setup.pvrinput$Exception TV Volume for Card"), &newPvrSetup.AudioVolumeTVExceptionCard, 19, exceptionVolumeForCard)); - Add(new cMenuEditIntItem(tr("Setup.pvrinput$Audio radio volume"), - &newPvrSetup.AudioVolumeFM.value, 0, 100)); + Add(new cMenuEditIntItem(tr("Setup.pvrinput$Audio radio volume"), &newPvrSetup.AudioVolumeFM.value, 0, 100)); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Audio bitrate (kbit/s)"), - &newPvrSetup.AudioBitrate.value, - newPvrSetup.AudioBitrate.queryctrl.maximum + 1, audioBitrateValues)); + &newPvrSetup.AudioBitrate.value, + newPvrSetup.AudioBitrate.queryctrl.maximum + 1, + audioBitrateValues)); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Audio sampling rate"), - &newPvrSetup.AudioSampling.value, - newPvrSetup.AudioSampling.queryctrl.maximum + 1, SamplingFreqs)); + &newPvrSetup.AudioSampling.value, + newPvrSetup.AudioSampling.queryctrl.maximum + 1, + SamplingFreqs)); - Add(new cMenuEditStraItem(tr("Setup.pvrinput$HDPVR audio encoding"), - &newPvrSetup.HDPVR_AudioEncoding.value, 2, HDPVR_AudioEncodings)); + Add(new cMenuEditStraItem(tr("Setup.pvrinput$HDPVR audio encoding"), &newPvrSetup.HDPVR_AudioEncoding.value, 2, HDPVR_AudioEncodings)); - Add(new cMenuEditStraItem(tr("Setup.pvrinput$HDPVR audio input"), - &newPvrSetup.HDPVR_AudioInput, 3, HDPVR_AudioInputs)); + Add(new cMenuEditStraItem(tr("Setup.pvrinput$HDPVR audio input"), &newPvrSetup.HDPVR_AudioInput, 3, HDPVR_AudioInputs)); Add(new cMenuEditIntItem(tr("Setup.pvrinput$Video bitrate TV (kbit/s)"), - &newPvrSetup.VideoBitrateTV.value, - newPvrSetup.VideoBitrateTV.queryctrl.minimum, - newPvrSetup.VideoBitrateTV.queryctrl.maximum)); + &newPvrSetup.VideoBitrateTV.value, + newPvrSetup.VideoBitrateTV.queryctrl.minimum, + newPvrSetup.VideoBitrateTV.queryctrl.maximum)); - newPvrSetup.StreamType.value=(newPvrSetup.StreamType.value==0?0:1); + newPvrSetup.StreamType.value = (newPvrSetup.StreamType.value == 0 ? 0 : 1); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Bitrate mode"), - &newPvrSetup.BitrateMode.value, - newPvrSetup.BitrateMode.queryctrl.maximum + 1, bitrateModes)); + &newPvrSetup.BitrateMode.value, + newPvrSetup.BitrateMode.queryctrl.maximum + 1, + bitrateModes)); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Aspect ratio"), - &newPvrSetup.AspectRatio.value, - newPvrSetup.AspectRatio.queryctrl.maximum + 1, aspectRatios)); + &newPvrSetup.AspectRatio.value, + newPvrSetup.AspectRatio.queryctrl.maximum + 1, + aspectRatios)); + #ifdef PVR_DEBUG - Add(new cMenuEditStraItem(tr("Setup.pvrinput$Stream type"), - &newPvrSetup.StreamType.value, 2, streamType)); + Add(new cMenuEditStraItem(tr("Setup.pvrinput$Stream type"), &newPvrSetup.StreamType.value, 2, streamType)); #endif + Add(new cMenuEditStraItem(tr("Setup.pvrinput$Mode Spatial Video Filter"), - &newPvrSetup.FilterSpatialMode.value, - newPvrSetup.FilterSpatialMode.queryctrl.maximum + 1, FilterModes)); + &newPvrSetup.FilterSpatialMode.value, + newPvrSetup.FilterSpatialMode.queryctrl.maximum + 1, + FilterModes)); Add(new cMenuEditIntItem(tr("Setup.pvrinput$Strength Spatial Video Filter"), - &newPvrSetup.FilterSpatial.value, - newPvrSetup.FilterSpatial.queryctrl.minimum, - newPvrSetup.FilterSpatial.queryctrl.maximum)); + &newPvrSetup.FilterSpatial.value, + newPvrSetup.FilterSpatial.queryctrl.minimum, + newPvrSetup.FilterSpatial.queryctrl.maximum)); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Luma Spatial Filter Type"), - &newPvrSetup.FilterLumaSpatialType.value, - newPvrSetup.FilterLumaSpatialType.queryctrl.maximum + 1, SpatialTypes)); + &newPvrSetup.FilterLumaSpatialType.value, + newPvrSetup.FilterLumaSpatialType.queryctrl.maximum + 1, + SpatialTypes)); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Chroma Spatial Filter Type"), - &newPvrSetup.FilterChromaSpatialType.value, - newPvrSetup.FilterChromaSpatialType.queryctrl.maximum + 1, SpatialTypes)); + &newPvrSetup.FilterChromaSpatialType.value, + newPvrSetup.FilterChromaSpatialType.queryctrl.maximum + 1, + SpatialTypes)); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Mode Temporal Video Filter"), - &newPvrSetup.FilterTemporalMode.value, - newPvrSetup.FilterTemporalMode.queryctrl.maximum + 1, FilterModes)); + &newPvrSetup.FilterTemporalMode.value, + newPvrSetup.FilterTemporalMode.queryctrl.maximum + 1, + FilterModes)); Add(new cMenuEditIntItem(tr("Setup.pvrinput$Strength Temporal Video Filter"), - &newPvrSetup.FilterTemporal.value, - newPvrSetup.FilterTemporal.queryctrl.minimum, - newPvrSetup.FilterTemporal.queryctrl.maximum)); + &newPvrSetup.FilterTemporal.value, + newPvrSetup.FilterTemporal.queryctrl.minimum, + newPvrSetup.FilterTemporal.queryctrl.maximum)); Add(new cMenuEditStraItem(tr("Setup.pvrinput$Median Filter Type"), - &newPvrSetup.FilterMedianType.value, - newPvrSetup.FilterMedianType.queryctrl.maximum + 1, MedianTypes)); + &newPvrSetup.FilterMedianType.value, + newPvrSetup.FilterMedianType.queryctrl.maximum + 1, + MedianTypes)); Add(new cMenuEditIntItem(tr("Setup.pvrinput$Luma Median Filter Bottom"), - &newPvrSetup.FilterLumaMedianBottom.value, - newPvrSetup.FilterLumaMedianBottom.queryctrl.minimum, - newPvrSetup.FilterLumaMedianBottom.queryctrl.maximum)); + &newPvrSetup.FilterLumaMedianBottom.value, + newPvrSetup.FilterLumaMedianBottom.queryctrl.minimum, + newPvrSetup.FilterLumaMedianBottom.queryctrl.maximum)); Add(new cMenuEditIntItem(tr("Setup.pvrinput$Luma Median Filter Top"), - &newPvrSetup.FilterLumaMedianTop.value, - newPvrSetup.FilterLumaMedianTop.queryctrl.minimum, - newPvrSetup.FilterLumaMedianTop.queryctrl.maximum)); + &newPvrSetup.FilterLumaMedianTop.value, + newPvrSetup.FilterLumaMedianTop.queryctrl.minimum, + newPvrSetup.FilterLumaMedianTop.queryctrl.maximum)); Add(new cMenuEditIntItem(tr("Setup.pvrinput$Chroma Median Filter Bottom"), - &newPvrSetup.FilterChromaMedianBottom.value, - newPvrSetup.FilterChromaMedianBottom.queryctrl.minimum, - newPvrSetup.FilterChromaMedianBottom.queryctrl.maximum)); + &newPvrSetup.FilterChromaMedianBottom.value, + newPvrSetup.FilterChromaMedianBottom.queryctrl.minimum, + newPvrSetup.FilterChromaMedianBottom.queryctrl.maximum)); Add(new cMenuEditIntItem(tr("Setup.pvrinput$Chroma Median Filter Top"), - &newPvrSetup.FilterChromaMedianTop.value, - newPvrSetup.FilterChromaMedianTop.queryctrl.minimum, - newPvrSetup.FilterChromaMedianTop.queryctrl.maximum)); + &newPvrSetup.FilterChromaMedianTop.value, + newPvrSetup.FilterChromaMedianTop.queryctrl.minimum, + newPvrSetup.FilterChromaMedianTop.queryctrl.maximum)); - Add(new cMenuEditBoolItem(tr("Setup.pvrinput$use externchannelswitch.sh"), - &newPvrSetup.UseExternChannelSwitchScript)); + Add(new cMenuEditBoolItem(tr("Setup.pvrinput$use externchannelswitch.sh"), &newPvrSetup.UseExternChannelSwitchScript)); } -void cPvrMenuSetup::Store() { - SetupStore("HideMainMenuEntry", - PvrSetup.HideMainMenuEntry = newPvrSetup.HideMainMenuEntry); +void cPvrMenuSetup::Store() +{ + SetupStore("HideMainMenuEntry", PvrSetup.HideMainMenuEntry = newPvrSetup.HideMainMenuEntry); - SetupStore("UseOnlyCard", - PvrSetup.UseOnlyCard = newPvrSetup.UseOnlyCard); + SetupStore("UseOnlyCard", PvrSetup.UseOnlyCard = newPvrSetup.UseOnlyCard); - SetupStore("LogLevel", - PvrSetup.LogLevel = newPvrSetup.LogLevel); + SetupStore("LogLevel", PvrSetup.LogLevel = newPvrSetup.LogLevel); - SetupStore("TunerAudioMode", - PvrSetup.TunerAudioMode = newPvrSetup.TunerAudioMode); + SetupStore("TunerAudioMode", PvrSetup.TunerAudioMode = newPvrSetup.TunerAudioMode); - SetupStore("StreamType", - PvrSetup.StreamType.value = newPvrSetup.StreamType.value); + SetupStore("StreamType", PvrSetup.StreamType.value = newPvrSetup.StreamType.value); - SetupStore("AudioVolumeTVExceptionCard", - PvrSetup.AudioVolumeTVExceptionCard = newPvrSetup.AudioVolumeTVExceptionCard); + SetupStore("AudioVolumeTVExceptionCard", PvrSetup.AudioVolumeTVExceptionCard = newPvrSetup.AudioVolumeTVExceptionCard); - SetupStore("HDPVR_AudioInput", - PvrSetup.HDPVR_AudioInput = newPvrSetup.HDPVR_AudioInput); + SetupStore("HDPVR_AudioInput", PvrSetup.HDPVR_AudioInput = newPvrSetup.HDPVR_AudioInput); - SetupStore("SliceVBI", - PvrSetup.SliceVBI = newPvrSetup.SliceVBI); + SetupStore("SliceVBI", PvrSetup.SliceVBI = newPvrSetup.SliceVBI); - SetupStore("UseExternChannelSwitchScript", - PvrSetup.UseExternChannelSwitchScript = newPvrSetup.UseExternChannelSwitchScript); + SetupStore("UseExternChannelSwitchScript", PvrSetup.UseExternChannelSwitchScript = newPvrSetup.UseExternChannelSwitchScript); /* The following code makes sure that we don't write a zero value into setup.conf, which would happen if it is still INVALID_VALUE @@ -350,38 +337,38 @@ void cPvrMenuSetup::Store() { #define SETUPSTORE(n, v) if (v.query_isvalid) SetupStore(n, v.value) PvrSetup.Brightness.value = Percent2IntVal(newPvrSetup.Brightness.value, - PvrSetup.Brightness.queryctrl.minimum, - PvrSetup.Brightness.queryctrl.maximum); + PvrSetup.Brightness.queryctrl.minimum, + PvrSetup.Brightness.queryctrl.maximum); SETUPSTORE("Brightness", PvrSetup.Brightness); PvrSetup.Contrast.value = Percent2IntVal(newPvrSetup.Contrast.value, - PvrSetup.Contrast.queryctrl.minimum, - PvrSetup.Contrast.queryctrl.maximum); + PvrSetup.Contrast.queryctrl.minimum, + PvrSetup.Contrast.queryctrl.maximum); SETUPSTORE("Contrast", PvrSetup.Contrast); PvrSetup.Saturation.value = Percent2IntVal(newPvrSetup.Saturation.value, - PvrSetup.Saturation.queryctrl.minimum, - PvrSetup.Saturation.queryctrl.maximum); + PvrSetup.Saturation.queryctrl.minimum, + PvrSetup.Saturation.queryctrl.maximum); SETUPSTORE("Saturation", PvrSetup.Saturation); PvrSetup.Hue.value = Percent2IntVal(newPvrSetup.Hue.value, - PvrSetup.Hue.queryctrl.minimum, - PvrSetup.Hue.queryctrl.maximum); + PvrSetup.Hue.queryctrl.minimum, + PvrSetup.Hue.queryctrl.maximum); SETUPSTORE("Hue", PvrSetup.Hue); PvrSetup.AudioVolumeTVCommon.value = Percent2IntVal(newPvrSetup.AudioVolumeTVCommon.value, - PvrSetup.AudioVolumeTVCommon.queryctrl.minimum, - PvrSetup.AudioVolumeTVCommon.queryctrl.maximum); + PvrSetup.AudioVolumeTVCommon.queryctrl.minimum, + PvrSetup.AudioVolumeTVCommon.queryctrl.maximum); SETUPSTORE("AudioVolumeTVCommon", PvrSetup.AudioVolumeTVCommon); PvrSetup.AudioVolumeTVException.value = Percent2IntVal(newPvrSetup.AudioVolumeTVException.value, - PvrSetup.AudioVolumeTVException.queryctrl.minimum, - PvrSetup.AudioVolumeTVException.queryctrl.maximum); + PvrSetup.AudioVolumeTVException.queryctrl.minimum, + PvrSetup.AudioVolumeTVException.queryctrl.maximum); SETUPSTORE("AudioVolumeTVException", PvrSetup.AudioVolumeTVException); PvrSetup.AudioVolumeFM.value = Percent2IntVal(newPvrSetup.AudioVolumeFM.value, - PvrSetup.AudioVolumeFM.queryctrl.minimum, - PvrSetup.AudioVolumeFM.queryctrl.maximum); + PvrSetup.AudioVolumeFM.queryctrl.minimum, + PvrSetup.AudioVolumeFM.queryctrl.maximum); SETUPSTORE("AudioVolumeFM", PvrSetup.AudioVolumeFM); // videobitrate in setup.conf is 0..27000, but ivtv 0..27000000 @@ -397,7 +384,7 @@ void cPvrMenuSetup::Store() { // HDPVR audio encoding in setup.conf is 0..1, but driver needs 3..4 // if audio input SPDIF is selected, audio encoding must be AAC if (newPvrSetup.HDPVR_AudioInput == 2) - newPvrSetup.HDPVR_AudioEncoding.value = 0; + newPvrSetup.HDPVR_AudioEncoding.value = 0; PvrSetup.HDPVR_AudioEncoding.value = newPvrSetup.HDPVR_AudioEncoding.value + 3; SETUPSTORE("HDPVR_AudioEncoding", newPvrSetup.HDPVR_AudioEncoding); @@ -444,33 +431,32 @@ void cPvrMenuSetup::Store() { PvrSetup.repeat_ReInitAll_after_next_encoderstop = true; } - cPvrMenuMain::cPvrMenuMain(void) -: cOsdObject(), +: cOsdObject(), border(2), margin(4), mode(ePicPropBrightness) - { +{ font = cFont::GetFont(fontOsd); width = Setup.OSDWidth; height = 2 * font->Height() + 3 * border + 4 * margin; } -cPvrMenuMain::~cPvrMenuMain() { +cPvrMenuMain::~cPvrMenuMain() +{ delete osd; } -void cPvrMenuMain::Draw(void) { +void cPvrMenuMain::Draw(void) +{ + static const char * pictureProperties[4] = { + tr("Setup.pvrinput$Brightness"), + tr("Setup.pvrinput$Contrast"), + tr("Setup.pvrinput$Saturation"), + tr("Setup.pvrinput$Hue") + }; -static const char * pictureProperties[4] = { - tr("Setup.pvrinput$Brightness"), - tr("Setup.pvrinput$Contrast"), - tr("Setup.pvrinput$Saturation"), - tr("Setup.pvrinput$Hue") - }; - - int titleWidth = font->Width(tr(pictureProperties[mode])) - + 2 * border + 2 * margin; + int titleWidth = font->Width(tr(pictureProperties[mode])) + 2 * border + 2 * margin; int titleHeight = font->Height() + border + 2 * margin; int titleStart = 50; int localvalue = PvrSetup.Brightness.value; @@ -499,68 +485,21 @@ static const char * pictureProperties[4] = { localmaximum = PvrSetup.Hue.queryctrl.maximum; break; } - int barWidth = (localvalue - localminimum) * (width - font->Width("100%") - - 2 * border - 3 * margin) / (localmaximum - localminimum); - - osd->DrawRectangle(0, - 0, - width - 1, - height - 1, - clrTransparent); - osd->DrawRectangle(0, - titleHeight, - width - 1, - height - 1, - clrBlack); - osd->DrawRectangle(titleStart, - 0, - titleStart + titleWidth - 1, - titleHeight - 1, - clrBlack); - osd->DrawText(titleStart + border + margin, - border + margin, - tr(pictureProperties[mode]), - clrWhite, - clrBlack, - font); - osd->DrawRectangle(titleStart, - 0, - titleStart + titleWidth - 1, - border - 1, - clrWhite); - osd->DrawRectangle(titleStart, - 0, - titleStart + border - 1, - titleHeight - 1, - clrWhite); - osd->DrawRectangle(titleStart + titleWidth - border, - 0, - titleStart + titleWidth - 1, - titleHeight - 1, - clrWhite); - osd->DrawRectangle(0, - titleHeight, - width - 1, - titleHeight + border - 1, - clrWhite); - osd->DrawRectangle(0, - titleHeight, - border - 1, - height - 1, - clrWhite); - osd->DrawRectangle(0, - height - border, - width - 1, - height - 1, - clrWhite); - osd->DrawRectangle(width - border, - titleHeight, - width - 1, - height - 1, - clrWhite); + int barWidth = (localvalue - localminimum) * (width - font->Width("100%") - 2 * border - 3 * margin) / (localmaximum - localminimum); + + osd->DrawRectangle(0, 0, width - 1, height - 1, clrTransparent); + osd->DrawRectangle(0, titleHeight, width - 1, height - 1, clrBlack); + osd->DrawRectangle(titleStart, 0, titleStart + titleWidth - 1, titleHeight - 1, clrBlack); + osd->DrawText(titleStart + border + margin, border + margin, tr(pictureProperties[mode]), clrWhite, clrBlack, font); + osd->DrawRectangle(titleStart, 0, titleStart + titleWidth - 1, border - 1, clrWhite); + osd->DrawRectangle(titleStart, 0, titleStart + border - 1, titleHeight - 1, clrWhite); + osd->DrawRectangle(titleStart + titleWidth - border, 0, titleStart + titleWidth - 1, titleHeight - 1, clrWhite); + osd->DrawRectangle(0, titleHeight, width - 1, titleHeight + border - 1, clrWhite); + osd->DrawRectangle(0, titleHeight, border - 1, height - 1, clrWhite); + osd->DrawRectangle(0, height - border, width - 1, height - 1, clrWhite); + osd->DrawRectangle(width - border, titleHeight, width - 1, height - 1, clrWhite); char strpercentvalue[4]; - sprintf(strpercentvalue, "%d%%", IntVal2Percent(localvalue, - localminimum, localmaximum)); + sprintf(strpercentvalue, "%d%%", IntVal2Percent(localvalue, localminimum, localmaximum)); osd->DrawText(width - font->Width("100%") - border - margin - 1, border + margin + titleHeight, strpercentvalue, @@ -570,26 +509,20 @@ static const char * pictureProperties[4] = { font->Width("100%"), 0, taRight); - osd->DrawRectangle(border + margin, - border + margin + titleHeight, - border + margin + barWidth - 1, - height - border - margin - 1, - clrWhite); + osd->DrawRectangle(border + margin, border + margin + titleHeight, border + margin + barWidth - 1, height - border - margin - 1, clrWhite); osd->Flush(); } void cPvrMenuMain::Show(void) { - osd = cOsdProvider::NewOsd(Setup.OSDLeft, - Setup.OSDTop + Setup.OSDHeight - height); - + osd = cOsdProvider::NewOsd(Setup.OSDLeft, Setup.OSDTop + Setup.OSDHeight - height); tArea area = { 0, 0, width - 1, height - 1, 4 }; if (osd->CanHandleAreas(&area, 1) == oeOk) - osd->SetAreas(&area, 1); - + osd->SetAreas(&area, 1); Draw(); } -eOSState cPvrMenuMain::ProcessKey(eKeys Key) { +eOSState cPvrMenuMain::ProcessKey(eKeys Key) +{ eOSState state = cOsdObject::ProcessKey(Key); if (state == osUnknown) { switch (Key & ~k_Repeat) { @@ -610,41 +543,41 @@ eOSState cPvrMenuMain::ProcessKey(eKeys Key) { case ePicPropBrightness: if (PvrSetup.Brightness.value > PvrSetup.Brightness.queryctrl.minimum) { PvrSetup.Brightness.value--; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Brightness, - PvrSetup.Brightness.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Brightness, PvrSetup.Brightness.value); + } } break; case ePicPropContrast: if (PvrSetup.Contrast.value > PvrSetup.Contrast.queryctrl.minimum) { PvrSetup.Contrast.value--; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Contrast, - PvrSetup.Contrast.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Contrast, PvrSetup.Contrast.value); + } } break; case ePicPropSaturation: if (PvrSetup.Saturation.value > PvrSetup.Saturation.queryctrl.minimum) { PvrSetup.Saturation.value--; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Saturation, - PvrSetup.Saturation.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Saturation, PvrSetup.Saturation.value); + } } break; case ePicPropHue: if (PvrSetup.Hue.value > PvrSetup.Hue.queryctrl.minimum) { PvrSetup.Hue.value--; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Hue, - PvrSetup.Hue.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Hue, PvrSetup.Hue.value); + } } break; } @@ -656,41 +589,41 @@ eOSState cPvrMenuMain::ProcessKey(eKeys Key) { case ePicPropBrightness: if (PvrSetup.Brightness.value < PvrSetup.Brightness.queryctrl.maximum) { PvrSetup.Brightness.value++; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Brightness, - PvrSetup.Brightness.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Brightness, PvrSetup.Brightness.value); + } } break; case ePicPropContrast: if (PvrSetup.Contrast.value < PvrSetup.Contrast.queryctrl.maximum) { PvrSetup.Contrast.value++; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Contrast, - PvrSetup.Contrast.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Contrast, PvrSetup.Contrast.value); + } } break; case ePicPropSaturation: if (PvrSetup.Saturation.value < PvrSetup.Saturation.queryctrl.maximum) { PvrSetup.Saturation.value++; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Saturation, - PvrSetup.Saturation.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Saturation, PvrSetup.Saturation.value); + } } break; case ePicPropHue: if (PvrSetup.Hue.value < PvrSetup.Hue.queryctrl.maximum) { PvrSetup.Hue.value++; - for (int i=0; i<cPvrDevice::Count(); i++) { - cPvrDevice * pvr = cPvrDevice::Get(i); - if (pvr) pvr->SetControlValue(&PvrSetup.Hue, - PvrSetup.Hue.value); - } + for (int i = 0; i < cPvrDevice::Count(); i++) { + cPvrDevice *pvr = cPvrDevice::Get(i); + if (pvr) + pvr->SetControlValue(&PvrSetup.Hue, PvrSetup.Hue.value); + } } break; } @@ -711,4 +644,3 @@ eOSState cPvrMenuMain::ProcessKey(eKeys Key) { } return state; } - |