📄 slideosd.c
字号:
0x00, 0x20, 0x00, 0x20, // blank blank
0xe0, 0x1b, // ^
0x00, 0x20, // blank
0x00, 0x48, 0x00, 0x69, 0x00, 0x64, 0x00, 0x65, // Hide
0x00, 0x00 // \0
}
};
void DrawSlideShowHelp(BOOL bNeedDirectIcon, tHighlightType iHightlight)
{
RECT rectSlideHint0={SLIDEHINT_LEFT, SLIDEHINT_TOP, 488-56, SLIDEHINT_BOTTOM};
RECT rectSlideHint1={488-56, SLIDEHINT_TOP, SLIDEHINT_RIGHT, SLIDEHINT_BOTTOM};
COLORREF clBk, clSlideHintText;
if( OSD_Setup_Parameter.bTVOutPut==C_PAL
||(OSD_Setup_Parameter.bTVOutPut==C_AUTO && GetDefSetupPara(GETCMD_TVOUTPUT)) )
{
rectSlideHint0.top+=CANVAS_PAL_ADJUST;
rectSlideHint0.bottom+=CANVAS_PAL_ADJUST;
rectSlideHint1.top+=CANVAS_PAL_ADJUST;
rectSlideHint1.bottom+=CANVAS_PAL_ADJUST;
}
switch(iHightlight)
{
case HIGHLIGHT_FOCUS:
// break;
case HIGHLIGHT_NORMAL:
clBk=GetColorInDef256Palette(SLIDEHELP_CLR_INDEX);
clSlideHintText=GetColorInDef256Palette(SLIDENUMTEXT_CLR_INDEX);
// string too long, divide into two
if(bNeedDirectIcon)
GUI_CreateButtonControl(gAUXdc, &rectSlideHint0, clBk, clBk, clBk, clSlideHintText, SLIDE_SHOW_HELP_HINT[0], UNICODE_STRING, DT_RIGHT, 0);
else
GUI_CreateButtonControl(gAUXdc, &rectSlideHint0, clBk, clBk, clBk, clSlideHintText, SLIDE_SHOW_HELP_HINT[1], UNICODE_STRING, DT_RIGHT, 0);
GUI_CreateButtonControl(gAUXdc, &rectSlideHint1, clBk, clBk, clBk, clSlideHintText, SLIDE_SHOW_HELP_HINT[2], UNICODE_STRING, DT_LEFT, 0);
break;
case HIGHLIGHT_UNFOCUS:
// break;
case HIGHLIGHT_GRAY:
// break;
default:
break;
}
}
/********************************************************************/
// Draw Slide Show Num (Dynamic)
void DrawSlideShowNum(WORD iCurPic, WORD iTotalPic, tHighlightType iHightlight)
{
RECT rectSlideNum={SLIDENUM_LEFT, SLIDENUM_TOP, SLIDENUM_RIGHT, SLIDENUM_BOTTOM};
RECT rectSlideNumBot={SLIDENUM_LEFT-2, SLIDENUM_TOP-2, SLIDENUM_RIGHT+2, SLIDENUM_BOTTOM+2};
COLORREF clBk, clSlideNum, clSlideNumTop, clSlideNumBot, clSlideNumText;
char strSlideNo[256];
char strnum[10];
if( OSD_Setup_Parameter.bTVOutPut==C_PAL
||(OSD_Setup_Parameter.bTVOutPut==C_AUTO && GetDefSetupPara(GETCMD_TVOUTPUT)) )
{
rectSlideNum.top+=CANVAS_PAL_ADJUST;
rectSlideNum.bottom+=CANVAS_PAL_ADJUST;
}
//clBk=GetColorInDef256Palette(SLIDEHELP_CLR_INDEX);
clSlideNum=GetColorInDef256Palette(SLIDENUM_CLR_INDEX);
//clSlideNumTop=GetColorInDef256Palette(SLIDENUMTOP_CLR_INDEX);
clSlideNumBot=GetColorInDef256Palette(SLIDENUMBOT_CLR_INDEX);
clSlideNumText=GetColorInDef256Palette(SLIDENUMTEXT_CLR_INDEX);
//sprintf(strSlideNo, "%d/%d", iCurPic, iTotalPic);
memset(strnum, 0, 10);
I2Str(iCurPic, strnum, 0, 0);
strcpy(strSlideNo, strnum);
strcat(strSlideNo, "/");
memset(strnum, 0, 10);
I2Str(iTotalPic, strnum, 0, 0);
strcat(strSlideNo, strnum);
GUI_CreateButtonControl(gAUXdc, &rectSlideNumBot, clSlideNumBot, clSlideNumBot, clSlideNumBot, clSlideNumBot, "", NORMAL_STRING, DT_CENTER, 0);
GUI_CreateButtonControl(gAUXdc, &rectSlideNum, clSlideNum, clSlideNum, clSlideNum, clSlideNumText, strSlideNo, NORMAL_STRING, DT_CENTER, 0);
}
/********************************************************************/
// Draw Slide Show play mode osd
void DrawPlayModeOSD(WORD guiMode, tHighlightType iHighlight)
{
RECT rectPlayMode={PLAYMODE_LEFT, PLAYMODE_TOP, PLAYMODE_RIGHT, PLAYMODE_BOTTOM};
COLORREF clBk, clTopEdge, clBotEdge, clText, clClear;
char sCaption[BUF_MAX];
switch(iHighlight)
{
case HIGHLIGHT_FOCUS:
// break;
case HIGHLIGHT_NORMAL:
clBk=GetColorInDef256Palette(PLAYMODE_CLR_INDEX);
clTopEdge=GetColorInDef256Palette(PLAYMODETOP_CLR_INDEX);
clBotEdge=GetColorInDef256Palette(PLAYMODEBOT_CLR_INDEX);
clText=GetColorInDef256Palette(PLAYMODETEXT_CLR_INDEX);
LoadText(guiMode, sCaption, BUF_MAX);
GUI_CreateButtonControl(gAUXdc, &rectPlayMode, clBk, clTopEdge, clBotEdge, clText, sCaption, UNICODE_STRING, DT_CENTER, 0);
break;
case HIGHLIGHT_UNFOCUS:
// break;
case HIGHLIGHT_GRAY:
// break;
default:
clClear=GetColorInDef256Palette(255);
rectPlayMode.top-=10;
rectPlayMode.bottom+=20;
GUI_CreateButtonControl2(gAUXdc, &rectPlayMode, clClear, clClear, clClear, clClear, "", NORMAL_STRING, DT_CENTER, 0);
break;
}
}
/***************************MPA_HighLevel.c****************************
*
* Copyright (C) 2003 by ALi Corporation. All Rights Reserved.
*
* File: MPA_HighLevel.c
*
* Contents:
* To draw auxiliary part of Media Player's Outlook -- Implementation
* mainly, it is for slide show
*
* History:
* Date By Reason Ver.
* ====================================
* 2003/10 Gordon J.H. CHEN Create v2.6
*
***********************************************************************/
/*********************************************************************
*********************************************************************/
//Media Player Auxiliary Attribute
//private:
static BYTE iProgressItem; // 0.. PROGRESS_MAX_ITEM_COUNT-1, used to draw progress item
/*********************************************************************
*********************************************************************/
//Media Player Auxiliary Operation
//public: shared as interface to normal.c, etc.
void MPA_RefreshAuxiliary(tAuxliaryType iAuxType, tAuxliaryParam *iAuxParam);
/********************************************************************/
// RefreshAuxiliary
void MPA_RefreshAuxiliary(tAuxliaryType iAuxType, tAuxliaryParam *iAuxParam)
{
switch(iAuxType)
{
case AT_INIT:
InitAUXDC();
VfdCloseLongKey(3);
break;
case AT_CLOSE:
CloseAUXDC();
VfdOpenLongKey(3);
break;
case AT_PLAYMODE_CHG:
if(g_UiCrntSubFunc == UI_SUBFUNC_BRIGHTCONTRASTSHARP)
return;
DrawPlayModeOSD(*(iAuxParam->iPlayMode), HIGHLIGHT_NORMAL);
break;
case AT_PLAYMODE_CLR:
if(g_UiCrntSubFunc == UI_SUBFUNC_BRIGHTCONTRASTSHARP)
return;
DrawPlayModeOSD(*(iAuxParam->iPlayMode), HIGHLIGHT_GRAY);
break;
case AT_PROGRESSBAR_INIT:
iProgressItem=0;
DrawProgressBar(HIGHLIGHT_NORMAL);
break;
case AT_PROGRESSBAR_INC:
if(iProgressItem<PROGRESS_MAX_ITEM_COUNT)
{
if(iProgressItem==0)
DrawProgressBar(HIGHLIGHT_NORMAL);
DrawProgressItem(iProgressItem,HIGHLIGHT_NORMAL);
}
iProgressItem++;
break;
case AT_PROGRESSBAR_CLOSE:
DrawProgressBar(HIGHLIGHT_GRAY);
iProgressItem=0;
break;
case AT_SLIDESHOWHELP_INIT:
//if(bZoomCount != ZOOMNORMAL)
// return;
if(*(iAuxParam->bDrawSlideShowHelp))
{
DrawSlideShowBar(HIGHLIGHT_NORMAL);
DrawSlideShowNum(*(iAuxParam->iCurPic), *(iAuxParam->iTotalPic), HIGHLIGHT_NORMAL);
DrawSlideShowHelp(bZoomCount == ZOOMNORMAL && g_UiCrntSubFunc!=UI_SUBFUNC_VOLUM && g_UiCrntSubFunc != UI_SUBFUNC_BRIGHTCONTRASTSHARP, HIGHLIGHT_NORMAL);
}
break;
case AT_SLIDESHOWHELP_CLOSE:
DrawSlideShowBar(HIGHLIGHT_GRAY);
break;
case AT_SLIDESHOWHELP_CHG_HINT:
if(bZoomCount != ZOOMNORMAL)
return;
if(*(iAuxParam->bDrawSlideShowHelp))
DrawSlideShowHelp(bZoomCount == ZOOMNORMAL && g_UiCrntSubFunc!=UI_SUBFUNC_VOLUM, HIGHLIGHT_NORMAL);
break;
case AT_SLIDESHOWHELP_CHG_NUM:
if(g_UiCrntSubFunc==UI_SUBFUNC_ZOOM || gZoomFuncPlus)
return;
if(*(iAuxParam->bDrawSlideShowHelp))
DrawSlideShowNum(*(iAuxParam->iCurPic), *(iAuxParam->iTotalPic), HIGHLIGHT_NORMAL);
break;
default:
break;
}
}
BOOL CanZoom(void)
{
if(iProgressItem)
return TRUE;
else
return FALSE;
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -