Esempio n. 1
0
void Game::newTask()
{

    if(m_currentTask!=nullptr)
        m_currentTask->deleteLater();
    m_currentTask = Task::createRandomTask(this);
    m_currentTask->connect(m_currentTask, &Task::answeredChanged,
                           this, &Game::onTaskAnswered);

    emit currentTaskChanged(m_currentTask);
}
Esempio n. 2
0
ESURegistration::Task ESURegistration::popTask()
{
    if( !d->taskStack.isEmpty() ) {
        d->currentTask = d->taskStack.pop();
        Q_EMIT currentTaskChanged();

        return( d->currentTask );
    }

    return( NoTasks );
}
Esempio n. 3
0
/**
 * Translates QCustomEvents into signals. This function is called from Qt
 * in the main thread, which guarantees safety for emitting signals.
 */
void ThreadedJob::customEvent( QCustomEvent* event )
{
	switch( event->type() )
	{
	case (int) FinishedEventType:
		emit IJob::finished( ((FinishedEvent*)event)->result );
		break;

	case (int) ProgressChangedEventType:
		ProgressChangedEvent* pcEvent = (ProgressChangedEvent*) event;
		emit progressChanged( pcEvent->value, pcEvent->maximum );
		break;

	case (int) CurrentTaskChangedEventType:
		emit currentTaskChanged(
			((CurrentTaskChangedEvent*)event)->description );
		break;

	default:
		break;
	}
}
Esempio n. 4
0
void ESURegistration::pushTask(ESURegistration::Task task)
{
    d->taskStack.push(task);
    d->currentTask = task;
    Q_EMIT currentTaskChanged();
}
Esempio n. 5
0
void ESURegistration::setCurrentTask(ESURegistration::Task task)
{
    d->currentTask = task;
    Q_EMIT currentTaskChanged();
}