void PlaylistManager::UpdateItem( int i ) { if( i < 0 ) return; /* Sanity check */ wxTreeItemId item = FindItem( treectrl->GetRootItem(), i ); if( item.IsOk() ) UpdateTreeItem( item ); }
void PlaylistManager::AppendItem( wxCommandEvent& event ) { playlist_add_t *p_add = (playlist_add_t *)event.GetClientData(); playlist_item_t *p_item = NULL; wxTreeItemId item, node; i_items_to_append--; /* No need to do anything if the playlist is going to be rebuilt */ if( b_need_update ) return; //if( p_add->i_view != i_current_view ) goto update; node = FindItem( treectrl->GetRootItem(), p_add->i_node ); if( !node.IsOk() ) goto update; p_item = playlist_ItemGetById( p_playlist, p_add->i_item ); if( !p_item ) goto update; item = FindItem( treectrl->GetRootItem(), p_add->i_item ); if( item.IsOk() ) goto update; item = treectrl->AppendItem( node, wxL2U( p_item->input.psz_name ), -1,-1, new PlaylistItem( p_item ) ); treectrl->SetItemImage( item, p_item->input.i_type ); if( item.IsOk() && p_item->i_children == -1 ) UpdateTreeItem( item ); update: return; }
ecConfigItem::ecConfigItem(ecConfigItem* parent, CdlUserVisible vitem) { m_name = wxT("UNNAMED"); m_configType = ecConfigTypeNone; m_optionType = ecOptionTypeNone; m_optionFlavor = ecFlavorNone; m_enabled = FALSE; m_active = FALSE; m_modifiable = FALSE; m_parent = parent; m_CdlItem = vitem; m_hint = ecHintNone; m_treeItem = wxTreeItemId(); ecConfigTreeCtrl* treeCtrl = wxGetApp().GetTreeCtrl(); m_treeItem = treeCtrl->AppendItem(parent->GetTreeItem(), m_name, -1, -1, new ecTreeItemData(this)); ConvertFromCdl(); UpdateTreeItem(* treeCtrl); }
void PlaylistManager::UpdateNodeChildren( playlist_item_t *p_node, wxTreeItemId node ) { for( int i = 0; i< p_node->i_children ; i++ ) { /* Append the item */ if( p_node->pp_children[i]->i_children == -1 ) { wxTreeItemId item = treectrl->AppendItem( node, wxL2U( p_node->pp_children[i]->input.psz_name ), -1,-1, new PlaylistItem( p_node->pp_children[i]) ); UpdateTreeItem( item ); } else { CreateNode( p_node->pp_children[i], node ); } } }