12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #include "LanguageSwitchWnd.h"
- #include "ui_LanguageSwitchWnd.h"
- LanguageSwitchWnd::LanguageSwitchWnd(QWidget *parent)
- : QDialog(parent)
- , ui(new Ui::LanguageSwitchWnd)
- {
- ui->setupUi(this);
- if (gen_if.getLanguageValue() == 0)
- {
- ui->englishRadioButton->setChecked(true);
- }
- else
- {
- ui->chRadioButton->setChecked(true);
- }
- if (gen_if.getThemeValue() == 0)
- {
- ui->lightRadioButton->setChecked(true);
- }
- else
- {
- ui->darkRadioButton->setChecked(true);
- }
- connect(ui->englishRadioButton, &QRadioButton::toggled, this, [this](bool checked) {
- if (checked)
- emit languageChanged("en");
- });
- connect(ui->chRadioButton, &QRadioButton::toggled, this, [this](bool checked) {
- if (checked)
- emit languageChanged("zh_CN");
- });
- connect(ui->lightRadioButton, &QRadioButton::toggled, this, [this](bool checked) {
- if (checked) {
- QString qssFileName = ":/light.qss";
- QFile qssFile(qssFileName);
- if (qssFile.open(QFile::ReadOnly)) {
- QString qssContent = qssFile.readAll();
- qApp->setStyleSheet(qssContent);
- qssFile.close();
- }
- gen_if.setThemeValue(0);
- QSettings settings("YourCompany", "YourApplication_style");
- settings.setValue("Flag_Style", 0);
- }
- });
- connect(ui->darkRadioButton, &QRadioButton::toggled, this, [this](bool checked) {
- if (checked) {
- QString qssFileName = ":/dark.qss";
- QFile qssFile(qssFileName);
- if (qssFile.open(QFile::ReadOnly)) {
- QString qssContent = qssFile.readAll();
- qApp->setStyleSheet(qssContent);
- qssFile.close();
- }
- QSettings settings("YourCompany", "YourApplication_style");
- settings.setValue("Flag_Style", 1);
- gen_if.setThemeValue(1);
- }
- });
- }
- LanguageSwitchWnd::~LanguageSwitchWnd()
- {
- delete ui;
- }
- void LanguageSwitchWnd::changeEvent(QEvent* event)
- {
- if (event->type() == QEvent::LanguageChange) {
- ui->retranslateUi(this);
- }
- }
|