diff --git a/QuteSample/QuteSample.pro b/QuteSample/QuteSample.pro new file mode 100644 index 0000000..fae4d74 --- /dev/null +++ b/QuteSample/QuteSample.pro @@ -0,0 +1,32 @@ +QT += core gui + +greaterThan(QT_MAJOR_VERSION, 4): QT += widgets + +CONFIG += c++11 + +# You can make your code fail to compile if it uses deprecated APIs. +# In order to do so, uncomment the following line. +#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 + +SOURCES += \ + main.cpp \ + mainwindow.cpp + +HEADERS += \ + mainwindow.h + +FORMS += \ + mainwindow.ui + +TRANSLATIONS += \ + QuteSample_ru_RU.ts +CONFIG += lrelease +CONFIG += embed_translations + +# Default rules for deployment. +qnx: target.path = /tmp/$${TARGET}/bin +else: unix:!android: target.path = /opt/$${TARGET}/bin +!isEmpty(target.path): INSTALLS += target + +RESOURCES += \ + pictures.qrc diff --git a/QuteSample/QuteSample.pro.user b/QuteSample/QuteSample.pro.user new file mode 100644 index 0000000..fa7b61a --- /dev/null +++ b/QuteSample/QuteSample.pro.user @@ -0,0 +1,1266 @@ + + + + + + EnvironmentId + {eb92b81b-2e24-41d5-ac43-4f156bf8444c} + + + ProjectExplorer.Project.ActiveTarget + 2 + + + ProjectExplorer.Project.EditorSettings + + true + false + true + + Cpp + + CppGlobal + + + + QmlJS + + QmlJSGlobal + + + 2 + UTF-8 + false + 4 + false + 80 + true + true + 1 + false + true + false + 0 + true + true + 2 + 8 + true + false + 1 + true + true + true + *.md, *.MD, Makefile + false + true + + + + ProjectExplorer.Project.PluginSettings + + + true + false + true + true + true + true + + + 0 + true + + true + Builtin.BuildSystem + + true + true + Builtin.DefaultTidyAndClazy + 6 + + + + true + + + + + ProjectExplorer.Project.Target.0 + + Desktop + Desktop Qt 6.2.3 GCC 64bit + Desktop Qt 6.2.3 GCC 64bit + qt.qt6.623.gcc_64_kit + 1 + 0 + 0 + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Desktop_Qt_6_2_3_GCC_64bit-Debug + /home/darkcat09/qtcreate/build-QuteSample-Desktop_Qt_6_2_3_GCC_64bit-Debug + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + 2 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Отладка + Qt4ProjectManager.Qt4BuildConfiguration + 2 + + + /home/darkcat09/qtcreate/build-QuteSample-Desktop_Qt_6_2_3_GCC_64bit-Release + /home/darkcat09/qtcreate/build-QuteSample-Desktop_Qt_6_2_3_GCC_64bit-Release + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + 2 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Выпуск + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Desktop_Qt_6_2_3_GCC_64bit-Profile + /home/darkcat09/qtcreate/build-QuteSample-Desktop_Qt_6_2_3_GCC_64bit-Profile + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + 2 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Профилирование + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + 0 + + 3 + + + 0 + Развёртывание + Развёртывание + ProjectExplorer.BuildSteps.Deploy + + 1 + + false + ProjectExplorer.DefaultDeployConfiguration + + 1 + + true + true + true + + 2 + + Qt4ProjectManager.Qt4RunConfiguration:/home/darkcat09/qtcreate/QuteSample/QuteSample.pro + /home/darkcat09/qtcreate/QuteSample/QuteSample.pro + false + true + true + false + true + /home/darkcat09/qtcreate/build-QuteSample-Desktop_Qt_6_2_3_GCC_64bit-Release + + 1 + + + + ProjectExplorer.Project.Target.1 + + Android.Device.Type + Android Qt 6.2.3 Clang armeabi-v7a + Android Qt 6.2.3 Clang armeabi-v7a + {286d0b77-7ea3-4212-9a6a-24e71c1ffa26} + 1 + 0 + 0 + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_armeabi_v7a-Debug + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_armeabi_v7a-Debug + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Отладка + Qt4ProjectManager.Qt4BuildConfiguration + 2 + + + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_armeabi_v7a-Release + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_armeabi_v7a-Release + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Выпуск + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_armeabi_v7a-Profile + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_armeabi_v7a-Profile + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Профилирование + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + 0 + + 3 + + + + true + Qt4ProjectManager.AndroidDeployQtStep + + 1 + Развёртывание + Развёртывание + ProjectExplorer.BuildSteps.Deploy + + 1 + + false + Qt4ProjectManager.AndroidDeployConfiguration2 + + 1 + + true + true + true + + + + + + + + 0 + + Qt4ProjectManager.AndroidRunConfiguration:/home/darkcat09/qtcreate/QuteSample/QuteSample.pro + /home/darkcat09/qtcreate/QuteSample/QuteSample.pro + false + true + false + true + + 1 + + + + ProjectExplorer.Project.Target.2 + + Desktop + Desktop + Desktop + {56a79544-5a55-4453-b6e7-91f16fe1780b} + 1 + 0 + 0 + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Desktop-Debug + /home/darkcat09/qtcreate/build-QuteSample-Desktop-Debug + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + 2 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Отладка + Qt4ProjectManager.Qt4BuildConfiguration + 2 + + + /home/darkcat09/qtcreate/build-QuteSample-Desktop-Release + /home/darkcat09/qtcreate/build-QuteSample-Desktop-Release + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + 2 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Выпуск + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Desktop-Profile + /home/darkcat09/qtcreate/build-QuteSample-Desktop-Profile + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + 2 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Профилирование + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + 0 + + 3 + + + 0 + Развёртывание + Развёртывание + ProjectExplorer.BuildSteps.Deploy + + 1 + + false + ProjectExplorer.DefaultDeployConfiguration + + 1 + + true + true + true + + 2 + + Qt4ProjectManager.Qt4RunConfiguration:/home/darkcat09/qtcreate/QuteSample/QuteSample.pro + /home/darkcat09/qtcreate/QuteSample/QuteSample.pro + false + true + true + false + true + /home/darkcat09/qtcreate/build-QuteSample-Desktop-Release + + 1 + + + + ProjectExplorer.Project.Target.3 + + Android.Device.Type + Android Qt 6.2.3 Clang arm64-v8a + Android Qt 6.2.3 Clang arm64-v8a + {61cd91b1-bcbe-4e8f-adb6-7393f8100772} + 0 + 0 + 0 + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_arm64_v8a-Debug + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_arm64_v8a-Debug + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Отладка + Qt4ProjectManager.Qt4BuildConfiguration + 2 + + + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_arm64_v8a-Release + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_arm64_v8a-Release + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Выпуск + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_arm64_v8a-Profile + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_arm64_v8a-Profile + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Профилирование + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + 0 + + 3 + + + + true + Qt4ProjectManager.AndroidDeployQtStep + + 1 + Развёртывание + Развёртывание + ProjectExplorer.BuildSteps.Deploy + + 1 + + false + Qt4ProjectManager.AndroidDeployConfiguration2 + + 1 + + true + true + true + + + + + + + + 0 + + Qt4ProjectManager.AndroidRunConfiguration:/home/darkcat09/qtcreate/QuteSample/QuteSample.pro + /home/darkcat09/qtcreate/QuteSample/QuteSample.pro + false + true + false + true + + 1 + + + + ProjectExplorer.Project.Target.4 + + Android.Device.Type + Android Qt 6.2.3 Clang x86 + Android Qt 6.2.3 Clang x86 + {2b07850f-b871-4774-b2c8-30a495a4abdc} + 0 + 0 + 0 + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86-Debug + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86-Debug + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Отладка + Qt4ProjectManager.Qt4BuildConfiguration + 2 + + + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86-Release + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86-Release + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Выпуск + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86-Profile + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86-Profile + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Профилирование + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + 0 + + 3 + + + + true + Qt4ProjectManager.AndroidDeployQtStep + + 1 + Развёртывание + Развёртывание + ProjectExplorer.BuildSteps.Deploy + + 1 + + false + Qt4ProjectManager.AndroidDeployConfiguration2 + + 1 + + true + true + true + + 2 + + ProjectExplorer.CustomExecutableRunConfiguration + + false + true + false + true + + 1 + + + + ProjectExplorer.Project.Target.5 + + Android.Device.Type + Android Qt 6.2.3 Clang x86_64 + Android Qt 6.2.3 Clang x86_64 + {6a6e3034-7a1d-4f21-b208-f43d2fc2feef} + 0 + 0 + 0 + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86_64-Debug + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86_64-Debug + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Отладка + Qt4ProjectManager.Qt4BuildConfiguration + 2 + + + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86_64-Release + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86_64-Release + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Выпуск + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + + + 0 + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86_64-Profile + /home/darkcat09/qtcreate/build-QuteSample-Android_Qt_6_2_3_Clang_x86_64-Profile + + + true + QtProjectManager.QMakeBuildStep + false + + + + true + Qt4ProjectManager.MakeStep + + + true + Копирование данных приложения + Qt4ProjectManager.AndroidPackageInstallationStep + + + android-32 + + true + Build Android APK + QmakeProjectManager.AndroidBuildApkStep + false + + 4 + Сборка + Сборка + ProjectExplorer.BuildSteps.Build + + + + true + Qt4ProjectManager.MakeStep + clean + + 1 + Очистка + Очистка + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Профилирование + Qt4ProjectManager.Qt4BuildConfiguration + 0 + 0 + 0 + + 3 + + + + true + Qt4ProjectManager.AndroidDeployQtStep + + 1 + Развёртывание + Развёртывание + ProjectExplorer.BuildSteps.Deploy + + 1 + + false + Qt4ProjectManager.AndroidDeployConfiguration2 + + 1 + + true + true + true + + 2 + + ProjectExplorer.CustomExecutableRunConfiguration + + false + true + false + true + + 1 + + + + ProjectExplorer.Project.TargetCount + 6 + + + ProjectExplorer.Project.Updater.FileVersion + 22 + + + Version + 22 + + diff --git a/QuteSample/QuteSample_ru_RU.qm b/QuteSample/QuteSample_ru_RU.qm new file mode 100644 index 0000000..9760c9d Binary files /dev/null and b/QuteSample/QuteSample_ru_RU.qm differ diff --git a/QuteSample/QuteSample_ru_RU.ts b/QuteSample/QuteSample_ru_RU.ts new file mode 100644 index 0000000..1766ebd --- /dev/null +++ b/QuteSample/QuteSample_ru_RU.ts @@ -0,0 +1,115 @@ + + + + + MainWindow + + + MainWindow + Окошечко + + + + Name + Имя + + + + Birthday: + Дата рождения: + + + + I'm a developer + Я - разработчик + + + + Start + Старт + + + + Wait: %p% + Ждите: %p% + Ждите: %p% + + + + Text result + Текст + + + + + TextLabel + + + + + Picture + Картинка + + + + File + Файл + + + + Options + Опции + + + + About + Справка + + + + Choose a config + Выбрать конфиг + + + + Exit + Выход + + + + Ctrl+Q + + + + + Application + Приложение + + + + Developer's GitHub + GitHub разработчика + + + + Random Picture + Случайная картинка + + + + Hello %1! + Привет, %1! + + + + Your next birthday is on: %2 + NextBirthday + Следующий др: %2 + + + + Just debug + Просто отладка + + + diff --git a/QuteSample/main.cpp b/QuteSample/main.cpp new file mode 100644 index 0000000..b5e950d --- /dev/null +++ b/QuteSample/main.cpp @@ -0,0 +1,23 @@ +#include "mainwindow.h" + +#include +#include +#include + +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); + + QTranslator translator; + const QStringList uiLanguages = QLocale::system().uiLanguages(); + for (const QString &locale : uiLanguages) { + const QString baseName = "QuteSample_" + QLocale(locale).name(); + if (translator.load(":/i18n/" + baseName)) { + app.installTranslator(&translator); + break; + } + } + MainWindow win; + win.show(); + return app.exec(); +} diff --git a/QuteSample/mainwindow.cpp b/QuteSample/mainwindow.cpp new file mode 100644 index 0000000..a1258b1 --- /dev/null +++ b/QuteSample/mainwindow.cpp @@ -0,0 +1,98 @@ +#include +#include +#include "QRandomGenerator" +#include "QDesktopServices" +#include "mainwindow.h" +#include "ui_mainwindow.h" + +MainWindow::MainWindow(QWidget *parent) + : QMainWindow(parent) + , ui(new Ui::MainWindow) +{ + ui->setupUi(this); +} + +MainWindow::~MainWindow() +{ + delete ui; +} + +void MainWindow::on_plainTextEdit_2_textChanged() +{ + // +} + + +void MainWindow::on_pushButton_clicked() +{ + std::thread t1([&]() + { + ui->progressBar->setValue(25); + std::this_thread::sleep_for(std::chrono::milliseconds(500)); + ui->progressBar->setValue(50); + std::this_thread::sleep_for(std::chrono::milliseconds(500)); + ui->progressBar->setValue(75); + std::this_thread::sleep_for(std::chrono::milliseconds(500)); + ui->progressBar->setValue(100); + }); + std::thread t2([&]() + { + // read + QString name = ui->plainTextEdit_2->toPlainText(); + QDate birth = ui->dateEdit_2->date(); + + // compute + QDate next = QDate::currentDate(); + next.setDate(next.year(), birth.month(), birth.day()); + + // strings + QString hello = tr("Hello %1!").arg(name); + QString nextb = tr("Your next birthday is on: %2").arg(next.toString()); + + // check if there are my data + bool namedev = (name.contains("Andre") or name.contains("Андрей")); + bool datedev = (birth.year() == 2009 and + birth.month() == 7 and + birth.day() == 13); + if (namedev and datedev) + ui->checkBox_2->setEnabled(true); + + // print + ui->label_greeting->setText(hello); + ui->label_birthday->setText(nextb); + ui->lcdNumber->display(next.year() - birth.year()); + + // picture + if (ui->actionRandom_Picture->isChecked()) + { + int randpic = -1; + if (!ui->checkBox_2->isChecked()) + { + QRandomGenerator gen(random()); + randpic = gen.bounded(1, 6); + } + QString tmpl = ":/prefix/pics/%1.jpg"; + QString file = tmpl.arg(randpic); + QPixmap pixmap(file); + ui->label_image->setPixmap(pixmap.scaled( + ui->label_image->width(), + ui->label_image->height(), + Qt::KeepAspectRatio + ) + ); + } + }); + t1.join(); + t2.join(); +} + +void MainWindow::on_actionExit_triggered() +{ + QApplication::exit(0); +} + +void MainWindow::on_actionDeveloper_s_GitHub_triggered() +{ + QDesktopServices::openUrl(QUrl("https://github.com/DarkCat09")); +} + diff --git a/QuteSample/mainwindow.h b/QuteSample/mainwindow.h new file mode 100644 index 0000000..a29df98 --- /dev/null +++ b/QuteSample/mainwindow.h @@ -0,0 +1,30 @@ +#ifndef MAINWINDOW_H +#define MAINWINDOW_H + +#include + +QT_BEGIN_NAMESPACE +namespace Ui { class MainWindow; } +QT_END_NAMESPACE + +class MainWindow : public QMainWindow +{ + Q_OBJECT + +public: + MainWindow(QWidget *parent = nullptr); + ~MainWindow(); + +private slots: + void on_plainTextEdit_2_textChanged(); + + void on_pushButton_clicked(); + + void on_actionExit_triggered(); + + void on_actionDeveloper_s_GitHub_triggered(); + +private: + Ui::MainWindow *ui; +}; +#endif // MAINWINDOW_H diff --git a/QuteSample/mainwindow.ui b/QuteSample/mainwindow.ui new file mode 100644 index 0000000..ef5ca90 --- /dev/null +++ b/QuteSample/mainwindow.ui @@ -0,0 +1,300 @@ + + + MainWindow + + + + 0 + 0 + 626 + 451 + + + + MainWindow + + + + + + 9 + 9 + 611 + 411 + + + + + + + + 0 + 50 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + 10 + 0 + 572 + 51 + + + + + 15 + + + + + + 16777215 + 30 + + + + Name + + + + + + + + 16777215 + 30 + + + + Birthday: + + + + + + + + 16777215 + 30 + + + + + + + + false + + + + 16777215 + 30 + + + + I'm a developer + + + + + + + + + + + + 0 + 30 + + + + Start + + + + + + + + 0 + 30 + + + + 0 + + + Wait: %p% + + + + + + + 1 + + + + Text result + + + + + 10 + 10 + 561 + 73 + + + + + + + TextLabel + + + Qt::PlainText + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + true + + + + + + + TextLabel + + + + + + + + 0 + 25 + + + + + 60 + 16777215 + + + + 3 + + + QLCDNumber::Flat + + + + + + + + + Picture + + + + + 10 + 10 + 321 + 241 + + + + + + + + + + + + + + + + 0 + 0 + 626 + 22 + + + + + File + + + + + + + + Options + + + + + + About + + + + + + + + + + + Choose a config + + + + + Exit + + + Ctrl+Q + + + + + Application + + + + + Developer's GitHub + + + + + true + + + true + + + Random Picture + + + + + + diff --git a/QuteSample/mythread.cpp b/QuteSample/mythread.cpp new file mode 100644 index 0000000..8071bd7 --- /dev/null +++ b/QuteSample/mythread.cpp @@ -0,0 +1,11 @@ +#include "mythread.h" + +MyThread::MyThread() + : name(threadName) +{ +} + +void MyThread::run() +{ + // +} diff --git a/QuteSample/mythread.h b/QuteSample/mythread.h new file mode 100644 index 0000000..9cd1023 --- /dev/null +++ b/QuteSample/mythread.h @@ -0,0 +1,19 @@ +#ifndef MYTHREAD_H +#define MYTHREAD_H + +#include "QThread" +#include "QProgressBar" + +class MyThread : public QThread +{ + Q_OBJECT + +public: + explicit MyThread(QObject *parent); + void run(); + +signals: + void progressChanged(int progress); +}; + +#endif // MYTHREAD_H diff --git a/QuteSample/pics/-1.jpg b/QuteSample/pics/-1.jpg new file mode 100644 index 0000000..5797544 Binary files /dev/null and b/QuteSample/pics/-1.jpg differ diff --git a/QuteSample/pics/1.jpg b/QuteSample/pics/1.jpg new file mode 100644 index 0000000..36408ea Binary files /dev/null and b/QuteSample/pics/1.jpg differ diff --git a/QuteSample/pics/2.jpg b/QuteSample/pics/2.jpg new file mode 100644 index 0000000..e6eff2c Binary files /dev/null and b/QuteSample/pics/2.jpg differ diff --git a/QuteSample/pics/3.jpg b/QuteSample/pics/3.jpg new file mode 100644 index 0000000..8d9f136 Binary files /dev/null and b/QuteSample/pics/3.jpg differ diff --git a/QuteSample/pics/4.jpg b/QuteSample/pics/4.jpg new file mode 100644 index 0000000..9a0facd Binary files /dev/null and b/QuteSample/pics/4.jpg differ diff --git a/QuteSample/pics/5.jpg b/QuteSample/pics/5.jpg new file mode 100644 index 0000000..4621d49 Binary files /dev/null and b/QuteSample/pics/5.jpg differ diff --git a/QuteSample/pictures.qrc b/QuteSample/pictures.qrc new file mode 100644 index 0000000..31134b4 --- /dev/null +++ b/QuteSample/pictures.qrc @@ -0,0 +1,10 @@ + + + pics/1.jpg + pics/2.jpg + pics/3.jpg + pics/4.jpg + pics/5.jpg + pics/-1.jpg + +