void PLSelector::createItems() { PLSelItem *pl = putPLData( addItem( PL_ITEM_TYPE, "Playlist", true ), THEPL->p_playing ); pl->treeItem()->setData( 0, SPECIAL_ROLE, QVariant( IS_PL ) ); PLSelItem *ml = putPLData( addItem( PL_ITEM_TYPE, "Media Library", true ), THEPL->p_media_library ); ml->treeItem()->setData( 0, SPECIAL_ROLE, QVariant( IS_ML ) ); QTreeWidgetItem *mycomp = addItem( CATEGORY_TYPE, "My Computer", false )->treeItem(); QTreeWidgetItem *devices = addItem( CATEGORY_TYPE, "Devices", false )->treeItem(); QTreeWidgetItem *lan = addItem( CATEGORY_TYPE, "Local Network", false )->treeItem(); QTreeWidgetItem *internet = addItem( CATEGORY_TYPE, "Internet", false )->treeItem();; char **ppsz_longnames; int *p_categories; char **ppsz_names = vlc_sd_GetNames( THEPL, &ppsz_longnames, &p_categories ); if( !ppsz_names ) return; char **ppsz_name = ppsz_names, **ppsz_longname = ppsz_longnames; int *p_category = p_categories; for( ; *ppsz_name; ppsz_name++, ppsz_longname++, p_category++ ) { //msg_Dbg( p_intf, "Adding a SD item: %s", *ppsz_longname ); if( *p_category == SD_CAT_INTERNET ) { PLSelItem *selItem = addItem( SD_TYPE, *ppsz_longname, false, internet ); putSDData( selItem, *ppsz_name, *ppsz_longname ); if( !strncmp( *ppsz_name, "podcast", 7 ) ) { selItem->treeItem()->setData( 0, SPECIAL_ROLE, QVariant( IS_PODCAST ) ); selItem->addAction( ADD_ACTION, qtr( "Subscribe to a podcast" ) ); CONNECT( selItem, action( PLSelItem* ), this, podcastAdd( PLSelItem* ) ); podcastsParent = selItem->treeItem(); } }
void PLSelector::createItems() { /* PL */ PLSelItem *pl = putPLData( addItem( PL_ITEM_TYPE, N_("Playlist"), true ), THEPL->p_playing ); pl->treeItem()->setData( 0, SPECIAL_ROLE, QVariant( IS_PL ) ); /* ML */ PLSelItem *ml = putPLData( addItem( PL_ITEM_TYPE, N_("Media Library"), true ), THEPL->p_media_library ); ml->treeItem()->setData( 0, SPECIAL_ROLE, QVariant( IS_ML ) ); /* SD nodes */ QTreeWidgetItem *mycomp = addItem( CATEGORY_TYPE, N_("My Computer") )->treeItem(); QTreeWidgetItem *devices = addItem( CATEGORY_TYPE, N_("Devices") )->treeItem(); QTreeWidgetItem *lan = addItem( CATEGORY_TYPE, N_("Local Network") )->treeItem(); QTreeWidgetItem *internet = addItem( CATEGORY_TYPE, N_("Internet") )->treeItem(); /* SD subnodes */ char **ppsz_longnames; int *p_categories; char **ppsz_names = vlc_sd_GetNames( THEPL, &ppsz_longnames, &p_categories ); if( !ppsz_names ) return; char **ppsz_name = ppsz_names, **ppsz_longname = ppsz_longnames; int *p_category = p_categories; for( ; *ppsz_name; ppsz_name++, ppsz_longname++, p_category++ ) { //msg_Dbg( p_intf, "Adding a SD item: %s", *ppsz_longname ); PLSelItem *selItem; switch( *p_category ) { case SD_CAT_INTERNET: { selItem = addItem( SD_TYPE, *ppsz_longname, false, internet ); if( !strncmp( *ppsz_name, "podcast", 7 ) ) { selItem->treeItem()->setData( 0, SPECIAL_ROLE, QVariant( IS_PODCAST ) ); selItem->addAction( ADD_ACTION, qtr( "Subscribe to a podcast" ) ); CONNECT( selItem, action( PLSelItem* ), this, podcastAdd( PLSelItem* ) ); podcastsParent = selItem->treeItem(); } } break; case SD_CAT_DEVICES: selItem = addItem( SD_TYPE, *ppsz_longname, false, devices ); break; case SD_CAT_LAN: selItem = addItem( SD_TYPE, *ppsz_longname, false, lan ); break; case SD_CAT_MYCOMPUTER: selItem = addItem( SD_TYPE, *ppsz_longname, false, mycomp ); break; default: selItem = addItem( SD_TYPE, *ppsz_longname ); } putSDData( selItem, *ppsz_name, *ppsz_longname ); free( *ppsz_name ); free( *ppsz_longname ); }