void LibreFM::update(int) { static int starttime = 0; static bool listening = false; if(listening && proxy->getStatus().playing == SStatus::Stopped) { // track finished listening = false; STags t = proxy->getTags(); int len = t.tag0.length/75; submission(t.tag0.artist, t.tag0.title, starttime, t.tag0.album, len, "P", "", t.tag0.track); } if(proxy->getStatus().playing == SStatus::Playing && proxy->getStatus().pos == .0f) { // track started listening = true; starttime = QDateTime::currentDateTime().toTime_t(); STags t = proxy->getTags(); nowplaying(t.tag0.artist, t.tag0.title, t.tag0.album, t.tag0.length/75, t.tag0.track); } }
void LibreFM::doQueue() { if(stack.size() && !httpGetId && !httpPostId) { QList<QVariant> &item = *stack.begin(); if(item.size() == 0) { handshake(librefmUser, librefmPassword); stack.pop_front(); } else if(item.size() == 1) { //artistInfo(item[0].toString()); //stack.pop_front(); } else if(item.size() == 2) { //albumInfo(item[0].toString(), item[1].toString()); //stack.pop_front(); } else if(item.size() == 6) { nowplaying(item[0].toString(), item[1].toString(), item[2].toString(), item[3].toInt(), item[4].toInt(), item[5].toString()); stack.pop_front(); } else if(item.size() == 9) { submission(item[0].toString(), item[1].toString(), item[2].toInt(), item[3].toString(), item[4].toInt(), item[5].toString(), item[6].toString(), item[7].toInt(), item[8].toString()); stack.pop_front(); } } }
CalcButs::CalcButs(int h, int w, int fs, QTextEdit *e, QWidget *parent): width(w), height(h), fontsize(fs), edit(e), QGridLayout(parent) { this->setHorizontalSpacing(0); this->setVerticalSpacing(0); butC = new StringButton("C",height, 2*width+1, fontsize); butReset = new StringButton("Reset",height, 2*width+1, fontsize); but0 = new StringButton("0", height, width, fontsize); but1 = new StringButton("1", height, width, fontsize); but2 = new StringButton("2", height, width, fontsize); but3 = new StringButton("3", height, width, fontsize); but4 = new StringButton("4", height, width, fontsize); but5 = new StringButton("5", height, width, fontsize); but6 = new StringButton("6", height, width, fontsize); but7 = new StringButton("7", height, width, fontsize); but8 = new StringButton("8", height, width, fontsize); but9 = new StringButton("9", height, width, fontsize); butPlus = new StringButton("+",height, width, fontsize); butMinus = new StringButton("-", height, width, fontsize); butTimes = new StringButton("*", height, width, fontsize); butDiv = new StringButton("/", height, width, fontsize); butDot = new StringButton(".", height, width, fontsize); butEq = new StringButton("=", height, width, fontsize); butBrackOpen = new StringButton("(", height, width, fontsize); butx = new StringButton("x", height, width, fontsize); buti = new StringButton("i", height, width, fontsize); butBrackClose = new StringButton(")", height, width, fontsize); butPower = new StringButton("^", height, width, fontsize); this->addWidget(butC,0,0,1, 2); this->addWidget(butReset,0,2,1, 2); this->addWidget(but7,1,0,1, 1); this->addWidget(but8,1,1,1, 1); this->addWidget(but9,1,2,1, 1); this->addWidget(butDiv,1,3,1, 1); this->addWidget(but4,2,0,1, 1); this->addWidget(but5,2,1,1, 1); this->addWidget(but6,2,2,1, 1); this->addWidget(butTimes,2,3,1, 1); this->addWidget(but1,3,0,1, 1); this->addWidget(but2,3,1,1, 1); this->addWidget(but3,3,2,1, 1); this->addWidget(butMinus,3,3,1, 1); this->addWidget(but0,4,0,1, 1); this->addWidget(butDot,4,1,1, 1); this->addWidget(butEq,4,2,1, 1); this->addWidget(butPlus,4,3,1, 1); this->addWidget(butPower,0,5,1, 1); this->addWidget(butBrackOpen,1,5,1, 1); this->addWidget(butBrackClose,2,5,1, 1); this->addWidget(butx,3,5,1, 1); this->addWidget(buti,4,5,1, 1); field = true; complex = true; QObject::connect(this->but0,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but1,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but2,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but3,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but4,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but5,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but6,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but7,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but8,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->but9,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butPlus,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butMinus,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butTimes,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butDiv,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butDot,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butEq,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butBrackOpen,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butx,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->buti,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butBrackClose,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butPower,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butC,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this->butReset,SIGNAL(sig_string(QString)),this,SLOT(submission(QString))); QObject::connect(this,SIGNAL(emission(QString)),edit,SLOT(insertPlainText(QString))); QObject::connect(this,SIGNAL(C()),edit,SLOT(C())); QObject::connect(this,SIGNAL(eq()),edit,SLOT(eq())); }
void SubmitAndCheckWork(ThreadWorkManager &twm, WorkInfo &winfo) { Network::Protocol::Submission submission(winfo.block.nNonce, winfo.bnPrimeChainMultiplier, twm.Thread()); fprintf(stdout, "Found Work: %x.%s\n", winfo.block.nNonce, winfo.bnPrimeChainMultiplier.ToString(16).c_str()); WorkManager::SubmitFoundChain(submission); }