📄 osdvga501.c
字号:
#define __OSDVGA501___
#include "Header\Include.h"
#if(_OSD_TYPE == _OSD501)
#if(_TMDS_SUPPORT || _VGA_SUPPORT)
//------------------------------------------------------------
void OSDVGAProc()
{
switch(ucOsdState)
{
case _MENU_NONE: MNoneProc(); break;
case _M_COLOR:
case _M_PICTURE:
case _M_SOUND:
case _M_FEATURE:
case _M_EXIT: MVgaMainProc(); break;
case _M_BRIGHTNESS:
case _M_CONTRAST:
case _M_SHARPNESS:
case _M_COLOR_TEMP:
case _M_COLOR_EXIT: MVgaColorProc(); break;
case _M_AUTO_CONFIG:
case _M_AUTO_COLOR:
case _M_PHASE:
case _M_CLOCK:
case _M_H_POSITION:
case _M_V_POSITION:
case _M_PICTURE_EXIT: MVgaImageProc(); break;
case _M_VOLUME:
case _M_SOUND_EXIT: MSoundProc(); break;
case _M_INPUT_SOURCE:
case _M_LANGUAGE:
case _M_RESET:
case _M_FEATURE_EXIT: MVgaFeatureProc(); break;
case _M_BRIGHTNESS_ADJ: MBrightnessProc(); break;
case _M_CONTRAST_ADJ: MContrastProc(); break;
case _M_SHARPNESS_ADJ: MSharpnessProc(); break;
//##########################################################################
// case _M_EXIT_ADJ: break;//MMenuExit(); break; //fenix
//##########################################################################
case _M_9300:
case _M_6500:
case _M_USER:
case _M_COLORTMP_EXIT: MColorTmpProc(); break;
case _M_R:
case _M_G:
case _M_B:
case _M_USER_EXIT: MUserColorProc(); break;
case _M_R_ADJ: MRedAdjProc(); break;
case _M_G_ADJ: MGreenAdjProc(); break;
case _M_B_ADJ: MBlueAdjProc(); break;
case _M_PHASE_ADJ: MPhaseAdjProc(); break;
case _M_CLOCK_ADJ: MClockAdjProc(); break;
case _M_H_POSITION_ADJ: MHPosAdjProc(); break;
case _M_V_POSITION_ADJ: MVPosAdjProc(); break;
case _M_VOLUME_ADJ: MVolumeAdjProc(); break;
case _M_INPUTSOURCE_ADJ: MInputSourceProc(); break;
case _M_LANGUAGE_ADJ: MLanguageAdjProc(); break;
case _M_SP_VOLUME: MSPVolumeProc(); break;
case _M_SP_BRIGHTNESS: MSPBrightProc(); break;
default: break;
}
}
//------------------------------------------------------------
void MNoneProc()
{
switch(ucKeyMessage)
{
case VK_MENU: MNoneMenu(); break;
case VK_LEFT: MNoneLR(1); break;
case VK_RIGHT: MNoneLR(0); break;
//FENIX ADD########################################################
// case VK_EXIT: osdFatherPage(); break;
#if(_IR_ENABLE)
case _IR_AUTO_KEY_MESSAGE:
CAutoDoAutoConfig(); break;
#endif
//#################################################################
}
}
//---------------------------------------------------------------------------
void MNoneMenu()
{
ucOsdState = _M_COLOR;
InitOSDFrame();
DrawMainIcon(tVgaMainIcon);
MainMenuItemState(0,1);
DrawMenuItem(tVgaColorPage);
COsdFxEnableOsd();
}
//---------------------------------------------------------------------------
void MNoneLR(unsigned char LR)
{
if(LR)
{
EnterSPVolume();
}
else
{
EnterSPVolume();//EnterSPBright(); //fenix disable SPBright
}
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
void MVgaMainProc()
{
switch(ucKeyMessage)
{
case VK_MENU: break;//MVgaMainMenu(_UP); break;
case VK_LEFT: MVgaMainLR(1); break;
case VK_RIGHT: MVgaMainLR(0); break;
//fenixadd
case VK_UP: MVgaMainMenu(_UP); break;
case VK_DOWN: MVgaMainMenu(_DOWN); break;
#if (_IR_ENABLE)
#endif
//fenixend
}
}
//---------------------------------------------------------------------------
void MVgaMainMenu(unsigned char ucUD)
{
switch(ucOsdState)
{
case _M_COLOR: if(ucUD) ucOsdState = _M_COLOR_TEMP;
else ucOsdState = _M_BRIGHTNESS_ADJ;
fDrawCurrentLine(tVgaColorItem); break;
case _M_PICTURE: if(ucUD) ucOsdState = _M_V_POSITION;
else ucOsdState = _M_AUTO_CONFIG;
fDrawCurrentLine(tVgaPictureItem); break;
case _M_SOUND: if(ucUD) ucOsdState = _M_VOLUME_ADJ;
else ucOsdState = _M_VOLUME_ADJ;
fDrawCurrentLine(tVgaSoundItem); break;
case _M_FEATURE: if(ucUD) ucOsdState = _M_RESET;
else ucOsdState = _M_INPUTSOURCE_ADJ;
fDrawCurrentLine(tVgaFeatureItem); break;
case _M_EXIT:
// Close OSD
ucOsdState = _MENU_NONE;
COsdFxDisableOsd();
CCheckShowHinit();
return;
}
}
//---------------------------------------------------------------------------
void MVgaMainLR(unsigned char LR)
{
// 1 . clear old item
unsigned char ucPos = CurrMenuPos(tVGAMainItem);
MainMenuItemState(ucPos,0);
// Clear Old Screen
CLEAR_CLIENTOSD();
// 2. change item
if(LR)
{
NextMenuItem(tVGAMainItem);
}
else
{
PrevMenuItem(tVGAMainItem);
}
// 3. draw item
ucPos = CurrMenuPos(tVGAMainItem);
MainMenuItemState(ucPos,1);
// Draw New Page
switch(ucOsdState)
{
case _M_COLOR: DrawMenuItem(tVgaColorPage); break;
case _M_PICTURE: DrawMenuItem(tVgaPicturePage); break;
case _M_SOUND: DrawMenuItem(tVgaSoundPage); break;
case _M_FEATURE: DrawMenuItem(tVgaFeaturePage); break;
case _M_EXIT: DrawMenuItem(tExitPage); break;
}
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
void MVgaColorProc()
{
switch(ucKeyMessage)
{
case VK_MENU: break;//MVgaColorMenu(); break;
case VK_LEFT: MVgaColorMenu(); break;//MVgaColorLR(1); break;
case VK_RIGHT: break;//MVgaColorLR(0); break;
//fenixadd
case VK_UP:
if(stSystemData.InputSource == _SOURCE_VGA)
MenuItemUD(tVgaColorItem,1);
else
if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
MenuItemUD(tTvColorItem,1);
else
if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
MenuItemUD(tVideoColorItem,1);
break;
case VK_DOWN:
if(stSystemData.InputSource == _SOURCE_VGA)
MenuItemUD(tVgaColorItem,0);
else
if (stSystemData.InputSource == _SOURCE_VIDEO8_TV)
MenuItemUD(tTvColorItem,0);
else
if (stSystemData.InputSource == _SOURCE_VIDEO8_AV || stSystemData.InputSource == _SOURCE_VIDEO8_AV2)
MenuItemUD(tVideoColorItem,0);
break;
//fenixend
}
}
//---------------------------------------------------------------------------
void MVgaColorMenu()
{
switch(ucOsdState)
{
case _M_COLOR_TEMP:
// enter color temp page & Draw color temp
ClearCurrentLine(tVgaColorItem);
ucOsdState = _M_9300;
CLEAR_CLIENTOSD(); //gg
DrawMenuItem(tColorTempPage);
DrawCurrentLine(tColorTempItem);
break;
case _M_COLOR_EXIT:
// clear submenu select
ClearCurrentLine(tVgaColorItem);
ucOsdState = _M_COLOR;
break;
}
}
//---------------------------------------------------------------------------
void MVgaImageProc()
{
switch(ucKeyMessage)
{
case VK_MENU: break;//MVgaImageMenu(); break;
case VK_LEFT: MVgaImageMenu(); break;//MVgaImageLR(1); break;
case VK_RIGHT: break;//MVgaImageLR(0); break;
//fenixadd
case VK_UP: MenuItemUD(tVgaPictureItem,1); break;
case VK_DOWN: MenuItemUD(tVgaPictureItem,0); break;
//fenixend
}
}
//---------------------------------------------------------------------------
void MVgaImageMenu()
{
switch(ucOsdState)
{
case _M_AUTO_CONFIG:
// Do Auto Config
CAutoDoAutoConfig();
break;
case _M_AUTO_COLOR:
// Do Auto Balance
CAutoDoWhiteBalance();
break;
}
}
//---------------------------------------------------------------------------
void MSoundProc()
{
switch(ucKeyMessage)
{
case VK_MENU: break;//MSoundMenu(); break;
case VK_LEFT: break;//MSoundLR(1); break;
case VK_RIGHT: break;//MSoundLR(0); break;
//fenixadd
case VK_UP: MenuItemUD(tVgaSoundItem,1); break;
case VK_DOWN: MenuItemUD(tVgaSoundItem,0); break;
//fenixend
}
}
//---------------------------------------------------------------------------
void MVgaFeatureProc()
{
switch(ucKeyMessage)
{
case VK_MENU: break;//MVgaFeatureMenu(); break;
case VK_LEFT: MVGAFeatureMenu(); break;//MVgaFeatureLR(1); break;
case VK_RIGHT: break;//MVgaFeatureLR(0); break;
//fenixadd
case VK_UP: MenuItemUD(tVgaFeatureItem,1); break;
case VK_DOWN: MenuItemUD(tVgaFeatureItem,0); break;
//fenixend
}
//fenix got curront input source
ucInputSourceTemp = stSystemData.InputSource; //gg1
}
//---------------------------------------------------------------------------
void MVGAFeatureMenu()
{
switch(ucOsdState)
{
case _M_RESET:
DoReset();
break;
}
}
//---------------------------------------------------------------------------
void DrawLangauge()
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -