void Library::btnClicked(widgetEvent & _event){ shared_ptr<kBrowseArchive> browse; browse = dynamic_pointer_cast<kBrowseArchive>(_event.sender); // cout << "row "<<browse->getClickedRow() << endl; string ontname = browse->getCommand(); // cout << ontname << endl; // view->clearClips(); browse->removeAllViews(); shared_ptr<Ontology> ont = getOntology( ontname ); vector< shared_ptr < MediaHolder > > media = getMedia( ont ); // // cout << getChildOntologies( ont ).size() << endl; draggingOntology = ontname; vector< shared_ptr < Clip > > clips; vector< shared_ptr < Sample > > samples; for (int i=0; i<media.size(); i++) { if(media[i]->getType()=="clip") clips.push_back(dynamic_pointer_cast<Clip>(media[i])); if(media[i]->getType()=="sample") samples.push_back(dynamic_pointer_cast<Sample>(media[i])); } browse->loadMediaViews(); browse->addMedia( clips, samples ); }
int query14() { int maxano,minano; maxano=minano=0; maxano=getMaxAno(); minano=getMinAno(); if(minano==0 || maxano==0) { printf("Por favor faça leitura do ficheiro primeiro\n"); } else { printf("Max Comprimento: %s\n", getMaxLen()); printf("Min Comprimento: %s\n", getMinLen()); printf("Media Comprimento: %d\n", getMedia()); } return 1; }
QPlayer::QPlayer(QObject *parent) : APlayer(parent) { ins = this; setObjectName("QPlayer"); state = Stop; manuallyStopped = false; waitingForBegin = false; skipTimeChanged = false; mp = (new QPlayerThread(this))->getMediaPlayer(); mp->setVolume(Config::getValue("/Playing/Volume", 50)); connect<void(QMediaPlayer::*)(QMediaPlayer::Error)>(mp, &QMediaPlayer::error, this, [this](int error){ if ((State)mp->state() == Play){ manuallyStopped = true; } emit errorOccurred(error); }); connect(mp, &QMediaPlayer::volumeChanged, this, &QPlayer::volumeChanged); connect(mp, &QMediaPlayer::stateChanged, this, [this](int _state){ if (_state == Stop){ if (!manuallyStopped&&Config::getValue("/Playing/Loop", false)){ stateChanged(state = Loop); play(); emit jumped(0); } else{ stateChanged(state = Stop); emit reach(manuallyStopped); } manuallyStopped = false; } else{ manuallyStopped = false; if (_state == Play&&state == Stop){ waitingForBegin = true; } else{ emit stateChanged(state = _state); } } }); connect(mp, &QMediaPlayer::positionChanged, this, [this](qint64 time){ if (waitingForBegin&&time > 0){ waitingForBegin = false; ARender::instance()->setMusic(!mp->isVideoAvailable()); emit stateChanged(state = Play); emit begin(); } if (!skipTimeChanged){ emit timeChanged(time); } else{ skipTimeChanged = false; } }); connect(mp, &QMediaPlayer::mediaChanged, this, [this](){ emit mediaChanged(getMedia()); }); connect(mp, &QMediaPlayer::playbackRateChanged, this, &QPlayer::rateChanged); }