Ejemplo n.º 1
0
void wxFontDataProperty::OnSetValue()
{
    if ( !(&wxFontDataFromVariant(m_value)) )
    {
        wxFont* pFont = &wxFontFromVariant(m_value);
        if ( pFont )
        {
            wxFontData fontData;
            fontData.SetChosenFont(*pFont);
            m_value = WXVARIANT(fontData);
        }
        else
        {
            wxFAIL_MSG(wxT("Value to wxFontDataProperty must be eithe wxFontData or wxFont"));
        }
    }

    // Set m_value to wxFont so that wxFontProperty methods will work
    // correctly.
    m_value_wxFontData = m_value;
    wxFontData& fontData = wxFontDataFromVariant(m_value_wxFontData);

    wxFont font = fontData.GetChosenFont();
    if ( !font.Ok() )
        font = wxFont(10,wxSWISS,wxNORMAL,wxNORMAL);
    m_value = WXVARIANT(font);
}
Ejemplo n.º 2
0
bool wxFontDataProperty::ValidateValue( wxVariant& value ) const
{
    if ( &wxFontDataFromVariant(value) )
        return true;

    wxFont* pFont = &wxFontFromVariant(value);
    if ( pFont )
    {
        wxFontData fontData;
        fontData.SetChosenFont(*pFont);
        value = WXVARIANT(fontData);
        return true;
    }

    wxFAIL_MSG(wxT("Value to wxFontDataProperty must be eithe wxFontData or wxFont"));

    return false;
}
Ejemplo n.º 3
0
void wxFontDataProperty::ChildChanged( wxVariant& thisValue, int childIndex, wxVariant& childValue ) const
{
    wxFontData& fontData = wxFontDataFromVariant(thisValue);
    wxColour col;
    wxVariant variant;

    switch ( childIndex )
    {
        case 6:
            col << childValue;
            fontData.SetColour( col );
            break;
        default:
            // Transfer between subset to superset.
            variant = WXVARIANT(fontData.GetChosenFont());
            wxFontProperty::ChildChanged( variant, childIndex, childValue );
            fontData.SetChosenFont(wxFontFromVariant(variant));
    }
}