void KNMusicPlugin::loadMainPlayer(KNMusicMainPlayerBase *plugin) { if(m_mainPlayer==nullptr) { m_mainPlayer=plugin; //Configure the main player. m_mainPlayer->setBackend(m_backend); m_mainPlayer->setHeaderPlayer(m_headerPlayer); m_mainPlayer->setNowPlaying(m_nowPlaying); m_mainPlayer->hide(); //Restore the settings. ; //Set the main player. m_centralWidget->setMainPlayer(m_mainPlayer); //Add banner to the header. addLeftHeaderWidget(m_mainPlayer->banner(), 1); //Link the request. connect(m_mainPlayer, &KNMusicMainPlayer::requireHideMainPlayer, m_headerPlayer, &KNMusicHeaderPlayerBase::show); connect(m_mainPlayer, &KNMusicMainPlayer::requireHideMainPlayer, m_centralWidget, &KNMusicCategoryTabWidget::hideMainPlayer); //Add plugin to the list. m_pluginList.append(m_mainPlayer); } }
inline void KNMusicPlugin::loadHeaderPlayer(KNMusicHeaderPlayerBase *plugin) { if(m_headerPlayer==nullptr) { m_headerPlayer=plugin; //Link the save configure signal. connect(this, &KNMusicPlugin::requireSaveConfigure, m_headerPlayer, &KNMusicHeaderPlayerBase::saveConfigure); //Set the backend and now playing controls to the header player. m_headerPlayer->setBackend(m_backend); m_headerPlayer->setNowPlaying(m_nowPlaying); //Restore the preference. m_headerPlayer->loadConfigure(); //Add plugin to the list. m_pluginList.append(m_headerPlayer); //Link player to sense header. connect(m_headerPlayer, &KNMusicHeaderPlayerBase::requireCheckCursor, m_headerWidget, &KNMouseDetectHeader::checkCurrentCursorPos); connect(m_headerWidget, &KNMouseDetectHeader::requireActivateWidget, m_headerPlayer, &KNMusicHeaderPlayerBase::activatePlayer); connect(m_headerWidget, &KNMouseDetectHeader::requireInactivateWidget, m_headerPlayer, &KNMusicHeaderPlayerBase::inactivatePlayer); //Linke the request to category tab widget. connect(m_headerPlayer, &KNMusicHeaderPlayerBase::requireShowMainPlayer, m_centralWidget, &KNMusicCategoryTabWidget::showMainPlayer); //Add to main window. addLeftHeaderWidget(m_headerPlayer); } }
inline void KNMusicPlugin::loadHeaderLyrics(KNMusicHeaderLyricsBase *plugin) { //Add plugin to the list. m_pluginList.append(plugin); //Link the display to the header player. plugin->setHeaderPlayer(m_headerPlayer); //Add widget to the header. addLeftHeaderWidget(plugin, 1); }
inline void KNMusicPlugin::loadHeaderLyrics(KNMusicHeaderLyricsBase *plugin) { //Add plugin to the list. m_pluginList.append(plugin); //Link the hide main player event. connect(m_mainPlayer, &KNMusicMainPlayerBase::requireHideMainPlayer, plugin, &KNMusicHeaderLyricsBase::show); //Link the display to the header player. plugin->setHeaderPlayer(m_headerPlayer); //Load the configure. plugin->loadConfigure(); //Add widget to the header. addLeftHeaderWidget(plugin, 1); }
inline void KNMusicPlugin::loadHeaderPlayer(KNMusicHeaderPlayerBase *plugin) { if(m_headerPlayer==nullptr) { m_headerPlayer=plugin; //Configure the header player. m_headerPlayer->setBackend(m_backend); m_headerPlayer->setNowPlaying(m_nowPlaying); //Restore configure. m_headerPlayer->restoreConfigure(); //Add plugin to the list. m_pluginList.append(m_headerPlayer); //Link player to sense header. connect(m_headerWidget, &KNMouseDetectHeader::requireActivateWidget, m_headerPlayer, &KNMusicHeaderPlayerBase::activatePlayer); connect(m_headerWidget, &KNMouseDetectHeader::requireInactivateWidget, m_headerPlayer, &KNMusicHeaderPlayerBase::inactivatePlayer); //Add to main window. addLeftHeaderWidget(m_headerPlayer); } }