phoenix_title wx.propgrid.PGEditor

Base class for custom wx.propgrid.PropertyGrid editors.

Note

  • 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 wx.propgrid.PropertyGrid.RegisterAdditionalEditors prior use.

  • Pointer to built-in editor is available as PGEditor_EditorName (e.g. PGEditor_TextCtrl).

  • Before you start using new editor you just created, you need to register it using static function wx.propgrid.PropertyGrid.RegisterEditorClass , with code like this:

editorPointer = wx.propgrid.PropertyGrid.RegisterEditorClass(MyEditorClass(), “MyEditor”)

After that, wx.propgrid.PropertyGrid will take ownership of the given object, but you should still store editorPointer somewhere, so you can pass it to wx.propgrid.PGProperty.SetEditor , or return it from PGEditor.DoGetEditorClass().


class_hierarchy Class Hierarchy

Inheritance diagram for class PGEditor:

method_summary Methods Summary

__init__

Constructor.

CanContainCustomImage

Returns True if control itself can contain the custom image.

CreateControls

Instantiates editor controls.

DeleteItem

Deletes item from existing control.

DrawValue

Draws value for given property.

GetName

Returns pointer to the name of the editor.

GetValueFromControl

Returns value from control, via parameter variant.

InsertItem

Inserts item to existing control.

OnEvent

Handles events.

OnFocus

Extra processing when control gains focus.

SetControlAppearance

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

SetControlIntValue

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

SetControlStringValue

Sets control’s value specifically from string.

SetValueToUnspecified

Sets value in control to unspecified.

UpdateControl

Loads value from property to the control.


property_summary Properties Summary

Name

See GetName

m_clientData

A public C++ attribute of type ````.


api Class API

class wx.propgrid.PGEditor(Object)

Possible constructors:

PGEditor()

Base class for custom PropertyGrid editors.


Methods

__init__(self)

Constructor.



CanContainCustomImage(self)

Returns True if control itself can contain the custom image.

Default implementation returns False.

Return type

bool



CreateControls(self, propgrid, property, pos, size)

Instantiates editor controls.

Parameters
Return type

wx.propgrid.PGWindowList

Note



DeleteItem(self, ctrl, index)

Deletes item from existing control.

Default implementation does nothing.

Parameters


DrawValue(self, dc, rect, property, text)

Draws value for given property.

Parameters


GetName(self)

Returns pointer to the name of the editor.

For example, PGEditor_TextCtrl has name “TextCtrl”. If you don’t need to access your custom editor by string name, then you do not need to implement this function.

Return type

string



GetValueFromControl(self, property, ctrl)

Returns value from control, via parameter variant.

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

Parameters
Return type

tuple

Returns

( bool, variant )



InsertItem(self, ctrl, label, index)

Inserts item to existing control.

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

Parameters
  • ctrl (wx.Window) –

  • label (string) –

  • index (int) –

Return type

int



OnEvent(self, propgrid, property, wnd_primary, event)

Handles events.

Returns True if value in control was modified (see wx.propgrid.PGProperty.OnEvent for more information).

Parameters
Return type

bool

Note

wx.propgrid.PropertyGrid will automatically unfocus the editor when wxEVT_TEXT_ENTER is received and when it results in property value being modified. This happens regardless of editor type (i.e. behaviour is same for any wx.TextCtrl and wx.ComboBox based editor).



OnFocus(self, property, wnd)

Extra processing when control gains focus.

For example, wx.TextCtrl based controls should select all text.

Parameters


SetControlAppearance(self, pg, property, ctrl, appearance, oldAppearance, unspecified)

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

Default implementation sets foreground colour, background colour, font, plus text for wx.TextCtrl and wx.ComboCtrl.

Parameters
  • pg (wx.propgrid.PropertyGrid) – Property grid to which the edited property belongs.

  • property (wx.propgrid.PGProperty) – Edited property to which the editor control belongs.

  • ctrl (wx.Window) – Editor control.

  • appearance (wx.propgrid.PGCell) – New appearance to be applied.

  • oldAppearance (wx.propgrid.PGCell) – Previously applied appearance. Used to detect which control attributes need to be changed (e.g. so we only change background colour if really needed).

  • unspecified (bool) – If True tells this function that the new appearance represents an unspecified property value.



SetControlIntValue(self, property, ctrl, value)

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

Parameters


SetControlStringValue(self, property, ctrl, txt)

Sets control’s value specifically from string.

Parameters


SetValueToUnspecified(self, property, ctrl)

Sets value in control to unspecified.

Parameters


UpdateControl(self, property, ctrl)

Loads value from property to the control.

Parameters

Properties

Name

See GetName



m_clientData

A public C++ attribute of type ````.