Ejemplo n.º 1
0
/**
 * Applies setting cahnges to registry
 *
 * @param char *reg_path - Registry path to apply changes to
 */
void CDX5Disp::OnApply()
{
	// Now apply video mode
	int index = m_res_list.GetCurSel();

	if( index == CB_ERR)
	{
		MessageBox("Failed to set graphic mode", "Error", MB_ICONERROR);
		return;
	}

	int current = m_res_list.GetItemData(index);

	if(reg_set_sz(LauncherSettings::get_reg_path(), "Videocard", dx5_modes[index].text_desc) == false)
	{
		MessageBox("Failed to set graphic mode", "Error", MB_ICONERROR);
	}
}
Ejemplo n.º 2
0
/**
 * The user has chosen to accept these settings
 *
 * @param char *reg_path - Registry path that any settings should be saved to
 */
void CDX8Disp::OnApply(char *reg_path, int flags)
{
	if(m_dx8_initialised_ok == false)
	{
		MessageBox("Cannot apply valid settings, install DX8!", "Error", MB_ICONERROR);
		return;
	}

	int result = 0;
	
	int selected_adapter = m_adapter_list.GetCurSel();
	int mode_num		 = m_res_list.GetItemData(m_res_list.GetCurSel());

	int aatype = m_antialias_list.GetCurSel();
	if(aatype == -1) {
		aatype = 0;
	}

	result += reg_set_dword(reg_path, "D3D8_AAType",  aatype);
	result += reg_set_dword(reg_path, "D3D8_Adapter", selected_adapter); 

	if(!result)
	{
		MessageBox("Failed to set an important registry entry", "Error", MB_ICONERROR);
	}

	// Lets set those video card settings
	D3DDISPLAYMODE mode;
	d3d_interface->EnumAdapterModes(selected_adapter, mode_num, &mode); 

	char video_card[100];
	int cdepth = d3d_get_mode_bit(mode.Format);

	char *reg_name = "Videocard";

	sprintf(video_card, "D3D8-(%dx%d)x%d bit", mode.Width, mode.Height, cdepth);
	reg_set_sz(reg_path, reg_name, video_card);
}