📄 osdav900.c
字号:
{
switch(ucOsdState)
{
case _MENU_COLOR: ucOsdState = _MENU_EXIT; break;
case _MENU_IMAGE_SETTING: ucOsdState = _MENU_COLOR; break;
case _MENU_OSD_MENU: ucOsdState = _MENU_IMAGE_SETTING; break;
case _MENU_LANGUAGE: ucOsdState = _MENU_OSD_MENU; break;
case _MENU_MISC: ucOsdState = _MENU_LANGUAGE; break;
case _MENU_EXIT: ucOsdState = _MENU_MISC; break;
}
}
// Step 3: Draw
DrawAVMainPageSelect(1);
}
//------------------------------------------------------------
void MAVMainMenuMenuOut()
{
ucOsdState = _MENU_NONE;
COsdFxDisableOsd();
}
//------------------------------------------------------------
void DrawAVMainPageSelect(unsigned char state)
{
unsigned char ucY = 0;
switch(ucOsdState)
{
case _MENU_COLOR: ucY = 5; break;
case _MENU_IMAGE_SETTING: ucY = 8; break;
case _MENU_OSD_MENU: ucY = 11; break;
case _MENU_LANGUAGE: ucY = 14; break;
case _MENU_MISC: ucY = 17; break;
case _MENU_EXIT: ucY = 20; break;
}
DrawPen(state,ucY);
}
//------------------------------------------------------------
//------------------------------------------------------------
void MAVColorPageProc()
{
switch(ucKeyMessage)
{
case VK_MENU_OUT: MAVColorPageMenuOut(); break;
case VK_MENU_IN: MAVColorPageMenuIn(); break;
case VK_PREV_MENU: MAVColorPageLR(0); break;
case VK_NEXT_MENU: MAVColorPageLR(1); break;
case VK_ADJ_DEC: break;
case VK_ADJ_INC: break;
case VK_DO: break;
case VK_ENTER: MAVColorPageMenuIn(); break;
case VK_LEFT: MAVColorPageLR(0); break;
case VK_RIGHT: MAVColorPageLR(1); break;
}
}
//------------------------------------------------------------
void MAVColorPageMenuIn()
{
switch(ucOsdState)
{
case _MENU_CONTRAST:
ucOsdState = _MENU_CONTRAST_ADJ;
SLIDER(CONTRAST_GUAGE);
break;
case _MENU_BRIGHTNESS:
ucOsdState = _MENU_BRIGHTNESS_ADJ;
SLIDER(BRIGHTNESS_GUAGE);
break;
case _MENU_HUE:
ucOsdState = _MENU_HUE_ADJ;
SLIDER(HUE_GUAGE);
break;
case _MENU_SATURATION:
ucOsdState = _MENU_SATURATION_ADJ;
SLIDER(SATURATION_GUAGE);
break;
case _MENU_COLOR_BACK:
MAVColorPageMenuOut();
break;
}
}
//------------------------------------------------------------
void MAVColorPageLR(unsigned char LR)
{
// Step 1: Clear Old Select
DrawAVColorPageSelect(0);
// Step 2: Change Select Item
if(LR)
{
switch(ucOsdState)
{
case _MENU_CONTRAST: ucOsdState = _MENU_BRIGHTNESS; break;
case _MENU_BRIGHTNESS: ucOsdState = _MENU_HUE; break;
case _MENU_HUE: ucOsdState = _MENU_SATURATION; break;
case _MENU_SATURATION: ucOsdState = _MENU_COLOR_BACK; break;
case _MENU_COLOR_BACK: ucOsdState = _MENU_CONTRAST; break;
}
}
else
{
switch(ucOsdState)
{
case _MENU_CONTRAST: ucOsdState = _MENU_COLOR_BACK; break;
case _MENU_BRIGHTNESS: ucOsdState = _MENU_CONTRAST; break;
case _MENU_HUE: ucOsdState = _MENU_BRIGHTNESS; break;
case _MENU_SATURATION: ucOsdState = _MENU_HUE; break;
case _MENU_COLOR_BACK: ucOsdState = _MENU_SATURATION; break;
}
}
// Step 3: Draw
DrawAVColorPageSelect(1);
}
//------------------------------------------------------------
void MAVColorPageMenuOut()
{
ucOsdState = _MENU_COLOR;
CLEAR_OSD_CLIENT();
DrawMainPage();
}
//------------------------------------------------------------
void DrawAVColorPageSelect(unsigned char state)
{
unsigned char ucY = 0;
switch(ucOsdState)
{
case _MENU_CONTRAST: ucY = 5; break;
case _MENU_BRIGHTNESS: ucY = 8; break;
case _MENU_HUE: ucY = 11; break;
case _MENU_SATURATION: ucY = 14; break;
case _MENU_COLOR_BACK: ucY = 17; break;
}
DrawPen(state,ucY);
}
//------------------------------------------------------------
//------------------------------------------------------------
void MAVImagePageProc()
{
switch(ucKeyMessage)
{
case VK_MENU_OUT: MAVImagePageMenuOut(); break;
case VK_MENU_IN: MAVImagePageMenuIn(); break;
case VK_PREV_MENU: MAVImagePageLR(0); break;
case VK_NEXT_MENU: MAVImagePageLR(1); break;
case VK_ADJ_DEC: break;
case VK_ADJ_INC: break;
case VK_DO: break;
case VK_ENTER: MAVImagePageMenuIn(); break;
case VK_LEFT: MAVImagePageLR(0); break;
case VK_RIGHT: MAVImagePageLR(1); break;
}
}
//------------------------------------------------------------
void MAVImagePageMenuIn()
{
switch(ucOsdState)
{
case _MENU_GAMMA:
ucOsdState = _MENU_GAMMA_ADJ;
Gotoxy(6,21,BYTE_DISPLAY);
Textout(sGammaAdj);
MDrawGammaSelState(0,1);
break;
case _MENU_SHARPNESS:
ucOsdState = _MENU_SHARPNESS_ADJ;
Gotoxy(4,21,BYTE_DISPLAY);
Textout(sSharpnessAdj);
MDrawSharpnessSelState(GET_SHARPNESS(),1);
break;
case _MENU_IMAGE_BACK:
MAVImagePageMenuOut();
break;
}
}
//------------------------------------------------------------
void MAVImagePageLR(unsigned char LR)
{
// Step 1: Clear Old Select
DrawPen(0,(ucOsdState - _MENU_GAMMA) * 3 + 5);
// Step 2: Change Select Item
ucOsdState = ValueInRangeChange(_MENU_GAMMA,_MENU_IMAGE_BACK,ucOsdState,LR,1);
// Step 3: Draw
DrawPen(1,(ucOsdState - _MENU_GAMMA) * 3 + 5);
}
//------------------------------------------------------------
void MAVImagePageMenuOut()
{
ucOsdState = _MENU_IMAGE_SETTING;
CLEAR_OSD_CLIENT();
DrawMainPage();
}
//------------------------------------------------------------
//--------- AV HUE PROC ----------------------------------
void MAVHueAdjProc()
{
switch(ucKeyMessage)
{
case VK_MENU_OUT: MAVHueMenuOut(); break;
case VK_MENU_IN: break;
case VK_PREV_MENU: break;
case VK_NEXT_MENU: break;
case VK_ADJ_DEC: MAVHueLR(0); break;
case VK_ADJ_INC: MAVHueLR(1); break;
case VK_DO: break;
case VK_ENTER: MAVHueMenuOut(); break;
case VK_LEFT: MAVHueLR(0); break;
case VK_RIGHT: MAVHueLR(1); break;
}
}
//------------------------------------------------------------
void MAVHueLR(unsigned char LR)
{
SET_KEYREPEATENABLE();
stVDCColor.Hue = ValueInRangeChange(0,100,stVDCColor.Hue,LR,0);
SLIDER(HUE_GUAGE);
rp_CAdjustVDCHue(stVDCColor.Hue);
}
//------------------------------------------------------------
void MAVHueMenuOut()
{
ucOsdState = _MENU_HUE;
CLEAR_OSD_ADJUST();
CLR_KEYREPEATENABLE();
ucOsdEventMsg = _SAVE_EE_VEDIOCOLOR_MSG;
}
//------------------------------------------------------------
//--------- AV SATURATION PROC ----------------------------------
void MAVSaturationAdjProc()
{
switch(ucKeyMessage)
{
case VK_MENU_OUT: MAVSaturationMenuOut(); break;
case VK_MENU_IN: break;
case VK_PREV_MENU: break;
case VK_NEXT_MENU: break;
case VK_ADJ_DEC: MAVSaturationLR(0); break;
case VK_ADJ_INC: MAVSaturationLR(1); break;
case VK_DO: break;
case VK_ENTER: MAVSaturationMenuOut(); break;
case VK_LEFT: MAVSaturationLR(0); break;
case VK_RIGHT: MAVSaturationLR(1); break;
}
}
//------------------------------------------------------------
void MAVSaturationLR(unsigned char LR)
{
SET_KEYREPEATENABLE();
stVDCColor.Saturation = ValueInRangeChange(0,100,stVDCColor.Saturation,LR,0);
SLIDER(SATURATION_GUAGE);
rp_CAdjustVDCSaturation(stVDCColor.Saturation);
}
//------------------------------------------------------------
void MAVSaturationMenuOut()
{
ucOsdState = _MENU_SATURATION;
CLEAR_OSD_ADJUST();
CLR_KEYREPEATENABLE();
ucOsdEventMsg = _SAVE_EE_VEDIOCOLOR_MSG;
}
//------------------------------------------------------------
#endif //#if(_VIDEO_AV_SUPPORT || _VIDEO_SV_SUPPORT || _VIDEO_TV_SUPPORT)
#endif //#if(OSD_TYPE == OSD900)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -