From f81eba492409c05c6ca819e54061abfee3fd6dc2 Mon Sep 17 00:00:00 2001 From: Andrey <50486086+DarkCat09@users.noreply.github.com> Date: Wed, 2 Mar 2022 18:55:29 +0400 Subject: [PATCH] Adaptive layout --- QuteSample.pro | 32 ++ QuteSample.pro.user | 1265 +++++++++++++++++++++++++++++++++++++++++++ QuteSample_ru_RU.qm | Bin 0 -> 1774 bytes QuteSample_ru_RU.ts | 130 +++++ main.cpp | 23 + mainwindow.cpp | 108 ++++ mainwindow.h | 32 ++ mainwindow.ui | 294 ++++++++++ pictures.qrc | 10 + 9 files changed, 1894 insertions(+) create mode 100644 QuteSample.pro create mode 100644 QuteSample.pro.user create mode 100644 QuteSample_ru_RU.qm create mode 100644 QuteSample_ru_RU.ts create mode 100644 main.cpp create mode 100644 mainwindow.cpp create mode 100644 mainwindow.h create mode 100644 mainwindow.ui create mode 100644 pictures.qrc diff --git a/QuteSample.pro b/QuteSample.pro new file mode 100644 index 0000000..fae4d74 --- /dev/null +++ b/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.pro.user b/QuteSample.pro.user new file mode 100644 index 0000000..443754a --- /dev/null +++ b/QuteSample.pro.user @@ -0,0 +1,1265 @@ + + + + + + EnvironmentId + {eb92b81b-2e24-41d5-ac43-4f156bf8444c} + + + ProjectExplorer.Project.ActiveTarget + 0 + + + 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 + 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.1 + + 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 + + 1 + + + + ProjectExplorer.Project.Target.2 + + 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.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_ru_RU.qm b/QuteSample_ru_RU.qm new file mode 100644 index 0000000000000000000000000000000000000000..eae8b483d5f786b1903f59973f240e2849438da6 GIT binary patch literal 1774 zcmaJ>U1%It6h50h*<>dqscoo1LcA&67O}0no2=d4{O(V?Tbg!Fno#PC&L)%On#s&` z=B{b62)_9yh>8zBSV0uTq7Q;dr7u1e#3CrD_@ED^4?^*=g;KwnZl{Tvc47A1xpTko zob#P??!>ptgV%3=^!|?{L)Tut{QaMw5mBexdS!mGjMZ1fKQU448u5)3>_605&k=R} zPPGqyz;~jTKYx!X{vBO9|0#gy>DF7HzmYQ};bz!BQ(xr7) zTFdrk%ts9JFo^(@=W(9m7dgk1oacOq?F+C%tw~SljuS;Pz|X?zc7j|;&{J|8Q!eRB z+Ex^LhzAgGnbQblCJ14y9YlkQAxp9>UA4BXUo1v*?Ba0T?m34zJFVVbr`Wk#aV!~6mehaZ<_$kKn};0B~!ewb<$*Df9oDpN-!HGdVN zw=`xHFu{X7!Hw`ZpVl`bbJgHsnvZX5;jV_`H=h?pyo;ZKj58=&9{sYlXk9PKCDn2x zz3j)JjdKM#_$8RceM(J*3?KR#90gGJPa=K^1 zxS)h*%(h>4C znu3S1AO`rQD(U3XI#pm5rKu2VH^0!nuO8k!V$+pM8J2jhQWU&%1K3G zMbJYz;46HZPk^NmNHx=D%7#2c=j@g%EWf_Z_AMxI8`~DRv;U`l8~0Q1Q?Yx`_1qum K;CqL(J^um9{!sk@ literal 0 HcmV?d00001 diff --git a/QuteSample_ru_RU.ts b/QuteSample_ru_RU.ts new file mode 100644 index 0000000..abee997 --- /dev/null +++ b/QuteSample_ru_RU.ts @@ -0,0 +1,130 @@ + + + + + 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 + + + + About this app + О приложении + + + + This application written just for learning +Qt for Desktop and Mobile. +by DarkCat09 + This application written just for learning Qt for Desktop and Mobile +by DarkCat09 + Программа написана чисто для изучения +Qt для десктопа и мобильных устройств. +Создано DarkCat09 + + + Just debug + Просто отладка + + + diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..b5e950d --- /dev/null +++ b/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/mainwindow.cpp b/mainwindow.cpp new file mode 100644 index 0000000..5a355eb --- /dev/null +++ b/mainwindow.cpp @@ -0,0 +1,108 @@ +#include +#include +#include "QRandomGenerator" +#include "QDesktopServices" +#include "QMessageBox" +#include "mainwindow.h" +#include "ui_mainwindow.h" + +QRandomGenerator64 gen(std::rand()); + +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([&]() + { + for (int i = 0; i <= 100; i+=5) { + ui->progressBar->setValue(i); + std::this_thread::sleep_for(std::chrono::milliseconds(10)); + } + }); + 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()) + 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")); +} + + +void MainWindow::on_actionApplication_triggered() +{ + QMessageBox msg( + QMessageBox::Icon::Information, + tr("About this app"), + tr("This application written just for learning\n" + "Qt for Desktop and Mobile.\n" + "by DarkCat09"), + QMessageBox::Ok); + msg.exec(); +} + diff --git a/mainwindow.h b/mainwindow.h new file mode 100644 index 0000000..2425784 --- /dev/null +++ b/mainwindow.h @@ -0,0 +1,32 @@ +#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(); + + void on_actionApplication_triggered(); + +private: + Ui::MainWindow *ui; +}; +#endif // MAINWINDOW_H diff --git a/mainwindow.ui b/mainwindow.ui new file mode 100644 index 0000000..7591cfd --- /dev/null +++ b/mainwindow.ui @@ -0,0 +1,294 @@ + + + MainWindow + + + + 0 + 0 + 624 + 394 + + + + MainWindow + + + + + + + + 0 + 30 + + + + 0 + + + Wait: %p% + + + + + + + + 0 + 0 + + + + QTabWidget::South + + + QTabWidget::Rounded + + + 0 + + + + Text result + + + + + + + 0 + 0 + + + + + 11 + + + + TextLabel + + + Qt::PlainText + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + true + + + + + + + + 0 + 0 + + + + + 11 + + + + TextLabel + + + + + + + + 0 + 0 + + + + + 0 + 25 + + + + + 60 + 16777215 + + + + + 12 + + + + 3 + + + QLCDNumber::Flat + + + + + + + + Picture + + + + + + + + + + + + + + + + + + 0 + 30 + + + + Start + + + + + + + + + false + + + + 16777215 + 30 + + + + I'm a developer + + + + + + + + 16777215 + 30 + + + + Name + + + + + + + + 16777215 + 30 + + + + + + + + + 16777215 + 30 + + + + Birthday: + + + + + + + + + + + 0 + 0 + 624 + 22 + + + + + File + + + + + + + + Options + + + + + + About + + + + + + + + + + + Choose a config + + + + + Exit + + + Ctrl+Q + + + + + Application + + + + + Developer's GitHub + + + + + true + + + true + + + Random Picture + + + + + + diff --git a/pictures.qrc b/pictures.qrc new file mode 100644 index 0000000..31134b4 --- /dev/null +++ b/pictures.qrc @@ -0,0 +1,10 @@ + + + pics/1.jpg + pics/2.jpg + pics/3.jpg + pics/4.jpg + pics/5.jpg + pics/-1.jpg + +