void BuiltinSchedulerPlugin::slotFinished( SchedulerThread *job ) { ScheduleManager *sm = job->mainManager(); Project *mp = job->mainProject(); qDebug()<<"BuiltinSchedulerPlugin::slotFinished:"<<mp<<sm<<job->isStopped(); if ( job->isStopped() ) { sm->setCalculationResult( ScheduleManager::CalculationCanceled ); } else { updateLog( job ); Project *tp = static_cast<KPlatoScheduler*>( job )->project(); ScheduleManager *tm = static_cast<KPlatoScheduler*>( job )->manager(); updateProject( tp, tm, mp, sm ); sm->setCalculationResult( ScheduleManager::CalculationDone ); } sm->setScheduling( false ); m_jobs.removeAt( m_jobs.indexOf( job ) ); if ( m_jobs.isEmpty() ) { m_synctimer.stop(); } emit sigCalculationFinished( mp, sm ); disconnect(this, SIGNAL(sigCalculationStarted(Project*, ScheduleManager*)), mp, SIGNAL(sigCalculationStarted(Project*, ScheduleManager*))); disconnect(this, SIGNAL(sigCalculationFinished(Project*, ScheduleManager*)), mp, SIGNAL(sigCalculationFinished(Project*, ScheduleManager* ))); job->deleteLater(); qDebug()<<"BuiltinSchedulerPlugin::slotFinished: <<<"; }