void RunData::setValuationClass(QString valuationClass) { if(this->valuationClass!=valuationClass){ this->valuationClass=valuationClass; changeHandler(); } }
void RunData::setNotes(QString notes) { if(this->notes!=notes){ this->notes=notes; changeHandler(); } }
void RunData::setFireBrigade(QString fireBrigade) { if(this->fireBrigade!=fireBrigade){ this->fireBrigade=fireBrigade; changeHandler(); } }
void RunData::setErrors(QString errors) { if(this->errors!=errors){ this->errors=errors; changeHandler(); } }
void RunData::setLastName2(QString name) { if(this->lastName2!=name){ this->lastName2=name; changeHandler(); } }
void RunData::setDsq(bool flag) { if(this->dsq!=flag){ this->dsq=flag; changeHandler(); } }
void RunData::setFirstName1(QString name) { if(this->firstName1!=name){ this->firstName1=name; changeHandler(); } }
void RunData::setTitle2(QString title) { if(this->title2!=title){ this->title2=title; changeHandler(); } }
void RunData::setColor(QString color) { if(this->color!=color){ this->color=color; changeHandler(); } }
void RunData::setAgePoints(QString agePoints) { if(this->agePoints!=agePoints){ this->agePoints=agePoints; changeHandler(); } }
void AC_RotatingPot::poll() { int sensor = readSensor(); if (ignoring != 0) { if ((ignoring == +1 && sensor < reference) || (ignoring == -1 && sensor > reference)) { ignoring = 0; } reference = sensor; } if (ignoring == 0) { int valueDelta = (sensor - reference) / sensitivity; if (inverted) { valueDelta = -valueDelta; } int valueNew = valueOffset + valueDelta; if (value != valueNew) { value = valueNew; if (changeHandler != NULL) { changeHandler(); } } if (sensor == 0 || sensor == 1023) { valueOffset += valueDelta; // prevent long-term overflows by taking modulo if needed valueOffset = getModuloValue(valueOffset); ignoring = (sensor == 0) ? +1 : -1; reference = sensor; } } }
void RunData::setID(int ID) { if(this->ID!=ID) { this->ID=ID; changeHandler(); } }
void RunData::setBoatID(int boatID) { if(this->boatID!=boatID) { this->boatID=boatID; changeHandler(); } }
void RunData::setRound(int round) { if(this->round!=round) { this->round=round; changeHandler(); } }
void RunData::setPublished(bool flag, bool silent) { if(this->published!=flag){ this->published=flag; changeHandler(); // don't this a signal when silent flag is set. (used for auto publish) if(flag && !silent) { emit manualPublished(this); } } }
void RunData::setStartTimeID(int timeID) { //qDebug() << "setStartTimeID"; if(this->startTimeID!=timeID){ if(startTimeID==0 && goalTimeID==0) // if the previous starttime was invalid and there is no goaltime yet { emit runStarted(this); } this->startTimeID=timeID; changeHandler(); emit timeStampAssigned(this); } }
void RunData::setGoalTimeID(int timeID) { //qDebug() << "setGoalTimeID"; if(this->goalTimeID!=timeID){ if(startTimeID!=0 && goalTimeID==0) // if there is a starttime and the previous goaltime is invalid { emit runFinished(this); } this->goalTimeID=timeID; changeHandler(); emit timeStampAssigned(this); } }
void SettingsMenu::init() { if (_initialized) return; State::init(); setModal(true); setFullscreen(true); // background auto background = new UI::Image("art/intrface/prefscrn.frm"); Point backgroundPos = Point((Game::getInstance()->renderer()->size() - background->size()) / 2); int backgroundX = backgroundPos.x(); int backgroundY = backgroundPos.y(); background->setPosition(backgroundPos); addUI(background); auto settings = Game::getInstance()->settings(); // Switches (big) auto combatDifficultySwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::BIG_SWITCH, backgroundX+76, backgroundY+149); combatDifficultySwitch->setMaxState(3); combatDifficultySwitch->setState(settings->combatDifficulty()); addUI("combat_difficulty",combatDifficultySwitch); auto gameDifficultySwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::BIG_SWITCH, backgroundX+76, backgroundY+71); gameDifficultySwitch->setMaxState(3); gameDifficultySwitch->setState(settings->gameDifficulty()); addUI("game_difficulty",gameDifficultySwitch); auto violenceLevelSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::BIG_SWITCH, backgroundX+76, backgroundY+227); violenceLevelSwitch->setState(settings->violenceLevel()); addUI("violence_level",violenceLevelSwitch); auto targetHighlightSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::BIG_SWITCH, backgroundX+76, backgroundY+309); targetHighlightSwitch->setMaxState(3); targetHighlightSwitch->setState(settings->targetHighlight()); addUI("target_highlight",targetHighlightSwitch); auto combatLooksSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::BIG_SWITCH, backgroundX+76, backgroundY+387); combatLooksSwitch->setMaxState(2); combatLooksSwitch->setState(settings->combatLooks()); addUI("combat_looks",combatLooksSwitch); // Switches (small) auto combatMessagesSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::SMALL_SWITCH, backgroundX+299, backgroundY+74); combatMessagesSwitch->setState(settings->combatMessages()); addUI("combat_messages",combatMessagesSwitch); auto combatTauntsSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::SMALL_SWITCH, backgroundX+299, backgroundY+74+66); combatTauntsSwitch->setState(settings->combatTaunts()); addUI("combat_taunts",combatTauntsSwitch); auto languageFilterSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::SMALL_SWITCH, backgroundX+299, backgroundY+74+66*2); languageFilterSwitch->setState(settings->languageFilter()); addUI("language_filter",languageFilterSwitch); auto runningSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::SMALL_SWITCH, backgroundX+299, backgroundY+74+66*3); runningSwitch->setState(settings->running()); addUI("running",runningSwitch); auto subtitlesSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::SMALL_SWITCH, backgroundX+299, backgroundY+74+66*4); subtitlesSwitch->setState(settings->subtitles()); addUI("subtitles",subtitlesSwitch); auto itemHightlightSwitch = new UI::MultistateImageButton(UI::MultistateImageButton::Type::SMALL_SWITCH, backgroundX+299, backgroundY+74+66*5); itemHightlightSwitch->setState(settings->itemHighlight()); addUI("item_highlight",itemHightlightSwitch); // LABELS SDL_Color color = {0x90, 0x78, 0x24, 0xff}; std::string font1_907824ff = "font1.aaf"; std::string font3_907824ff = "font3.aaf"; std::string font4_907824ff = "font4.aaf"; // GAME PREFERENCES _addTextArea(_t(MSG_OPTIONS, 100), backgroundX+74, backgroundY+10)->setFont(font4_907824ff, color); // COMBAT DIFFICULTY auto difficulty = _addTextArea(_t(MSG_OPTIONS, 101), backgroundX+21, backgroundY+48); difficulty->setWidth(158); difficulty->setHorizontalAlign(UI::TextArea::HorizontalAlign::CENTER); difficulty->setFont(font3_907824ff, color); // GAME DIFFICULTY _addTextArea(difficulty, backgroundX+21, backgroundY+48+77)->setText(_t(MSG_OPTIONS, 102)); // VIOLENCE LEVEL _addTextArea(difficulty, backgroundX+21, backgroundY+48+156)->setText(_t(MSG_OPTIONS, 103)); // TARGET HIGHLIGHT _addTextArea(difficulty, backgroundX+21, backgroundY+128+158)->setText(_t(MSG_OPTIONS, 104)); // COMBAT LOOKS _addTextArea(difficulty, backgroundX+21, backgroundY+128+235)->setText(_t(MSG_OPTIONS, 105)); // COMBAT MESSAGES auto combatMessages = _addTextArea(_t(MSG_OPTIONS, 106), backgroundX+206, backgroundY+49); combatMessages->setFont(font3_907824ff, color); // COMBAT TAUNTS _addTextArea(combatMessages, backgroundX+206, backgroundY+49+66)->setText(_t(MSG_OPTIONS, 107)); // LANGUAGE FILTER _addTextArea(combatMessages, backgroundX+206, backgroundY+49+66*2)->setText(_t(MSG_OPTIONS, 108)); // RUNNING _addTextArea(combatMessages, backgroundX+206, backgroundY+49+66*3)->setText(_t(MSG_OPTIONS, 109)); // SUBTITLES _addTextArea(combatMessages, backgroundX+206, backgroundY+49+66*4)->setText(_t(MSG_OPTIONS, 110)); // ITEM HIGHLIGHT _addTextArea(combatMessages, backgroundX+206, backgroundY+49+66*5)->setText(_t(MSG_OPTIONS, 111)); // COMBAT SPEED auto combatSpeed = _addTextArea(_t(MSG_OPTIONS, 112), backgroundX+384, backgroundY+19); combatSpeed->setFont(font3_907824ff, color); // TEXT DELAY _addTextArea(combatSpeed, backgroundX+384, backgroundY+95)->setText(_t(MSG_OPTIONS, 113)); // MASTER AUDIO VOLUME _addTextArea(combatSpeed, backgroundX+384, backgroundY+165)->setText(_t(MSG_OPTIONS, 114)); // MUSIC/MOVIE VOLUME _addTextArea(combatSpeed, backgroundX+384, backgroundY+165+51)->setText(_t(MSG_OPTIONS, 115)); // SOUND EFFECTS VOLUME _addTextArea(combatSpeed, backgroundX+384, backgroundY+165+51*2)->setText(_t(MSG_OPTIONS, 116)); // SPEECH VOLUME _addTextArea(combatSpeed, backgroundX+384, backgroundY+165+51*3)->setText(_t(MSG_OPTIONS, 117)); // BRIGHTNESS LEVEL _addTextArea(combatSpeed, backgroundX+384, backgroundY+165+51*4)->setText(_t(MSG_OPTIONS, 118)); // MOUSE SENSITIVITY _addTextArea(combatSpeed, backgroundX+384, backgroundY+165+51*5)->setText(_t(MSG_OPTIONS, 119)); // DEFAULT BUTTON LABEL auto label = _addTextArea(combatSpeed, backgroundX+43, backgroundY+449); label->setText(_t(MSG_OPTIONS, 120)); label->setFont(font3_907824ff, color); // DONE BUTTON LABEL label = _addTextArea(combatSpeed, backgroundX+169, backgroundY+449); label->setText(_t(MSG_OPTIONS, 300)); label->setFont(font3_907824ff, color); // CANCEL BUTTON LABEL label = _addTextArea(combatSpeed, backgroundX+283, backgroundY+449); label->setText(_t(MSG_OPTIONS, 121)); label->setFont(font3_907824ff, color); // COMBAT DIFFICULTY SWITCH LABELS _addTextArea(_t(MSG_OPTIONS, 203), backgroundX+50, backgroundY+81)->setFont(font1_907824ff, color); // EASY _addTextArea(_t(MSG_OPTIONS, 204), backgroundX+81, backgroundY+67)->setFont(font1_907824ff, color); // NORMAL _addTextArea(_t(MSG_OPTIONS, 205), backgroundX+122, backgroundY+81)->setFont(font1_907824ff, color); // HARD // GAME DIFFICULTY SWITCH LABELS _addTextArea(_t(MSG_OPTIONS, 206), backgroundX+45, backgroundY+159)->setFont(font1_907824ff, color); // WIMPY _addTextArea(_t(MSG_OPTIONS, 207), backgroundX+83, backgroundY+145)->setFont(font1_907824ff, color); // NORMAL _addTextArea(_t(MSG_OPTIONS, 208), backgroundX+122, backgroundY+159)->setFont(font1_907824ff, color); // ROUGH // VIOLENCE LEVEL SWITCH LABELS _addTextArea(_t(MSG_OPTIONS, 214), backgroundX+48, backgroundY+236)->setFont(font1_907824ff, color); // NONE _addTextArea(_t(MSG_OPTIONS, 215), backgroundX+83, backgroundY+222)->setFont(font1_907824ff, color); // MINIMUM _addTextArea(_t(MSG_OPTIONS, 207), backgroundX+122, backgroundY+236)->setFont(font1_907824ff, color); // NORMAL label = _addTextArea(_t(MSG_OPTIONS, 216).insert(8, " "), backgroundX+122, backgroundY+257); label->setFont(font1_907824ff, color); label->setWidth(50); label->setWordWrap(true); // MAXIMUM BLOOD // TARGET HIGHLIGHT SWITCH LABELS _addTextArea(_t(MSG_OPTIONS, 202), backgroundX+59, backgroundY+319)->setFont(font1_907824ff, color); // OFF _addTextArea(_t(MSG_OPTIONS, 201), backgroundX+95, backgroundY+305)->setFont(font1_907824ff, color); // ON label = _addTextArea(_t(MSG_OPTIONS, 213).insert(10, " "), backgroundX+122, backgroundY+319); label->setFont(font1_907824ff, color); label->setWidth(60); label->setWordWrap(true); // TARGETING ONLY // COMBAT LOOKS SWITCH LABELS _addTextArea(_t(MSG_OPTIONS, 202), backgroundX+59, backgroundY+397)->setFont(font1_907824ff, color); // OFF _addTextArea(_t(MSG_OPTIONS, 201), backgroundX+95, backgroundY+383)->setFont(font1_907824ff, color); // ON // COMBAT MESSAGES SWITCH LABELS auto verboseLabel = _addTextArea(_t(MSG_OPTIONS, 211), backgroundX+203, backgroundY+69); // VERBOSE verboseLabel->setFont(font1_907824ff, color); verboseLabel->setHorizontalAlign(UI::TextArea::HorizontalAlign::RIGHT); verboseLabel->setWidth(100); _addTextArea(_t(MSG_OPTIONS, 212), backgroundX+320, backgroundY+69)->setFont(font1_907824ff, color); // BRIEF // COMBAT TAUNTS SWITCH LABELS _addTextArea(verboseLabel, backgroundX+203, backgroundY+69+67)->setText(_t(MSG_OPTIONS, 202)); // OFF _addTextArea(_t(MSG_OPTIONS, 201), backgroundX+320, backgroundY+69+67)->setFont(font1_907824ff, color); // ON // LANGUAGE FILTER SWITCH LABELS _addTextArea(verboseLabel, backgroundX+203, backgroundY+69+67+66)->setText(_t(MSG_OPTIONS, 202)); // OFF _addTextArea(_t(MSG_OPTIONS, 201), backgroundX+320, backgroundY+69+67+66)->setFont(font1_907824ff, color); // ON // RUNNING SWITCH LABELS _addTextArea(verboseLabel, backgroundX+203, backgroundY+69+67+66+64)->setText(_t(MSG_OPTIONS, 209)); // NORMAL _addTextArea(_t(MSG_OPTIONS, 219), backgroundX+320, backgroundY+69+67+66+64)->setFont(font1_907824ff, color); // ALWAYS // SUBTITLES SWITCH LABELS _addTextArea(verboseLabel, backgroundX+203, backgroundY+69+67+66+66+65)->setText(_t(MSG_OPTIONS, 202)); // OFF _addTextArea(_t(MSG_OPTIONS, 201), backgroundX+320, backgroundY+69+66+67+66+65)->setFont(font1_907824ff, color); // OFF // ITEM HIGHLIGHT SWITCH LABELS _addTextArea(verboseLabel, backgroundX+203, backgroundY+69+67+66+64+65+68)->setText(_t(MSG_OPTIONS, 202)); // OFF _addTextArea(_t(MSG_OPTIONS, 201), backgroundX+320, backgroundY+69+64+67+66+65+68)->setFont(font1_907824ff, color); // ON // AFFECT PLAYER SPEECH _addTextArea(_t(MSG_OPTIONS, 122), backgroundX+405, backgroundY+72)->setFont(font1_907824ff, color); // COMBAT SPEED SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+384, backgroundY+38)->setFont(font1_907824ff, color); // NORMAL auto fastestLabel = _addTextArea(_t(MSG_OPTIONS, 210), backgroundX+524, backgroundY+38); // FASTEST fastestLabel->setFont(font1_907824ff, color); fastestLabel->setHorizontalAlign(UI::TextArea::HorizontalAlign::RIGHT); fastestLabel->setWidth(100); // TEXT DELAY SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 217), backgroundX+384, backgroundY+113)->setFont(font1_907824ff, color); // SLOW _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+484, backgroundY+113)->setFont(font1_907824ff, color); // NORMAL _addTextArea(fastestLabel, backgroundX+524, backgroundY+113)->setText(_t(MSG_OPTIONS, 218)); // FASTER // MASTER AUDIO VOLUME SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 202), backgroundX+384, backgroundY+184)->setFont(font1_907824ff, color); // OFF _addTextArea(_t(MSG_OPTIONS, 221), backgroundX+452, backgroundY+184)->setFont(font1_907824ff, color); // QUIET _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+521, backgroundY+184)->setFont(font1_907824ff, color); // NORMAL _addTextArea(fastestLabel, backgroundX+524, backgroundY+184)->setText(_t(MSG_OPTIONS, 222)); // LOUD // MUSIC/MOVIE VOLUME SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 202), backgroundX+384, backgroundY+184+51)->setFont(font1_907824ff, color); // OFF _addTextArea(_t(MSG_OPTIONS, 221), backgroundX+452, backgroundY+184+51)->setFont(font1_907824ff, color); // QUIET _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+521, backgroundY+184+51)->setFont(font1_907824ff, color); // NORMAL _addTextArea(fastestLabel, backgroundX+524, backgroundY+184+51)->setText(_t(MSG_OPTIONS, 222)); // LOUD // SOUND EFFECTS SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 202), backgroundX+384, backgroundY+184+51*2)->setFont(font1_907824ff, color);// OFF _addTextArea(_t(MSG_OPTIONS, 221), backgroundX+452, backgroundY+184+51*2)->setFont(font1_907824ff, color);// QUIET _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+521, backgroundY+184+51*2)->setFont(font1_907824ff, color);// NORMAL _addTextArea(fastestLabel, backgroundX+524, backgroundY+184+51*2)->setText(_t(MSG_OPTIONS, 222)); // LOUD // SPEECH VOLUME SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 202), backgroundX+384, backgroundY+184+51*3)->setFont(font1_907824ff, color);// OFF _addTextArea(_t(MSG_OPTIONS, 221), backgroundX+452, backgroundY+184+51*3)->setFont(font1_907824ff, color);// QUIET _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+521, backgroundY+184+51*3)->setFont(font1_907824ff, color);// NORMAL _addTextArea(fastestLabel, backgroundX+524, backgroundY+184+51*3)->setText(_t(MSG_OPTIONS, 222)); // LOUD // BRIGHTNESS LEVEL SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+384, backgroundY+184+51*4)->setFont(font1_907824ff, color);// NORMAL _addTextArea(fastestLabel, backgroundX+524, backgroundY+184+51*4)->setText(_t(MSG_OPTIONS, 223)); // BRIGHTER // MOUSE SENSITIVITY SLIDER LABELS _addTextArea(_t(MSG_OPTIONS, 209), backgroundX+384, backgroundY+184+51*5)->setFont(font1_907824ff, color);// NORMAL _addTextArea(fastestLabel, backgroundX+524, backgroundY+184+51*5)->setText(_t(MSG_OPTIONS, 218)); // FASTER // BUTTONS // button: Default auto defaultButton = new UI::ImageButton(UI::ImageButton::Type::SMALL_RED_CIRCLE, backgroundX+23, backgroundY+450); defaultButton->mouseClickHandler().add(std::bind(&SettingsMenu::onDefaultButtonClick, this, std::placeholders::_1)); addUI(defaultButton); // button: Done auto doneButton = new UI::ImageButton(UI::ImageButton::Type::SMALL_RED_CIRCLE, backgroundX+148, backgroundY+450); doneButton->mouseClickHandler().add([this](Event::Event* event){ this->doSave(); }); addUI(doneButton); // button: Cancel auto cancelButton = new UI::ImageButton(UI::ImageButton::Type::SMALL_RED_CIRCLE, backgroundX+263, backgroundY+450); cancelButton->mouseClickHandler().add([this](Event::Event* event){ this->doCancel(); }); addUI(cancelButton); // button: Affect player speed auto affectPlayerSpeedCheckBox = new UI::ImageButton(UI::ImageButton::Type::CHECKBOX, backgroundX+383, backgroundY+68); affectPlayerSpeedCheckBox->setChecked(settings->playerSpeedup()); addUI("player_speedup", affectPlayerSpeedCheckBox); // SLIDERS // COMBAT SPEED SLIDER auto combatSpeedSlider = new UI::Slider(backgroundX+384, backgroundY+50); combatSpeedSlider->setMinValue(0.0); combatSpeedSlider->setMaxValue(50.0); combatSpeedSlider->setValue(settings->combatSpeed()); addUI("combat_speed",combatSpeedSlider); // TEXT DELAY SLIDER auto textDelaySlider = new UI::Slider(backgroundX+384, backgroundY+125); textDelaySlider->setValue(settings->textDelay()); addUI("text_delay",textDelaySlider); // MASTER AUDIO VOLUME SLIDER auto masterAudioVolumeSlider = new UI::Slider(backgroundX+384, backgroundY+196); masterAudioVolumeSlider->setValue(settings->masterVolume()); addUI("master_volume", masterAudioVolumeSlider); // MUSIC VOLUME SLIDER auto musicVolumeSlider = new UI::Slider(backgroundX+384, backgroundY+196+51); musicVolumeSlider->setValue(settings->musicVolume()); addUI("music_volume", musicVolumeSlider); musicVolumeSlider->changeHandler().add([=](Event::Event* evt) { Game::getInstance()->mixer()->setMusicVolume(musicVolumeSlider->value()); }); // SOUND EFFECTS VOLUME SLIDER auto soundEffectsVolumeSlider = new UI::Slider(backgroundX+384, backgroundY+196+51*2); soundEffectsVolumeSlider->setValue(settings->sfxVolume()); addUI("sfx_volume", soundEffectsVolumeSlider); // SPEECH VOLUME SLIDER auto speechVolumeSlider = new UI::Slider(backgroundX+384, backgroundY+196+51*3); speechVolumeSlider->setValue(settings->voiceVolume()); addUI("voice_volume", speechVolumeSlider); // BRIGHTNESS LEVEL SLIDER auto brightnessLevelSlider = new UI::Slider(backgroundX+384, backgroundY+196+51*4); brightnessLevelSlider->setValue(settings->brightness()); addUI("brightness", brightnessLevelSlider); // MOUSE SENSITIVITY SLIDER auto mouseSensitivitySlider = new UI::Slider(backgroundX+384, backgroundY+196+51*5); mouseSensitivitySlider->setValue(settings->mouseSensitivity()); addUI("mouse_sensitivity",mouseSensitivitySlider); }