add hud font switching code
This commit is contained in:
parent
4e181756da
commit
ef37c65f92
|
@ -62,6 +62,45 @@
|
|||
typedef std::map<std::string, const agg::int8u*> TAgg_Font_Table;
|
||||
static TAgg_Font_Table font_table;
|
||||
|
||||
font_type fonts_list[] =
|
||||
{
|
||||
{ agg::gse4x6, "gse4x6" },
|
||||
{ agg::gse4x8, "gse4x8" },
|
||||
{ agg::gse5x7, "gse5x7" },
|
||||
{ agg::gse5x9, "gse5x9" },
|
||||
{ agg::gse6x9, "gse6x9" },
|
||||
{ agg::gse6x12, "gse6x12" },
|
||||
{ agg::gse7x11, "gse7x11" },
|
||||
{ agg::gse7x11_bold, "gse7x11_bold" },
|
||||
{ agg::gse7x15, "gse7x15" },
|
||||
{ agg::gse7x15_bold, "gse7x15_bold" },
|
||||
{ agg::gse8x16, "gse8x16" },
|
||||
{ agg::gse8x16_bold, "gse8x16_bold" },
|
||||
{ agg::mcs11_prop, "mcs11_prop" },
|
||||
{ agg::mcs11_prop_condensed, "mcs11_prop_condensed" },
|
||||
{ agg::mcs12_prop, "mcs12_prop" },
|
||||
{ agg::mcs13_prop, "mcs13_prop" },
|
||||
{ agg::mcs5x10_mono, "mcs5x10_mono" },
|
||||
{ agg::mcs5x11_mono, "mcs5x11_mono" },
|
||||
{ agg::mcs6x10_mono, "mcs6x10_mono" },
|
||||
{ agg::mcs6x11_mono, "mcs6x11_mono" },
|
||||
{ agg::mcs7x12_mono_high, "mcs7x12_mono_high" },
|
||||
{ agg::mcs7x12_mono_low, "mcs7x12_mono_low" },
|
||||
{ agg::verdana12, "verdana12" },
|
||||
{ agg::verdana12_bold, "verdana12_bold" },
|
||||
{ agg::verdana13, "verdana13" },
|
||||
{ agg::verdana13_bold, "verdana13_bold" },
|
||||
{ agg::verdana14, "verdana14" },
|
||||
{ agg::verdana14_bold, "verdana14_bold" },
|
||||
{ agg::verdana16, "verdana16" },
|
||||
{ agg::verdana16_bold, "verdana16_bold" },
|
||||
{ agg::verdana17, "verdana17" },
|
||||
{ agg::verdana17_bold, "verdana17_bold" },
|
||||
{ agg::verdana18, "verdana18" },
|
||||
{ agg::verdana18_bold, "verdana18_bold" },
|
||||
};
|
||||
int font_Nums = ARRAY_SIZE(fonts_list);
|
||||
|
||||
const agg::int8u* AggDrawTarget::lookupFont(const std::string& name)
|
||||
{
|
||||
TAgg_Font_Table::iterator it(font_table.find(name));
|
||||
|
@ -71,51 +110,8 @@ const agg::int8u* AggDrawTarget::lookupFont(const std::string& name)
|
|||
|
||||
static void Agg_init_fonts()
|
||||
{
|
||||
struct font_type
|
||||
{
|
||||
const agg::int8u* font;
|
||||
const char* name;
|
||||
}
|
||||
fonts[] =
|
||||
{
|
||||
{ agg::gse4x6, "gse4x6" },
|
||||
{ agg::gse4x8, "gse4x8" },
|
||||
{ agg::gse5x7, "gse5x7" },
|
||||
{ agg::gse5x9, "gse5x9" },
|
||||
{ agg::gse6x9, "gse6x9" },
|
||||
{ agg::gse6x12, "gse6x12" },
|
||||
{ agg::gse7x11, "gse7x11" },
|
||||
{ agg::gse7x11_bold, "gse7x11_bold" },
|
||||
{ agg::gse7x15, "gse7x15" },
|
||||
{ agg::gse7x15_bold, "gse7x15_bold" },
|
||||
{ agg::gse8x16, "gse8x16" },
|
||||
{ agg::gse8x16_bold, "gse8x16_bold" },
|
||||
{ agg::mcs11_prop, "mcs11_prop" },
|
||||
{ agg::mcs11_prop_condensed, "mcs11_prop_condensed" },
|
||||
{ agg::mcs12_prop, "mcs12_prop" },
|
||||
{ agg::mcs13_prop, "mcs13_prop" },
|
||||
{ agg::mcs5x10_mono, "mcs5x10_mono" },
|
||||
{ agg::mcs5x11_mono, "mcs5x11_mono" },
|
||||
{ agg::mcs6x10_mono, "mcs6x10_mono" },
|
||||
{ agg::mcs6x11_mono, "mcs6x11_mono" },
|
||||
{ agg::mcs7x12_mono_high, "mcs7x12_mono_high" },
|
||||
{ agg::mcs7x12_mono_low, "mcs7x12_mono_low" },
|
||||
{ agg::verdana12, "verdana12" },
|
||||
{ agg::verdana12_bold, "verdana12_bold" },
|
||||
{ agg::verdana13, "verdana13" },
|
||||
{ agg::verdana13_bold, "verdana13_bold" },
|
||||
{ agg::verdana14, "verdana14" },
|
||||
{ agg::verdana14_bold, "verdana14_bold" },
|
||||
{ agg::verdana16, "verdana16" },
|
||||
{ agg::verdana16_bold, "verdana16_bold" },
|
||||
{ agg::verdana17, "verdana17" },
|
||||
{ agg::verdana17_bold, "verdana17_bold" },
|
||||
{ agg::verdana18, "verdana18" },
|
||||
{ agg::verdana18_bold, "verdana18_bold" },
|
||||
};
|
||||
|
||||
for(u32 i=0;i<ARRAY_SIZE(fonts);i++)
|
||||
font_table[fonts[i].name] = fonts[i].font;
|
||||
for(u32 i=0;i<font_Nums;i++)
|
||||
font_table[fonts_list[i].name] = fonts_list[i].font;
|
||||
}
|
||||
|
||||
AggDraw_Desmume aggDraw;
|
||||
|
|
|
@ -662,5 +662,11 @@ extern AggDraw_Desmume aggDraw;
|
|||
|
||||
void Agg_init();
|
||||
|
||||
|
||||
struct font_type
|
||||
{
|
||||
const agg::int8u* font;
|
||||
const char* name;
|
||||
};
|
||||
extern font_type fonts_list[];
|
||||
extern int font_Nums;
|
||||
#endif
|
||||
|
|
|
@ -234,6 +234,7 @@
|
|||
|
||||
using namespace std;
|
||||
|
||||
|
||||
#ifdef EXPERIMENTAL_WIFI_COMM
|
||||
bool bSocketsAvailable = false;
|
||||
#include "winpcap.h"
|
||||
|
@ -498,6 +499,8 @@ struct NDS_fw_config_data win_fw_config;
|
|||
Color::Fuchsia
|
||||
};*/
|
||||
|
||||
|
||||
LRESULT CALLBACK HUDFontSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp);
|
||||
LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp);
|
||||
LRESULT CALLBACK SoundSettingsDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
LRESULT CALLBACK EmulationSettingsDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
|
@ -2658,6 +2661,7 @@ int _main()
|
|||
start_paused = cmdline.start_paused!=0;
|
||||
|
||||
Desmume_InitOnce();
|
||||
aggDraw.hud->setFont(fonts_list[GetPrivateProfileInt("Display","HUD Font", font_Nums-1, IniName)].name);
|
||||
|
||||
//in case this isnt actually a singlecore system, but the user requested it
|
||||
//then restrict ourselves to one core
|
||||
|
@ -5235,6 +5239,22 @@ DOKEYDOWN:
|
|||
if(tpaused) NDS_UnPause();
|
||||
}
|
||||
return 0;
|
||||
|
||||
case IDD_FONTCONFIG:
|
||||
{
|
||||
bool tpaused = false;
|
||||
if(execute)
|
||||
{
|
||||
tpaused = true;
|
||||
NDS_Pause();
|
||||
}
|
||||
|
||||
DialogBoxW(hAppInst, MAKEINTRESOURCEW(IDD_FONTSETTINGS), hwnd, (DLGPROC)HUDFontSettingsDlgProc);
|
||||
|
||||
if(tpaused) NDS_UnPause();
|
||||
}
|
||||
return 0;
|
||||
|
||||
case IDC_FRAMESKIPAUTO:
|
||||
{
|
||||
char text[80];
|
||||
|
@ -5537,7 +5557,38 @@ void Change3DCoreWithFallbackAndSave(int newCore, int fallbackCore)
|
|||
int gpu3dSaveValue = ((cur3DCore != GPU3D_NULL) ? cur3DCore : GPU3D_NULL_SAVED);
|
||||
WritePrivateProfileInt("3D", "Renderer", gpu3dSaveValue, IniName);
|
||||
}
|
||||
LRESULT CALLBACK HUDFontSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
|
||||
{
|
||||
switch(msg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
{
|
||||
for(int i=0;i<font_Nums;i++) ComboBox_AddString(GetDlgItem(hw, IDC_FONTCOMBO), fonts_list[i].name);
|
||||
ComboBox_SetCurSel(GetDlgItem(hw, IDC_FONTCOMBO),GetPrivateProfileInt("Display","HUD Font", font_Nums-1, IniName));
|
||||
}
|
||||
return TRUE;
|
||||
|
||||
case WM_COMMAND:
|
||||
{
|
||||
switch(LOWORD(wp))
|
||||
{
|
||||
case IDOK:
|
||||
{
|
||||
int i = ComboBox_GetCurSel(GetDlgItem(hw, IDC_FONTCOMBO));
|
||||
aggDraw.hud->setFont(fonts_list[i].name);
|
||||
WritePrivateProfileInt("Display","HUD Font", i, IniName);
|
||||
}
|
||||
case IDCANCEL:
|
||||
{
|
||||
EndDialog(hw, TRUE);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
LRESULT CALLBACK GFX3DSettingsDlgProc(HWND hw, UINT msg, WPARAM wp, LPARAM lp)
|
||||
{
|
||||
switch(msg)
|
||||
|
|
|
@ -43,6 +43,7 @@
|
|||
#define IDM_MBG2 122
|
||||
#define IDD_CHEAT_EXPORT 122
|
||||
#define IDM_MBG3 123
|
||||
#define IDD_FONTSETTINGS 123
|
||||
#define IDM_SBG0 124
|
||||
#define IDM_SBG1 125
|
||||
#define IDM_SBG2 126
|
||||
|
@ -389,6 +390,7 @@
|
|||
#define IDC_RFOLDER 1039
|
||||
#define IDC_2012 1039
|
||||
#define IDC_BBROWSE2 1040
|
||||
#define IDC_FONTCOMBO 1040
|
||||
#define IDC_PATHDESMUME 1041
|
||||
#define IDC_BRESTART 1042
|
||||
#define IDC_BVIEW 1043
|
||||
|
@ -853,6 +855,9 @@
|
|||
#define ID_SAVETYPE_FORCEASCURRENT 40082
|
||||
#define IDC_SAVETYPE_FORCE 40083
|
||||
#define ID_DISPLAYMETHOD_VSYNC 40084
|
||||
#define ID_TOOLS_SETFONT 40085
|
||||
#define ID_CONFIG_SETFONT 40086
|
||||
#define IDD_FONTCONFIG 40087
|
||||
#define IDC_LABEL_UP 50000
|
||||
#define IDC_LABEL_RIGHT 50001
|
||||
#define IDC_LABEL_LEFT 50002
|
||||
|
@ -952,9 +957,9 @@
|
|||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 123
|
||||
#define _APS_NEXT_COMMAND_VALUE 40085
|
||||
#define _APS_NEXT_CONTROL_VALUE 1040
|
||||
#define _APS_NEXT_RESOURCE_VALUE 125
|
||||
#define _APS_NEXT_COMMAND_VALUE 40088
|
||||
#define _APS_NEXT_CONTROL_VALUE 1041
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue