Beispiel #1
0
void RegistryReadFont(CHARFORMAT* cf)
{
    cf->cbSize = sizeof(CHARFORMAT);
    cf->dwMask = CFM_BOLD | CFM_FACE | CFM_ITALIC | CFM_SIZE;
    cf->dwEffects = 0;

    RegReadStr("FontName", "Courier New", cf->szFaceName);
    cf->yHeight = RegReadInt("FontSize", PointToTwip(10));
    if (RegReadInt("FontWeight", 0)) cf->dwEffects |= CFE_BOLD;
    if (RegReadInt("FontItalic", 0)) cf->dwEffects |= CFE_ITALIC;
}
Beispiel #2
0
VOID CalculateFont(HWND hDlg, CHARFORMAT* cf)
{
    BOOL ValidSize;
    INT NewSize;
    INT CurSel;
    HWND hFace = GetDlgItem(hDlg, IDC_LstFontFace);

    RegistryReadFont(cf);

    CurSel = (INT) SendMessage(hFace, CB_GETCURSEL, 0, 0);
    if (CurSel == CB_ERR)
	GetWindowText(hFace, cf->szFaceName, 32);
    else
	SendMessage(hFace, CB_GETLBTEXT, CurSel, (LPARAM) cf->szFaceName);

    cf->dwEffects = 0;
    cf->dwEffects |= (GetDlgItemBool(hDlg, IDC_ChkFontBold) ? CFE_BOLD : 0);
    cf->dwEffects |= (GetDlgItemBool(hDlg, IDC_ChkFontItalic) ? CFE_ITALIC : 0);

    // check the size
    NewSize = GetDlgItemInt(hDlg, IDC_TxtFontSize, &ValidSize, FALSE);
    if (ValidSize) cf->yHeight = PointToTwip(NewSize);
}