Added label editing capability into wxPropertyGrid

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Jaakko Salli
2009-08-23 15:31:03 +00:00
parent 7a34307e24
commit 58935d4a5c
13 changed files with 548 additions and 62 deletions

View File

@@ -359,6 +359,14 @@ typedef int (*wxPGSortCallback)(wxPropertyGrid* propGrid,
@event{EVT_PG_ITEM_EXPANDED(id, func)}
Respond to wxEVT_PG_ITEM_EXPANDED event, generated when user expands
a property or category.
@event{EVT_PG_LABEL_EDIT_BEGIN(id, func)}
Respond to wxEVT_PG_LABEL_EDIT_BEGIN event, generated when is about to
begin editing a property label. You can veto this event to prevent the
action.
@event{EVT_PG_LABEL_EDIT_ENDING(id, func)}
Respond to wxEVT_PG_LABEL_EDIT_ENDING event, generated when is about to
end editing of a property label. You can veto this event to prevent the
action.
@endEventTable
@remarks
@@ -430,6 +438,21 @@ public:
*/
static void AutoGetTranslation( bool enable );
/**
Creates label editor wxTextCtrl for given column, for property
that is currently selected. When multiple selection is
enabled, this applies to whatever property GetSelection()
returns.
@param colIndex
Which column's label to edit. Note that you should not
use value 1, which is reserved for property value
column.
@see EndLabelEdit(), MakeColumnEditable()
*/
void BeginLabelEdit( unsigned int column = 0 );
/**
Changes value of a property, as if from an editor. Use this instead of
SetPropertyValue() if you need the value to run through validation
@@ -491,6 +514,17 @@ public:
*/
bool EnableCategories( bool enable );
/**
Destroys label editor wxTextCtrl, if any.
@param commit
Use @true (default) to store edited label text in
property cell data.
@see BeginLabelEdit(), MakeColumnEditable()
*/
void EndLabelEdit( bool commit = true );
/**
Scrolls and/or expands items to ensure that the given item is visible.
@@ -515,6 +549,11 @@ public:
*/
wxSize FitColumns();
/**
Returns currently active label editor, NULL if none.
*/
wxTextCtrl* GetLabelEditor() const;
/**
Returns wxWindow that the properties are painted on, and which should be
used as the parent for editor controls.
@@ -696,6 +735,13 @@ public:
*/
bool IsFrozen() const;
/**
Makes given column editable by user.
@see BeginLabelEdit(), EndLabelEdit()
*/
void MakeColumnEditable( unsigned int column );
/**
It is recommended that you call this function any time your code causes
wxPropertyGrid's top-level parent to change. wxPropertyGrid's OnIdle()