wxPropertyGridManager is an efficient multi-page version of wxPropertyGrid, which can optionally have toolbar for mode and page selection, and help text box. Use window flags to select components to include. More...
#include <manager.h>
Public Member Functions | |
int | AddPage (const wxString &label=wxEmptyString, const wxBitmap &bmp=wxPG_NULL_BITMAP, wxPropertyGridPage *pageObj=(wxPropertyGridPage *) NULL) |
bool | CanClose () |
virtual void | Clear () |
void | ClearModifiedStatus () |
void | ClearModifiedStatus (wxPGPropArg id) |
void | ClearPage (int page) |
bool | ClearSelection () |
bool | CommitChangesFromEditor (wxUint32 flags=0) |
bool | Create (wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxPGMAN_DEFAULT_STYLE, const wxChar *name=wxPropertyGridManagerNameStr) |
bool | EnableCategories (bool enable) |
bool | EnsureVisible (wxPGPropArg id) |
size_t | GetChildrenCount (wxPGPropArg id) const |
size_t | GetChildrenCount (int pageIndex) |
size_t | GetChildrenCount () |
int | GetColumnCount (int page=-1) const |
wxPropertyGridPage * | GetCurrentPage () const |
int | GetDescBoxHeight () const |
const wxPropertyGrid * | GetGrid () const |
wxPropertyGrid * | GetGrid () |
wxPropertyGridConstIterator | GetIterator (int flags, int startPos) const |
wxPropertyGridIterator | GetIterator (int flags, int startPos) |
wxPropertyGridConstIterator | GetIterator (int flags=wxPG_ITERATE_DEFAULT, wxPGProperty *firstProp=NULL) const |
wxPropertyGridIterator | GetIterator (int flags=wxPG_ITERATE_DEFAULT, wxPGProperty *firstProp=NULL) |
wxPGProperty * | GetLastChild (wxPGPropArg id) |
wxPropertyGridPage * | GetLastPage () const |
wxPropertyGridPage * | GetPage (const wxString &name) const |
wxPropertyGridPage * | GetPage (unsigned int ind) const |
int | GetPageByName (const wxString &name) const |
int | GetPageByState (const wxPropertyGridState *pstate) const |
size_t | GetPageCount () const |
const wxString & | GetPageName (int index) const |
wxPGProperty * | GetPageRoot (int index) const |
virtual wxPropertyGridState * | GetPageState (int page) const |
wxPGProperty * | GetPropertyByLabel (const wxString &name, wxPropertyGridState **ppState=(wxPropertyGridState **) NULL) const |
wxColour | GetPropertyColour (wxPGPropArg id) const |
wxColour | GetPropertyTextColour (wxPGPropArg id) const |
int | GetSelectedPage () const |
wxPGProperty * | GetSelectedProperty () const |
int | GetSelection () const |
wxToolBar * | GetToolBar () const |
virtual wxPGVIterator | GetVIterator (int flags) const |
virtual int | InsertPage (int index, const wxString &label, const wxBitmap &bmp=wxNullBitmap, wxPropertyGridPage *pageObj=(wxPropertyGridPage *) NULL) |
bool | IsAnyModified () const |
bool | IsFrozen () const |
bool | IsPageModified (size_t index) const |
virtual bool | IsPropertySelected (wxPGPropArg id) const |
virtual void | Refresh (bool eraseBackground=true, const wxRect *rect=(const wxRect *) NULL) |
void | RegisterAdvancedPropertyClasses () |
virtual bool | RemovePage (int page) |
void | SelectPage (wxPropertyGridPage *ptr) |
void | SelectPage (const wxString &label) |
void | SelectPage (int index) |
bool | SelectProperty (wxPGPropArg id, bool focus=false) |
void | SetCaptionTextColour (wxPGPropArg id, const wxColour &col) |
void | SetColumnCount (int colCount, int page=-1) |
void | SetDescBoxHeight (int ht, bool refresh=true) |
void | SetDescription (const wxString &label, const wxString &content) |
void | SetPageSplitterPosition (int page, int pos, int column=0) |
void | SetPropertyAttributeAll (const wxString &name, wxVariant value) |
void | SetPropertyBackgroundColour (wxPGPropArg id, const wxColour &col) |
void | SetPropertyColourToDefault (wxPGPropArg id) |
void | SetPropertyTextColour (wxPGPropArg id, const wxColour &col) |
void | SetSplitterLeft (bool subProps=false, bool allPages=true) |
void | SetSplitterPosition (int pos, int column=0) |
void | SetStringSelection (const wxChar *name) |
wxDEPRECATED (void SetTargetPage(const wxChar *)) | |
wxDEPRECATED (void SetTargetPage(int)) | |
wxDEPRECATED (void SetPropertyColour(wxPGPropArg id, const wxColour &col)) | |
wxDEPRECATED (int GetTargetPage() const ) | |
wxPropertyGridManager (wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxPGMAN_DEFAULT_STYLE, const wxChar *name=wxPropertyGridManagerNameStr) | |
wxPropertyGridManager () | |
virtual | ~wxPropertyGridManager () |
Protected Member Functions | |
virtual wxPropertyGrid * | CreatePropertyGrid () const |
virtual void | RefreshProperty (wxPGProperty *p) |
Friends | |
class | wxPropertyGridPage |
wxPropertyGridManager is an efficient multi-page version of wxPropertyGrid, which can optionally have toolbar for mode and page selection, and help text box. Use window flags to select components to include.
wxPropertyGridInterface
wxWindow
wxEvtHandler
wxObject
To process input from a propertygrid control, use these event handler macros to direct input to member functions that take a wxPropertyGridEvent argument.
EVT_PG_SELECTED (id, func) | Property is selected. |
EVT_PG_CHANGED (id, func) | Property value is modified. |
EVT_PG_CHANGING (id, func) | Property value is about to be changed. Use wxPropertyGridEvent::GetValue() to take a peek at the pending value. |
EVT_PG_HIGHLIGHTED (id, func) | Mouse moves over property. Event's property is NULL if hovered on area that is not a property. |
EVT_PG_PAGE_CHANGED (id, func) | User changed page in manager. |
EVT_PG_ITEM_COLLAPSED (id, func) | User collapses a property or category. |
EVT_PG_ITEM_EXPANDED (id, func) | User expands a property or category. |
EVT_BUTTON (id, func) | Button in a property editor was clicked. Only occurs if the property doesn't handle button clicks itself. |
EVT_TEXT (id, func) | wxTextCtrl based editor was updated (but property value was not yet modified) |
Definition at line 236 of file manager.h.
wxPropertyGridManager::wxPropertyGridManager | ( | ) |
Two step constructor. Call Create when this constructor is called to build up the wxPropertyGridManager.
wxPropertyGridManager::wxPropertyGridManager | ( | wxWindow * | parent, | |
wxWindowID | id = wxID_ANY , |
|||
const wxPoint & | pos = wxDefaultPosition , |
|||
const wxSize & | size = wxDefaultSize , |
|||
long | style = wxPGMAN_DEFAULT_STYLE , |
|||
const wxChar * | name = wxPropertyGridManagerNameStr | |||
) |
The default constructor. The styles to be used are styles valid for the wxWindow.
virtual wxPropertyGridManager::~wxPropertyGridManager | ( | ) | [virtual] |
Destructor
int wxPropertyGridManager::AddPage | ( | const wxString & | label = wxEmptyString , |
|
const wxBitmap & | bmp = wxPG_NULL_BITMAP , |
|||
wxPropertyGridPage * | pageObj = (wxPropertyGridPage*) NULL | |||
) | [inline] |
Creates new property page. Note that the first page is not created automatically.
label | A label for the page. This may be shown as a toolbar tooltip etc. | |
bmp | Bitmap image for toolbar. If wxNullBitmap is used, then a built-in default image is used. | |
pageObj | wxPropertyGridPage instance. Manager will take ownership of this object. NULL indicates that a default page instance should be created. |
Returns | index to the page created. |
bool wxPropertyGridManager::CanClose | ( | ) | [inline] |
virtual void wxPropertyGridManager::Clear | ( | ) | [virtual] |
Deletes all all properties and all pages.
Implements wxPropertyGridInterface.
void wxPropertyGridManager::ClearModifiedStatus | ( | ) | [inline] |
void wxPropertyGridManager::ClearModifiedStatus | ( | wxPGPropArg | id | ) |
void wxPropertyGridManager::ClearPage | ( | int | page | ) |
Deletes all properties on given page.
bool wxPropertyGridManager::ClearSelection | ( | ) | [inline] |
bool wxPropertyGridManager::CommitChangesFromEditor | ( | wxUint32 | flags = 0 |
) | [inline] |
bool wxPropertyGridManager::Create | ( | wxWindow * | parent, | |
wxWindowID | id = wxID_ANY , |
|||
const wxPoint & | pos = wxDefaultPosition , |
|||
const wxSize & | size = wxDefaultSize , |
|||
long | style = wxPGMAN_DEFAULT_STYLE , |
|||
const wxChar * | name = wxPropertyGridManagerNameStr | |||
) |
Two step creation. Whenever the control is created without any parameters, use Create to actually create it. Don't access the control's public methods before this is called.
virtual wxPropertyGrid* wxPropertyGridManager::CreatePropertyGrid | ( | ) | const [protected, virtual] |
Creates property grid for the manager. Reimplement in derived class to use subclassed wxPropertyGrid. However, if you you do this, then you must also use two-step construction (ie. default constructor and Create() instead of just constructor with arguments) when creating the manager.
bool wxPropertyGridManager::EnableCategories | ( | bool | enable | ) | [inline] |
bool wxPropertyGridManager::EnsureVisible | ( | wxPGPropArg | id | ) |
Selects page, scrolls and/or expands items to ensure that the given item is visible. Returns true if something was actually done.
size_t wxPropertyGridManager::GetChildrenCount | ( | wxPGPropArg | id | ) | const [inline] |
size_t wxPropertyGridManager::GetChildrenCount | ( | int | pageIndex | ) |
Returns number of children of the root property of given page.
size_t wxPropertyGridManager::GetChildrenCount | ( | ) | [inline] |
int wxPropertyGridManager::GetColumnCount | ( | int | page = -1 |
) | const |
Returns number of columns on given page. By the default, returns number of columns on current page.
wxPropertyGridPage* wxPropertyGridManager::GetCurrentPage | ( | ) | const [inline] |
int wxPropertyGridManager::GetDescBoxHeight | ( | ) | const |
Returns height of the description text box.
const wxPropertyGrid* wxPropertyGridManager::GetGrid | ( | ) | const [inline] |
wxPropertyGrid* wxPropertyGridManager::GetGrid | ( | ) | [inline] |
Returns pointer to the contained wxPropertyGrid. This does not change after wxPropertyGridManager has been created, so you can safely obtain pointer once and use it for the entire lifetime of the instance.
wxPropertyGridConstIterator wxPropertyGridManager::GetIterator | ( | int | flags, | |
int | startPos | |||
) | const [inline] |
Reimplemented from wxPropertyGridInterface.
wxPropertyGridIterator wxPropertyGridManager::GetIterator | ( | int | flags, | |
int | startPos | |||
) | [inline] |
Returns iterator class instance.
Reimplemented from wxPropertyGridInterface.
wxPropertyGridConstIterator wxPropertyGridManager::GetIterator | ( | int | flags = wxPG_ITERATE_DEFAULT , |
|
wxPGProperty * | firstProp = NULL | |||
) | const [inline] |
Reimplemented from wxPropertyGridInterface.
wxPropertyGridIterator wxPropertyGridManager::GetIterator | ( | int | flags = wxPG_ITERATE_DEFAULT , |
|
wxPGProperty * | firstProp = NULL | |||
) | [inline] |
Returns iterator class instance.
Reimplemented from wxPropertyGridInterface.
wxPGProperty* wxPropertyGridManager::GetLastChild | ( | wxPGPropArg | id | ) | [inline] |
Returns id of last child of given property.
wxPropertyGridPage* wxPropertyGridManager::GetLastPage | ( | ) | const [inline] |
wxPropertyGridPage* wxPropertyGridManager::GetPage | ( | const wxString & | name | ) | const [inline] |
wxPropertyGridPage* wxPropertyGridManager::GetPage | ( | unsigned int | ind | ) | const [inline] |
int wxPropertyGridManager::GetPageByName | ( | const wxString & | name | ) | const |
Returns index for a page name. If no match is found, wxNOT_FOUND is returned.
int wxPropertyGridManager::GetPageByState | ( | const wxPropertyGridState * | pstate | ) | const |
Returns index for a relevant propertygrid state. If no match is found, wxNOT_FOUND is returned.
size_t wxPropertyGridManager::GetPageCount | ( | ) | const |
Returns number of managed pages.
const wxString& wxPropertyGridManager::GetPageName | ( | int | index | ) | const |
Returns name of given page.
wxPGProperty* wxPropertyGridManager::GetPageRoot | ( | int | index | ) | const |
Returns "root property" of the given page. It does not have name, etc. and it is not visible. It is only useful for accessing its children.
virtual wxPropertyGridState* wxPropertyGridManager::GetPageState | ( | int | page | ) | const [virtual] |
Returns wxPropertyGridState of given page, current page's for -1.
Reimplemented from wxPropertyGridInterface.
wxPGProperty* wxPropertyGridManager::GetPropertyByLabel | ( | const wxString & | name, | |
wxPropertyGridState ** | ppState = (wxPropertyGridState **) NULL | |||
) | const |
Returns id of property with given label (case-sensitive). If there is no property with such label, returned property id is invalid ( i.e. it will return false with IsOk method). If there are multiple properties with identical name, most recent added is returned.
wxColour wxPropertyGridManager::GetPropertyColour | ( | wxPGPropArg | id | ) | const [inline] |
wxColour wxPropertyGridManager::GetPropertyTextColour | ( | wxPGPropArg | id | ) | const [inline] |
int wxPropertyGridManager::GetSelectedPage | ( | ) | const [inline] |
wxPGProperty* wxPropertyGridManager::GetSelectedProperty | ( | ) | const [inline] |
Shortcut for GetGrid()->GetSelection().
int wxPropertyGridManager::GetSelection | ( | ) | const [inline] |
Synonyme for GetSelectedPage.
Reimplemented from wxPropertyGridInterface.
wxToolBar* wxPropertyGridManager::GetToolBar | ( | ) | const [inline] |
Returns a pointer to the toolbar currently associated with the wxPropertyGridManager (if any).
virtual wxPGVIterator wxPropertyGridManager::GetVIterator | ( | int | flags | ) | const [virtual] |
Similar to GetIterator, but instead returns wxPGVIterator instance, which can be useful for forward-iterating through arbitrary property containers.
Reimplemented from wxPropertyGridInterface.
virtual int wxPropertyGridManager::InsertPage | ( | int | index, | |
const wxString & | label, | |||
const wxBitmap & | bmp = wxNullBitmap , |
|||
wxPropertyGridPage * | pageObj = (wxPropertyGridPage *) NULL | |||
) | [virtual] |
Creates new property page. Note that the first page is not created automatically.
index | Add to this position. -1 will add as the last item. | |
label | A label for the page. This may be shown as a toolbar tooltip etc. | |
bmp | Bitmap image for toolbar. If wxNullBitmap is used, then a built-in default image is used. | |
pageObj | wxPropertyGridPage instance. Manager will take ownership of this object. If NULL, default page object is constructed. |
Returns | index to the page created. |
bool wxPropertyGridManager::IsAnyModified | ( | ) | const |
Returns true if any property on any page has been modified by the user.
bool wxPropertyGridManager::IsFrozen | ( | ) | const [inline] |
bool wxPropertyGridManager::IsPageModified | ( | size_t | index | ) | const |
Returns true if any property on given page has been modified by the user.
virtual bool wxPropertyGridManager::IsPropertySelected | ( | wxPGPropArg | id | ) | const [virtual] |
Returns true if property is selected. Since selection is page based, this function checks every page in the manager.
Reimplemented from wxPropertyGridInterface.
virtual void wxPropertyGridManager::Refresh | ( | bool | eraseBackground = true , |
|
const wxRect * | rect = (const wxRect *) NULL | |||
) | [virtual] |
virtual void wxPropertyGridManager::RefreshProperty | ( | wxPGProperty * | p | ) | [protected, virtual] |
Implements wxPropertyGridInterface.
void wxPropertyGridManager::RegisterAdvancedPropertyClasses | ( | ) | [inline] |
virtual bool wxPropertyGridManager::RemovePage | ( | int | page | ) | [virtual] |
Removes a page.
Returns | false if it was not possible to remove page in question. |
void wxPropertyGridManager::SelectPage | ( | wxPropertyGridPage * | ptr | ) | [inline] |
void wxPropertyGridManager::SelectPage | ( | const wxString & | label | ) | [inline] |
void wxPropertyGridManager::SelectPage | ( | int | index | ) |
Select and displays a given page.
index | Index of page being seleced. Can be -1 to select nothing. |
bool wxPropertyGridManager::SelectProperty | ( | wxPGPropArg | id, | |
bool | focus = false | |||
) | [inline] |
void wxPropertyGridManager::SetCaptionTextColour | ( | wxPGPropArg | id, | |
const wxColour & | col | |||
) | [inline] |
void wxPropertyGridManager::SetColumnCount | ( | int | colCount, | |
int | page = -1 | |||
) |
Sets number of columns on given page (default is current page).
void wxPropertyGridManager::SetDescBoxHeight | ( | int | ht, | |
bool | refresh = true | |||
) |
Sets y coordinate of the description box splitter.
void wxPropertyGridManager::SetDescription | ( | const wxString & | label, | |
const wxString & | content | |||
) |
Sets label and text in description box.
void wxPropertyGridManager::SetPageSplitterPosition | ( | int | page, | |
int | pos, | |||
int | column = 0 | |||
) | [inline] |
void wxPropertyGridManager::SetPropertyAttributeAll | ( | const wxString & | name, | |
wxVariant | value | |||
) |
Sets property attribute for all applicapple properties. Be sure to use this method after all properties have been added to the grid.
void wxPropertyGridManager::SetPropertyBackgroundColour | ( | wxPGPropArg | id, | |
const wxColour & | col | |||
) | [inline] |
void wxPropertyGridManager::SetPropertyColourToDefault | ( | wxPGPropArg | id | ) | [inline] |
void wxPropertyGridManager::SetPropertyTextColour | ( | wxPGPropArg | id, | |
const wxColour & | col | |||
) | [inline] |
void wxPropertyGridManager::SetSplitterLeft | ( | bool | subProps = false , |
|
bool | allPages = true | |||
) |
Moves splitter as left as possible, while still allowing all labels to be shown in full.
subProps | If false, will still allow sub-properties (ie. properties which parent is not root or category) to be cropped. | |
allPages | If true, takes labels on all pages into account. |
void wxPropertyGridManager::SetSplitterPosition | ( | int | pos, | |
int | column = 0 | |||
) |
Sets splitter position for all pages.
void wxPropertyGridManager::SetStringSelection | ( | const wxChar * | name | ) | [inline] |
wxPropertyGridManager::wxDEPRECATED | ( | void | SetTargetPageconst wxChar * | ) |
wxPropertyGridManager::wxDEPRECATED | ( | void | SetTargetPageint | ) |
wxPropertyGridManager::wxDEPRECATED | ( | void | SetPropertyColourwxPGPropArg id, const wxColour &col | ) |
Sets background colour of property and all its children. Colours of captions are not affected. Background brush cache is optimized for often set colours to be set last.
wxPropertyGridManager::wxDEPRECATED | ( | int GetTargetPage() | const | ) |
friend class wxPropertyGridPage [friend] |