📄 setupshow.c
字号:
// GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_TEXT_HL_COLOR),Str, UNICODE_STRING, DT_LEFT,20);
break;
case HL_OFF: //text and rect color set and image
bgcol = ITEMCHOICE_BG_COLOR;
txtcol = CHOICE_TEXT_COLOR;
// count = LoadText(pItem->wItemID, Str, STR_LEN);
// GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_TEXT_COLOR),Str, UNICODE_STRING, DT_LEFT,20);
break;
case HL_GRAY: //text and rect color set and image
bgcol = ITEMCHOICE_BG_COLOR;
txtcol = ITEMCHOICE_TEXT_GRAY_COLOR;
// count = LoadText(pItem->wItemID, Str, STR_LEN);
// 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);
break;
case HL_CHECK:
bgcol = CHOICE_BG_COLOR;
txtcol = CHOICE_TEXT_COLOR;
// count = LoadText(pItem->wItemID, Str, STR_LEN);
// GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_TEXT_COLOR),Str, UNICODE_STRING, DT_LEFT,20);
break;
}
/*modify by xianzhong to down size. Aug.4.2004*/
count = LoadText(pItem->wItemID, Str, STR_LEN);
GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(bgcol), GetColorInDef256Palette(bgcol), GetColorInDef256Palette(bgcol), GetColorInDef256Palette(txtcol),Str, UNICODE_STRING, DT_LEFT,20);
}
static void OtherNumCat(LPBYTE Str, LPBYTE Num)
{
int i,j,k;
BYTE tmp[2];
k=0;
for (i = 1;i < 3;i++)
{
tmp[0] = Num[i]>>4;
tmp[1] = Num[i] & 0x0f;
for (j = 0; j < 2; j++)
{
Str[k++]=0x00;
if (tmp[j] == 0x0f)
// '-' token
Str[k++]=0x2d;
else
// number
Str[k++]=0x30+tmp[j];
}
}
Str[k++]=0x00;
Str[k++]=0x00;
}
void _SetTextColorByMode(MODETYPE mode)
{
BYTE color;
if (mode == HL_ON)
{
/* high light */
color = CHOICE_TEXT_HL_COLOR;
}
else
{
color = CHOICE_TEXT_COLOR;
}
/*modify by xianzhong to down size. Aug.4.2004*/
_SetColorMode(CHOICE_BG_COLOR, color, FALSE, 0);
#if 0
SetTextColor(setupHDC, GetColorInDef256Palette(color));
SetBkColor(setupHDC, GetColorInDef256Palette(CHOICE_BG_COLOR));
#endif
}
#if (_SETUP_MIXCHOICE_MODE == _SETUP_MIXCHOICE_ENABLE_)
static void ShowOtherNum(CHOICEID f, CHOICEID l, CHOICEID other, UINT interval, LPBYTE CurPara, MODETYPE mode)
{
RECT rect;
BYTE Str[STR_LEN];
SetRect(&rect,
CHOICE_CONTENT_STARTX+100,
CHOICE_CONTENT_STARTY + (other - f)*interval,
CHOICE_CONTENT_STARTX+50 + 100,
CHOICE_STARTY +
(other - f)*interval + CHOICE_CONTENT_STARTY);
//SetRect(&rect,367, 50, 387, 100);
_SetTextColorByMode(mode);
#if 0
if (mode == HL_ON)
{
/* high light */
color = CHOICE_TEXT_HL_COLOR;
}
else
{
color = CHOICE_TEXT_COLOR;
}
SetTextColor(setupHDC, GetColorInDef256Palette(color));
SetBkColor(setupHDC, GetColorInDef256Palette(CHOICE_BG_COLOR));
#endif
OtherNumCat(Str, CurPara);
DrawText(setupHDC,Str,-1,&rect, DT_OPAQUE|DT_CHARCLIP|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
#endif
static void ShowChoiceArrow(BYTE bRange)
{
RECT rect;
/* the top dirct icon */
if (FirstChoiceID > 0)
{
SetRect(&rect,
CHOICE_UP_ARROW_X,
CHOICE_UP_ARROW_Y,
CHOICE_UP_ARROW_X + CHOICE_DOWN_ARROW_W,
CHOICE_UP_ARROW_Y + CHOICE_DOWN_ARROW_H);
_SetColorMode(CHOICE_ARROW_BK_COL, CHOICE_CHECK_COL, TRUE, TRANSPARENT);
#if 0
SetTextColor(setupHDC,
GetColorInDef256Palette(CHOICE_CHECK_COL));
SetBkColor(setupHDC,
GetColorInDef256Palette(CHOICE_ARROW_BK_COL));
SetBkMode(setupHDC, TRANSPARENT);
#endif
DrawText(setupHDC,UpIcon,2,&rect, DT_CHARCLIP|DT_SINGLELINE|DT_TOP);
SetBkMode(setupHDC, OPAQUE);
}
/* the bottom dirct icon */
if (LastChoiceID + 1 < bRange)
{
SetRect(&rect,
CHOICE_DOWN_ARROW_X,
CHOICE_DOWN_ARROW_Y,
CHOICE_DOWN_ARROW_X + CHOICE_DOWN_ARROW_W,
CHOICE_DOWN_ARROW_Y + CHOICE_DOWN_ARROW_H);
_SetColorMode(CHOICE_ARROW_BK_COL, CHOICE_CHECK_COL, TRUE, TRANSPARENT);
#if 0
SetTextColor(setupHDC,
GetColorInDef256Palette(CHOICE_CHECK_COL));
SetBkColor(setupHDC,
GetColorInDef256Palette(CHOICE_ARROW_BK_COL));
SetBkMode(setupHDC, TRANSPARENT);
#endif
DrawText(setupHDC,DownIcon,2,&rect, DT_CHARCLIP|DT_SINGLELINE|DT_BOTTOM);
SetBkMode(setupHDC, OPAQUE);
}
}
static CleanChoiceBlk()
{
HBRUSH hbr;
RECT rect;
hbr = CreateSolidBrush(GetColorInDef256Palette(CHOICE_BG_COLOR));
SetRect(&rect,
CHOICE_MENU_STARTX,
CHOICE_CONTENT_STARTY,
CHOICE_MENU_STARTX + CHOICE_MENU_WIDTH,
CHOICE_CONTENT_STARTY + CHOICE_MENU_HIGH-6);
FillRect(setupHDC,&rect,hbr);
DeleteObject((HGDIOBJ)hbr);
}
static CleanCheckBlk()
{
HBRUSH hbr;
RECT rect;
hbr = CreateSolidBrush(GetColorInDef256Palette(CHOICE_BG_COLOR));
SetRect(&rect,RATINGCHOICE_STARTX,RATINGCHOICE_STARTY,
RATINGCHOICE_STARTX+CHOICE_CHECK_W,RATINGCHOICE_STARTY+RATINGCHOICE_HIGH);
FillRect(setupHDC,&rect,hbr);
DeleteObject((HGDIOBJ)hbr);
}
static void ShowCheck(BYTE CurChoice, CHOICEID f, CHOICEID l, UINT interval ,MODETYPE mode)
{
RECT rect;
if (f==l)
return;
if (f <= CurChoice && l >= CurChoice )
{
SetRect(&rect,
CHOICE_MENU_STARTX,
CHOICE_CONTENT_STARTY + (ItemID + CurChoice - f)*interval,
CHOICE_MENU_STARTX + 20,
CHOICE_CONTENT_STARTY +
(ItemID + CurChoice - f)*interval + CHOICE_CONTENT_HIGH);
//SetRect(&rect,367, 50, 387, 100);
_SetTextColorByMode(mode);
#if 0
if(mode == HL_ON)
{
color = CHOICE_TEXT_HL_COLOR;
#if 0
SetTextColor(setupHDC,
GetColorInDef256Palette(CHOICE_TEXT_HL_COLOR));
SetBkColor(setupHDC,
GetColorInDef256Palette(CHOICE_BG_COLOR));
#endif
}
else
{
color = CHOICE_TEXT_COLOR;
#if 0
SetTextColor(setupHDC,
GetColorInDef256Palette(CHOICE_TEXT_COLOR));
SetBkColor(setupHDC,
GetColorInDef256Palette(CHOICE_BG_COLOR));
#endif
}
SetTextColor(setupHDC,
GetColorInDef256Palette(color));
SetBkColor(setupHDC,
GetColorInDef256Palette(CHOICE_BG_COLOR));
#endif
DrawText(setupHDC,CheckIcon,2,&rect, DT_OPAQUE|DT_CHARCLIP|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
}
static void ShowLock(BYTE CurChoice, UINT interval)
{
int i;
RECT rect;
SetRect(&rect,
CHOICE_STARTX+4,
CHOICE_STARTY,
CHOICE_STARTX + CHOICE_CHECK_W,
CHOICE_STARTY + CHOICE_HIGH);
if (0 == FirstChoiceID)
{
i = 1;
OffsetRect(&rect, 0, interval);
}
else
{
i = FirstChoiceID;
}
for (; i < CurChoice ; i++)
{
_SetColorMode(246, 31, FALSE, 0);
#if 0/*modify by xianzhong to down size. Aug.4.2004*/
SetTextColor(hdc,
GetColorInDef256Palette(31));
SetBkColor(hdc,
GetColorInDef256Palette(246));
#endif
DrawText(hdc,LockIcon,2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
OffsetRect(&rect, 0, interval);
}
}
static void ShowUnLock()
{
RECT rect;
SetRect(&rect,
CHOICE_CHECK_STARTX+4,
CHOICE_STARTY,
CHOICE_CHECK_STARTX + CHOICE_CHECK_W,
CHOICE_STARTY + CHOICE_HIGH);
_SetColorMode(246, 31, FALSE, 0);
#if 0/*modify by xianzhong to down size. Aug.4.2004*/
SetTextColor(hdc,
GetColorInDef256Palette(31));
SetBkColor(hdc,
GetColorInDef256Palette(246));
#endif
DrawText(hdc,UnLockIcon,2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER);
}
void ShowRatingChoices(pITEM_S p)
{
RECT rect;
BYTE SymbolStr[4] = {0x00,0x00};
BYTE EmptyStr[2] = {0x00,0x20};
BYTE TextStr[STR_LEN];
int i,count;
BYTE bCurChoice;
CleanChoiceBlk();
bCurChoice = GetCurChoice(p);
for(i=0;i<p->bRange;i++)
{
SetRect(&rect,RATINGCHOICE_STARTX,RATINGCHOICE_STARTY+i*(RATINGCHOICE_HIGH),
RATINGCHOICE_STARTX+30,RATINGCHOICE_STARTY+i*(RATINGCHOICE_HIGH)+RATINGCHOICE_HIGH);
_SetColorMode(CHOICE_BG_COLOR, CHOICE_TEXT_COLOR, FALSE, 0);
#if 0/*modify by xianzhong to down size. Aug.4.2004*/
SetTextColor(setupHDC, GetColorInDef256Palette(CHOICE_TEXT_COLOR));
SetBkColor(setupHDC, GetColorInDef256Palette(CHOICE_BG_COLOR));
#endif
if(i==0&&bCurChoice == 0)
{
DrawText(setupHDC,UnLockIcon,2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
else if(i== 0 && bCurChoice !=0)
{
DrawText(setupHDC,EmptyStr,2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
else if(i!=0 && i<bCurChoice )
{
DrawText(setupHDC,LockIcon,2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
else if(i!=0&&i==bCurChoice)
{
DrawText(setupHDC,CheckIcon,2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
else
{
DrawText(setupHDC,EmptyStr,2,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
}
SetRect(&rect,RATINGCHOICE_TEXT_STARTX,RATINGCHOICE_STARTY+i*(RATINGCHOICE_HIGH),
RATINGCHOICE_TEXT_STARTX+RATINGCHOICE_WIDTH,RATINGCHOICE_STARTY+i*(RATINGCHOICE_HIGH)+RATINGCHOICE_HIGH);
count = LoadText(p->wItemChoiceIDs[i], TextStr, STR_LEN);
DrawText(setupHDC,TextStr,count,&rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER);
}
}
void HighlightRatingChoice(pITEM_S p,CHOICEID curChoice,CHOICETYPE choiceType,MODETYPE mode)
{
RECT rect;
BYTE SymbolStr[4] = {0x00,0x00};
BYTE EmptyStr[2] = {0x00,0x20};
BYTE TextStr[STR_LEN];
int i,count;
BYTE bCurChoice;
bCurChoice = GetCurChoice(p);
/*modify by xianzhong to down size. Aug.4.2004*/
_SetTextColorByMode(mode);
#if 0
if(mode == HL_ON)
{
SetTextColor(setupHDC, GetColorInDef256Palette(CHOICE_TEXT_HL_COLOR));
SetBkColor(setupHDC, GetColorInDef256Palette(CHOICE_BG_COLOR));
}
else if(mode == HL_OFF)
{
SetTextColor(setupHDC, GetColorInDef256Palette(CHOICE_TEXT_COLOR));
SetBkColor(setupHDC, GetColorInDef256Palette(CHOICE_BG_COLOR));
}
#endif
SetRect(&rect,RATINGCHOICE_STARTX,RATINGCHOICE_STARTY+curChoice*(RATINGCHOICE_HIGH),
RATINGCHOICE_STARTX+CHOICE_CHECK_W,RATINGCHOICE_STARTY+curChoice*(RATINGCHOICE_HIGH)+RATINGCHOICE_HIGH);
switch(choiceType)
{
case UNLOCK:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -