]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/propgrid/propgridiface.h
Removed dst buffer delete responsibility from wxAnyValueType::CopyBuffer(), clarified...
[wxWidgets.git] / interface / wx / propgrid / propgridiface.h
index 5d350892f56150a1768ecc34773d6201bee5c944..3289ee5aeca1cd9805229f15dc2e3a27d6fbd357 100644 (file)
@@ -91,6 +91,12 @@ public:
         @return Returns @true if successful or if there was no selection. May
                fail if validation was enabled and active editor had invalid
                value.
+
+        @remarks In wxPropertyGrid 1.4, this member function used to send
+                 wxPG_EVT_SELECTED. In wxWidgets 2.9 and later, it no longer
+                 does that.
+
+        @see wxPropertyGrid::SelectProperty()
     */
     bool ClearSelection( bool validation = false);
 
@@ -245,7 +251,12 @@ public:
     wxPGProperty* GetFirst( int flags = wxPG_ITERATE_ALL );
 
     /**
-        Returns id of property with given name (case-sensitive).
+        Returns pointer to a property with given name (case-sensitive).
+        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
+                 "<property>.<subproperty>" instead of "<subproperty>".
     */
     wxPGProperty* GetProperty( const wxString& name ) const;
 
@@ -296,7 +307,12 @@ public:
     wxPGProperty* GetPropertyByLabel( const wxString& label ) const;
 
     /**
-        Returns property with given name. @NULL if none found.
+        Returns pointer to a property with given name (case-sensitive).
+        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
+                 "<property>.<subproperty>" instead of "<subproperty>".
     */
     wxPGProperty* GetPropertyByName( const wxString& name ) const;
 
@@ -402,7 +418,20 @@ public:
     wxVariant GetPropertyValues( const wxString& listname = wxEmptyString,
                                  wxPGProperty* baseparent = NULL, long flags = 0 ) const;
 
-    /** Returns currently selected property. */
+    /**
+        Returns list of currently selected properties.
+
+        @remarks wxArrayPGProperty should be compatible with std::vector API.
+    */
+    const wxArrayPGProperty& GetSelectedProperties() const;
+
+    /**
+        Returns currently selected property. NULL if none.
+
+        @remarks When wxPG_EX_MULTIPLE_SELECTION extra style is used, this
+                 member function returns the focused property, that is the
+                 one which can have active editor.
+    */
     wxPGProperty* GetSelection() const;
 
     /**
@@ -522,6 +551,11 @@ public:
     */
     bool IsPropertyModified( wxPGPropArg id ) const;
 
+    /**
+        Returns true if property is selected.
+    */
+    virtual bool IsPropertySelected( wxPGPropArg id ) const;
+
     /**
         Returns @true if property is shown (ie. HideProperty() with @true not
         called for it).
@@ -547,6 +581,16 @@ public:
     */
     static void RegisterAdditionalEditors();
 
+    /**
+        Removes and returns a property.
+
+        @param id
+            Pointer or name of a property.
+
+        @remarks Removed property cannot have any children.
+    */
+    wxPGProperty* RemoveProperty( wxPGPropArg id );
+
     /**
         Replaces property with id with newly created one. For example,
         this code replaces existing property named "Flags" with one that
@@ -772,13 +816,14 @@ public:
     void SetPropertyValueUnspecified( wxPGPropArg id );
 
     /**
-        Sets various property values from a list of wxVariants. If property with
-        name is missing from the grid, new property is created under given
-        default category (or root if omitted).
+        Sets property values from a list of wxVariants.
     */
     void SetPropertyValues( const wxVariantList& list,
                             wxPGPropArg defaultCategory = wxNullProperty );
 
+    /**
+        Sets property values from a list of wxVariants.
+    */
     void SetPropertyValues( const wxVariant& list,
                             wxPGPropArg defaultCategory = wxNullProperty );
 
@@ -820,7 +865,7 @@ public:
             categories are skipped if this flag is used.
     */
     void SetPropertyTextColour( wxPGPropArg id,
-                                const wxColour& col,
+                                const wxColour& colour,
                                 bool recursively = true );
 
     /**
@@ -891,6 +936,33 @@ public:
     */
     void SetValidationFailureBehavior( int vfbFlags );
 
+    /**
+        Sorts all properties recursively.
+
+        @param flags
+            This can contain any of the following options:
+              wxPG_SORT_TOP_LEVEL_ONLY: Only sort categories and their
+                immediate children. Sorting done by wxPG_AUTO_SORT option
+                uses this.
+
+        @see SortChildren, wxPropertyGrid::SetSortFunction
+    */
+    void Sort( int flags = 0 );
+
+    /**
+        Sorts children of a property.
+
+        @param id
+            Name or pointer to a property.
+
+        @param flags
+            This can contain any of the following options:
+              wxPG_RECURSE: Sorts recursively.
+
+        @see Sort, wxPropertyGrid::SetSortFunction
+    */
+    void SortChildren( wxPGPropArg id, int flags = 0 );
+
     /**
         Returns editor pointer of editor with given name;
     */