wxsfontproperty.cpp

来自「非常好用的可移植的多平台C/C++源代码编辑器」· C++ 代码 · 共 57 行

CPP
57
字号
#include "../wxsheaders.h"
#include "wxsfontproperty.h"

#include <wx/intl.h>
#include <wx/propgrid/advprops.h>

wxsFontProperty::wxsFontProperty(wxsProperties* Properties,bool& _Use,wxFont& _Font):
    wxsProperty(Properties),
    PGId(0),
    UseId(0),
    Use(_Use),
    Font(_Font)
{
}

wxsFontProperty::~wxsFontProperty()
{
}

const wxString & wxsFontProperty::GetTypeName()
{
    static wxString Type(_T("wxFont"));
    return Type;
}

void wxsFontProperty::AddToPropGrid(wxPropertyGrid* Grid,const wxString& Name)
{
    PGId = Grid->Append( wxParentProperty(Name,wxPG_LABEL) );

    UseId = Grid->AppendIn(
        PGId,
        wxBoolProperty(_("Use font:"),wxPG_LABEL,Use ) );

    FontId = Grid->AppendIn(
        PGId,
        wxFontProperty(_("Font:"), wxPG_LABEL, Font ));
}

bool wxsFontProperty::PropGridChanged(wxPropertyGrid* Grid,wxPGId Id)
{
    if ( Id == PGId || Id == UseId || Id == FontId )
    {
    	Use = Grid->GetPropertyValue(UseId).GetBool();
    	Font = *wxDynamicCast(Grid->GetPropertyValueAsWxObjectPtr(FontId),wxFont);
        Grid->EnableProperty(FontId,Use);
    	return ValueChanged(true);
    }
    return true;
}

void wxsFontProperty::UpdatePropGrid(wxPropertyGrid* Grid)
{
    Grid->SetPropertyValue(UseId,Use);
    Grid->SetPropertyValue(FontId,Font);
    Grid->EnableProperty(FontId,Use);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?