⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setupshow.c

📁 M3355的源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
            CHOICE_CONTENT_STARTY + pos * interval + CHOICE_CONTENT_HIGH);

    switch (mode)
    {
    case HL_ON:
        {
            //		ReDraw(&rect);
            idx_t = CHOICE_TEXT_HL_COLOR;
            idx_b = CHOICE_BG_COLOR;
            break;
        }
    case HL_OFF:
        {
            idx_t = CHOICE_TEXT_COLOR;
            idx_b = CHOICE_BG_COLOR;
            break;
        }
    case HL_GRAY:
        {
            idx_t = CHOICE_TEXT_COLOR;
            idx_b = TEXTBG_NORMAL_COLOR;
            break;
        }
    default:
        return;
    }
    /* highlight */
    count = LoadText(p->wItemChoiceIDs[id], Str, STR_LEN);
    GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(idx_b), GetColorInDef256Palette(idx_b), GetColorInDef256Palette(idx_b), GetColorInDef256Palette(idx_t), 
    							Str, UNICODE_STRING, DT_LEFT, 20);
    /* the chosen one */
    if(mode == HL_ON && choice==LOCK && id<CheckChoice && id>0)
    {
	 rect2.right = rect2.right-4;
        DrawText(hdc,LockIcon,2,&rect2, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
    }
    if (CheckChoice == id /*&& mode == HL_OFF*/)
    {
        ShowCheck(CheckChoice, FirstChoiceID, LastChoiceID,interval,mode);

    }
    ShowChoiceArrow(p->bRange);
#if (_SETUP_MIXCHOICE_MODE ==_SETUP_MIXCHOICE_ENABLE_)
    
    if (choice == OTHER && id == p->bRange-1)
        ShowOtherNum(FirstChoiceID,LastChoiceID,id,interval,p->CurPara,mode);
#endif    
}

void ShowPassword(PWDTYPE type, CONTENT content)
{
    BYTE Str[STR_LEN];
    HBRUSH hbr;
    int count;
    RECT pwdrect ={PWDBOX_STARTX+24,PWDBOX_STARTY+14,PWDBOX_STARTX+24+160,PWDBOX_STARTY+14+26};
    RECT framerect,inputrect,rect,okrect;
    int i;
    BYTE StarStr [4]= {0x00,0x2a,0x00,0x00};
    WORD NoticeID[3] = {RS_SETUP_LOCK_PASSWORD,RS_SETUP_LOCK_NEW,RS_SETUP_LOCK_VERIFY};
    BYTE InputStr[10] ;


    SetRect(&okrect,PWDBOX_STARTX+142 , PWDBOX_STARTY+48, PWDBOX_STARTX+142+60, PWDBOX_STARTY+48+26);
    
    switch(type)
    {
    case PSW_INPUT:
    case PSW_NEW:
    case PSW_VERIFY:
        count = LoadText(NoticeID[type], Str, STR_LEN);
	 for(i=0;i<4;i++)
	 {
	 	InputStr[i*2]=0x00;
	 	InputStr[i*2+1]=0x2d;
	 }
	 InputStr[8] = InputStr[9] = 0x00;
	 SetRect(&framerect, PASSWORD_LEFT_STARTX, PASSWORD_LEFT_STARTY, 
	 		PASSWORD_LEFT_STARTX+186,PASSWORD_LEFT_STARTY+85);
#if (_OSD_COLOR_SETUP_==_16_COLOR_SETUP_)
	 GUI_CreateLeftMidRightBitmap(setupHDC, &framerect, IM_MAIN_POPUP_LEFT, IM_MAIN_POPUP_MIDDLE, IM_MAIN_POPUP_RIGHT, TRUE);
#else
	 GUI_CreateLeftMidRightBitmap(setupHDC, &framerect, IM_MAIN_POPUP_LEFT, IM_MAIN_POPUP_MIDDLE, IM_MAIN_POPUP_RIGHT, TRUE);
#endif
        
	 SetRect(&rect, PASSWORD_CONTENT_STARTX, PASSWORD_CONTENT_STARTY, 
	 		PASSWORD_CONTENT_STARTX+PASSWORD_CONTENT_WIDTH,PASSWORD_CONTENT_STARTY+24);
	 GUI_CreateButtonControl2(setupHDC, &rect, CL_BKNOCARE, CL_BKNOCARE, CL_BKNOCARE, GetColorInDef256Palette(ITEMCHOICE_TEXT_COLOR), Str, UNICODE_STRING, DT_CENTER, 0);

	 SetRect(&rect, PASSWORD_INPUT_STARTX, PASSWORD_INPUT_STARTY, 
	 		PASSWORD_INPUT_STARTX+PASSWORD_INPUT_WIDTH,PASSWORD_INPUT_STARTY+PASSWORD_INPUT_HIGH);
	 GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_TEXT_COLOR), InputStr, UNICODE_STRING, DT_CENTER, 0);

        break;
    case PSW_INPUTING:
    case PSW_CLEARING_ONE:
	
    	 for(i=0;i<=content;i++)
    	 {
	 	InputStr[i*2]=0x00;
	 	InputStr[i*2+1]=0x2a;
    	 
    	 }
    	 if(content<3)
    	 {
    	 	for(i=content+1;i<4;i++)
	    	 {
		 	InputStr[i*2]=0x00;
		 	InputStr[i*2+1]=0x2d;	    	 
	    	 }

    	 }
    	 InputStr[8] = InputStr[9] = 0x00;
	 SetRect(&rect, PASSWORD_INPUT_STARTX, PASSWORD_INPUT_STARTY, 
	 		PASSWORD_INPUT_STARTX+PASSWORD_INPUT_WIDTH,PASSWORD_INPUT_STARTY+PASSWORD_INPUT_HIGH);
	 GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_TEXT_COLOR), InputStr, UNICODE_STRING, DT_CENTER, 0);
	
        break;
    case PSW_CANCEL:
        SetRect(&rect,PASSWORD_LEFT_STARTX, PASSWORD_LEFT_STARTY,
        		CHOICE_MENU_STARTX,PASSWORD_LEFT_STARTY+PASSWORD_LEFT_HIGH);


        hbr = CreateSolidBrush(GetColorInDef256Palette(ITEMCHOICE_BG_COLOR));
        FillRect(setupHDC,&rect,hbr);
        DeleteObject((HGDIOBJ)hbr);
        SetRect(&rect,CHOICE_MENU_STARTX, PASSWORD_LEFT_STARTY,
        		PASSWORD_LEFT_STARTX+186,PASSWORD_LEFT_STARTY+PASSWORD_LEFT_HIGH);


        hbr = CreateSolidBrush(GetColorInDef256Palette(CHOICE_BG_COLOR));
        FillRect(setupHDC,&rect,hbr);
        DeleteObject((HGDIOBJ)hbr);
        break;
    case PSW_CLEARING_ALL:
	 for(i=0;i<4;i++)
	 {
	 	InputStr[i*2]=0x00;
	 	InputStr[i*2+1]=0x2d;
	 }
	 InputStr[8] = InputStr[9] = 0x00;
	 SetRect(&rect, PASSWORD_INPUT_STARTX, PASSWORD_INPUT_STARTY, 
	 		PASSWORD_INPUT_STARTX+PASSWORD_INPUT_WIDTH,PASSWORD_INPUT_STARTY+PASSWORD_INPUT_HIGH);
	 GUI_CreateButtonControl2(setupHDC, &rect, GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(CHOICE_BG_COLOR), GetColorInDef256Palette(ITEMCHOICE_TEXT_COLOR), InputStr, UNICODE_STRING, DT_CENTER, 0);

        break;
    }
}
#if (_SETUP_PSCAN_MODE == _SETUP_PSCAN_ENABLE_)

void ShowWarning(Status stat, WarningType type)
{
    int i,count;
    BYTE Str[STR_LEN];
    RECT rect;
    HBITMAP hbmp;
    WORD confirm[2] = {RS_SETUP_CONFIRM_PROGSCAN_CONFIRM,RS_SETUP_CONFIRM_PROGSCAN_CONFIRM1};
    if (stat == ON || stat == OFF)
    {
        DCOp(stat);
        //if (stat == ON)
        //{
            /* show warning icon */
            /** \bug no image now */
            /*hbmp=LoadBitmap(NULL,GET_IMNAME(IM_DISC_ERR_CHECK));
            TransparentImage(hdc,
                             50,
                             50,
                             100,
                             100,
                             hbmp,
                             0,
                             0,
                             0,
                             0,
                             (GetColorInDef256Palette(SETUP_TRAN_COLOR)));
            DeleteObject((HGDIOBJ)hbmp);*/
        //}
        return;
    }

    /*modify by xianzhong to down size. Aug.4.2004*/
    _SetColorMode(251, 236, TRUE, OPAQUE);
    
   // SetBkMode(setupHDC, OPAQUE);

    SetupDraw3DFloatBox(WARNING_X,WARNING_Y,WARNING_W,WARNING_H);
    // warning text
    SetRect(&rect,
            WARNING_TEXT_X,
            WARNING_TEXT_Y,
            WARNING_TEXT_X + WARNING_TEXT_W,
            WARNING_TEXT_Y + WARNING_TEXT_H);
  //  SetTextColor(setupHDC, GetColorInDef256Palette(236));
   // SetBkColor(setupHDC, GetColorInDef256Palette(251));
    for (i = 0; i < 2; i++)
    {
        count = LoadText(confirm[i], Str, STR_LEN);
        DrawText(setupHDC,Str,count, &rect, DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CHARCLIP);
        OffsetRect(&rect, 0, 5+WARNING_TEXT_H);
    }

    // draw ok/cancel box
    ShowWarningButton(type);
}

void ShowWarningButton(WarningType type)
{
    int seq[2] = {0,0};
    COLORREF ref[2][3];
    int i,count;
    BYTE Str[STR_LEN];
    RECT rect;
    WORD check[2] = {RS_SETUP_HELP_ENTER,RS_SETUP_HELP_CANCLE};
    
    if (type == CONFIRM_OK)
        seq[0]=1;
    else
        seq[1]=1;
    
    ref[0][0]=GetColorInDef256Palette(62);
    ref[1][0]=GetColorInDef256Palette(29);
    ref[0][1]=GetColorInDef256Palette(31);
    ref[1][1]=GetColorInDef256Palette(155);
    ref[0][2]=GetColorInDef256Palette(128);
    ref[1][2]=GetColorInDef256Palette(167);

    SetRect(&rect,
            WARNING_CHECK_X,
            WARNING_CHECK_Y,
            WARNING_CHECK_X + WARNING_CHECK_W,
            WARNING_CHECK_Y + WARNING_CHECK_H);
    for (i = 0; i < 2; i++)
    {
        SetTextColor(setupHDC, GetColorInDef256Palette(236));
        Draw3DRect(setupHDC,&rect,ref[seq[i]][0],ref[seq[i]][1],ref[seq[i]][2],EDGE_RAISED,BF_RECT | BF_MIDDLE );
        count = LoadText(check[i], Str, STR_LEN);
        InflateRect(&rect, -2,-2);
        
        SetTextColor(setupHDC, GetColorInDef256Palette(236));
        SetBkColor(setupHDC, ref[seq[i]][0]);
        DrawText(setupHDC,Str,count, &rect,
                 DT_OPAQUE|DT_SINGLELINE|DT_VCENTER|DT_CENTER);
        InflateRect(&rect, 2,2);
        OffsetRect(&rect, 5+WARNING_CHECK_W, 0);
    }
}

#if (_SETUP_51SPEAKER_MODE == _SETUP_51SPEAKER_ENABLE_)
void HighLightImage(BYTE CurSpeaker,  MODETYPE mode)
{
    RECT imgrect;	
    BYTE bImgIndex;

    if(mode == HL_ON)
    	bImgIndex = 1;
    else
    	bImgIndex = 0;


    	SetRect(&imgrect, SetupSPKImg[CurSpeaker].x, SetupSPKImg[CurSpeaker].y, 
    			SetupSPKImg[CurSpeaker].x+SetupSPKImg[CurSpeaker].width, SetupSPKImg[CurSpeaker].y+SetupSPKImg[CurSpeaker].high);
    	GUI_CreateBitmapControl(setupHDC,&imgrect,CL_BKNOCARE,CL_BKNOCARE,CL_BKNOCARE,SetupSPKImg[CurSpeaker].ImgID[bImgIndex],0,0);

}
#endif

#endif

/*added by xianzhong to down size.   Aug.4.2004*/
void CommonShowSetupMenu(pSETUP_S p, BYTE type, BYTE nPage, BYTE nItem, BYTE nChoice, HELPOP op, MODETYPE mode)
{    
   // MY_PRINTF("type: %d\n", type);
    if(type & (1<<0))
   	{
      DCOp(DC_ON);
      ShowBGFrame();
      ShowMenuIcon(p, nPage ,HL_ON);
      ShowTitle(p->pSetupPages[nPage]);
   	}
    if(type & (1<<1)) ShowSubMenu(p->pSetupPages[nPage]);
    if(type & (1<<2)) ShowHelpWindow(op);
//Joey modify for all case of setup page show, you can reorder them for optimization.
//take care of the sequence!!!!show item and choices order!!!!
    if(type & (1<<6)) ShowItems(p->pSetupPages[nPage]);

    if(type & (1<<4)) ShowChoices(p->pSetupPages[nPage]->SetupItems[nItem],nItem,CHOICE_ALIGN);

    if(type & (1<<3)) HighLightItem(p->pSetupPages[nPage]->SetupItems[nItem], nItem, mode);
    if(type & (1<<5)) HighLightChoice(p->pSetupPages[nPage]->SetupItems[nItem], nChoice, NORMAL, HL_ON);

}
/*!
 * Func Name: ShowSetupMenu
 * Arg 		: pSETUP_S
 * 			  the point to the setup struct your want to show
 * return   : void
 * Remark	: show the setup menu's left column 
 */
void ShowSetupMenu(pSETUP_S p)
{
    /* step 1: show background logo */
    SetupShowLogo();

    CommonShowSetupMenu(p, ((1<<0) + (1<<1) + (1<<2)), FIRST_ONE, 0, 0, HELP_LEVEL1, 0);
  #if 0/*modify by xianzhong to down size.   Aug.4.2004*/
    DCOp(DC_ON);

    ShowBGFrame();

    /* step 2: show icon */
    ShowMenuIcon(p,FIRST_ONE ,HL_ON);
    ShowTitle(p->pSetupPages[FIRST_ONE]);
    /* step 3: show title */
    //ShowTitle(p->pSetupPages[FIRST_ONE]);
    /* step 4: show sub menu */
    ShowSubMenu(p->pSetupPages[FIRST_ONE]);
   
    /* step 5: show help window */
    ShowHelpWindow(HELP_LEVEL1);
#endif
}

void ShowSetupMenu1(pSETUP_S p)
{
    /* step 1: show background logo */
    SetupShowLogo();

    CommonShowSetupMenu(p, ((1<<0) + (1<<1) + (1<<2) + (1<<3) + (1<<4)), 4, 3, 0, HELP_LEVEL2, 0);
    #if 0/*modify by xianzhong to down size.   Aug.4.2004*/
    DCOp(DC_ON);

    ShowBGFrame();

    /* step 2: show icon */
    ShowMenuIcon(p,4 ,HL_ON);
    ShowTitle(p->pSetupPages[4]);
    /* step 3: show title */
    //ShowTitle(p->pSetupPages[FIRST_ONE]);
    /* step 4: show sub menu */
    ShowSubMenu(p->pSetupPages[4]);
   
    /* step 5: show help window */
    ShowChoices(p->pSetupPages[4]->SetupItems[3],3,CHOICE_ALIGN);
    HighLightItem(p->pSetupPages[4]->SetupItems[3], 3, HL_ON);
    ShowHelpWindow(HELP_LEVEL2);
   // ShowHelpWindow(HELP_LEVEL1);
#endif
}
#if (_SETUP_51SPEAKER_MODE == _SETUP_51SPEAKER_ENABLE_)

void ShowAudioItemsChoices(pPAGE_S p)
{
    RECT rect;
    int i;
    BYTE Str[STR_LEN];
    int count;
    WORD wTop,wBottom;
    B

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -