void CfgAppearanceFontDlg::OnCustomFontTextBrowse(void) { xpr_tchar_t sFont[MAX_FONT_TEXT + 1] = {0}; GetDlgItemText(IDC_CFG_FONT_CUSTOM_FONT_TEXT, sFont, MAX_FONT_TEXT); LOGFONT sLogFont = {0}; StringToLogFont(sFont, sLogFont); CFontDialog sDlg; sDlg.m_cf.Flags &= ~CF_EFFECTS; sDlg.m_cf.Flags |= CF_INITTOLOGFONTSTRUCT; memcpy(sDlg.m_cf.lpLogFont, &sLogFont, sizeof(LOGFONT)); if (sDlg.DoModal() == IDOK) { xpr_tchar_t sText[MAX_FONT_TEXT + 1] = {0}; FontDlgToString(sDlg.GetFaceName(), sDlg.GetSize(), sDlg.GetWeight(), sDlg.IsItalic(), sDlg.IsStrikeOut(), sDlg.IsUnderline(), sText); SetDlgItemText(IDC_CFG_FONT_CUSTOM_FONT_TEXT, sText); setModified(); } }