git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47719
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
// delegated notifiers
virtual bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item );
// delegated notifiers
virtual bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item );
- virtual bool ItemDeleted( const wxDataViewItem &item );
+ virtual bool ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item );
virtual bool ItemChanged( const wxDataViewItem &item );
virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col );
virtual bool Cleared();
virtual bool ItemChanged( const wxDataViewItem &item );
virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col );
virtual bool Cleared();
virtual ~wxDataViewModelNotifier() { m_owner = NULL; }
virtual bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item ) = 0;
virtual ~wxDataViewModelNotifier() { m_owner = NULL; }
virtual bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item ) = 0;
- virtual bool ItemDeleted( const wxDataViewItem &item ) = 0;
+ virtual bool ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item ) = 0;
virtual bool ItemChanged( const wxDataViewItem &item ) = 0;
virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col ) = 0;
virtual bool Cleared() = 0;
virtual bool ItemChanged( const wxDataViewItem &item ) = 0;
virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col ) = 0;
virtual bool Cleared() = 0;
{
wxDataViewItem item = m_musicCtrl->GetSelection();
if (item.IsOk())
{
wxDataViewItem item = m_musicCtrl->GetSelection();
if (item.IsOk())
- m_music_model->Delete( item );
+ m_music_model->Delete( m_music_model->GetParent(item), item );
}
void MyFrame::OnPrependList( wxCommandEvent& WXUNUSED(event) )
}
void MyFrame::OnPrependList( wxCommandEvent& WXUNUSED(event) )
{
wxDataViewItem item = m_listCtrl->GetSelection();
if (item.IsOk())
{
wxDataViewItem item = m_listCtrl->GetSelection();
if (item.IsOk())
- m_list_model->DeleteItem( item );
+ m_list_model->DeleteItem( m_list_model->GetParent(item), item );
}
void MyFrame::OnItemAdded( wxDataViewEvent &event )
}
void MyFrame::OnItemAdded( wxDataViewEvent &event )
-bool wxDataViewModel::ItemDeleted( const wxDataViewItem &item )
+bool wxDataViewModel::ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item )
while (node)
{
wxDataViewModelNotifier* notifier = (wxDataViewModelNotifier*) node->GetData();
while (node)
{
wxDataViewModelNotifier* notifier = (wxDataViewModelNotifier*) node->GetData();
- if (!notifier->ItemDeleted( item ))
+ if (!notifier->ItemDeleted( parent, item ))
ret = false;
node = node->GetNext();
}
ret = false;
node = node->GetNext();
}
{
wxDataViewItem item( m_hash[row] );
m_hash.RemoveAt( row );
{
wxDataViewItem item( m_hash[row] );
m_hash.RemoveAt( row );
- wxDataViewModel::ItemDeleted( item );
+ wxDataViewModel::ItemDeleted( wxDataViewItem(0), item );
}
void wxDataViewIndexListModel::RowChanged( unsigned int row )
}
void wxDataViewIndexListModel::RowChanged( unsigned int row )
GtkWxTreeModel* GetGtkModel() { return m_gtk_model; }
bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item );
GtkWxTreeModel* GetGtkModel() { return m_gtk_model; }
bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item );
- bool ItemDeleted( const wxDataViewItem &item );
+ bool ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item );
bool ItemChanged( const wxDataViewItem &item );
bool ValueChanged( const wxDataViewItem &item, unsigned int col );
bool Cleared();
bool ItemChanged( const wxDataViewItem &item );
bool ValueChanged( const wxDataViewItem &item, unsigned int col );
bool Cleared();
~wxGtkDataViewModelNotifier();
virtual bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item );
~wxGtkDataViewModelNotifier();
virtual bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item );
- virtual bool ItemDeleted( const wxDataViewItem &item );
+ virtual bool ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item );
virtual bool ItemChanged( const wxDataViewItem &item );
virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col );
virtual bool Cleared();
virtual bool ItemChanged( const wxDataViewItem &item );
virtual bool ValueChanged( const wxDataViewItem &item, unsigned int col );
virtual bool Cleared();
-bool wxGtkDataViewModelNotifier::ItemDeleted( const wxDataViewItem &item )
+bool wxGtkDataViewModelNotifier::ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item )
{
GtkTreeIter iter;
iter.stamp = m_wxgtk_model->stamp;
{
GtkTreeIter iter;
iter.stamp = m_wxgtk_model->stamp;
GTK_TREE_MODEL(m_wxgtk_model), path );
gtk_tree_path_free (path);
GTK_TREE_MODEL(m_wxgtk_model), path );
gtk_tree_path_free (path);
- m_owner->GtkGetInternal()->ItemDeleted( item );
+ m_owner->GtkGetInternal()->ItemDeleted( parent, item );
-bool wxDataViewCtrlInternal::ItemDeleted( const wxDataViewItem &item )
+bool wxDataViewCtrlInternal::ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item )
- wxGtkTreeModelNode *parent = FindParentNode( item );
+ wxGtkTreeModelNode *parent = FindNode( parent );
parent->DeleteChild( item.GetID() );
wxDataViewEvent event( wxEVT_COMMAND_DATAVIEW_MODEL_ITEM_DELETED, m_owner->GetId() );
parent->DeleteChild( item.GetID() );
wxDataViewEvent event( wxEVT_COMMAND_DATAVIEW_MODEL_ITEM_DELETED, m_owner->GetId() );
GtkAllocation *alloc,
wxDataViewCtrl *win )
{
GtkAllocation *alloc,
wxDataViewCtrl *win )
{
wxWindowList::compatibility_iterator node = win->GetChildren().GetFirst();
while (node)
{
wxWindowList::compatibility_iterator node = win->GetChildren().GetFirst();
while (node)
{