void AnalysisFeature::bindWidget(WLibrary* libraryWidget, MixxxKeyboard* keyboard) { m_pAnalysisView = new DlgAnalysis(libraryWidget, m_pConfig, m_pTrackCollection); connect(m_pAnalysisView, SIGNAL(loadTrack(TrackPointer)), this, SIGNAL(loadTrack(TrackPointer))); connect(m_pAnalysisView, SIGNAL(loadTrackToPlayer(TrackPointer, QString)), this, SIGNAL(loadTrackToPlayer(TrackPointer, QString))); connect(m_pAnalysisView, SIGNAL(analyzeTracks(QList<int>)), this, SLOT(analyzeTracks(QList<int>))); connect(m_pAnalysisView, SIGNAL(stopAnalysis()), this, SLOT(stopAnalysis())); connect(m_pAnalysisView, SIGNAL(trackSelected(TrackPointer)), this, SIGNAL(trackSelected(TrackPointer))); connect(this, SIGNAL(analysisActive(bool)), m_pAnalysisView, SLOT(analysisActive(bool))); connect(this, SIGNAL(trackAnalysisStarted(int)), m_pAnalysisView, SLOT(trackAnalysisStarted(int))); m_pAnalysisView->installEventFilter(keyboard); // Let the DlgAnalysis know whether or not analysis is active. bool bAnalysisActive = m_pAnalyserQueue != NULL; emit(analysisActive(bAnalysisActive)); libraryWidget->registerView(m_sAnalysisViewName, m_pAnalysisView); }
void UCIEngine::protocolEnd() { if(isAnalyzing()) { stopAnalysis(); m_quitAfterAnalysis = true; } else { send("quit"); setActive(false); } }
void DlgPrepare::analyze() { //qDebug() << this << "analyze()"; if (m_bAnalysisActive) { emit(stopAnalysis()); } else { QList<int> trackIds; QModelIndexList selectedIndexes = m_pPrepareLibraryTableView->selectionModel()->selectedRows(); foreach(QModelIndex selectedIndex, selectedIndexes) { bool ok; int trackId = selectedIndex.sibling( selectedIndex.row(), m_pPrepareLibraryTableModel->fieldIndex(LIBRARYTABLE_ID)).data().toInt(&ok); if (ok) { trackIds.append(trackId); } } m_tracksInQueue = trackIds.count(); m_currentTrack = 1; emit(analyzeTracks(trackIds)); }