]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/propgrid/propgridiface.h
Correct checks for wxUSE_PRINTING_ARCHITECTURE and wxUSE_ENH_METAFILE.
[wxWidgets.git] / include / wx / propgrid / propgridiface.h
index f6c4bc3c74780f8c7e65cbd2b7591cdec93f50de..5be24550c7396b73a02d22b51b5554c8a989694c 100644 (file)
@@ -6,12 +6,14 @@
 // Created:     2008-08-24
 // RCS-ID:      $Id$
 // Copyright:   (c) Jaakko Salli
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __WX_PROPGRID_PROPGRIDIFACE_H__
 #define __WX_PROPGRID_PROPGRIDIFACE_H__
 
+#include "wx/defs.h"
+
 #if wxUSE_PROPGRID
 
 #include "wx/propgrid/property.h"
@@ -64,13 +66,11 @@ public:
         m_ptr.charName = str;
         m_flags = IsCharPtr;
     }
-#if wxUSE_WCHAR_T
     wxPGPropArgCls( const wchar_t* str )
     {
         m_ptr.wcharName = str;
         m_flags = IsWCharPtr;
     }
-#endif
     /** This constructor is required for NULL. */
     wxPGPropArgCls( int )
     {
@@ -100,9 +100,7 @@ private:
     {
         wxPGProperty* property;
         const char* charName;
-#if wxUSE_WCHAR_T
         const wchar_t* wcharName;
-#endif
         const wxString* stringName;
     } m_ptr;
     unsigned char m_flags;
@@ -240,22 +238,42 @@ public:
     bool ChangePropertyValue( wxPGPropArg id, wxVariant newValue );
 
     /**
-        Deletes a property by id. If category is deleted, all children are
-        automatically deleted as well.
-     */
+        Removes and deletes a property and any children.
+
+        @param id
+            Pointer or name of a property.
+
+        @remarks If you delete a property in a wxPropertyGrid event
+                 handler, the actual deletion is postponed until the next
+                 idle event.
+
+                 This functions deselects selected property, if any.
+                 Validation failure option wxPG_VFB_STAY_IN_PROPERTY is not
+                 respected, ie. selection is cleared even if editor had
+                 invalid value.
+    */
     void DeleteProperty( wxPGPropArg id );
 
     /**
-        Removes and returns a property.
+        Removes a property. Does not delete the property object, but
+        instead returns it.
 
         @param id
             Pointer or name of a property.
 
         @remarks Removed property cannot have any children.
+
+                 Also, if you remove property in a wxPropertyGrid event
+                 handler, the actual removal is postponed until the next
+                 idle event.
     */
     wxPGProperty* RemoveProperty( wxPGPropArg id );
 
-    /** Disables property. */
+    /**
+        Disables a property.
+
+        @see EnableProperty(), wxPGProperty::Enable()
+    */
     bool DisableProperty( wxPGPropArg id ) { return EnableProperty(id,false); }
 
     /**
@@ -268,7 +286,14 @@ public:
 
     /**
         Enables or disables property, depending on whether enable is true or
-        false.
+        false. Disabled property usually appears as having grey text.
+
+        @param id
+            Name or pointer to a property.
+        @param enable
+            If @false, property is disabled instead.
+
+        @see wxPGProperty::Enable()
      */
     bool EnableProperty( wxPGPropArg id, bool enable = true );
 
@@ -861,6 +886,30 @@ public:
     static void SetBoolChoices( const wxString& trueChoice,
                                 const wxString& falseChoice );
 
+    /**
+        Set proportion of a auto-stretchable column. wxPG_SPLITTER_AUTO_CENTER
+        window style needs to be used to indicate that columns are auto-
+        resizeable.
+
+        @returns Returns @false on failure.
+
+        @remarks You should call this for individual pages of
+                 wxPropertyGridManager (if used).
+
+        @see GetColumnProportion()
+    */
+    bool SetColumnProportion( unsigned int column, int proportion );
+
+    /**
+        Returns auto-resize proportion of the given column.
+
+        @see SetColumnProportion()
+    */
+    int GetColumnProportion( unsigned int column ) const
+    {
+        return m_pState->DoGetColumnProportion(column);
+    }
+
     /** Sets an attribute for this property.
         @param name
             Text identifier of attribute. See @ref propgrid_property_attributes.
@@ -1131,12 +1180,10 @@ public:
         wxVariant v(value);
         SetPropVal( id, v );
     }
-#if wxUSE_WCHAR_T
     void SetPropertyValue( wxPGPropArg id, const wchar_t* value )
     {
         SetPropertyValueString( id, wxString(value) );
     }
-#endif
     void SetPropertyValue( wxPGPropArg id, const char* value )
     {
         SetPropertyValueString( id, wxString(value) );
@@ -1338,7 +1385,8 @@ private:
     {
         if ( !m_pState )
             return NULL;
-        return static_cast<const wxPropertyGrid*>(m_pState->GetGrid());
+
+        return m_pState->GetGrid();
     }
 
     friend class wxPropertyGrid;