📄 setupshow.c
字号:
Str[5] = p->SetupItems[i]->CurPara[1];
}
else
{
Str[0]=0x00;
Str[1]=0x20;
count = LoadText((p->SetupItems[i]->wItemChoiceIDs)[curchoice],
&(Str[2]), STR_LEN);
Str[2+count-1]=0x00;
Str[2+count]=0x00;
}
DrawText(hdc,Str,-1,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER);
if ((((p->SetupItems[i])->bObjectType) & 0x80) == 0x80)
{
/*modify by xianzhong to down size. Aug.4.2004*/
_SetColorMode(ITEM_TEXT_BK_NORMAL, ITEM_TEXT_NORMAL, FALSE, 0);
#if 0
SetTextColor(hdc, GetColorInDef256Palette(ITEM_TEXT_NORMAL));
SetBkColor(hdc, GetColorInDef256Palette(ITEM_TEXT_BK_NORMAL));
#endif
}
rect.left = ITEM_STARTX;
rect.right = ITEM_STARTX + ITEM_WIDTH;
OffsetRect(&rect, 0, ITEM_HIGH + ITEM_DISTANCE);
}
}
void ShowItemMenu(pPAGE_S p)
{
BYTE Str[STR_LEN];
HBRUSH hbr;
RECT rect;
HBITMAP hbmp;
int count, i;
LPBYTE curpara;
BYTE curchoice;
COLORREF color;
BYTE tmpStr [10]={0x00,0x2a,0x00,0x2a,0x00,0x2a,0x00,0x2a,0x00,0x00};
/* submenu rect */
SetRect(&rect,
ITEMMENU_STARTX,
ITEMMENU_STARTY,
ITEMMENU_STARTX + SUBMENU_WIDTH,
ITEMMENU_STARTY + SUBMENU_HIGH);
hbr = CreateSolidBrush(GetColorInDef256Palette(ITEM_BK_NORMAL));
FillRect(hdc,&rect,hbr);
DeleteObject((HGDIOBJ)hbr);
/*modify by xianzhong to down size. Aug.4.2004*/
_SetColorMode(ITEM_TEXT_BK_NORMAL, ITEM_TEXT_NORMAL, FALSE, 0);
#if 0
SetTextColor(hdc, GetColorInDef256Palette(ITEM_TEXT_NORMAL));
SetBkColor(hdc, GetColorInDef256Palette(ITEM_TEXT_BK_NORMAL));
#endif
/* item rect */
SetRect(&rect,
ITEM_STARTX,
ITEM_STARTY,
ITEM_STARTX + ITEM_WIDTH,
ITEM_STARTY + ITEM_HIGH );
for (i = 0; i<(p->bItemNums); i++)
{
Str[0]=0x00;
Str[1]=0x20;
Str[2]=0x00;
Str[3]=0x20;
count = LoadText((p->SetupItems[i])->wItemID, &(Str[4]), STR_LEN);
if ((((p->SetupItems[i])->bObjectType) & 0x80) == 0x80)
{
/* draw gray */
/*modify by xianzhong to down size. Aug.4.2004*/
_SetColorMode(ITEM_TEXT_BK_GRAY, ITEM_TEXT_GRAY, FALSE, 0);
#if 0
SetTextColor(hdc, GetColorInDef256Palette(ITEM_TEXT_GRAY));
SetBkColor(hdc, GetColorInDef256Palette(ITEM_TEXT_BK_GRAY));
#endif
DrawText(hdc,Str,count+4,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER);
}
else
{
DrawText(hdc,Str,count+2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER);
}
#if 0
/* direct image */
hbmp=LoadBitmap(NULL,GET_IMNAME(IM_SU_CURSOR));
TransparentImage(hdc,
CHOICE_STARTX, CHOICE_STARTY +CHOICE_DIRECT_OFF + (CHOICE_HIGH+CHOICE_DISTANCE)*i,
16, 11,
hbmp,
0,0,0,0,
(GetColorInDef256Palette(SETUP_TRAN_COLOR))) ;
DeleteObject((HGDIOBJ)hbmp);
/* chosen choice */
rect.left =CHOICE_STARTX+20;
rect.right =CHOICE_STARTX+CHOICE_WIDTH;
curchoice = GetCurChoice(p->SetupItems[i]);
if(curchoice == PWD_CHOICE_STAR)
{
Str[0] = 0x00;
Str[1] = 0x20;
Str[2]=Str[3]=0x00;
UNStringCat(Str,tmpStr);
}
else if(curchoice == COUNTRYCODE_CHOICE)
{
Str[0] = 0x00;
Str[1] = 0x20;
Str[2]=Str[4]=Str[6]=Str[7]=0x00;
Str[3] = p->SetupItems[i]->CurPara[0];
Str[5] = p->SetupItems[i]->CurPara[1];
}
else
{
Str[0]=0x00;
Str[1]=0x20;
count = LoadText((p->SetupItems[i]->wItemChoiceIDs)[curchoice],
&(Str[2]), STR_LEN);
Str[2+count-1]=0x00;
Str[2+count]=0x00;
}
DrawText(hdc,Str,-1,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER);
if ((((p->SetupItems[i])->bObjectType) & 0x80) == 0x80)
{
SetTextColor(hdc, GetColorInDef256Palette(ITEM_TEXT_NORMAL));
SetBkColor(hdc, GetColorInDef256Palette(ITEM_TEXT_BK_NORMAL));
}
#endif
rect.left = ITEM_STARTX;
rect.right = ITEM_STARTX + ITEM_WIDTH;
OffsetRect(&rect, 0, ITEM_HIGH + ITEM_DISTANCE);
}
//only change
//ShowCountryCode((p->SetupItems)[0],0);
//ShowWarning(ON,CONFIRM_OK);
//ShowWarning(SWITCH,CONFIRM_OK);
}
void ShowItems(pPAGE_S p)
{
BYTE Str[STR_LEN];
RECT rect;
int count, i;
LPBYTE curpara;
BYTE curchoice;
BYTE tmpStr [10]={0x00,0x2a,0x00,0x2a,0x00,0x2a,0x00,0x2a,0x00,0x00};
HBRUSH hbr;
/* item rect */
for (i = 0; i<7; i++)
{
SetRect(&rect,
ITEM_MENU_STARTX,
ITEM_CONTENT_STARTY+i*ITEM_CONTENT_HIGH,
ITEM_MENU_STARTX + ITEM_MENU_WIDTH,
ITEM_CONTENT_STARTY+(i+1)*ITEM_CONTENT_HIGH);
if(i<(p->bItemNums))
{
count = LoadText((p->SetupItems[i])->wItemID, Str, STR_LEN);
if ((((p->SetupItems[i])->bObjectType) & 0x80) == 0x80)
{
GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_TEXT_GRAY_COLOR),Str, UNICODE_STRING, DT_LEFT, 20);
}
else
{
GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_TEXT_COLOR),Str, UNICODE_STRING, DT_LEFT, 20);
}
}
else
{
hbr = CreateSolidBrush(GetColorInDef256Palette(ITEMCHOICE_BG_COLOR));
FillRect(setupHDC,&rect,hbr);
DeleteObject((HGDIOBJ)hbr);
}
}
}
void ShowHelpWindow(HELPOP op)
{
int i, count, interval;
BYTE Str[STR_LEN];
BYTE SetupHintStr[256]={0};
BYTE EmptyStr[6]={0x00,0x20,0x00,0x20,0x00,0x00};
BYTE bStrLen;
RECT HelpRect;
COLORREF textcolor,bgcolor;
SetRect(&HelpRect,
HELP_CONTENT_STARTX,
HELP_CONTENT_STARTY,
HELP_CONTENT_STARTX+HELP_CONTENT_WIDTH,
HELP_CONTENT_STARTY+HELP_CONTENT_HIGH);
textcolor = GetColorInDef256Palette(TEXT_NORMAL_COLOR);
bgcolor = GetColorInDef256Palette(TEXTBG_NORMAL_COLOR);
/* left most pos */
for(i=0;(pMS_Setup_Help[op][i]!=NULL&&i<4);i++)
{
UNStringCat(SetupHintStr, pMS_Setup_Help[op][i]->massIndex);
LoadText(pMS_Setup_Help[op][i]->strID, Str, STR_LEN);
UNStringCat(SetupHintStr,Str);
UNStringCat(SetupHintStr,EmptyStr);
}
GUI_CreateButtonControl2(setupHDC, &HelpRect, bgcolor, bgcolor, bgcolor, textcolor, SetupHintStr, UNICODE_STRING, DT_RIGHT, 0);
}
void ShowMenuIcon(pSETUP_S p, PAGEID id,MODETYPE mode)
{
int i;
for (i = 0; i < p->bPageNum; i++)
{
if (id == i )
{
HighLightPageIcon(p, i, mode);
}
else
HighLightPageIcon(p, i, HL_OFF);
}
}
void HighLightPageIcon(pSETUP_S p, PAGEID id, MODETYPE mode)
{
int i;
WORD wtmp;
RECT rect;
HBRUSH hbr;
BYTE TitleStr[256];
BYTE bInterval;
if (id>=5)
bInterval = 0;
else
bInterval= id;
if(mode ==HL_ON||mode == HL_GRAY)
{
//SetRect(&rect,ITEMCHOICE_MENUFRAME_TOP_X,ITEMCHOICE_MENUFRAME_TOP_Y,ITEMCHOICE_MENUFRAME_TOP_X+ITEMCHOICE_MENUFRAME_TOP_WIDTH,ITEMCHOICE_MENUFRAME_TOP_Y+ITEMCHOICE_MENUFRAME_TOP_HIGH);
//GUI_CreateBitmapControl(setupHDC, &rect, CL_BKNOCARE, CL_BKNOCARE, CL_BKNOCARE,IM_MAIN_CONTENTS_BACK_UP, 0, 0);
SetRect(&rect,PAGEICON_BASE_TOP_LEFT_X+bInterval*PAGEICON_BASE_DISTANCE, PAGEICON_BASE_TOP_LEFT_Y,
PAGEICON_BASE_TOP_LEFT_X+bInterval*PAGEICON_BASE_DISTANCE+PAGEICON_BASE_TOP_LEFT_IM_WIDTH,PAGEICON_BASE_TOP_LEFT_Y+PAGEICON_BASE_TOP_LEFT_IM_HIGH );
#if (_OSD_COLOR_SETUP_==_16_COLOR_SETUP_)
GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,IM_MAIN_ICON_SELECT_BOX_LEFT,0,0);
#else
GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,IM_MAIN_SELECT_BOX_LEFT,0,0);
#endif
SetRect(&rect,PAGEICON_STARTX+bInterval*PAGEICON_BASE_DISTANCE, PAGEICON_STARTY,
PAGEICON_STARTX+bInterval*PAGEICON_BASE_DISTANCE+PAGEIMG_WIDTH,PAGEICON_STARTY+PAGEIMG_HIGH);
GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,p->pSetupPages[id]->wIconID[1],0,0);
SetRect(&rect,PAGEICON_BASE_TOP_RIGHT_X+bInterval*PAGEICON_BASE_DISTANCE, PAGEICON_BASE_TOP_RIGHT_Y,
PAGEICON_BASE_TOP_RIGHT_X+bInterval*PAGEICON_BASE_DISTANCE+PAGEICON_BASE_TOP_RIGHT_IM_WIDTH,PAGEICON_BASE_TOP_RIGHT_Y+PAGEICON_BASE_TOP_LEFT_IM_HIGH );
#if (_OSD_COLOR_SETUP_==_16_COLOR_SETUP_)
GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,IM_MAIN_ICON_SELECT_BOX_RIGHT,0,0);
#else
GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,IM_MAIN_SELECT_BOX_RIGHT,0,0);
#endif
//SetRect(&rect,PAGEICON_BASE_FRONT_X+bInterval*PAGEICON_BASE_DISTANCE, PAGEICON_BASE_FRONT_Y,
// PAGEICON_BASE_FRONT_X+bInterval*PAGEICON_BASE_DISTANCE+PAGEICON_BASE_FRONT_IM_WIDTH,PAGEICON_BASE_FRONT_Y+PAGEICON_BASE_FRONT_IM_HIGH );
//GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,IM_MAIN_ICON_SELECT_BOX_FRONT,0,0);
//LoadText(p->pSetupPages[id]->wLableID,TitleStr,STR_LEN);
//GUI_CreateButtonControl2(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,GetColorInDef256Palette(TITLE_TEXT_ON_COLOR),TitleStr,UNICODE_STRING,DT_CENTER,0);
}
else if(mode == HL_OFF)
{
SetRect(&rect,PAGEICON_BASE_TOP_LEFT_X+bInterval*PAGEICON_BASE_DISTANCE,PAGEICON_STARTY,
PAGEICON_BASE_TOP_LEFT_X+(bInterval+1)*PAGEICON_BASE_DISTANCE,PAGEICON_STARTY+70);
hbr = CreateSolidBrush(GetColorInDef256Palette(255));
FillRect(setupHDC,&rect,hbr);
DeleteObject((HGDIOBJ)hbr);
SetRect(&rect,PAGEICON_BASE_TOP_LEFT_X+bInterval*PAGEICON_BASE_DISTANCE,TITLEBG_TOP_STARTY,
PAGEICON_BASE_TOP_LEFT_X+(bInterval+1)*PAGEICON_BASE_DISTANCE,TITLEBG_TOP_STARTY+TITLEBG_TOP_HIGH);
hbr = CreateSolidBrush(GetColorInDef256Palette(TITLEBG_TOP_COLOR));
FillRect(setupHDC,&rect,hbr);
DeleteObject((HGDIOBJ)hbr);
SetRect(&rect,PAGEICON_BASE_TOP_LEFT_X+bInterval*PAGEICON_BASE_DISTANCE,TITLEBG_SIDE_STARTY,
PAGEICON_BASE_TOP_LEFT_X+(bInterval+1)*PAGEICON_BASE_DISTANCE,TITLEBG_SIDE_STARTY+TITLEBG_SIDE_HIGH);
hbr = CreateSolidBrush(GetColorInDef256Palette(TITLEBG_SIDE_COLOR));
FillRect(setupHDC,&rect,hbr);
DeleteObject((HGDIOBJ)hbr);
SetRect(&rect,PAGEICON_STARTX+bInterval*PAGEICON_BASE_DISTANCE, PAGEICON_STARTY,
PAGEICON_STARTX+bInterval*PAGEICON_BASE_DISTANCE+PAGEIMG_WIDTH,PAGEICON_STARTY+PAGEIMG_HIGH);
GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,p->pSetupPages[id]->wIconID[0],0,0);
//SetRect(&rect,PAGEICON_BASE_FRONT_X+bInterval*PAGEICON_BASE_DISTANCE, PAGEICON_BASE_FRONT_Y,
// PAGEICON_BASE_FRONT_X+bInterval*PAGEICON_BASE_DISTANCE+PAGEICON_BASE_FRONT_IM_WIDTH,PAGEICON_BASE_FRONT_Y+PAGEICON_BASE_FRONT_IM_HIGH );
//LoadText(p->pSetupPages[id]->wLableID,TitleStr,STR_LEN);
//GUI_CreateButtonControl2(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,GetColorInDef256Palette(TITLE_TEXT_OFF_COLOR),TitleStr,UNICODE_STRING,DT_CENTER,0);
#if 0
if(bInterval == 0)
{
SetRect(&rect,ITEMCHOICE_MENUFRAME_LEFT_X,ITEMCHOICE_MENUFRAME_LEFT_Y,ITEMCHOICE_MENUFRAME_LEFT_X+ITEMCHOICE_MENUFRAME_LEFT_WIDTH,ITEMCHOICE_MENUFRAME_LEFT_Y+ITEMCHOICE_MENUFRAME_LEFT_HIGH);
GUI_CreateBitmapControl(setupHDC, &rect, CL_TRANSPARENT, CL_TRANSPARENT, CL_TRANSPARENT,IM_MAIN_CONTENTS_BACK_LEFT, 0, 0);
}
else if(bInterval == 4)
{
SetRect(&rect,ITEMCHOICE_MENUFRAME_RIGHT_X,ITEMCHOICE_MENUFRAME_RIGHT_Y,ITEMCHOICE_MENUFRAME_RIGHT_X+ITEMCHOICE_MENUFRAME_RIGHT_WIDTH,ITEMCHOICE_MENUFRAME_RIGHT_Y+ITEMCHOICE_MENUFRAME_RIGHT_HIGH);
GUI_CreateBitmapControl(setupHDC, &rect, CL_TRANSPARENT, CL_TRANSPARENT, CL_TRANSPARENT,IM_MAIN_CONTENTS_BACK_RIGHT, 0, 0);
}
#endif
}
//else if(mode == HL_GRAY)
//{
//SetRect(&rect,PAGEICON_BASE_FRONT_X+bInterval*PAGEICON_BASE_DISTANCE, PAGEICON_BASE_FRONT_Y,
// PAGEICON_BASE_FRONT_X+bInterval*PAGEICON_BASE_DISTANCE+PAGEICON_BASE_FRONT_IM_WIDTH,PAGEICON_BASE_FRONT_Y+PAGEICON_BASE_FRONT_IM_HIGH );
//GUI_CreateBitmapControl(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,IM_MAIN_ICON_SELECT_BOX_FRONT,0,0);
//LoadText(p->pSetupPages[id]->wLableID,TitleStr,STR_LEN);
//GUI_CreateButtonControl2(setupHDC,&rect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,GetColorInDef256Palette(TITLE_TEXT_OFF_COLOR),TitleStr,UNICODE_STRING,DT_CENTER,0);
//}
}
static BYTE SecondCur[2]={0xe0,0x11};
static BYTE CheckIcon[2]={0xe0,0x16};
static BYTE LockIcon[2]={0xe0,0x1c};
static BYTE UnLockIcon[2]={0xe0,0x1d};
static BYTE DownIcon[2]={0xe0,0x18};
static BYTE UpIcon[2]={0xe0,0x17};
void HighLightItem(pITEM_S pItem, ITEMID id, MODETYPE mode)
{
int count,i;
BYTE Str[STR_LEN] ;
BYTE EmptyStr[6]={0x00,0x20,0x00,0x20,0x00,0x00};
RECT rect,rect2;
HDC hcdc;
HBITMAP hbitmap;
HGDIOBJ holdbitmap;
HBRUSH hbr;
BYTE bgcol, txtcol;//added by xianzhong
/* submenu rect */
SetRect(&rect,
ITEM_MENU_STARTX,
ITEM_CONTENT_STARTY + id*(ITEM_CONTENT_HIGH),
ITEM_MENU_STARTX + ITEM_CONTENT_WIDTH+20,
ITEM_CONTENT_STARTY + id*(ITEM_CONTENT_HIGH) + ITEM_CONTENT_HIGH);
switch (mode)
{/*modify by xianzhong to down size. Aug.4.2004*/
case HL_ON://text and rect color set and image
bgcol = CHOICE_BG_COLOR;
txtcol = CHOICE_TEXT_HL_COLOR;
// count = LoadText(pItem->wItemID, Str, STR_LEN);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -