GTK: In virtual list mode, map first row to 1, not to 0 as this is reserved for an invalid item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -3417,8 +3417,8 @@ gboolean wxDataViewCtrlInternal::get_iter( GtkTreeIter *iter, GtkTreePath *path
|
||||
return FALSE;
|
||||
|
||||
iter->stamp = m_gtk_model->stamp;
|
||||
// user_data is just the index
|
||||
iter->user_data = (gpointer) i;
|
||||
// user_data is just the index +1
|
||||
iter->user_data = (gpointer) (i+1);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@@ -3469,8 +3469,8 @@ GtkTreePath *wxDataViewCtrlInternal::get_path( GtkTreeIter *iter )
|
||||
|
||||
if (m_wx_model->IsVirtualListModel())
|
||||
{
|
||||
// user_data is just the index
|
||||
int i = (wxUIntPtr) iter->user_data;
|
||||
// user_data is just the index +1
|
||||
int i = ( (wxUIntPtr) iter->user_data ) -1;
|
||||
gtk_tree_path_append_index (retval, i);
|
||||
}
|
||||
else
|
||||
@@ -3498,7 +3498,8 @@ gboolean wxDataViewCtrlInternal::iter_next( GtkTreeIter *iter )
|
||||
{
|
||||
wxDataViewIndexListModel *wx_model = (wxDataViewIndexListModel*) m_wx_model;
|
||||
|
||||
int n = (wxUIntPtr) iter->user_data;
|
||||
// user_data is just the index +1
|
||||
int n = ( (wxUIntPtr) iter->user_data ) -1;
|
||||
|
||||
if (n == -1)
|
||||
return FALSE;
|
||||
@@ -3506,7 +3507,8 @@ gboolean wxDataViewCtrlInternal::iter_next( GtkTreeIter *iter )
|
||||
if (n >= (int) wx_model->GetLastIndex())
|
||||
return FALSE;
|
||||
|
||||
iter->user_data = (gpointer) ++n;
|
||||
// user_data is just the index +1 (+2 because we need the next)
|
||||
iter->user_data = (gpointer) (n+2);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -3535,7 +3537,7 @@ gboolean wxDataViewCtrlInternal::iter_children( GtkTreeIter *iter, GtkTreeIter *
|
||||
return FALSE;
|
||||
|
||||
iter->stamp = m_gtk_model->stamp;
|
||||
iter->user_data = (gpointer) -1;
|
||||
iter->user_data = (gpointer) 0;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@@ -3637,7 +3639,8 @@ gboolean wxDataViewCtrlInternal::iter_nth_child( GtkTreeIter *iter, GtkTreeIter
|
||||
return FALSE;
|
||||
|
||||
iter->stamp = m_gtk_model->stamp;
|
||||
iter->user_data = (gpointer) n;
|
||||
// user_data is just the index +1
|
||||
iter->user_data = (gpointer) (n-1);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
Reference in New Issue
Block a user