Add localized labels and buttons for chat input fields in multiple languages, enhancing user interface accessibility and internationalization support.

This commit is contained in:
Torsten Schulz (local)
2025-11-16 13:47:46 +01:00
parent f98288e8c0
commit 4abc966fc0
12 changed files with 170 additions and 5 deletions

View File

@@ -255,7 +255,7 @@ void App::createLoginContainer() {
}
Wt::WLineEdit *App::addUsernameInput(Wt::WGridLayout* contentGrid) {
contentGrid->addWidget(std::make_unique<Wt::WText>("Please type in your nick for the chat: "), 0, 0);
contentGrid->addWidget(std::make_unique<Wt::WText>(Wt::WString::tr("label_nick")), 0, 0);
auto userName = contentGrid->addWidget(std::make_unique<Wt::WLineEdit>(), 0, 1);
userName->setTextSize(20);
userName->setMaxLength(30);
@@ -263,14 +263,14 @@ Wt::WLineEdit *App::addUsernameInput(Wt::WGridLayout* contentGrid) {
}
Wt::WComboBox *App::addGenderSelection(Wt::WGridLayout* contentGrid) {
contentGrid->addWidget(std::make_unique<Wt::WText>("Gender: "), 1, 0);
contentGrid->addWidget(std::make_unique<Wt::WText>(Wt::WString::tr("label_gender")), 1, 0);
auto genderWidget = contentGrid->addWidget(std::make_unique<Wt::WComboBox>(), 1, 1);
populateGenderComboBox(genderWidget);
return genderWidget;
}
Wt::WSpinBox *App::addAgeInput(Wt::WGridLayout* contentGrid) {
contentGrid->addWidget(std::make_unique<Wt::WText>("Age: "), 2, 0);
contentGrid->addWidget(std::make_unique<Wt::WText>(Wt::WString::tr("label_age")), 2, 0);
auto ageWidget = contentGrid->addWidget(std::make_unique<Wt::WSpinBox>(), 2, 1);
ageWidget->setRange(18, 150);
ageWidget->setValue(18);
@@ -278,14 +278,14 @@ Wt::WSpinBox *App::addAgeInput(Wt::WGridLayout* contentGrid) {
}
Wt::WComboBox *App::addCountrySelection(Wt::WGridLayout* contentGrid) {
contentGrid->addWidget(std::make_unique<Wt::WText>("Country: "), 3, 0);
contentGrid->addWidget(std::make_unique<Wt::WText>(Wt::WString::tr("label_country")), 3, 0);
auto countryWidget = contentGrid->addWidget(std::make_unique<Wt::WComboBox>(), 3, 1);
populateCountryComboBox(countryWidget);
return countryWidget;
}
void App::addStartChatButton(Wt::WGridLayout* contentGrid, Wt::WLineEdit *userName, Wt::WComboBox *country, Wt::WSpinBox *age, Wt::WComboBox *gender) {
auto doLogin = contentGrid->addWidget(std::make_unique<Wt::WPushButton>("Start chat"), 4, 1);
auto doLogin = contentGrid->addWidget(std::make_unique<Wt::WPushButton>(Wt::WString::tr("button_start_chat")), 4, 1);
doLogin->clicked().connect([=, this]() {
handleLogin(userName, country, age, gender);
});