void TasksTab::OnBnClickedButtonNew() { Task *newTask = new Task(); newTask->setName( "Unnamed Task" ); newTask->setDescription( "Unnamed Task Description" ); HTREEITEM hItem = m_Tree.GetSelectedItem(); if( !hItem ) { taskContainer->push_back( newTask ); } else { DWORD_PTR dw = m_Tree.GetItemData( hItem ); //get item data Task* ItemData = (Task*)dw; if( ItemData != NULL ) { ItemData->addTask( newTask ); } } ReloadTaskTree(); }