X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b512ed93206f70d502c52df705cad47c3ba2cc7f..153530afb595110592776c461e52be99b1559439:/include/wx/propgrid/editors.h?ds=sidebyside diff --git a/include/wx/propgrid/editors.h b/include/wx/propgrid/editors.h index cf81fcee2b..4432b37958 100644 --- a/include/wx/propgrid/editors.h +++ b/include/wx/propgrid/editors.h @@ -6,12 +6,14 @@ // Created: 2007-04-14 // RCS-ID: $Id$ // Copyright: (c) Jaakko Salli -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_PROPGRID_EDITORS_H_ #define _WX_PROPGRID_EDITORS_H_ +#include "wx/defs.h" + #if wxUSE_PROPGRID // ----------------------------------------------------------------------- @@ -30,7 +32,6 @@ public: wxWindow* m_primary; wxWindow* m_secondary; -#ifndef SWIG wxPGWindowList( wxWindow* a ) { m_primary = a; @@ -41,7 +42,6 @@ public: m_primary = a; m_secondary = b; }; -#endif }; // ----------------------------------------------------------------------- @@ -147,13 +147,12 @@ public: @remarks 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. behavior is same for any wxTextCtrl and + editor type (ie. behaviour is same for any wxTextCtrl and wxComboBox based editor). */ virtual bool OnEvent( wxPropertyGrid* propgrid, wxPGProperty* property, wxWindow* wnd_primary, wxEvent& event ) const = 0; -#if !defined(SWIG) || defined(CREATE_VCW) /** Returns value from control, via parameter 'variant'. Usually ends up calling property's StringToValue or IntToValue. Returns true if value was different. @@ -161,11 +160,36 @@ public: virtual bool GetValueFromControl( wxVariant& variant, wxPGProperty* property, wxWindow* ctrl ) const; -#endif - /** Sets value in control to unspecified. */ + /** + Sets new appearance for the control. Default implementation + sets foreground colour, background colour, font, plus text + for wxTextCtrl and wxComboCtrl. + + @param appearance + New appearance to be applied. + + @param oldAppearance + Previously applied appearance. Used to detect which + control attributes need to be changed (e.g. so we only + change background colour if really needed). + + @param unspecified + @true if the new appearance represents an unspecified + property value. + */ + virtual void SetControlAppearance( wxPropertyGrid* pg, + wxPGProperty* property, + wxWindow* ctrl, + const wxPGCell& appearance, + const wxPGCell& oldAppearance, + bool unspecified ) const; + + /** + Sets value in control to unspecified. + */ virtual void SetValueToUnspecified( wxPGProperty* property, - wxWindow* ctrl ) const = 0; + wxWindow* ctrl ) const; /** Sets control's value specifically from string. */ virtual void SetControlStringValue( wxPGProperty* property, @@ -239,8 +263,6 @@ public: virtual bool GetValueFromControl( wxVariant& variant, wxPGProperty* property, wxWindow* ctrl ) const; - virtual void SetValueToUnspecified( wxPGProperty* property, - wxWindow* ctrl ) const; virtual wxString GetName() const; @@ -339,9 +361,6 @@ public: }; -// Exclude classes from being able to be derived from in wxPython bindings -#ifndef SWIG - class WXDLLIMPEXP_PROPGRID wxPGChoiceAndButtonEditor : public wxPGChoiceEditor { public: @@ -373,8 +392,6 @@ public: DECLARE_DYNAMIC_CLASS(wxPGTextCtrlAndButtonEditor) }; -#endif // !SWIG - #if wxPG_INCLUDE_CHECKBOX @@ -495,6 +512,7 @@ class WXDLLIMPEXP_PROPGRID wxPGMultiButton : public wxWindow { public: wxPGMultiButton( wxPropertyGrid* pg, const wxSize& sz ); + virtual ~wxPGMultiButton() {} wxWindow* GetButton( unsigned int i ) { return (wxWindow*) m_buttons[i]; } const wxWindow* GetButton( unsigned int i ) const