void TranslationInterface::translate() { if (m_srcText.isEmpty()) { emit error(tr("Please, enter the source text")); return; } resetTranslation(); #ifdef WITH_ANALYTICS if (m_privacyLevel == NoPrivacy) { QVariantMap props; fillTranslationProperties(props); m_analytics->trackEvent("Translation", props); } #endif if (!m_service->translate(m_sourceLanguage->language(), m_targetLanguage->language(), m_srcText)) { emit error(m_service->errorString()); return; } setBusy(true); }
void TranslationInterface::selectSourceLanguage(int index) { const Language lang = m_sourceLanguages->get(index); if (m_sourceLanguage && m_sourceLanguage->language() == lang) return; resetTranslation(); delete m_sourceLanguage; m_sourceLanguage = new LanguageItem(lang, index); m_settings->beginGroup(m_service->uid() + "/SourceLanguage"); m_settings->setValue("Info", m_service->serializeLanguageInfo(lang.info)); m_settings->endGroup(); emit sourceLanguageChanged(); if (m_service->targetLanguagesDependOnSourceLanguage()) { m_targetLanguages->setLanguageList(m_service->targetLanguages(lang)); if (!m_service->targetLanguages(lang).contains(m_targetLanguage->language())) { const int i = m_service->targetLanguages(lang).indexOf(m_service->defaultLanguagePair() .second); selectTargetLanguage(i < 0 ? 0 : i); } else { m_targetLanguage->setIndex(m_targetLanguages->indexOf(m_targetLanguage->language())); emit targetLanguageChanged(); } } }
void TranslationInterface::setSourceText(const QString &sourceText) { if (m_srcText == sourceText) return; resetTranslation(); m_srcText = sourceText; emit sourceTextChanged(); }
void TranslationInterface::swapLanguages() { const Language oldsrc = m_service->isAutoLanguage(m_sourceLanguage->language()) ? m_detectedLanguage : m_sourceLanguage->language(); resetTranslation(); selectSourceLanguage(m_sourceLanguages->indexOf(m_targetLanguage->language())); selectTargetLanguage(m_targetLanguages->indexOf(oldsrc)); }
void ViewerState::valueUpdate(ComboBox& comboBox, const std::string& selectedValue) { if (comboBox == "modelCombo") { p_modelViewer->loadModel(selectedValue); resetTranslation(); p_textureCombo->setSelected("Untextured"); // Set optimal settings if (selectedValue == "Teapot") { p_toggleClockwise->setTicked(true); p_scaleAll->setIndex(10); p_transZ->setIndex(25); } else if (selectedValue == "Cube") { p_toggleClockwise->setTicked(false); p_scaleAll->setIndex(100); p_transZ->setIndex(75); } else if (selectedValue == "Cone") { p_toggleClockwise->setTicked(false); p_scaleAll->setIndex(100); p_transZ->setIndex(75); p_textureCombo->setSelected("Cone"); } else if (selectedValue == "Teddy") { p_toggleClockwise->setTicked(false); p_transZ->setIndex(25); } else if (selectedValue == "Crate") { p_toggleClockwise->setTicked(true); p_transZ->setIndex(25); p_textureCombo->setSelected("Crate"); } else if (selectedValue == "TARDIS") { p_toggleClockwise->setTicked(false); p_transZ->setIndex(60); } else if (selectedValue == "Death star") { p_toggleClockwise->setTicked(false); p_transZ->setIndex(60); } } else { if (selectedValue == "Untextured") { p_modelViewer->setTexture(""); } else { p_modelViewer->setTexture(selectedValue); } } }
void TranslationInterface::selectTargetLanguage(int index) { const Language lang = m_targetLanguages->get(index); if (m_targetLanguage && m_targetLanguage->language() == lang) return; resetTranslation(); delete m_targetLanguage; m_targetLanguage = new LanguageItem(lang, index); m_settings->beginGroup(m_service->uid() + "/TargetLanguage"); m_settings->setValue("Info", m_service->serializeLanguageInfo(lang.info)); m_settings->endGroup(); emit targetLanguageChanged(); }
KinematicMotion::KinematicMotion() { translationVector = new double[3]; resetTranslation(); rotationMatrix = new double[9]; resetRotation(); }
//-------------------------------------------------- void Skybox::render(bool activateShaders) { Shader::disable(); //configuration: float skySize = 30000.0f; float sunOrbit = 28000.0f; float orbitBias = 0.05f; float orbitRotation = 0.1f; int numberOfStars = 1000; //Rotate the sun ---------------------------------------- Vector3f sunPosition = Vector3f(sunOrbit, 0.0f, 0.0f); Matrix3f m3 = Matrix3f::createRotationAroundAxis(0.0f, orbitRotation * 2.0f * (float)M_PI, 0.0f); Matrix3f m1 = Matrix3f::createRotationAroundAxis(0.0f, 0.0f, dayTime * 2.0f * (float)M_PI); Matrix3f m2 = Matrix3f::createRotationAroundAxis(orbitBias * 2.0f * (float)M_PI, 0.0f, 0.0f); sunPosition = m1 * sunPosition; sunPosition = m2 * sunPosition; sunPosition = m3 * sunPosition; //direction: sunDirection = sunPosition; sunDirection.normalize(); //sky colors: Vector4f blue = Vector4f(0.2f, 0.4f, 0.8f, 1.0f); Vector4f white = Vector4f(0.52f, 0.63f, 0.87f, 1.0f); Vector4f orange = Vector4f(0.75f, 0.35f, 0.0f, 1.0f); Vector4f red = Vector4f(0.85f, 0.15f, 0.0f, 1.0f); Vector4f black = Vector4f(0.0f, 0.0f, 0.0f, 0.0f); //mix sky colors: Vector4f color1 = Vector4f(0.0f, 0.0f, 0.0f, 0.0f); Vector4f color2 = Vector4f(0.0f, 0.0f, 0.0f, 0.0f); float d = sunDirection.y; if (d >= 0.3f) { color1 = blue; color2 = white; } else { if (d >= 0.2f) { color1 = blue * (d - 0.2f) * 10.0f + orange * (1 - (d - 0.2f) * 10.0f); color2 = white * (d - 0.2f) * 10.0f + red * (1 - (d - 0.2f) * 10.0f); } else { color1 = orange * d * 5.0f + black * (1 - d * 5.0f); color2 = red * d * 5.0f + black * (1 - d * 5.0f); } } //weapon (this is an easter egg) /*glPushMatrix(); glLoadIdentity(); glRotatef(20.0, 0, 0, 1); glRotatef(-20.0, 1, 0, 0); glTranslatef(20.0, 10.0, -50.0); weapon->showS(); glPopMatrix();*/ //draw everything ------------------------------------------ glPushMatrix(); glPushAttrib(GL_ENABLE_BIT); glDisable(GL_LIGHTING); glDisable(GL_TEXTURE_2D); glEnable(GL_POINT_SMOOTH); resetTranslation(); drawStars(numberOfStars); drawSky(skySize, color1, color2); drawSun(sunPosition); //restore matrix and attributes glPopAttrib(); glPopMatrix(); Shader::useDefaultShader(); }