change wxDataViewItem id to void*
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -68,19 +68,15 @@ extern WXDLLIMPEXP_DATA_ADV(const wxChar) wxDataViewCtrlNameStr[];
|
|||||||
class WXDLLIMPEXP_ADV wxDataViewItem
|
class WXDLLIMPEXP_ADV wxDataViewItem
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
wxDataViewItem( wxUint32 id = 0 )
|
wxDataViewItem( void* id = NULL )
|
||||||
{ m_id = id; m_reserved1 = 0; m_reserved2 = NULL; }
|
{ m_id = id; }
|
||||||
wxDataViewItem( const wxDataViewItem &item )
|
wxDataViewItem( const wxDataViewItem &item )
|
||||||
{ m_id = item.m_id; m_reserved1 = item.m_reserved1; m_reserved2 = item.m_reserved2; }
|
{ m_id = item.m_id; }
|
||||||
bool IsOk() const { return m_id != 0; }
|
bool IsOk() const { return m_id != NULL; }
|
||||||
wxUint32 GetID() const { return m_id; }
|
void* GetID() const { return m_id; }
|
||||||
|
|
||||||
public:
|
|
||||||
wxUint32 m_reserved1;
|
|
||||||
void* m_reserved2;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
wxUint32 m_id;
|
void* m_id;
|
||||||
};
|
};
|
||||||
|
|
||||||
bool operator == (const wxDataViewItem &left, const wxDataViewItem &right);
|
bool operator == (const wxDataViewItem &left, const wxDataViewItem &right);
|
||||||
|
@@ -156,8 +156,8 @@ public:
|
|||||||
if (m_classicalMusicIsKnownToControl)
|
if (m_classicalMusicIsKnownToControl)
|
||||||
{
|
{
|
||||||
// notify control
|
// notify control
|
||||||
wxDataViewItem child( child_node->GetID() );
|
wxDataViewItem child( (void*) child_node->GetID() );
|
||||||
wxDataViewItem parent( m_classical->GetID() );
|
wxDataViewItem parent( (void*) m_classical->GetID() );
|
||||||
ItemAdded( parent, child );
|
ItemAdded( parent, child );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -222,7 +222,7 @@ public:
|
|||||||
virtual wxDataViewItem GetFirstChild( const wxDataViewItem &parent ) const
|
virtual wxDataViewItem GetFirstChild( const wxDataViewItem &parent ) const
|
||||||
{
|
{
|
||||||
if (parent.GetID() == 0)
|
if (parent.GetID() == 0)
|
||||||
return wxDataViewItem( m_root->GetID() );
|
return wxDataViewItem( (void*) m_root->GetID() );
|
||||||
|
|
||||||
MyMusicModelNode *node = FindNode( parent );
|
MyMusicModelNode *node = FindNode( parent );
|
||||||
|
|
||||||
@@ -236,7 +236,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
MyMusicModelNode *first_child = node->GetChildren().Item( 0 );
|
MyMusicModelNode *first_child = node->GetChildren().Item( 0 );
|
||||||
return wxDataViewItem( first_child->GetID() );
|
return wxDataViewItem( (void*) first_child->GetID() );
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual wxDataViewItem GetNextSibling( const wxDataViewItem &item ) const
|
virtual wxDataViewItem GetNextSibling( const wxDataViewItem &item ) const
|
||||||
@@ -254,7 +254,7 @@ public:
|
|||||||
return wxDataViewItem(0);
|
return wxDataViewItem(0);
|
||||||
|
|
||||||
node = parent->GetChildren().Item( pos+1 );
|
node = parent->GetChildren().Item( pos+1 );
|
||||||
return wxDataViewItem( node->GetID() );
|
return wxDataViewItem( (void*) node->GetID() );
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@@ -262,7 +262,7 @@ private:
|
|||||||
|
|
||||||
MyMusicModelNode *FindNodeRec( MyMusicModelNode *node, const wxDataViewItem &item ) const
|
MyMusicModelNode *FindNodeRec( MyMusicModelNode *node, const wxDataViewItem &item ) const
|
||||||
{
|
{
|
||||||
if (node->GetID() == item.GetID())
|
if (node->GetID() == (wxUint32) item.GetID())
|
||||||
return node;
|
return node;
|
||||||
|
|
||||||
size_t count = node->GetChildCount();
|
size_t count = node->GetChildCount();
|
||||||
|
@@ -1693,6 +1693,7 @@ void wxDataViewMainWindow::OnRenameTimer()
|
|||||||
GetOwner()->CalcScrolledPosition( labelRect.x, labelRect.y,
|
GetOwner()->CalcScrolledPosition( labelRect.x, labelRect.y,
|
||||||
&labelRect.x, &labelRect.y);
|
&labelRect.x, &labelRect.y);
|
||||||
|
|
||||||
|
// TODO get wxDataViewItem from m_currentRow
|
||||||
m_currentCol->GetRenderer()->StartEditing( m_currentRow, labelRect );
|
m_currentCol->GetRenderer()->StartEditing( m_currentRow, labelRect );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -424,7 +424,7 @@ wxgtk_tree_model_get_value (GtkTreeModel *tree_model,
|
|||||||
{
|
{
|
||||||
wxVariant variant;
|
wxVariant variant;
|
||||||
g_value_init( value, G_TYPE_STRING );
|
g_value_init( value, G_TYPE_STRING );
|
||||||
wxDataViewItem item( (wxUint32) iter->user_data );
|
wxDataViewItem item( (void*) iter->user_data );
|
||||||
model->GetValue( variant, item, (unsigned int) column );
|
model->GetValue( variant, item, (unsigned int) column );
|
||||||
|
|
||||||
g_value_set_string( value, variant.GetString().utf8_str() );
|
g_value_set_string( value, variant.GetString().utf8_str() );
|
||||||
@@ -667,7 +667,7 @@ GtkTreePath *wxGtkTreeModel::get_path( GtkTreeIter *iter )
|
|||||||
|
|
||||||
gboolean wxGtkTreeModel::iter_next( GtkTreeIter *iter )
|
gboolean wxGtkTreeModel::iter_next( GtkTreeIter *iter )
|
||||||
{
|
{
|
||||||
wxDataViewItem item( (wxUint32) iter->user_data );
|
wxDataViewItem item( (void*) iter->user_data );
|
||||||
item = m_wx_model->GetNextSibling( item );
|
item = m_wx_model->GetNextSibling( item );
|
||||||
if (!item.IsOk())
|
if (!item.IsOk())
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@@ -679,7 +679,7 @@ gboolean wxGtkTreeModel::iter_next( GtkTreeIter *iter )
|
|||||||
|
|
||||||
gboolean wxGtkTreeModel::iter_children( GtkTreeIter *iter, GtkTreeIter *parent )
|
gboolean wxGtkTreeModel::iter_children( GtkTreeIter *iter, GtkTreeIter *parent )
|
||||||
{
|
{
|
||||||
wxDataViewItem item( (wxUint32) parent->user_data );
|
wxDataViewItem item( (void*) parent->user_data );
|
||||||
|
|
||||||
if (!m_wx_model->HasChildren( item ))
|
if (!m_wx_model->HasChildren( item ))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@@ -697,14 +697,14 @@ gboolean wxGtkTreeModel::iter_children( GtkTreeIter *iter, GtkTreeIter *parent )
|
|||||||
|
|
||||||
gboolean wxGtkTreeModel::iter_has_child( GtkTreeIter *iter )
|
gboolean wxGtkTreeModel::iter_has_child( GtkTreeIter *iter )
|
||||||
{
|
{
|
||||||
wxDataViewItem item( (wxUint32) iter->user_data );
|
wxDataViewItem item( (void*) iter->user_data );
|
||||||
|
|
||||||
return m_wx_model->HasChildren( item );
|
return m_wx_model->HasChildren( item );
|
||||||
}
|
}
|
||||||
|
|
||||||
gint wxGtkTreeModel::iter_n_children( GtkTreeIter *iter )
|
gint wxGtkTreeModel::iter_n_children( GtkTreeIter *iter )
|
||||||
{
|
{
|
||||||
wxDataViewItem item( (wxUint32) iter->user_data );
|
wxDataViewItem item( (void*) iter->user_data );
|
||||||
|
|
||||||
if (!m_wx_model->HasChildren( item ))
|
if (!m_wx_model->HasChildren( item ))
|
||||||
return 0;
|
return 0;
|
||||||
@@ -717,8 +717,8 @@ gint wxGtkTreeModel::iter_n_children( GtkTreeIter *iter )
|
|||||||
|
|
||||||
gboolean wxGtkTreeModel::iter_nth_child( GtkTreeIter *iter, GtkTreeIter *parent, gint n )
|
gboolean wxGtkTreeModel::iter_nth_child( GtkTreeIter *iter, GtkTreeIter *parent, gint n )
|
||||||
{
|
{
|
||||||
wxUint32 id = 0;
|
void* id = NULL;
|
||||||
if (parent) id = (wxUint32) parent->user_data;
|
if (parent) id = (void*) parent->user_data;
|
||||||
wxDataViewItem item( id );
|
wxDataViewItem item( id );
|
||||||
|
|
||||||
if (!m_wx_model->HasChildren( item ))
|
if (!m_wx_model->HasChildren( item ))
|
||||||
@@ -739,7 +739,7 @@ gboolean wxGtkTreeModel::iter_nth_child( GtkTreeIter *iter, GtkTreeIter *parent,
|
|||||||
|
|
||||||
gboolean wxGtkTreeModel::iter_parent( GtkTreeIter *iter, GtkTreeIter *child )
|
gboolean wxGtkTreeModel::iter_parent( GtkTreeIter *iter, GtkTreeIter *child )
|
||||||
{
|
{
|
||||||
wxDataViewItem item( (wxUint32) child->user_data );
|
wxDataViewItem item( (void*) child->user_data );
|
||||||
|
|
||||||
wxGtkTreeModelNode *node = FindNode( child );
|
wxGtkTreeModelNode *node = FindNode( child );
|
||||||
node = node->GetParent();
|
node = node->GetParent();
|
||||||
@@ -786,7 +786,7 @@ wxGtkTreeModelNode *wxGtkTreeModel::FindNode( GtkTreeIter *iter )
|
|||||||
if (!iter)
|
if (!iter)
|
||||||
return m_root;
|
return m_root;
|
||||||
|
|
||||||
wxDataViewItem item( (wxUint32) iter->user_data );
|
wxDataViewItem item( (void*) iter->user_data );
|
||||||
|
|
||||||
wxGtkTreeModelNode *result = wxGtkTreeModel_FindNode( m_root, item );
|
wxGtkTreeModelNode *result = wxGtkTreeModel_FindNode( m_root, item );
|
||||||
|
|
||||||
@@ -989,10 +989,11 @@ static GtkCellEditable *gtk_wx_cell_renderer_start_editing(
|
|||||||
// wxDataViewListModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
// wxDataViewListModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
||||||
|
|
||||||
GtkTreePath *treepath = gtk_tree_path_new_from_string( path );
|
GtkTreePath *treepath = gtk_tree_path_new_from_string( path );
|
||||||
unsigned int model_row = (unsigned int)gtk_tree_path_get_indices (treepath)[0];
|
// TODO
|
||||||
|
wxDataViewItem item;
|
||||||
gtk_tree_path_free( treepath );
|
gtk_tree_path_free( treepath );
|
||||||
|
|
||||||
cell->StartEditing( model_row, renderrect );
|
cell->StartEditing( item, renderrect );
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@@ -1123,7 +1124,8 @@ gtk_wx_cell_renderer_activate(
|
|||||||
wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
||||||
|
|
||||||
GtkTreePath *treepath = gtk_tree_path_new_from_string( path );
|
GtkTreePath *treepath = gtk_tree_path_new_from_string( path );
|
||||||
unsigned int model_row = (unsigned int)gtk_tree_path_get_indices (treepath)[0];
|
// TODO
|
||||||
|
wxDataViewItem item;
|
||||||
gtk_tree_path_free( treepath );
|
gtk_tree_path_free( treepath );
|
||||||
|
|
||||||
unsigned int model_col = cell->GetOwner()->GetModelColumn();
|
unsigned int model_col = cell->GetOwner()->GetModelColumn();
|
||||||
@@ -1133,7 +1135,7 @@ gtk_wx_cell_renderer_activate(
|
|||||||
bool ret = false;
|
bool ret = false;
|
||||||
|
|
||||||
// activated by <ENTER>
|
// activated by <ENTER>
|
||||||
if (cell->Activate( renderrect, model, model_col, model_row ))
|
if (cell->Activate( renderrect, model, item, model_col ))
|
||||||
ret = true;
|
ret = true;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
@@ -1147,16 +1149,16 @@ gtk_wx_cell_renderer_activate(
|
|||||||
bool ret = false;
|
bool ret = false;
|
||||||
if (button_event->button == 1)
|
if (button_event->button == 1)
|
||||||
{
|
{
|
||||||
if (cell->LeftClick( pt, renderrect, model, model_col, model_row ))
|
if (cell->LeftClick( pt, renderrect, model, item, model_col ))
|
||||||
ret = true;
|
ret = true;
|
||||||
// TODO: query system double-click time
|
// TODO: query system double-click time
|
||||||
if (button_event->time - wxrenderer->last_click < 400)
|
if (button_event->time - wxrenderer->last_click < 400)
|
||||||
if (cell->Activate( renderrect, model, model_col, model_row ))
|
if (cell->Activate( renderrect, model, item, model_col ))
|
||||||
ret = true;
|
ret = true;
|
||||||
}
|
}
|
||||||
if (button_event->button == 3)
|
if (button_event->button == 3)
|
||||||
{
|
{
|
||||||
if (cell->RightClick( pt, renderrect, model, model_col, model_row ))
|
if (cell->RightClick( pt, renderrect, model, item, model_col ))
|
||||||
ret = true;
|
ret = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1452,13 +1454,15 @@ static void wxGtkTextRendererEditedCallback( GtkCellRendererText *renderer,
|
|||||||
wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
||||||
|
|
||||||
GtkTreePath *path = gtk_tree_path_new_from_string( arg1 );
|
GtkTreePath *path = gtk_tree_path_new_from_string( arg1 );
|
||||||
unsigned int model_row = (unsigned int)gtk_tree_path_get_indices (path)[0];
|
GtkTreeIter iter;
|
||||||
|
// TODO
|
||||||
|
wxDataViewItem item;
|
||||||
gtk_tree_path_free( path );
|
gtk_tree_path_free( path );
|
||||||
|
|
||||||
unsigned int model_col = cell->GetOwner()->GetModelColumn();
|
unsigned int model_col = cell->GetOwner()->GetModelColumn();
|
||||||
|
|
||||||
model->SetValue( value, model_col, model_row );
|
model->SetValue( value, item, model_col );
|
||||||
model->ValueChanged( model_col, model_row );
|
model->ValueChanged( item, model_col );
|
||||||
}
|
}
|
||||||
|
|
||||||
IMPLEMENT_CLASS(wxDataViewTextRenderer, wxDataViewRenderer)
|
IMPLEMENT_CLASS(wxDataViewTextRenderer, wxDataViewRenderer)
|
||||||
@@ -1624,13 +1628,14 @@ static void wxGtkToggleRendererToggledCallback( GtkCellRendererToggle *renderer,
|
|||||||
wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel();
|
||||||
|
|
||||||
GtkTreePath *gtk_path = gtk_tree_path_new_from_string( path );
|
GtkTreePath *gtk_path = gtk_tree_path_new_from_string( path );
|
||||||
unsigned int model_row = (unsigned int)gtk_tree_path_get_indices (gtk_path)[0];
|
// TODO
|
||||||
|
wxDataViewItem item;
|
||||||
gtk_tree_path_free( gtk_path );
|
gtk_tree_path_free( gtk_path );
|
||||||
|
|
||||||
unsigned int model_col = cell->GetOwner()->GetModelColumn();
|
unsigned int model_col = cell->GetOwner()->GetModelColumn();
|
||||||
|
|
||||||
model->SetValue( value, model_col, model_row );
|
model->SetValue( value, item, model_col );
|
||||||
model->ValueChanged( model_col, model_row );
|
model->ValueChanged( item, model_col );
|
||||||
}
|
}
|
||||||
|
|
||||||
IMPLEMENT_CLASS(wxDataViewToggleRenderer, wxDataViewRenderer)
|
IMPLEMENT_CLASS(wxDataViewToggleRenderer, wxDataViewRenderer)
|
||||||
@@ -2004,7 +2009,7 @@ static void wxGtkTreeCellDataFunc( GtkTreeViewColumn *column,
|
|||||||
|
|
||||||
wxDataViewRenderer *cell = (wxDataViewRenderer*) data;
|
wxDataViewRenderer *cell = (wxDataViewRenderer*) data;
|
||||||
|
|
||||||
wxDataViewItem item( (wxUint32) iter->user_data );
|
wxDataViewItem item( (void*) iter->user_data );
|
||||||
|
|
||||||
wxVariant value;
|
wxVariant value;
|
||||||
tree_model->model->GetDataViewModel()->GetValue( value, item, cell->GetOwner()->GetModelColumn() );
|
tree_model->model->GetDataViewModel()->GetValue( value, item, cell->GetOwner()->GetModelColumn() );
|
||||||
@@ -2507,7 +2512,7 @@ wxDataViewItem wxDataViewCtrl::GetSelection()
|
|||||||
GtkTreeIter iter;
|
GtkTreeIter iter;
|
||||||
if (gtk_tree_selection_get_selected( selection, NULL, &iter ))
|
if (gtk_tree_selection_get_selected( selection, NULL, &iter ))
|
||||||
{
|
{
|
||||||
wxDataViewItem item( (wxUint32) iter.user_data );
|
wxDataViewItem item( (void*) iter.user_data );
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user