Esempio n. 1
0
DllExport	
PF_Err 
EntryPointFunc (	
	PF_Cmd			cmd,
	PF_InData		*in_data,
	PF_OutData		*out_data,
	PF_ParamDef		*params[],
	PF_LayerDef		*output )
{
	PF_Err		err = PF_Err_NONE;

	switch (cmd) {
		case PF_Cmd_ABOUT:
			err = About(in_data,out_data,params,output);
			break;		
		case PF_Cmd_GLOBAL_SETUP:
			err = GlobalSetup(in_data,out_data,params,output);
			break;
		case PF_Cmd_PARAMS_SETUP:
			err = ParamsSetup(in_data,out_data,params,output);
			break;
		case PF_Cmd_RENDER:
			err = Render(in_data,out_data,params,output);
			break;
		case PF_Cmd_DO_DIALOG:
			err = PopDialog(in_data,out_data,params,output);
			break;		
		default:
			break;
	}
	return err;
}
Esempio n. 2
0
DllExport
PF_Err
EntryPointFunc (
    PF_Cmd			cmd,
    PF_InData		*in_data,
    PF_OutData		*out_data,
    PF_ParamDef		*params[],
    PF_LayerDef		*output,
    void			*extra)
{
    PF_Err		err = PF_Err_NONE;

    try {
        switch (cmd) {
        case PF_Cmd_ABOUT:

            err = About(in_data,
                        out_data,
                        params,
                        output);
            break;

        case PF_Cmd_GLOBAL_SETUP:

            err = GlobalSetup(	in_data,
                                out_data,
                                params,
                                output);
            break;

        case PF_Cmd_PARAMS_SETUP:

            err = ParamsSetup(	in_data,
                                out_data,
                                params,
                                output);
            break;

        case PF_Cmd_RENDER:

            err = Render(	in_data,
                            out_data,
                            params,
                            output);
            break;
        }
    }
    catch(PF_Err &thrown_err) {
        err = thrown_err;
    }
    return err;
}
Esempio n. 3
0
DllExport 
PF_Err 
EntryPointFunc (	
	PF_Cmd				cmd,
	PF_InData			*in_data,
	PF_OutData			*out_data,
	PF_ParamDef			*params[],
	PF_LayerDef			*output,
	void				*extra)
{
	PF_Err		err = PF_Err_NONE;
	
	try {
		switch (cmd) {

		case PF_Cmd_ABOUT:
			err = About(in_data, out_data, params, output);
			break;

		case PF_Cmd_GLOBAL_SETUP:
			err = GlobalSetup(	in_data, out_data, params, output);
			break;

		case PF_Cmd_PARAMS_SETUP:
			err = ParamsSetup(	in_data, out_data, params, output);
			break;

		case PF_Cmd_RENDER:
			err = Render(	in_data, out_data, params, output);
			break;

		case PF_Cmd_EVENT:
			err = HandleEvent(	in_data, out_data, params, output, reinterpret_cast<PF_EventExtra*>(extra));
			break;

		case PF_Cmd_ARBITRARY_CALLBACK:
			err = HandleArbitrary(	in_data, out_data, params, output, reinterpret_cast<PF_ArbParamsExtra*>(extra));
			break;
			
		case  PF_Cmd_SMART_PRE_RENDER:
			err = PreRender(in_data, out_data, reinterpret_cast<PF_PreRenderExtra*>(extra));
			break;

		case  PF_Cmd_SMART_RENDER:
			err = SmartRender(	in_data, out_data, reinterpret_cast<PF_SmartRenderExtra*>(extra));
			break;
		}
	} catch (PF_Err &thrown_err) {
		err = thrown_err;
	}
	return err;
}
Esempio n. 4
0
DllExport	
PF_Err 
EntryPointFunc (	
	PF_Cmd			cmd,
	PF_InData		*in_data,
	PF_OutData		*out_data,
	PF_ParamDef		*params[],
	PF_LayerDef		*output )
{
	PF_Err		err = PF_Err_NONE;
	
	switch (cmd) {
	case PF_Cmd_ABOUT:
		err = About(in_data,out_data,params,output);
		break;
	case PF_Cmd_GLOBAL_SETUP:
		err = GlobalSetup(in_data,out_data,params,output);
		break;
	case PF_Cmd_PARAMS_SETUP:
		err = ParamsSetup(in_data,out_data,params,output);
		break;
	case PF_Cmd_SEQUENCE_SETUP:
		err = SequenceSetup(in_data,out_data,params,output);
		break;
	case PF_Cmd_SEQUENCE_SETDOWN:
		err = SequenceSetdown(in_data,out_data,params,output);
		break;
	case PF_Cmd_SEQUENCE_RESETUP:
		err = SequenceResetup(in_data,out_data,params,output);
		break;
	case PF_Cmd_RENDER:
		err = Render(in_data,out_data,params,output);
		break;
	}
	return err;
}
Esempio n. 5
0
int UI_Startup()
{
	C_Window	*win;
	ImageBuffer *Primary;
	int			i;
	DWORD		r_mask, g_mask, b_mask;

	// OW
	//ShowCursor(TRUE);
	while (ShowCursor(TRUE) < 0);

	// OW
	// SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_ABOVE_NORMAL);

	FalconMessageFilter UIFilter(FalconEvent::UIThread, 0);

	// OW: Enable UI Hardware acceleration
	//	FalconDisplay.EnterMode(FalconDisplayConfiguration::UI);

	// M.N. Large UI
	if (g_bHiResUI){
		FalconDisplay.EnterMode(
			FalconDisplayConfiguration::UILarge, DisplayOptions.DispVideoCard, DisplayOptions.DispVideoDriver
		);
	}
	else {
		FalconDisplay.EnterMode(
			FalconDisplayConfiguration::UI, DisplayOptions.DispVideoCard, DisplayOptions.DispVideoDriver
		);
	}

	Primary=FalconDisplay.GetImageBuffer();

	Primary->GetColorMasks( &r_mask, &g_mask, &b_mask );
	UI95_SetScreenColorInfo(static_cast<DWORD>(r_mask), static_cast<DWORD>(g_mask), static_cast<DWORD>(b_mask));

	UIBuildColorTable();

	if(!gPlayerBook){
		gPlayerBook= new PhoneBook;
		gPlayerBook->Setup();
		gPlayerBook->Load("phonebkn.da2");
	}

	// THESE 2 LINES ARE VERY VERY Important!
	ShowWindow(FalconDisplay.appWin,SW_SHOWNORMAL);
	UpdateWindow(FalconDisplay.appWin);

	if(gScreenShotEnabled)
	{
		if (g_bHiResUI)
			gScreenShotBuffer=new WORD[1024l*768l];
		else
			gScreenShotBuffer=new WORD[800l*600l];
	}

	gMainHandler=new C_Handler;
	gMainHandler->Setup(FalconDisplay.appWin,NULL,Primary);
//	gMainHandler->SetCallback(UIMainMouse);

	GlobalSetup();
	LoadArtwork();
	LoadSoundFiles();
	LoadStringFiles();
	LoadMovieFiles();
	SetStartupFlags();

	LoadMainWindow();
	LoadCommsWindows();
	LoadHelpGuideWindows();
	RealLoadLogbook(); // without daves extra garbage

	_tcscpy(gUI_AutoSaveName,gStringMgr->GetString(TXT_AUTOSAVENAME));


	if(gCommsMgr->Online())
	{
		StartCommsQueue();
		RebuildGameTree();
	}

	INFOSetupControls();

	gMusic=new C_Music;
	gMusic->Setup(gSoundDriver);
	i=0;
	while(IntList[i].MusicID)
	{
		gMusic->AddInteractiveMusic(IntList[i].Section,IntList[i].Group,IntList[i].MusicID);
		i++;
	}

	gMainHandler->SetSection(100);
	if(MainLastGroup)
	{
		// Returning from the sim - Post eval our flight
		// KCK: Added the check for a pilot list so that we don't post-eval after a
		// discarded mission
		if(TheCampaign.MissionEvaluator && TheCampaign.MissionEvaluator->flight_data)
			TheCampaign.MissionEvaluator->PostMissionEval();
	
		if(MainLastGroup == 1000)
		{
			LoadInstantActionWindows();
			gMainHandler->EnableWindowGroup(100);
			gMainHandler->EnableWindowGroup(MainLastGroup);
		}
		else if(MainLastGroup == 2000)
		{
			LoadDogFightWindows();
		}
		else if (MainLastGroup == 3000)
		{
			LoadCampaignSelectWindows();
			restart_tactical_engagement ();
		}
		else if(MainLastGroup == 4000)
		{
			gMainHandler->SetSection(200);
			LoadCampaignSelectWindows();
			SetupMapWindow();
			LoadCampaignWindows();
			CampaignSetup();
			gMainHandler->EnableWindowGroup(200);
			if(CampaignLastGroup)
			{
				win=gMainHandler->FindWindow(CP_TOOLBAR);
				if(win)
					win->UnHideCluster(CampaignLastGroup);
				gMainHandler->EnableWindowGroup(CampaignLastGroup);
			}
			ActivateCampMissionSchedule();

			DoResultsWindows();
			/*
			if(MissionResult & PROMOTION)
				PromotionWindow();
			if(MissionResult & AWARD_MEDAL)
				AwardWindow();
			else if(MissionResult & COURT_MARTIAL)
				CourtMartialWindow();
			*/
			
		}
		else
		{
			gMainHandler->EnableWindowGroup(MainLastGroup);
		}
	}
	else
		gMainHandler->EnableWindowGroup(100);

	if(CampaignLastGroup != 4000)
		PlayUIMusic();

	gSoundMgr->SetAllVolumes(PlayerOptions.GroupVol[UI_SOUND_GROUP]);
	

	gMainHandler->StartTimerThread(UI_TIMER_INTERVAL); // 1 second intervals

	gMainHandler->SetEnableTime(GetCurrentTime()+100);
	gMainHandler->SetDrawFlag(1); // allow drawing (currently a true/false flag)

	UI_VuThread=new VuThread(&UIFilter, F4_EVENT_QUEUE_SIZE);

// Test KLUDGE for speedup
  	DeviceDependentGraphicsSetup( &FalconDisplay.theDisplayDevice );
	//DrawableBSP::LockAndLoad(VIS_F16C);
	
	SetCursor(gCursors[CRSR_F16]);

	if(!(LogState & LB_LOADED_ONCE))
	{
		LogState |= LB_LOADED_ONCE;
		LogBook.Initialize();
		UI_logbk.Initialize();
		PlayerOptions.Initialize ();
		DisplayOptions.Initialize();
	}

	if(!LogBook.CheckPassword(_T("")) && !(LogState & LB_CHECKED))
		PasswordWindow(TXT_LOG_IN,TXT_LOG_IN_MESSAGE,CheckPasswordCB,NoPasswordCB);
	else
	{
		FalconLocalSession->SetPlayerName(LogBook.NameWRank());
		FalconLocalSession->SetPlayerCallsign(LogBook.Callsign());
		FalconLocalSession->SetAceFactor(LogBook.AceFactor());
		FalconLocalSession->SetInitAceFactor(LogBook.AceFactor());
	}

	F4HearVoices();
	UserStickInputs.Reset();

	return(0);
}
Esempio n. 6
0
PF_Err DllExport 
EntryPointFunc (
				PF_Cmd			cmd,
				PF_InData		*in_data,
				PF_OutData		*out_data,
				PF_ParamDef		*params[],
				PF_LayerDef		*output,
				void			*extraPV)
{
	PF_Err		err = PF_Err_NONE;
	
	try {
		switch (cmd) 
		{
			case PF_Cmd_ABOUT:
				
				err =	About(	in_data,
								out_data,
								params,
								output);
				break;
				
			case PF_Cmd_GLOBAL_SETUP:
				
				err =	GlobalSetup(in_data,
									out_data,
									params,
									output);
				break;
				
			case PF_Cmd_PARAMS_SETUP:
				
				err =	ParamsSetup(in_data,
									out_data,
									params,
									output);
				break;
				
			case PF_Cmd_RENDER:
				
				err =	Render(	in_data,
								out_data,
								params,
								output);
				break;
				
			case PF_Cmd_EVENT:
				
				err =	HandleEvent(in_data,
									out_data,
									params,
									output,
									reinterpret_cast<PF_EventExtra*>(extraPV));
				break;
		}
	}
	catch(PF_Err &thrown_err){
		err = PF_Err_BAD_CALLBACK_PARAM;
	}
	return err;
}