]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/propgrid/propgridiface.h
adding a app-defined event seems to quit inner eventloops like eg the popup of the...
[wxWidgets.git] / interface / wx / propgrid / propgridiface.h
index 2b1cb12d27e3039ed234f03e65cd92a8f91bc477..dba072c5e50bbce97eebfa5fa9e3d723bfa4018f 100644 (file)
@@ -3,7 +3,7 @@
 // Purpose:     interface of wxPGProperty
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // -----------------------------------------------------------------------
@@ -135,16 +135,26 @@ public:
     bool ChangePropertyValue( wxPGPropArg id, wxVariant newValue );
 
     /**
-        Deletes a property.
+        Removes and deletes a property and any children.
 
-        @remarks 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.
+        @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 );
 
     /**
         Disables a property.
+
+        @see EnableProperty(), wxPGProperty::Enable()
     */
     bool DisableProperty( wxPGPropArg id );
 
@@ -156,12 +166,15 @@ public:
     bool EditorValidate();
 
     /**
-        Enables or disables property.
+        Enables or disables property. 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 );
 
@@ -192,6 +205,13 @@ public:
     */
     bool ExpandAll( bool expand = true );
 
+    /**
+        Returns auto-resize proportion of the given column.
+
+        @see SetColumnProportion()
+    */
+    int GetColumnProportion( unsigned int column ) const;
+
     /**
         Returns id of first child of given property.
 
@@ -211,8 +231,12 @@ public:
             is used.
 
         @beginWxPythonOnly
-        <b>wxPython Note:</b> Instead of ++ operator, use Next() method, and
-        instead of * operator, use GetProperty() method.
+        Instead of ++ operator, use Next() method, and instead of * operator,
+        use GetProperty() method. There is also GetPyIterator() method (which
+        takes the same arguments but instead returns a pythonic iterator),
+        @c Properties attribute which is an iterator over all non-category,
+        non-private properties, and finally @c Items attribute which is an
+        iterator over all items except private child properties.
         @endWxPythonOnly
     */
     wxPropertyGridIterator GetIterator( int flags = wxPG_ITERATE_DEFAULT,
@@ -234,8 +258,12 @@ public:
             iteration will instead begin from bottommost valid item.
 
         @beginWxPythonOnly
-        <b>wxPython Note:</b> Instead of ++ operator, use Next() method, and
-        instead of * operator, use GetProperty() method.
+        Instead of ++ operator, use Next() method, and instead of * operator,
+        use GetProperty() method. There is also GetPyIterator() method (which
+        takes the same arguments but instead returns a pythonic iterator),
+        @c Properties attribute which is an iterator over all non-category,
+        non-private properties, and finally @c Items attribute which is an
+        iterator over all items except private child properties.
         @endWxPythonOnly
     */
     wxPropertyGridIterator GetIterator( int flags, int startPos );
@@ -255,7 +283,7 @@ public:
         If there is no property with such name, @NULL pointer is returned.
 
         @remarks Properties which have non-category, non-root parent
-                 can not be accessed globally by their name. Instead, use
+                 cannot be accessed globally by their name. Instead, use
                  "<property>.<subproperty>" instead of "<subproperty>".
     */
     wxPGProperty* GetProperty( const wxString& name ) const;
@@ -311,7 +339,7 @@ public:
         If there is no property with such name, @NULL pointer is returned.
 
         @remarks Properties which have non-category, non-root parent
-                 can not be accessed globally by their name. Instead, use
+                 cannot be accessed globally by their name. Instead, use
                  "<property>.<subproperty>" instead of "<subproperty>".
     */
     wxPGProperty* GetPropertyByName( const wxString& name ) const;
@@ -442,8 +470,14 @@ public:
         @param flags
             See @ref propgrid_iterator_flags.
 
-        <b>wxPython Note:</b> Instead of ++ operator, use Next() method, and
-            instead of * operator, use GetProperty() method.
+        @beginWxPythonOnly
+        Instead of ++ operator, use Next() method, and instead of * operator,
+        use GetProperty() method. There is also GetPyVIterator() method (which
+        takes the same arguments but instead returns a pythonic iterator),
+        @c Properties attribute which is an iterator over all non-category,
+        non-private properties, and finally @c Items attribute which is an
+        iterator over all items except private child properties.
+        @endWxPythonOnly
     */
     virtual wxPGVIterator GetVIterator( int flags ) const;
 
@@ -582,12 +616,17 @@ public:
     static void RegisterAdditionalEditors();
 
     /**
-        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 );
 
@@ -678,6 +717,20 @@ 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-
+        resizable.
+
+        @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 );
+
     /**
         Sets an attribute for this property.
 
@@ -794,9 +847,6 @@ public:
         In other words, user cannot change the value in the editor, but they can
         still copy it.
 
-        @remarks This is mainly for use with textctrl editor. Only some other
-                editors fully support it.
-
         @param id
             Property name or pointer.
 
@@ -806,6 +856,9 @@ public:
         @param flags
             By default changes are applied recursively. Set this parameter
             wxPG_DONT_RECURSE to prevent this.
+
+        @remarks This is mainly for use with textctrl editor. Only some other
+                 editors fully support it.
     */
     void SetPropertyReadOnly( wxPGPropArg id, bool set = true,
                               int flags = wxPG_RECURSE );