Example #1
0
void WatchMoviesView::startPlay()
{
	if(mUi->moviesTable->selectedItems().size() > 0 && mUi->moviesTable->item(mUi->moviesTable->currentRow(), 8)) {
		QString file = mUi->moviesTable->item(mUi->moviesTable->currentRow(), 8)->text();
		bool loadMovie = false;
		bool startMode = false;
		bool movieOk = false;
		bool playOk = false;
		MovieFile *movieFile = NULL;
		ModeManager *modeManager = ModeManager::instance();

		if(mMovieFile) {
			if(mMovieFile->getMovieFile() == file)
				mMovieFile->rewind();
			else
				loadMovie = true;
		} else {
			loadMovie = true;
			startMode = true;
		}

		if(loadMovie) {
			movieFile = new MovieFile(OptionsView::instance()->getMoviesDir()
										   + "/"
										   + file);
			movieOk = movieFile->loadMovie(true);
		}

		if(movieOk && startMode) {
			if(modeManager->startMode(MODE_PLAY)) {
				modeManager->setMovieFile(movieFile);
				playOk = true;
			}
		} else if(movieOk && !startMode) {
			modeManager->setMovieFile(movieFile);
			playOk = true;
		}

		if(playOk) {
			connect(movieFile, SIGNAL(movieStarted()), this, SLOT(onPlayStart()));
			connect(movieFile, SIGNAL(movieTime(uint32)), this, SLOT(onPlayTime(uint32)));

			mUi->stopButton->setEnabled(true);

			mUi->movieFileLabelValue->setText(mUi->moviesTable->item(mUi->moviesTable->currentRow(), 8)->text());
			mUi->speedLabelValue->setText("1.00x");
			mUi->speedSlider->setValue(0);
			mUi->playProgressBar->setValue(0);

			mUi->statusLabelValue->setText(tr("Waiting tibia connection..."));
			mUi->statusLabelValue->setStyleSheet("color: #808000; font-weight: bold");

			if(mMovieFile)
				delete mMovieFile;
			mMovieFile = movieFile;
		}
	} else {
		qCritical() << qPrintable(tr("You must select a movie to play."));
	}
}
Example #2
0
void OSMovie::play(uint flags, CGameObject *obj) {
	_aviSurface.play(flags, obj);

	if (_aviSurface.isPlaying())
		movieStarted();
}
Example #3
0
void OSMovie::play(uint startFrame, uint endFrame, uint initialFrame, uint flags, CGameObject *obj) {
	_aviSurface.play(startFrame, endFrame, initialFrame, flags, obj);

	if (_aviSurface.isPlaying())
		movieStarted();
}