From befa9b614f9e78f96cb31ae0a6633ad8935e7618 Mon Sep 17 00:00:00 2001 From: Robert Roebling Date: Sat, 14 Jul 2007 15:47:01 +0000 Subject: [PATCH] Test in GetFirstChild() if item is known to control git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- samples/dataview/dataview.cpp | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/samples/dataview/dataview.cpp b/samples/dataview/dataview.cpp index 6009a5e553..2b013e6d9a 100644 --- a/samples/dataview/dataview.cpp +++ b/samples/dataview/dataview.cpp @@ -138,6 +138,7 @@ public: "Ninth symphony", "Ludwig van Beethoven", "1824" ) ); m_classical->Append( new MyMusicModelNode( m_classical, GetNewId(), "German Requiem", "Johannes Brahms", "1868" ) ); + m_classicalMusicIsKnownToControl = false; } void AddToClassical( const wxString &title, const wxString &artist, const wxString &year ) @@ -147,11 +148,13 @@ public: new MyMusicModelNode( m_classical, GetNewId(), title, artist, year ); m_classical->Append( child_node ); - // notify control - wxDataViewItem child( child_node->GetID() ); - wxDataViewItem parent( m_classical->GetID() ); - wxPrintf( "parent id %d\n", m_classical->GetID() ); - ItemAdded( parent, child ); + if (m_classicalMusicIsKnownToControl) + { + // notify control + wxDataViewItem child( child_node->GetID() ); + wxDataViewItem parent( m_classical->GetID() ); + ItemAdded( parent, child ); + } } virtual unsigned int GetColumnCount() const @@ -208,6 +211,12 @@ public: if (node->GetChildCount() == 0) return wxDataViewItem( 0 ); + + if (node == m_classical) + { + MyMusicModel *model = (MyMusicModel*)(const MyMusicModel*) this; + model->m_classicalMusicIsKnownToControl = true; + } MyMusicModelNode *first_child = node->GetChildren().Item( 0 ); return wxDataViewItem( first_child->GetID() ); @@ -265,6 +274,7 @@ private: MyMusicModelNode* m_root; MyMusicModelNode* m_pop; MyMusicModelNode* m_classical; + bool m_classicalMusicIsKnownToControl; wxUint32 m_idCounter; }; -- 2.45.2