+ MyMusicModel()
+ {
+ m_idCounter = 0;
+ m_root = new MyMusicModelNode( NULL, GetNewId(), "My Music" );
+ m_pop = new MyMusicModelNode( m_root, GetNewId(), "Pop music" );
+ m_root->Append( m_pop );
+ m_pop->Append( new MyMusicModelNode( m_pop, GetNewId(),
+ "You are not alone", "Michael Jackson", "1995" ) );
+ m_pop->Append( new MyMusicModelNode( m_pop, GetNewId(),
+ "Take a bow", "Madonna", "1994" ) );
+ m_classical = new MyMusicModelNode( m_root, GetNewId(), "Classical music" );
+ m_root->Append( m_classical );
+ m_classical->Append( new MyMusicModelNode( m_classical, GetNewId(),
+ "Ninth symphony", "Ludwig van Beethoven", "1824" ) );
+ m_classical->Append( new MyMusicModelNode( m_classical, GetNewId(),
+ "German Requiem", "Johannes Brahms", "1868" ) );
+ }
+
+ void AddToClassical( const wxString &title, const wxString &artist, const wxString &year )
+ {
+ // add to data
+ MyMusicModelNode *child_node =
+ 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 );
+ }