wxPGProperty is base class for all wxPropertyGrid properties. More...
#include <propgrid.h>
Public Types | |
typedef void * | ClientDataType |
typedef wxUint32 | FlagType |
Public Member Functions | |
wxPGCell * | AcquireCell (unsigned int column) |
Returns wxPGCell of given column, NULL if none. | |
void | ActualChildChanged (wxVariant &thisValue, int childIndex, wxVariant &childValue) const |
bool | ActualIntToValue (wxVariant &variant, int number, int argFlags=0) const |
bool | ActualStringToValue (wxVariant &variant, const wxString &text, int argFlags=0) const |
bool | ActualValidateValue (wxVariant &value, wxPGValidationInfo &validationInfo) const |
void | AdaptListToValue (wxVariant &list, wxVariant *value) const |
Adapts list variant into proper value using consequtive ChildChanged-calls. | |
void | AddPrivateChild (wxPGProperty *prop) |
Call this to add sub-properties which will become private, fixed children. | |
wxPGProperty * | AppendChild (wxPGProperty *prop) |
Appends a new child property. | |
int | AppendChoice (const wxString &label, int value=INT_MAX) |
Adds entry to property's wxPGChoices and editor control (if it is active). | |
bool | AreAllChildrenSpecified (wxVariant *pendingList=NULL) const |
Determines, recursively, if all children are not unspecified. | |
bool | AreChildrenComponents () const |
Returns true if children of this property are component values (for instance, points size, face name, and is_underlined are component values of a font). | |
bool | CanHaveExtraChildren () const |
Returns true if extra children can be added for this property (i.e. | |
void | ChangeFlag (FlagType flag, bool set) |
Sets or clears given property flag(s). | |
virtual void | ChildChanged (wxVariant &thisValue, int childIndex, wxVariant &childValue) const |
Called after value of a child property has been altered. | |
void | ClearFlag (FlagType flag) |
void | DeleteChildren () |
Deletes children of the property. | |
void | DeleteChoice (int index) |
Removes entry from property's wxPGChoices and editor control (if it is active). | |
virtual wxVariant | DoGetAttribute (const wxString &name) const |
Returns value of an attribute. | |
virtual const wxPGEditor * | DoGetEditorClass () const |
Returns pointer to an instance of editor class. | |
virtual wxValidator * | DoGetValidator () const |
Returns pointer to the wxValidator that should be used with the editor of this property (NULL for no validator). | |
virtual wxVariant | DoGetValue () const |
Override this to return something else than m_value as the value. | |
virtual bool | DoSetAttribute (const wxString &name, wxVariant &value) |
Special handling for attributes of this property. | |
void | Empty () |
Deletes children of the property. | |
void | EnableCommonValue (bool enable=true) |
Call to enable or disable usage of common value (integer value that can be selected for properties instead of their normal values) for this property. | |
void | FixIndexesOfChildren (unsigned int starthere=0) |
void | GenerateComposedValue (wxString &text, int argFlags=0) const |
Composes text from values of child properties. | |
unsigned int | GetArrIndex () const |
wxString | GetAttribute (const wxString &name, const wxString &defVal) const |
Returns named attribute, as string, if found. | |
wxVariant | GetAttribute (const wxString &name) const |
double | GetAttributeAsDouble (const wxString &name, double defVal) const |
Returns named attribute, as double, if found. | |
long | GetAttributeAsLong (const wxString &name, long defVal) const |
Returns named attribute, as long, if found. | |
const wxPGAttributeStorage & | GetAttributes () const |
Returns comma-delimited string of property attributes. | |
wxVariant | GetAttributesAsList () const |
Returns m_attributes as list wxVariant. | |
const wxString & | GetBaseName () const |
Returns property's base name (ie. | |
wxPGCell * | GetCell (unsigned int column) const |
Returns wxPGCell of given column, NULL if none. | |
virtual wxPGCellRenderer * | GetCellRenderer (int column) const |
Returns used wxPGCellRenderer instance for given property column (label=0, value=1). | |
unsigned int | GetChildCount () const |
Returns number of child properties. | |
int | GetChildrenHeight (int lh, int iMax=-1) const |
Returns height of children, recursively, and by taking expanded/collapsed status into account. | |
unsigned int | GetChoiceCount () const |
virtual int | GetChoiceInfo (wxPGChoiceInfo *choiceinfo) |
Returns current value's index to the choice control. | |
const wxPGChoices & | GetChoices () const |
wxPGChoices & | GetChoices () |
wxString | GetChoiceString (unsigned int index) |
const wxChar * | GetClassName () const |
ClientDataType | GetClientData () const |
const wxPGEditor * | GetColumnEditor (int column) const |
Returns editor used for given column. | |
int | GetCommonValue () const |
Returns common value selected for this property. | |
unsigned int | GetCount () const |
Returns number of child properties. | |
const wxPGChoiceEntry * | GetCurrentChoice () const |
wxVariant | GetDefaultValue () const |
unsigned int | GetDepth () const |
int | GetDisplayedCommonValueCount () const |
Return number of displayed common values for this property. | |
wxString | GetDisplayedString () const |
const wxPGEditor * | GetEditorClass () const |
virtual wxPGEditorDialogAdapter * | GetEditorDialog () const |
Returns instance of a new wxPGEditorDialogAdapter instance, which is used when user presses the (optional) button next to the editor control;. | |
FlagType | GetFlags () const |
wxString | GetFlagsAsString (FlagType flagsMask) const |
Gets flags as a'|' delimited string. | |
wxPropertyGrid * | GetGrid () const |
Returns property grid where property lies. | |
wxPropertyGrid * | GetGridIfDisplayed () const |
Returns owner wxPropertyGrid, but only if one is currently on a page displaying this property. | |
const wxString & | GetHelpString () const |
wxPGId | GetId () |
Returns property id. | |
int | GetImageOffset (int imageWidth) const |
Converts image width into full image offset, with margins. | |
virtual wxSize | GetImageSize () const |
unsigned int | GetIndexInParent () const |
Returns position in parent's array. | |
wxPGProperty * | GetItemAtY (unsigned int y, unsigned int lh, unsigned int *nextItemY) const |
const wxString & | GetLabel () const |
Returns property's label. | |
const wxPGProperty * | GetLastVisibleSubItem () const |
Returns last visible sub-property, recursively. | |
wxPGProperty * | GetMainParent () const |
Returns highest level non-category, non-root parent. | |
int | GetMaxLength () const |
wxString | GetName () const |
Returns property's name with all (non-category, non-root) parents. | |
wxPGCell * | GetOrCreateCell (unsigned int column) |
Returns wxPGCell of given column, creating one if necesasry. | |
wxPGProperty * | GetParent () const |
Return parent of property. | |
wxPropertyGridState * | GetParentState () const |
wxPGProperty * | GetPropertyByName (const wxString &name) const |
Returns (direct) child property with given name (or NULL if not found). | |
wxString | GetType () const |
Returns type name of property that is compatible with CreatePropertyByType. | |
wxValidator * | GetValidator () const |
Gets assignable version of property's validator. | |
wxVariant | GetValue () const |
virtual wxString | GetValueAsString (int argFlags=0) const |
Returns text representation of property's value. | |
wxVariant | GetValueAsVariant () const |
Returns value as wxVariant. | |
wxBitmap * | GetValueImage () const |
const wxVariant & | GetValueRef () const |
wxVariant & | GetValueRef () |
Returns reference to the internal stored value. | |
wxString | GetValueString (int argFlags=0) const |
Same as GetValueAsString, except takes common value into account. | |
wxString | GetValueType () const |
int | GetY () const |
Returns coordinate to the top y of the property. | |
FlagType | HasFlag (FlagType flag) const |
Returns non-zero if given property flag is set. | |
bool | HasVisibleChildren () const |
Returns true if property has even one visible child. | |
bool | Hide (bool hide, int flags=wxPG_RECURSE) |
Hides or reveals the property. | |
int | Index (const wxPGProperty *p) const |
Returns index of given sub-property. | |
wxPGProperty * | InsertChild (int index, wxPGProperty *childProperty) |
Use this member function to add independent (ie. | |
int | InsertChoice (const wxString &label, int index, int value=INT_MAX) |
Adds entry to property's wxPGChoices and editor control (if it is active). | |
virtual bool | IntToValue (wxVariant &value, int number, int argFlags=0) const |
Converts 'number' (including choice selection) into proper value 'variant'. | |
bool | IsCategory () const |
Returns true if this property is actually a wxPropertyCategory. | |
bool | IsEnabled () const |
bool | IsExpanded () const |
bool | IsFlagSet (FlagType flag) const |
bool | IsRoot () const |
Returns true if this property is actually a wxRootProperty. | |
bool | IsSomeParent (wxPGProperty *candidate_parent) const |
bool | IsSubProperty () const |
Returns true if this is a sub-property. | |
bool | IsTextEditable () const |
Returns true if property has editable wxTextCtrl when selected. | |
bool | IsValueUnspecified () const |
Returns if property value is unspecified. | |
bool | IsVisible () const |
Returns true if all parents expanded. | |
wxPGProperty * | Item (unsigned int i) const |
Returns sub-property at index i. | |
wxPGProperty * | Last () const |
Returns last sub-property. | |
virtual void | OnCustomPaint (wxDC &dc, const wxRect &rect, wxPGPaintData &paintdata) |
Override to paint an image in front of the property value text or drop-down list item (but only if wxPGProperty::OnMeasureImage is overridden as well). | |
virtual bool | OnEvent (wxPropertyGrid *propgrid, wxWindow *wnd_primary, wxEvent &event) |
Events received by editor widgets are processed here. | |
virtual wxSize | OnMeasureImage (int item=-1) const |
Returns size of the custom painted image in front of property. | |
virtual void | OnSetValue () |
This virtual function is called after m_value has been set. | |
virtual void | OnValidationFailure (wxVariant &pendingValue) |
Called whenever validation has failed with given pending value. | |
bool | PrepareValueForDialogEditing (wxPropertyGrid *propgrid) |
Updates property value in case there were last minute changes. | |
bool | RecreateEditor () |
If property's editor is created this forces its recreation. | |
virtual void | RefreshChildren () |
Refresh values of child properties. | |
void | RefreshEditor () |
If property's editor is active, then update it's value. | |
void | SetAttribute (const wxString &name, wxVariant value) |
Sets an attribute for this property. | |
void | SetAttributes (const wxPGAttributeStorage &attributes) |
Sets attributes from a comma-delimited string. | |
void | SetCell (int column, wxPGCell *cellObj) |
Sets cell information for given column. | |
bool | SetChoices (const wxArrayString &labels, const wxArrayInt &values=wxArrayInt()) |
Sets new set of choices for property. | |
bool | SetChoices (wxPGChoices &choices) |
Set choices of a property to specified set of labels and values. | |
void | SetChoiceSelection (int newValue, const wxPGChoiceInfo &choiceInfo) |
Changes value of a property with choices, but only works if the value type is long or string. | |
void | SetChoicesExclusive () |
If property has choices and they are not yet exclusive, new such copy of them will be created. | |
void | SetClientData (ClientDataType clientData) |
Sets client data (void*) of a property. | |
void | SetCommonValue (int commonValue) |
Sets common value selected for this property. | |
void | SetDefaultValue (wxVariant &value) |
Set default value of a property. | |
void | SetEditor (const wxString &editorName) |
Sets editor for a property. | |
void | SetEditor (const wxPGEditor *editor) |
Sets editor for a property. | |
void | SetExpanded (bool expanded) |
void | SetFlag (FlagType flag) |
Sets given property flag(s). | |
void | SetFlagRecursively (FlagType flag, bool set) |
Sets or clears given property flag(s), recursively in child properties (if any). | |
void | SetFlagsFromString (const wxString &str) |
Sets flags from a '|' delimited string. | |
void | SetHelpString (const wxString &helpString) |
void | SetLabel (const wxString &label) |
Sets property's label. | |
bool | SetMaxLength (int maxLen) |
Set max length of text editor. | |
void | SetName (const wxString &newName) |
void | SetValidator (const wxValidator &validator) |
Sets wxValidator for a property. | |
void | SetValue (wxVariant value, wxVariant *pList=NULL, int flags=wxPG_SETVAL_REFRESH_EDITOR) |
Call this to set value of the property. | |
virtual bool | SetValueFromInt (long value, int flags=0) |
Converts integer to a value, and if succesfull, calls SetValue() on it. | |
virtual bool | SetValueFromString (const wxString &text, int flags=wxPG_PROGRAMMATIC_VALUE) |
Converts string to a value, and if succesfull, calls SetValue() on it. | |
void | SetValueImage (wxBitmap &bmp) |
Set wxBitmap in front of the value. | |
void | SetValueInEvent (wxVariant value) const |
Call in OnEvent(), OnButtonClick() etc. | |
void | SetValueToUnspecified () |
Sets property value to unspecified. | |
void | SetWasModified (bool set=true) |
Call with 'false' in OnSetValue to cancel value changes after all (ie. | |
virtual bool | StringToValue (wxVariant &variant, const wxString &text, int argFlags=0) const |
Converts 'text' into proper value 'variant'. | |
wxPGProperty * | UpdateParentValues () |
Updates composed values of parent non-category properties, recursively. | |
FlagType | UsesAutoUnspecified () const |
Returns true if containing grid uses wxPG_EX_AUTO_UNSPECIFIED_VALUES. | |
virtual bool | ValidateValue (wxVariant &value, wxPGValidationInfo &validationInfo) const |
Implement this function in derived class to check the value. | |
wxPGProperty (const wxString &label, const wxString &name) | |
Constructor. | |
wxPGProperty () | |
Basic constructor. | |
virtual | ~wxPGProperty () |
Virtual destructor. | |
Protected Member Functions | |
void | AddChild (wxPGProperty *prop) |
Call this to add sub-properties which will become private, fixed children. | |
void | AddChild2 (wxPGProperty *prop, int index=-1, bool correct_mode=true) |
This is used by Insert etc. | |
void | DoEmpty () |
Deletes all sub-properties. | |
bool | DoHide (bool hide, int flags) |
void | DoSetName (const wxString &str) |
wxString | GetColumnText (unsigned int col) const |
Returns text for given column. | |
wxPGProperty * | GetPropertyByNameWH (const wxString &name, unsigned int hintIndex) const |
Returns (direct) child property with given name (or NULL if not found), with hint index. | |
int | GetY2 (int lh) const |
void | PrepareSubProperties () |
void | SetParentalType (int flag) |
void | SetParentState (wxPropertyGridState *pstate) |
void | SubPropsChanged (int oldSelInd=-1) |
Protected Attributes | |
unsigned int | m_arrIndex |
wxPGAttributeStorage | m_attributes |
unsigned char | m_bgColIndex |
wxArrayPtrVoid | m_cells |
wxArrayPtrVoid | m_children |
ClientDataType | m_clientData |
int | m_commonValue |
const wxPGEditor * | m_customEditor |
unsigned char | m_depth |
unsigned char | m_depthBgCol |
unsigned char | m_fgColIndex |
FlagType | m_flags |
wxString | m_helpString |
wxString | m_label |
short | m_maxLen |
wxString | m_name |
wxPGProperty * | m_parent |
wxPropertyGridState * | m_parentState |
wxValidator * | m_validator |
wxVariant | m_value |
wxBitmap * | m_valueBitmap |
wxPGProperty is base class for all wxPropertyGrid properties.
wxPGProperty::wxPGProperty | ( | ) |
Basic constructor.
Should not be necessary to override.
wxPGProperty::wxPGProperty | ( | const wxString & | label, | |
const wxString & | name | |||
) |
Constructor.
Real used property classes should have constructor of this style:
// If T is a class, then it should be a constant reference // (e.g. const T& ) instead. MyProperty( const wxString& label, const wxString& name, T value ) : wxPGProperty(label, name) { // Generally recommended way to set the initial value // (as it should work in pretty much 100% of cases). wxVariant variant; variant << value; SetValue(variant); // If has child properties then create them here. For example: // AddPrivateChild( new wxStringProperty(wxT("Subprop 1"), // wxPG_LABEL, // value.GetSubProp1())); }
Of course, in this example, wxPGProperty could actually any other property class.
virtual wxPGProperty::~wxPGProperty | ( | ) | [virtual] |
Virtual destructor.
It is customary for derived properties to implement this.
wxPGCell* wxPGProperty::AcquireCell | ( | unsigned int | column | ) |
Returns wxPGCell of given column, NULL if none.
If valid object is returned, caller will gain its ownership.
void wxPGProperty::AddChild | ( | wxPGProperty * | prop | ) | [protected] |
Call this to add sub-properties which will become private, fixed children.
To handle value changes to and from these properties, you must implement RefreshChildren() and ChildChanged() in derived property class.
void wxPGProperty::AddChild2 | ( | wxPGProperty * | prop, | |
int | index = -1 , |
|||
bool | correct_mode = true | |||
) | [protected] |
This is used by Insert etc.
void wxPGProperty::AddPrivateChild | ( | wxPGProperty * | prop | ) |
Call this to add sub-properties which will become private, fixed children.
To handle value changes to and from these properties, you must implement RefreshChildren() and ChildChanged() in derived property class.
wxPGProperty* wxPGProperty::AppendChild | ( | wxPGProperty * | prop | ) |
Appends a new child property.
int wxPGProperty::AppendChoice | ( | const wxString & | label, | |
int | value = INT_MAX | |||
) |
Adds entry to property's wxPGChoices and editor control (if it is active).
Returns index of item added.
bool wxPGProperty::AreAllChildrenSpecified | ( | wxVariant * | pendingList = NULL |
) | const |
Determines, recursively, if all children are not unspecified.
Takes values in given list into account.
bool wxPGProperty::CanHaveExtraChildren | ( | ) | const |
Returns true if extra children can be added for this property (i.e.
it is wxPropertyCategory or wxCustomProperty)
void wxPGProperty::ChangeFlag | ( | FlagType | flag, | |
bool | set | |||
) |
Sets or clears given property flag(s).
For list of allowed flags, see List of wxPGProperty Flags.
virtual void wxPGProperty::ChildChanged | ( | wxVariant & | thisValue, | |
int | childIndex, | |||
wxVariant & | childValue | |||
) | const [virtual] |
Called after value of a child property has been altered.
Note that this function is usually called at the time that value of this property, or given child property, is still pending for change.
Sample pseudo-code implementation:
void MyProperty::ChildChanged( wxVariant& thisValue, int childIndex, wxVariant& childValue ) const { // Acquire reference to actual type of data stored in variant // (TFromVariant only exists if wxPropertyGrid's wxVariant-macros were used to create // the variant class). T& data = TFromVariant(thisValue); // Copy childValue into data. switch ( childIndex ) { case 0: data.SetSubProp1( childvalue.GetLong() ); break; case 1: data.SetSubProp2( childvalue.GetString() ); break; ... } }
thisValue | Value of this property, that should be altered. | |
childIndex | Index of child changed (you can use Item(childIndex) to get). | |
childValue | Value of the child property. |
Reimplemented in wxFontProperty, wxPGRootProperty, wxPropertyCategory, wxFlagsProperty, and wxCustomProperty.
void wxPGProperty::DeleteChoice | ( | int | index | ) |
Removes entry from property's wxPGChoices and editor control (if it is active).
If selected item is deleted, then the value is set to unspecified.
void wxPGProperty::DoEmpty | ( | ) | [protected] |
Deletes all sub-properties.
virtual wxVariant wxPGProperty::DoGetAttribute | ( | const wxString & | name | ) | const [virtual] |
Returns value of an attribute.
Override if custom handling of attributes is needed.
Default implementation simply return NULL variant.
virtual wxValidator* wxPGProperty::DoGetValidator | ( | ) | const [virtual] |
Returns pointer to the wxValidator that should be used with the editor of this property (NULL for no validator).
Setting validator explicitly via SetPropertyValidator will override this.
In most situations, code like this should work well (macros are used to maintain one actual validator instance, so on the second call the function exits within the first macro):
wxValidator* wxMyPropertyClass::DoGetValidator () const { WX_PG_DOGETVALIDATOR_ENTRY() wxMyValidator* validator = new wxMyValidator(...); ... prepare validator... WX_PG_DOGETVALIDATOR_EXIT(validator) }
Reimplemented in wxIntProperty, wxFloatProperty, and wxFileProperty.
virtual bool wxPGProperty::DoSetAttribute | ( | const wxString & | name, | |
wxVariant & | value | |||
) | [virtual] |
Special handling for attributes of this property.
If returns false, then the attribute will be automatically stored in m_attributes.
Default implementation simply returns false.
Reimplemented in wxSystemColourProperty, and wxDateProperty.
void wxPGProperty::EnableCommonValue | ( | bool | enable = true |
) |
Call to enable or disable usage of common value (integer value that can be selected for properties instead of their normal values) for this property.
Common values are disabled by the default for all properties.
void wxPGProperty::GenerateComposedValue | ( | wxString & | text, | |
int | argFlags = 0 | |||
) | const |
Composes text from values of child properties.
wxString wxPGProperty::GetAttribute | ( | const wxString & | name, | |
const wxString & | defVal | |||
) | const |
Returns named attribute, as string, if found.
Otherwise defVal is returned.
double wxPGProperty::GetAttributeAsDouble | ( | const wxString & | name, | |
double | defVal | |||
) | const |
Returns named attribute, as double, if found.
Otherwise defVal is returned.
long wxPGProperty::GetAttributeAsLong | ( | const wxString & | name, | |
long | defVal | |||
) | const |
Returns named attribute, as long, if found.
Otherwise defVal is returned.
const wxString& wxPGProperty::GetBaseName | ( | ) | const |
Returns property's base name (ie.
parent's name is not added in any case)
wxPGCell* wxPGProperty::GetCell | ( | unsigned int | column | ) | const |
Returns wxPGCell of given column, NULL if none.
wxPGProperty will retain ownership of the cell object.
virtual wxPGCellRenderer* wxPGProperty::GetCellRenderer | ( | int | column | ) | const [virtual] |
Returns used wxPGCellRenderer instance for given property column (label=0, value=1).
Default implementation returns editor's renderer for all columns.
int wxPGProperty::GetChildrenHeight | ( | int | lh, | |
int | iMax = -1 | |||
) | const |
Returns height of children, recursively, and by taking expanded/collapsed status into account.
iMax is used when finding property y-positions.
virtual int wxPGProperty::GetChoiceInfo | ( | wxPGChoiceInfo * | choiceinfo | ) | [virtual] |
Returns current value's index to the choice control.
May also return, through pointer arguments, strings that should be inserted to that control. Irrelevant to classes which do not employ wxPG_EDITOR(Choice) or similar.
Reimplemented in wxMultiChoiceProperty, wxEnumProperty, wxFlagsProperty, and wxCustomProperty.
const wxPGEditor* wxPGProperty::GetColumnEditor | ( | int | column | ) | const |
Returns editor used for given column.
NULL for no editor.
int wxPGProperty::GetCommonValue | ( | ) | const |
Returns common value selected for this property.
-1 for none.
virtual wxPGEditorDialogAdapter* wxPGProperty::GetEditorDialog | ( | ) | const [virtual] |
Returns instance of a new wxPGEditorDialogAdapter instance, which is used when user presses the (optional) button next to the editor control;.
Default implementation returns NULL (ie. no action is generated when button is pressed).
Reimplemented in wxFileProperty.
wxString wxPGProperty::GetFlagsAsString | ( | FlagType | flagsMask | ) | const |
Gets flags as a'|' delimited string.
Note that flag names are not prepended with 'wxPG_PROP_'.
flagsMask | String will only be made to include flags combined by this parameter. |
wxPropertyGrid* wxPGProperty::GetGrid | ( | ) | const |
Returns property grid where property lies.
wxPropertyGrid* wxPGProperty::GetGridIfDisplayed | ( | ) | const |
Returns owner wxPropertyGrid, but only if one is currently on a page displaying this property.
wxPGId wxPGProperty::GetId | ( | ) |
Returns property id.
virtual wxSize wxPGProperty::GetImageSize | ( | ) | const [virtual] |
unsigned int wxPGProperty::GetIndexInParent | ( | ) | const |
Returns position in parent's array.
const wxString& wxPGProperty::GetLabel | ( | ) | const |
Returns property's label.
wxPGProperty* wxPGProperty::GetMainParent | ( | ) | const |
Returns highest level non-category, non-root parent.
Useful when you have nested wxCustomProperties/wxParentProperties.
wxString wxPGProperty::GetName | ( | ) | const |
Returns property's name with all (non-category, non-root) parents.
wxPGCell* wxPGProperty::GetOrCreateCell | ( | unsigned int | column | ) |
Returns wxPGCell of given column, creating one if necesasry.
wxPGProperty will retain ownership of the cell object.
wxPGProperty* wxPGProperty::GetPropertyByNameWH | ( | const wxString & | name, | |
unsigned int | hintIndex | |||
) | const [protected] |
Returns (direct) child property with given name (or NULL if not found), with hint index.
hintIndex | Start looking for the child at this index. |
wxString wxPGProperty::GetType | ( | ) | const |
Returns type name of property that is compatible with CreatePropertyByType.
and wxVariant::GetType.
wxValidator* wxPGProperty::GetValidator | ( | ) | const |
Gets assignable version of property's validator.
virtual wxString wxPGProperty::GetValueAsString | ( | int | argFlags = 0 |
) | const [virtual] |
Returns text representation of property's value.
Generally this function should not be called from the application code. Instead, call GetValueString().
argFlags | If wxPG_FULL_VALUE is set, returns complete, storable string value instead of displayable. If wxPG_EDITABLE_VALUE is set, returns string value that must be editable in textctrl. If wxPG_COMPOSITE_FRAGMENT is set, returns text that is appropriate to display as a part of composite property string value. |
Reimplemented in wxFontProperty, wxSystemColourProperty, wxMultiChoiceProperty, wxDateProperty, wxPropertyCategory, wxBaseEnumProperty, wxFlagsProperty, wxFileProperty, wxLongStringProperty, and wxCustomProperty.
wxVariant wxPGProperty::GetValueAsVariant | ( | ) | const |
Returns value as wxVariant.
wxVariant& wxPGProperty::GetValueRef | ( | ) |
Returns reference to the internal stored value.
GetValue is preferred way to get the actual value, since GetValueRef ignores DoGetValue, which may override stored value.
int wxPGProperty::GetY | ( | ) | const |
Returns coordinate to the top y of the property.
Note that the position of scrollbars is not taken into account.
FlagType wxPGProperty::HasFlag | ( | FlagType | flag | ) | const |
Returns non-zero if given property flag is set.
For list of supported flags, see List of wxPGProperty Flags.
bool wxPGProperty::Hide | ( | bool | hide, | |
int | flags = wxPG_RECURSE | |||
) |
Hides or reveals the property.
hide | true for hide, false for reveal. | |
flags | By default changes are applied recursively. Set this paramter wxPG_DONT_RECURSE to prevent this. |
int wxPGProperty::Index | ( | const wxPGProperty * | p | ) | const |
Returns index of given sub-property.
wxPGProperty* wxPGProperty::InsertChild | ( | int | index, | |
wxPGProperty * | childProperty | |||
) |
Use this member function to add independent (ie.
regular) children to a property.
int wxPGProperty::InsertChoice | ( | const wxString & | label, | |
int | index, | |||
int | value = INT_MAX | |||
) |
Adds entry to property's wxPGChoices and editor control (if it is active).
Returns index of item added.
virtual bool wxPGProperty::IntToValue | ( | wxVariant & | value, | |
int | number, | |||
int | argFlags = 0 | |||
) | const [virtual] |
Converts 'number' (including choice selection) into proper value 'variant'.
Returns true if new (different than m_value) value could be interpreted from the integer.
argFlags | If wxPG_FULL_VALUE is set, returns complete, storable value instead of displayable |
Reimplemented in wxSystemColourProperty, wxIntProperty, wxUIntProperty, wxBaseEnumProperty, and wxCustomProperty.
bool wxPGProperty::IsSubProperty | ( | ) | const |
Returns true if this is a sub-property.
bool wxPGProperty::IsTextEditable | ( | ) | const |
Returns true if property has editable wxTextCtrl when selected.
wxPGProperty* wxPGProperty::Item | ( | unsigned int | i | ) | const |
Returns sub-property at index i.
virtual void wxPGProperty::OnCustomPaint | ( | wxDC & | dc, | |
const wxRect & | rect, | |||
wxPGPaintData & | paintdata | |||
) | [virtual] |
Override to paint an image in front of the property value text or drop-down list item (but only if wxPGProperty::OnMeasureImage is overridden as well).
If property's OnMeasureImage() returns size that has height != 0 but less than row height ( < 0 has special meanings), wxPropertyGrid calls this method to draw a custom image in a limited area in front of the editor control or value text/graphics, and if control has drop-down list, then the image is drawn there as well (even in the case OnMeasureImage() returned higher height than row height).
NOTE: Following applies when OnMeasureImage() returns a "flexible" height ( using wxPG_FLEXIBLE_SIZE(W,H) macro), which implies variable height items: If rect.x is < 0, then this is a measure item call, which means that dc is invalid and only thing that should be done is to set paintdata.m_drawnHeight to the height of the image of item at index paintdata.m_choiceItem. This call may be done even as often as once every drop-down popup show.
dc | wxDC to paint on. | |
rect | Box reserved for custom graphics. Includes surrounding rectangle, if any. If x is < 0, then this is a measure item call (see above). | |
paintdata | wxPGPaintData structure with much useful data. |
Reimplemented in wxSystemColourProperty, and wxImageFileProperty.
virtual bool wxPGProperty::OnEvent | ( | wxPropertyGrid * | propgrid, | |
wxWindow * | wnd_primary, | |||
wxEvent & | event | |||
) | [virtual] |
Events received by editor widgets are processed here.
Note that editor class usually processes most events. Some, such as button press events of TextCtrlAndButton class, should be handled here. Also, if custom handling for regular events is desired, then that can also be done (for example, wxSystemColourProperty custom handles wxEVT_COMMAND_CHOICE_SELECTED).
If the event causes value to be changed, wxPropertyGrid::ValueChangeInEvent(value) should be used.
event | Associated wxEvent. |
Should | return true if any changes in value should be reported. |
Reimplemented in wxFontProperty, wxSystemColourProperty, and wxMultiChoiceProperty.
virtual wxSize wxPGProperty::OnMeasureImage | ( | int | item = -1 |
) | const [virtual] |
Returns size of the custom painted image in front of property.
This method must be overridden to return non-default value if OnCustomPaint is to be called.
item | Normally -1, but can be an index to the property's list of items. |
Reimplemented in wxSystemColourProperty, and wxImageFileProperty.
virtual void wxPGProperty::OnSetValue | ( | ) | [virtual] |
This virtual function is called after m_value has been set.
Reimplemented in wxFontProperty, wxSystemColourProperty, wxImageFileProperty, wxMultiChoiceProperty, wxDateProperty, wxStringProperty, wxBaseEnumProperty, wxFlagsProperty, wxFileProperty, and wxArrayStringProperty.
virtual void wxPGProperty::OnValidationFailure | ( | wxVariant & | pendingValue | ) | [virtual] |
Called whenever validation has failed with given pending value.
Reimplemented in wxBaseEnumProperty.
bool wxPGProperty::PrepareValueForDialogEditing | ( | wxPropertyGrid * | propgrid | ) |
Updates property value in case there were last minute changes.
If value was unspecified, it will be set to default. Use only for properties that have TextCtrl-based editor.
// Update the value in case of last minute changes if ( primary && propgrid->IsEditorsValueModified() ) GetEditorClass()->CopyValueFromControl( this, primary );
True | if value changed. |
bool wxPGProperty::RecreateEditor | ( | ) |
If property's editor is created this forces its recreation.
Useful in SetAttribute etc. Returns true if actually did anything.
virtual void wxPGProperty::RefreshChildren | ( | ) | [virtual] |
Refresh values of child properties.
Automatically called after value is set.
Reimplemented in wxFontProperty, and wxFlagsProperty.
void wxPGProperty::SetAttribute | ( | const wxString & | name, | |
wxVariant | value | |||
) |
Sets an attribute for this property.
There are both common attributes and property class specific ones. For list of common attributes, see wxPropertyGridInterface::SetPropertyAttribute().
void wxPGProperty::SetCell | ( | int | column, | |
wxPGCell * | cellObj | |||
) |
Sets cell information for given column.
Note that the property takes ownership of given wxPGCell instance.
bool wxPGProperty::SetChoices | ( | wxPGChoices & | choices | ) |
Set choices of a property to specified set of labels and values.
This function will deselect the property, if necessary.
void wxPGProperty::SetChoiceSelection | ( | int | newValue, | |
const wxPGChoiceInfo & | choiceInfo | |||
) |
Changes value of a property with choices, but only works if the value type is long or string.
void wxPGProperty::SetClientData | ( | ClientDataType | clientData | ) |
Sets client data (void*) of a property.
void wxPGProperty::SetCommonValue | ( | int | commonValue | ) |
Sets common value selected for this property.
-1 for none.
void wxPGProperty::SetDefaultValue | ( | wxVariant & | value | ) |
void wxPGProperty::SetEditor | ( | const wxString & | editorName | ) |
Sets editor for a property.
void wxPGProperty::SetEditor | ( | const wxPGEditor * | editor | ) |
Sets editor for a property.
void wxPGProperty::SetFlag | ( | FlagType | flag | ) |
Sets given property flag(s).
For list of allowed flags, see List of wxPGProperty Flags.
void wxPGProperty::SetFlagRecursively | ( | FlagType | flag, | |
bool | set | |||
) |
Sets or clears given property flag(s), recursively in child properties (if any).
For list of allowed flags, see List of wxPGProperty Flags.
void wxPGProperty::SetFlagsFromString | ( | const wxString & | str | ) |
Sets flags from a '|' delimited string.
Note that flag names are not prepended with 'wxPG_PROP_'.
void wxPGProperty::SetLabel | ( | const wxString & | label | ) |
Sets property's label.
void wxPGProperty::SetValue | ( | wxVariant | value, | |
wxVariant * | pList = NULL , |
|||
int | flags = wxPG_SETVAL_REFRESH_EDITOR | |||
) |
Call this to set value of the property.
Unlike methods in wxPropertyGrid, this does not automatically update the display.
If you need to change property value in event, based on user input, use SetValueInEvent() instead.
(only if wxPG_PROP_AGGREGATE flag is set).
pList | Pointer to list variant that contains child values. Used to indicate which children should be marked as modified. | |
flags | Various flags (for instance, wxPG_SETVAL_REFRESH_EDITOR), which is on by default. |
virtual bool wxPGProperty::SetValueFromInt | ( | long | value, | |
int | flags = 0 | |||
) | [virtual] |
Converts integer to a value, and if succesfull, calls SetValue() on it.
Default behavior is to do nothing.
value | Int to get the value from. | |
flags | If has wxPG_FULL_VALUE, then the value given is a actual value and not an index. |
true | if value was changed. |
virtual bool wxPGProperty::SetValueFromString | ( | const wxString & | text, | |
int | flags = wxPG_PROGRAMMATIC_VALUE | |||
) | [virtual] |
Converts string to a value, and if succesfull, calls SetValue() on it.
Default behavior is to do nothing.
text | String to get the value from. |
true | if value was changed. |
void wxPGProperty::SetValueImage | ( | wxBitmap & | bmp | ) |
Set wxBitmap in front of the value.
This bitmap may be ignored by custom cell renderers.
void wxPGProperty::SetValueInEvent | ( | wxVariant | value | ) | const |
Call in OnEvent(), OnButtonClick() etc.
to change the property value based on user input.
void wxPGProperty::SetWasModified | ( | bool | set = true |
) |
Call with 'false' in OnSetValue to cancel value changes after all (ie.
cancel 'true' returned by StringToValue() or IntToValue()).
virtual bool wxPGProperty::StringToValue | ( | wxVariant & | variant, | |
const wxString & | text, | |||
int | argFlags = 0 | |||
) | const [virtual] |
Converts 'text' into proper value 'variant'.
Returns true if new (different than m_value) value could be interpreted from the text.
argFlags | If wxPG_FULL_VALUE is set, returns complete, storable value instead of displayable one (they may be different). If wxPG_COMPOSITE_FRAGMENT is set, text is interpreted as a part of composite property string value (as generated by GetValueAsString() called with this same flag). |
Reimplemented in wxSystemColourProperty, wxMultiChoiceProperty, wxDateProperty, wxPGRootProperty, wxBaseEnumProperty, wxFlagsProperty, wxFileProperty, wxLongStringProperty, and wxCustomProperty.
wxPGProperty* wxPGProperty::UpdateParentValues | ( | ) |
Updates composed values of parent non-category properties, recursively.
Returns topmost property updated.
virtual bool wxPGProperty::ValidateValue | ( | wxVariant & | value, | |
wxPGValidationInfo & | validationInfo | |||
) | const [virtual] |
Implement this function in derived class to check the value.
Return true if it is ok. Returning false prevents property change events from occurring.
Reimplemented in wxIntProperty, wxUIntProperty, wxFloatProperty, and wxBaseEnumProperty.