@event{EVT_DATAVIEW_SELECTION_CHANGED(id, func)}
Process a @c wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED event.
@event{EVT_DATAVIEW_ITEM_ACTIVATED(id, func)}
- Process a @c wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED event.
+ Process a @c wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED event. This event
+ is triggered by double clicking an item or pressing some special key
+ (usually "Enter") when it is focused.
@event{EVT_DATAVIEW_ITEM_START_EDITING(id, func)}
Process a @c wxEVT_COMMAND_DATAVIEW_ITEM_START_EDITING event. This
event can be vetoed in order to prevent editing on an item by item
Process a @c wxEVT_COMMAND_DATAVIEW_ITEM_DROP event.
@endEventTable
+ Notice that this control doesn't allow to process generic mouse events such
+ as @c wxEVT_LEFT_DOWN in all ports (notably it doesn't work in wxGTK). If
+ you need to handle any mouse events not covered by the ones above, consider
+ using a custom renderer for the cells that must handle them.
+
@library{wxadv}
@category{ctrl,dvc}
@appearance{dataviewctrl.png}
/**
Appends an item (=row) to the control and store.
*/
- void AppendItem( const wxVector<wxVariant> &values, wxClientData *data = NULL );
+ void AppendItem( const wxVector<wxVariant> &values, wxUIntPtr data = NULL );
/**
Prepends an item (=row) to the control and store.
*/
- void PrependItem( const wxVector<wxVariant> &values, wxClientData *data = NULL );
+ void PrependItem( const wxVector<wxVariant> &values, wxUIntPtr data = NULL );
/**
Inserts an item (=row) to the control and store.
*/
- void InsertItem( unsigned int row, const wxVector<wxVariant> &values, wxClientData *data = NULL );
+ void InsertItem( unsigned int row, const wxVector<wxVariant> &values, wxUIntPtr data = NULL );
/**
Delete the row at position @a row.
*/
void DeleteAllItems();
+ /**
+ Returns the number of items (=rows) in the control
+
+ @since 2.9.4
+ */
+ unsigned int GetItemCount() const;
+
+ /**
+ Returns the client data associated with the item.
+
+ @see SetItemData()
+
+ @since 2.9.4
+ */
+ wxUIntPtr GetItemData(const wxDataViewItem& item) const;
+
/**
Sets the value in the store and update the control.
*/
*/
bool GetToggleValue( unsigned int row, unsigned int col ) const;
+ /**
+ Associates a client data pointer with the given item.
+
+ Notice that the control does @e not take ownership of the pointer for
+ compatibility with wxListCtrl. I.e. it will @e not delete the pointer
+ (if it is a pointer and not a number) itself, it is up to you to do it.
+
+ @see GetItemData()
+
+ @since 2.9.4
+ */
+ void SetItemData(const wxDataViewItem& item, wxUIntPtr data);
+
//@}
};
in number and type. No (default) values are filled in
automatically.
*/
- void AppendItem( const wxVector<wxVariant> &values, wxClientData *data = NULL );
+ void AppendItem( const wxVector<wxVariant> &values, wxUIntPtr data = NULL );
/**
Prepends an item (=row) and fills it with @a values.
in number and type. No (default) values are filled in
automatically.
*/
- void PrependItem( const wxVector<wxVariant> &values, wxClientData *data = NULL );
+ void PrependItem( const wxVector<wxVariant> &values, wxUIntPtr data = NULL );
/**
Inserts an item (=row) and fills it with @a values.
in number and type. No (default) values are filled in
automatically.
*/
- void InsertItem( unsigned int row, const wxVector<wxVariant> &values, wxClientData *data = NULL );
+ void InsertItem( unsigned int row, const wxVector<wxVariant> &values, wxUIntPtr data = NULL );
/**
Delete the item (=row) at position @a pos.
*/
void DeleteAllItems();
+ /**
+ Returns the number of items (=rows) in the control
+
+ @since 2.9.4
+ */
+ unsigned int GetItemCount() const;
+
+ /**
+ Returns the client data associated with the item.
+
+ @see SetItemData()
+
+ @since 2.9.4
+ */
+ wxUIntPtr GetItemData(const wxDataViewItem& item) const;
+
/**
Overridden from wxDataViewModel
*/
*/
virtual wxString GetColumnType( unsigned int col ) const;
+ /**
+ Sets the client data associated with the item.
+
+ Notice that this class does @e not take ownership of the passed in
+ pointer and will not delete it.
+
+ @see GetItemData()
+
+ @since 2.9.4
+ */
+ void SetItemData(const wxDataViewItem& item, wxUIntPtr data);
+
/**
Overridden from wxDataViewIndexListModel
*/
Process a @c wxEVT_COMMAND_DATAVIEW_COLUMN_SORTED event.
@event{EVT_DATAVIEW_COLUMN_REORDERED(id, func)}
Process a @c wxEVT_COMMAND_DATAVIEW_COLUMN_REORDERED event.
+ Currently this even is only generated when using the native OSX
+ version.
@event{EVT_DATAVIEW_ITEM_BEGIN_DRAG(id, func)}
Process a @c wxEVT_COMMAND_DATAVIEW_ITEM_BEGIN_DRAG event.
@event{EVT_DATAVIEW_ITEM_DROP_POSSIBLE(id, func)}