Version: 2.9.4
Public Member Functions
wxPGEditor Class Reference

#include </home/zeitlin/src/wx/github/interface/wx/propgrid/editors.h>

Inheritance diagram for wxPGEditor:

Detailed Description

Base class for custom wxPropertyGrid editors.

注意:
  • Names of built-in property editors are: TextCtrl, Choice, ComboBox, CheckBox, TextCtrlAndButton, and ChoiceAndButton. Additional editors include SpinCtrl and DatePickerCtrl, but using them requires calling wxPropertyGrid::RegisterAdditionalEditors() prior use.

Library:  wxPropertyGrid
Category:  wxPropertyGrid

Public Member Functions

 wxPGEditor ()
 Constructor.
virtual ~wxPGEditor ()
 Destructor.
virtual wxString GetName () const
 Returns pointer to the name of the editor.
virtual wxPGWindowList CreateControls (wxPropertyGrid *propgrid, wxPGProperty *property, const wxPoint &pos, const wxSize &size) const =0
 Instantiates editor controls.
virtual void UpdateControl (wxPGProperty *property, wxWindow *ctrl) const =0
 Loads value from property to the control.
virtual void DrawValue (wxDC &dc, const wxRect &rect, wxPGProperty *property, const wxString &text) const
 Draws value for given property.
virtual bool OnEvent (wxPropertyGrid *propgrid, wxPGProperty *property, wxWindow *wnd_primary, wxEvent &event) const =0
 Handles events.
virtual bool GetValueFromControl (wxVariant &variant, wxPGProperty *property, wxWindow *ctrl) const
 Returns value from control, via parameter 'variant'.
virtual void SetValueToUnspecified (wxPGProperty *property, wxWindow *ctrl) const =0
 Sets value in control to unspecified.
virtual void SetControlAppearance (wxPropertyGrid *pg, wxPGProperty *property, wxWindow *ctrl, const wxPGCell &appearance, const wxPGCell &oldAppearance, bool unspecified) const
 Called by property grid to set new appearance for the control.
virtual void SetControlStringValue (wxPGProperty *property, wxWindow *ctrl, const wxString &txt) const
 Sets control's value specifically from string.
virtual void SetControlIntValue (wxPGProperty *property, wxWindow *ctrl, int value) const
 Sets control's value specifically from int (applies to choice etc.).
virtual int InsertItem (wxWindow *ctrl, const wxString &label, int index) const
 Inserts item to existing control.
virtual void DeleteItem (wxWindow *ctrl, int index) const
 Deletes item from existing control.
virtual void OnFocus (wxPGProperty *property, wxWindow *wnd) const
 Extra processing when control gains focus.
virtual bool CanContainCustomImage () const
 Returns true if control itself can contain the custom image.

List of all members.


Constructor & Destructor Documentation

wxPGEditor::wxPGEditor ( )

Constructor.

virtual wxPGEditor::~wxPGEditor ( ) [virtual]

Destructor.


Member Function Documentation

virtual bool wxPGEditor::CanContainCustomImage ( ) const [virtual]

Returns true if control itself can contain the custom image.

Default implementation returns false.

virtual wxPGWindowList wxPGEditor::CreateControls ( wxPropertyGrid propgrid,
wxPGProperty property,
const wxPoint pos,
const wxSize size 
) const [pure virtual]

Instantiates editor controls.

Parameters:
propgridwxPropertyGrid to which the property belongs (use as parent for control).
propertyProperty for which this method is called.
posPosition, inside wxPropertyGrid, to create control(s) to.
sizeInitial size for control(s).
注意:
virtual void wxPGEditor::DeleteItem ( wxWindow ctrl,
int  index 
) const [virtual]

Deletes item from existing control.

Default implementation does nothing.

virtual void wxPGEditor::DrawValue ( wxDC dc,
const wxRect rect,
wxPGProperty property,
const wxString text 
) const [virtual]

Draws value for given property.

virtual wxString wxPGEditor::GetName ( ) const [virtual]

Returns pointer to the name of the editor.

For example, wxPGEditor_TextCtrl has name "TextCtrl". If you dont' need to access your custom editor by string name, then you do not need to implement this function.

virtual bool wxPGEditor::GetValueFromControl ( wxVariant variant,
wxPGProperty property,
wxWindow ctrl 
) const [virtual]

Returns value from control, via parameter 'variant'.

Usually ends up calling property's StringToValue() or IntToValue(). Returns true if value was different.

virtual int wxPGEditor::InsertItem ( wxWindow ctrl,
const wxString label,
int  index 
) const [virtual]

Inserts item to existing control.

Index -1 means end of list. Default implementation does nothing. Returns index of item added.

virtual bool wxPGEditor::OnEvent ( wxPropertyGrid propgrid,
wxPGProperty property,
wxWindow wnd_primary,
wxEvent event 
) const [pure virtual]

Handles events.

Returns true if value in control was modified (see wxPGProperty::OnEvent() for more information).

注意:
wxPropertyGrid will automatically unfocus the editor when wxEVT_COMMAND_TEXT_ENTER is received and when it results in property value being modified. This happens regardless of editor type (ie. behaviour is same for any wxTextCtrl and wxComboBox based editor).
virtual void wxPGEditor::OnFocus ( wxPGProperty property,
wxWindow wnd 
) const [virtual]

Extra processing when control gains focus.

For example, wxTextCtrl based controls should select all text.

virtual void wxPGEditor::SetControlAppearance ( wxPropertyGrid pg,
wxPGProperty property,
wxWindow ctrl,
const wxPGCell appearance,
const wxPGCell oldAppearance,
bool  unspecified 
) const [virtual]

Called by property grid to set new appearance for the control.

Default implementation sets foreground colour, background colour, font, plus text for wxTextCtrl and wxComboCtrl.

The parameter appearance represents the new appearance to be applied.

The parameter oldAppearance is the previously applied appearance. Used to detect which control attributes need to be changed (e.g. so we only change background colour if really needed).

Finally, the parameter unspecified if true tells this function that the new appearance represents an unspecified property value.

virtual void wxPGEditor::SetControlIntValue ( wxPGProperty property,
wxWindow ctrl,
int  value 
) const [virtual]

Sets control's value specifically from int (applies to choice etc.).

virtual void wxPGEditor::SetControlStringValue ( wxPGProperty property,
wxWindow ctrl,
const wxString txt 
) const [virtual]

Sets control's value specifically from string.

virtual void wxPGEditor::SetValueToUnspecified ( wxPGProperty property,
wxWindow ctrl 
) const [pure virtual]

Sets value in control to unspecified.

virtual void wxPGEditor::UpdateControl ( wxPGProperty property,
wxWindow ctrl 
) const [pure virtual]

Loads value from property to the control.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines