]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/propgrid/editors.h
Return old, not new, selection from wxMSW wxNotebook::ChangeSelection().
[wxWidgets.git] / include / wx / propgrid / editors.h
index fcb42d8bc76d69fad6be97a450b7566a0df81671..d35105a365f68eb1a3cec8d85609b1678de00d89 100644 (file)
@@ -75,9 +75,7 @@ public:
 */
 class WXDLLIMPEXP_PROPGRID wxPGEditor : public wxObject
 {
-#ifndef SWIG
     DECLARE_ABSTRACT_CLASS(wxPGEditor)
-#endif
 public:
 
     /** Constructor. */
@@ -165,9 +163,35 @@ public:
                                       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,
@@ -223,9 +247,7 @@ wxPGEditor* wxPGEditor_##EDITOR = NULL;
 
 class WXDLLIMPEXP_PROPGRID wxPGTextCtrlEditor : public wxPGEditor
 {
-#ifndef SWIG
     DECLARE_DYNAMIC_CLASS(wxPGTextCtrlEditor)
-#endif
 public:
     wxPGTextCtrlEditor() {}
     virtual ~wxPGTextCtrlEditor();
@@ -243,8 +265,6 @@ public:
     virtual bool GetValueFromControl( wxVariant& variant,
                                       wxPGProperty* property,
                                       wxWindow* ctrl ) const;
-    virtual void SetValueToUnspecified( wxPGProperty* property,
-                                        wxWindow* ctrl ) const;
 
     virtual wxString GetName() const;
 
@@ -270,9 +290,7 @@ public:
 
 class WXDLLIMPEXP_PROPGRID wxPGChoiceEditor : public wxPGEditor
 {
-#ifndef SWIG
     DECLARE_DYNAMIC_CLASS(wxPGChoiceEditor)
-#endif
 public:
     wxPGChoiceEditor() {}
     virtual ~wxPGChoiceEditor();
@@ -319,9 +337,7 @@ public:
 
 class WXDLLIMPEXP_PROPGRID wxPGComboBoxEditor : public wxPGChoiceEditor
 {
-#ifndef SWIG
     DECLARE_DYNAMIC_CLASS(wxPGComboBoxEditor)
-#endif
 public:
     wxPGComboBoxEditor() {}
     virtual ~wxPGComboBoxEditor();
@@ -392,9 +408,7 @@ public:
 //
 class WXDLLIMPEXP_PROPGRID wxPGCheckBoxEditor : public wxPGEditor
 {
-#ifndef SWIG
     DECLARE_DYNAMIC_CLASS(wxPGCheckBoxEditor)
-#endif
 public:
     wxPGCheckBoxEditor() {}
     virtual ~wxPGCheckBoxEditor();
@@ -456,9 +470,7 @@ public:
 */
 class WXDLLIMPEXP_PROPGRID wxPGEditorDialogAdapter : public wxObject
 {
-#ifndef SWIG
     DECLARE_ABSTRACT_CLASS(wxPGEditorDialogAdapter)
-#endif
 public:
     wxPGEditorDialogAdapter()
         : wxObject()
@@ -507,6 +519,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
@@ -534,6 +547,8 @@ public:
 
 protected:
 
+    void DoAddButton( wxWindow* button, const wxSize& sz );
+
     int GenId( int id ) const;
 
     wxArrayPtrVoid  m_buttons;