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

📄 setup.c

📁 M3355的源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
    	Page_Other.SetupItems[2]=&BlackLevel;
    	Page_Other.SetupItems[3]=&LoadDefault;
    	Page_Other.SetupItems[4]=&ScrsaverV;
    	Page_Other.SetupItems[5]=&LastPlay;
    	#else
    	Page_Other.SetupItems[1]=&BlackLevel;
    	Page_Other.SetupItems[2]=&LoadDefault;
    	Page_Other.SetupItems[3]=&ScrsaverV;
		Page_Other.SetupItems[4]=&LastPlay;
    	Page_Other.SetupItems[5]=NULL;

    	#endif
    }
    	

    ReorderItems(&Page_Audio);
    ReorderItems(&Page_Display);
    ReorderItems(&Page_Other);

    if(OSD_Setup_Parameter.bTVScreen == SETUPFUNC_TVSCR_16_9)
        DisplayMode.bObjectType = (DisplayMode.bObjectType|0x80);
        
    //#ifdef _KARAOKE_ENABLE_
    if(OSD_Setup_Parameter.bSDO== SETUPFUNC_OFF)
       for(i=0;i<3;i++)
       {
          Page_Audio.SetupItems[i]->bObjectType=(Page_Audio.SetupItems[i]->bObjectType|0x80);
       }
       
    if(OSD_Setup_Parameter.bVideoOutput != SETUPFUNC_VIDOPUT_YUV_CVBS)
	{
	     PScan.bObjectType |= 0x80;
	}
	else
	{
	     PScan.bObjectType &= 0x7f;
	}
	//#endif
 }


void UiFuncSetupInit_in(void)
{
    int i;
    PassCnt = 0;
	//
	InitSetupCfg_in();
	
    Setup_g_Var.bUnderConfirmMenu = FALSE;
    bConfirmKey = FALSE;//true means "ENTER";FALSE means "CANCEL"
    bCurValueInCurChoice[0] = OSD_Setup_Parameter.bCountryCode[0]-0x41;
    for(i=0;i<26;i++)
    {
        if(bCountryCode[bCurValueInCurChoice[0]].Last[i] ==OSD_Setup_Parameter.bCountryCode[1])
            bCurValueInCurChoice[1] = i;
    }

    Setup_g_Var.bCurMenu = 0;
    Setup_g_Var.bCurPage = 0;
    Setup_g_Var.bCurItem = 0;
    Setup_g_Var.bSPTestType = SETUPFUNC_TST_OFF;
    if(LeftMicStatus == C_LEFT_MIC_ON || RightMicStatus == C_RIGHT_MIC_ON)
    	Setup_g_Var.bMicStatuse = C_ON;
    else
    	Setup_g_Var.bMicStatuse = C_OFF;
    if(OSD_Setup_Parameter.bTVScreen == SETUPFUNC_TVSCR_16_9)
        DisplayMode.bObjectType = (DisplayMode.bObjectType|0x80);
    ShowSetupMenu(&Setup_Config);
}

/*added by xianzhong to down size.   Aug.3.2004*/
void Reset_InputNum(BYTE passnt)
{
     PassCnt = passnt;
     InputNum[0] = 0xff;
     InputNum[1] = 0xff;
     InputNum[2] = 0xff;
     InputNum[3] = 0xff;
}

/*added by xianzhong to down size.   Aug.3.2004*/
void Passcnt_inputnum()
{
    if(PassCnt != 4)
    {
         Reset_InputNum(0);
     }
     Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]->CurPara[2] = Setup_g_Var.bSLangLetter;
     Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]->CurPara[1] = Setup_g_Var.bFLangLetter;
}

/*added by xianzhong to down size.   Aug.3.2004*/
void CommonkeyLeft(BOOL bHelp)
{
    Setup_g_Var.bCurMenu = 0;
  //  HighLightPageIcon(&Setup_Config, Setup_g_Var.bCurPage, HL_ON);
    ShowSubMenu(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]);
    if(bHelp) ShowHelpWindow(HELP_LEVEL1);
}
void SetupCloseWhenOpen(void)
{
#if (_SETUP_51SPEAKER_MODE == _SETUP_51SPEAKER_ENABLE_)
    if(Setup_g_Var.bCurPage == 5)
    {
        SetTimer(SETUP_SPEAKER_TM_ID,SetSpeakerTimer,INFINITETIME); 
        ProSpeakerPara(SAVE_SP_PARA);
        Setup_g_Var.bSPTestType =  SETUPFUNC_TST_OFF;
        SetSPTestTone(&Setup_g_Var.bSPTestType);
    }
#endif
    if(((Setup_g_Var.bActiveObj&0x7f) == OBJ_MIXCHOICE_ITEM)&&
    	(Setup_g_Var.bCurChoice == Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]->bRange -1))
    {
            Passcnt_inputnum();
    }

    HideSetupMenu(&Setup_Config);
    Write_UserPara();
}

void UiFuncSetupClose(void)
{
    SetupCloseWhenOpen();
    g_UiCrntFunc = UI_FUNC_NORMAL;
    
    (UiInitFunc[UI_FUNC_NORMAL])();
    
    //301014-01mi
    // Start for LG#1371	
    // In LG Spec
    // If user change PBC-OFF into PBC-ON in vcd20 disc, All Boorkmark & Repeat & program & resume should be cleared.
    // If user change PBC-OFF into PBC-ON in vcd10 disc, All Boorkmark & Repeat & program & resume should be remained.
    // If user change PBC-OFF into PBC-ON, then change PBC-ON into PBC-OFF again, All Boorkmark & Repeat & program & resume should be remained.
    // So I can't decide in SetPBC() function of setupfunc.c
    if (((VirDiscType == C_VCD20) || (VirDiscType == C_SVCD)) && !OSD_Setup_Parameter.bPBC)
    {
    	bIsSecondStop = TRUE;
    	VirDiscType = C_VCD10;
#if(_VCD_PROGRAM_MODE==_VCD_PROGRAM_ENABLE_)
	emptyProgList();
#endif
    	UiClearPlaybckMd();
	ClearAllBookmark();
    }
    else if ((DiscType == C_VCD20)  && (VirDiscType == C_VCD10) && OSD_Setup_Parameter.bPBC)
    {
    	bIsSecondStop = TRUE;
    	VirDiscType = C_VCD20;
#if(_VCD_PROGRAM_MODE==_VCD_PROGRAM_ENABLE_)
	emptyProgList();
#endif
    	UiClearPlaybckMd();
	ClearAllBookmark();
    }
    else if ((DiscType == C_SVCD)  && (VirDiscType == C_VCD10) && OSD_Setup_Parameter.bPBC)
    {
    	bIsSecondStop = TRUE;
    	VirDiscType = C_SVCD;
#if(_VCD_PROGRAM_MODE==_VCD_PROGRAM_ENABLE_)
	emptyProgList();
#endif
    	UiClearPlaybckMd();
	ClearAllBookmark();
    }
    // End for LG#1371
    //301014-01mi
   // g_UiCrntFunc = UI_FUNC_NORMAL;
    RecoverOsdIcon();
}

void UiFuncSetupProc(WORD wType,DWORD dwInput)
{
    switch(wType)
    {
    case C_FP_KEY:
         SetupRespondFPKey(dwInput);
         break;
    case C_TIMER_ACTIVE:
         if(dwInput == C_SETUPSPK_TIMER)
         {
#if (_SETUP_51SPEAKER_MODE ==_SETUP_51SPEAKER_ENABLE_)
	      ScrSaver(SCRSAVER_CANCEL);
             SpeakerTestTimerAct();
#endif    
         }
         else if(dwInput == C_SETUPWARNING_TIMER)
         {
#if (_SETUP_PSCAN_MODE == _SETUP_PSCAN_ENABLE_)

             WarningTimerAct();
#endif
         }
	 else if(dwInput == C_SCRSAVERON_TIMER)
         {
             // David : init screen saver
             //31017-01 mengfu; turn off 5.1 channel test tone
#if (_SETUP_51SPEAKER_MODE ==_SETUP_51SPEAKER_ENABLE_)
             if( (Setup_g_Var.bActiveObj&0x7f) == OBJ_TIMER_CALLBACK_ITEM && Setup_g_Var.bSPTestType == SETUPFUNC_TST_ALL)
                 TimerClBckKeyRight();
#endif
             ScrSaverTurnON();   //31017-01 mengfu; screen saver on setup menu
         }
         break;
    case C_DT_TEST:
    	 if(dwInput == C_DT_TEST_BEGIN)
    	 {
    	 	UiFuncSetupClose();
    	 	ChangeLogoData(1);
        	ShowLogo(C_LOGO_FRAME);
#if (_SETUP_PSCAN_MODE == _SETUP_PSCAN_ENABLE_)

        	if(Setup_g_Var.bUnderConfirmMenu&&OSD_Setup_Parameter.bScanMode==SETUPFUNC_SCANMD_INT)
  	 	{
  	 		SetTimer(SETUP_WARNING_TM_ID, SetWarningTimer, INFINITETIME);
  	 		//step 1:close osd
	              ShowOSDOnOff(0);
			SetScanMode(&OSD_Setup_Parameter.bScanMode);
	              //step 2:reload osd data to osd data buffer
	              SetupExtEscape(SCANMODE_INTERLACED);
	              //step 3: osd open
	              ShowOSDOnOff(1);

  	 	}
#endif

        	CmdUIMsg(C_DT_TEST, C_DT_TEST_BEGIN);
    	 	
    	 }
    	 break;
    case C_FP_MIC_DETECT:
	     //BasalRespondFPMicDetect( dwInput);
	     SetupResponnFPMicDetect(dwInput);
	     break;
    }
}

void SetupResponnFPMicDetect(DWORD dwInput)
{
	static BYTE bOldMicStatus;
	bOldMicStatus = Setup_g_Var.bMicStatuse;
	//BYTE bTempChoice;
	switch(dwInput)
	{
		case C_LEFT_MIC_ON:
		case C_RIGHT_MIC_ON:
			Setup_g_Var.bMicStatuse = C_ON;
			break;
		case C_LEFT_MIC_OFF:
		case C_RIGHT_MIC_OFF:
			if(LeftMicStatus == C_LEFT_MIC_OFF && RightMicStatus == C_RIGHT_MIC_OFF)
			{
				Setup_g_Var.bMicStatuse = C_OFF;

			}
				
			break;
	}
	if(bOldMicStatus != Setup_g_Var.bMicStatuse)
	{
		if(Setup_g_Var.bCurPage == AUDIO_PAGE)
		{
			if(Setup_g_Var.bCurMenu == PAGE_MENU)
			{
				ShowChoiceMneu(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]);
			}
			else if(Setup_g_Var.bCurMenu == ITEM_MENU)
			{
				if(Setup_g_Var.bActiveObj == OBJ_KARARELATE_CHOICE_ITEM)
				{
					Setup_g_Var.bCurChoice = GetCurChoice(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]);
	        
	            			ShowChoices(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem],Setup_g_Var.bCurItem,CHOICE_ALIGN);

				}
			}
			else
			{
            			ShowChoices(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem],Setup_g_Var.bCurItem,CHOICE_ALIGN);

			       HighLightChoice(Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem], Setup_g_Var.bCurChoice, NORMAL, HL_ON);

			}
						
		}
	}

}

void SetupRespondFPKey(DWORD key)
{
	tPositionInfo  iPos;
	//static BYTE bTestMode = 0;
	extern BYTE   bMixPlay;
	//here for setup lastplay
	extern BOOL bCddaLastPlay;
	MPF_CurInfo MPFInfo;
	BYTE bType;	
#if (EXTERNAL_IDE_OPTION == EXTERNAL_IDE_ENABLE)			//chuang040408
	extern WORD UiSetupLastState;
#endif
	BYTE ScanMode =SETUPFUNC_SCANMD_INT;
    WORD iCurPic, iTotalPic;
    PLAYPOINT iPlayPoint;
    extern BOOL bDrawSlideShowHelp;
    extern WORD wShowedNum;
    extern BYTE bsetuplastplay;
	bCddaLastPlay=FALSE;

	if (DiscType == C_FILEOPENDISC || 
		DiscType == C_CDDA || 
		DiscType == C_DTSCD)
		MPF_GetCurTrackNum(&MPFInfo);
	
    switch(key)
    {
    #if 0
    case C_KEY_ZOOM:
    	bTestMode = (!bTestMode);
    	SetupResponnFPMicDetect(bTestMode);
    	break;
    #endif	
    case V_KEY_POWER:
    	 if(OSD_Setup_Parameter.bScanMode==SETUPFUNC_SCANMD_INT && Setup_g_Var.bUnderConfirmMenu)
    	 {
    	 	  ShowOSDOnOff(0);
    	 	  DCOp(DC_OFF);
                //step 2:switch sys to interlace mode
                SetScanMode(&ScanMode);
                //step 3:reload osd data to osd data buffer
                SetupExtEscape(SCANMODE_INTERLACED);
                
                //step 5: osd open
                //ShowOSDOnOff(1);
                if(GetDefSetupPara(GETCMD_SCART))
         	 {
        		OSD_Setup_Parameter.bVideoOutput = OSD_Setup_Parameter.bTempVideoOutPut;
        		SetVidOutput(&OSD_Setup_Parameter.bVideoOutput );
         	 }


    	 }
    	 if(((Setup_g_Var.bActiveObj&0x7f) == OBJ_MIXCHOICE_ITEM)&&
    		(Setup_g_Var.bCurChoice == Setup_Config.pSetupPages[Setup_g_Var.bCurPage]->SetupItems[Setup_g_Var.bCurItem]->bRange -1))
        {
                Passcnt_inputnum();
        }


    	 break;
    case V_KEY_OPEN:
    	 if(Setup_g_Var.bUnderConfirmMenu)
       	return;

⌨️ 快捷键说明

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