void QuizCheck::Next() { QuizTimer->stop(); sendMessage("Ответ: "+CurrAsk,bQuiz); QEventLoop loop; QTimer::singleShot(1000, &loop, SLOT(quit())); loop.exec(); GetQuestion(); }
void QuizCheck::AutoHint() { if (HintCount+2 == CurrAsk.length()) { sendMessage("Никто не ответил на вопрос",bQuiz); sendMessage("Ответ: "+CurrAsk,bQuiz); QuizTimer->stop(); GetQuestion(); return; } int k=0; do { k=qrand()%(CurrAsk.length()-1); } while (MaskAsk[k] == CurrAsk[k]); MaskAsk[k]=CurrAsk[k]; HintCount++; sendMessage("Подсказка: "+MaskAsk,bQuiz); }
void QuizCheck::Start () { sendMessage("В базе "+QString::number(count)+" вопросов.",bQuiz); sendMessage("Начинаем",bQuiz); //QuizTimer->start(5000); GetQuestion(); st=1; }
void QuizCheck::Answer(QString msg, QString ip) { if (msg==CurrAsk) { QuizTimer->stop(); QString nick = 0; quint16 idt = ChatIp.indexOf(ip); if (idt != -1) nick = ChatNick.at(idt); if (AskCount.at(idt) == 0) AskCount[idt] = UserStats->value("all_stat/"+nick).toInt(); // загрузка значения из файла AskCount[idt] += 1; sendMessage("верно, "+nick,bQuiz); sendMessage("Всего правильных ответов "+QString::number(AskCount.at(idt)),bQuiz); UserStats->setValue("all_stat/"+nick,AskCount.at(idt)); for (quint8 i=0; i<10;++i) { if (AskCount[idt] > TopCount[i]) { if (TopNick[i] != nick) { if (i < 9) //если уже в топе, то поместить на уровень выше, если нет, добавить на последнее место { TopNick[i+1] = TopNick[i]; TopCount[i+1] = TopCount[i]; UserStats->setValue("top/pos"+QString::number(i+1)+"n",TopNick[i+1]); UserStats->setValue("top/pos"+QString::number(i+1)+"c",TopCount[i+1]); } TopNick[i] = nick; UserStats->setValue("top/pos"+QString::number(i)+"n",TopNick[i]); sendMessage("Вы заняли "+QString::number(i+1)+"-е место",bQuiz); } TopCount[i] = AskCount[idt]; UserStats->setValue("top/pos"+QString::number(i)+"c",TopCount[i]); break; } } QEventLoop loop; QTimer::singleShot(1000, &loop, SLOT(quit())); loop.exec(); //подождать немножко, до выдачи следующего вопроса GetQuestion(); } }
/******************************************************************************************** > VisibleAttribute* TemplateAttribute::CreateVisibleAttribute() const Author: Colin_Barfoot (Xara Group Ltd) <*****@*****.**> Created: 09/06/97 Purpose: Creates a template attribute the user can play with. This is all wrong (arrggghh) Returns: A pointer to the UI equivalent of this attribute ********************************************************************************************/ VisibleAttribute* TemplateAttribute::CreateVisibleAttribute() const { VisibleAttribute* pVisibleAttribute = NULL; // return this WizOp* pHandler = GetWizOps().FindWizOpFromInternalName(GetInternalName()); if (pHandler != NULL) { pVisibleAttribute = new VisibleTemplateAttribute(*pHandler, GetQuestion(), GetParam()); } return pVisibleAttribute; }
/******************************************************************************************** > virtual BOOL TemplateAttribute::WritePreChildrenWeb(BaseCamelotFilter* pFilter) Author: Colin_Barfoot (Xara Group Ltd) <*****@*****.**> Created: 27/06/97 Purpose: Writes the TemplateAttribute to the filter Inputs: pFilter = ptr to the filter Returns: TRUE if record is written, FALSE if not ********************************************************************************************/ BOOL TemplateAttribute::WritePreChildrenWeb(BaseCamelotFilter* pFilter) { #ifdef DO_EXPORT ERROR2IF(pFilter == NULL,FALSE,"NULL filter param"); // Add a description of the TAG_WIZOP record for older importers pFilter->AddTagDescription(TAG_WIZOP, _R(IDS_TAG_WIZOP)); CamelotFileRecord Rec(pFilter, TAG_WIZOP, CXF_UNKNOWN_SIZE); BOOL ok = Rec.Init(); if (ok) { String_64 InternalName = GetInternalName(); ok = Rec.WriteUnicode((TCHAR*)InternalName); } if (ok) { String_256 Question = GetQuestion(); ok = Rec.WriteUnicode((TCHAR*)Question); } if (ok) { String_64 Param = GetParam(); ok = Rec.WriteUnicode((TCHAR*)Param); } if (ok) { // Write out some patch space String_8 NonConstNullString = NullString; ok = Rec.WriteUnicode((TCHAR*)NonConstNullString); } if (ok) { ok = pFilter->Write(&Rec); } if (!ok) { pFilter->GotError(_R(IDE_FILE_WRITE_ERROR)); } return ok; #else return FALSE; #endif }
void ConfWidget::SaveSettings () const { XmlSettingsManager::Instance ().setProperty ("Question", GetQuestion ()); XmlSettingsManager::Instance ().setProperty ("Answers", GetAnswers ()); }
HometrainerResources::HometrainerResources() { const std::vector<std::string> files = { GetQuestion(), GetQuestionMark(), GetWelcome(), "ToolHometrainerExerciseAdapter.jpg", "ToolHometrainerExerciseAuks.jpg", "ToolHometrainerExerciseBakMetFilters.jpg", "ToolHometrainerExerciseCdSpelerNumarck.jpg", "ToolHometrainerExerciseDcc.jpg", "ToolHometrainerExerciseDi.jpg", "ToolHometrainerExerciseDimmerpack.jpg", "ToolHometrainerExerciseDmxMannetjeConnector.jpg", "ToolHometrainerExerciseDmxMannetje.jpg", "ToolHometrainerExerciseDmxVrouwtjeConnector.jpg", "ToolHometrainerExerciseDmxVrouwtje.jpg", "ToolHometrainerExerciseEffect.jpg", "ToolHometrainerExerciseEuroMannetjeConnector.jpg", "ToolHometrainerExerciseEuroVrouwtje.jpg", "ToolHometrainerExerciseFilterboekje.jpg", "ToolHometrainerExerciseFilterhouder.jpg", "ToolHometrainerExerciseFilter.jpg", "ToolHometrainerExerciseFiltervellen.jpg", "ToolHometrainerExerciseFlightcase.jpg", "ToolHometrainerExerciseFresnel.jpg", "ToolHometrainerExerciseGeluidstafelAchterkantLinks.jpg", "ToolHometrainerExerciseGeluidstafelAchterkantRechts.jpg", "ToolHometrainerExerciseGeluidstafelAlesis.jpg", "ToolHometrainerExerciseGeluidstafelBovenkantMiddenboven.jpg", "ToolHometrainerExerciseGeluidstafelBovenkantMidden.jpg", "ToolHometrainerExerciseGeluidstafelBovenkantRechtsboven.jpg", "ToolHometrainerExerciseGeluidstafelBovenkantRechtsonder.jpg", "ToolHometrainerExerciseGeluidstafelYamaha.jpg", "ToolHometrainerExerciseGordijnhaak.jpg", "ToolHometrainerExerciseHaspel.jpg", "ToolHometrainerExerciseJackMannetjeMono.jpg", "ToolHometrainerExerciseJackVrouwtjeConnector.jpg", "ToolHometrainerExerciseJackVrouwtjeEnXlrVrouwtjeConnector.jpg", "ToolHometrainerExerciseKabeltester.jpg", "ToolHometrainerExerciseKrachtstroomMannetjeConnector.jpg", "ToolHometrainerExerciseKrachtstroomMannetje.jpg", "ToolHometrainerExerciseKrachtstroomVrouwtjeConnector.jpg", "ToolHometrainerExerciseLamp500W.jpg", "ToolHometrainerExerciseLichtplanDeBruiloften.jpg", "ToolHometrainerExerciseLichtplan.jpg", "ToolHometrainerExerciseLichttafel.jpg", "ToolHometrainerExerciseMdGrijs.jpg", "ToolHometrainerExerciseMdSpeler.jpg", "ToolHometrainerExerciseMdTransparent.jpg", "ToolHometrainerExerciseMicrofoonShureSm58.jpg", "ToolHometrainerExerciseMiniJackStereoVrouwJackStereoMan.jpg", "ToolHometrainerExerciseMonitorTorqueConnectors.jpg", "ToolHometrainerExerciseMultikabelMannetjeConnector.jpg", "ToolHometrainerExerciseMultikabelVrouwtjeConnector.jpg", "ToolHometrainerExerciseMultimeterMetex.jpg", "ToolHometrainerExerciseMultistekkerdoos.jpg", "ToolHometrainerExerciseOn.jpg", "ToolHometrainerExerciseOpwindstatief.jpg", "ToolHometrainerExercisePar.jpg", "ToolHometrainerExercisePc.jpg", "ToolHometrainerExercisePriklijst.jpg", "ToolHometrainerExerciseProfielspot.jpg", "ToolHometrainerExerciseRcf322aAchterkant.jpg", "ToolHometrainerExerciseRgbLamp.jpg", "ToolHometrainerExerciseSafety.jpg", "ToolHometrainerExerciseScartMannetje.jpg", "ToolHometrainerExerciseSchukoVrouwtjeConnector.jpg", "ToolHometrainerExerciseShureSm58.jpg", "ToolHometrainerExerciseSpanningsmeterFluke.jpg", "ToolHometrainerExerciseSpeakerEvent3000.jpg", "ToolHometrainerExerciseSpeakonVrouwSpeakonVrouw.jpg", "ToolHometrainerExerciseSpeakonVrouwtjeConnector.jpg", "ToolHometrainerExerciseSpringV2.jpg", "ToolHometrainerExerciseStandenplot.jpg", "ToolHometrainerExerciseStekkerdoos.jpg", "ToolHometrainerExerciseTbar.jpg", "ToolHometrainerExerciseTrussHaarspeld.jpg", "ToolHometrainerExerciseTruss.jpg", "ToolHometrainerExerciseTrussklem.jpg", "ToolHometrainerExerciseTrussPin.jpg", "ToolHometrainerExerciseTrussVerbindingsstuk.jpg", "ToolHometrainerExerciseTulpMannetje.jpg", "ToolHometrainerExerciseVerloopstukje.jpg", "ToolHometrainerExerciseVersterkerSamsonAchterkant.jpg", "ToolHometrainerExerciseVersterkerSamson.jpg", "ToolHometrainerExerciseVgaVrouwVgaVrouw.jpg", "ToolHometrainerExerciseVoetstatief.jpg", "ToolHometrainerExerciseWijkenArnhemGenummerd.bmp", "ToolHometrainerExerciseXlrMannetjeConnector.jpg", "ToolHometrainerExerciseXlrVrouwtje.jpg", "ToolHometrainerExerciseZekering.jpg" }; std::for_each(files.begin(),files.end(), [](const std::string& s) { if (!boost::filesystem::exists(s)) { const std::string filename = ":/images/" + s; QFile f(filename.c_str()); f.copy(s.c_str()); if (!boost::filesystem::exists(s)) { TRACE(s); } assert(boost::filesystem::exists(s)); } if (!boost::filesystem::exists(s)) { TRACE(s); } assert(boost::filesystem::exists(s)); } ); { const std::vector<std::string> files = { GetExerciseClouds(), GetExerciseTest(), "ToolHometrainerExerciseClouds.txt", "ToolHometrainerExerciseTest.txt", "ToolHometrainerExerciseTtBasis.txt", "ToolHometrainerExerciseTtGeluid.txt", "ToolHometrainerExerciseTtLicht.txt", "ToolHometrainerExerciseWijkenArnhem.txt" }; std::for_each(files.begin(),files.end(), [](const std::string& filename) { if (!(QFile::exists(filename.c_str()))) { QFile f( (std::string(":/textfiles/") + filename).c_str() ); f.copy(filename.c_str()); } if (!boost::filesystem::exists(filename.c_str())) { std::cerr << "File not found: " << filename << '\n'; } assert(boost::filesystem::exists(filename.c_str())); } ); } { const std::vector<std::string> files = { "ToolHometrainerManual.odt" }; std::for_each(files.begin(),files.end(), [](const std::string& filename) { if (!(QFile::exists(filename.c_str()))) { QFile f( (std::string(":/docs/") + filename).c_str() ); f.copy(filename.c_str()); } if (!boost::filesystem::exists(filename.c_str())) { std::cerr << "File not found: " << filename << '\n'; } assert(boost::filesystem::exists(filename.c_str())); } ); } }