diff --git a/app/aboutdlg.cpp b/app/aboutdlg.cpp index c69a862..f5b030b 100644 --- a/app/aboutdlg.cpp +++ b/app/aboutdlg.cpp @@ -7,6 +7,7 @@ AboutDlg::AboutDlg(QWidget *parent) : ui(new Ui::AboutDlg) { ui->setupUi(this); + ui->mAppIcon->setPixmap(QPixmap(":/assets/images/coffee_cup/icon_96x96")); auto version_text = QString("Version %1.%2.%3") .arg(QBREAK_VERSION_MAJOR) diff --git a/app/aboutdlg.ui b/app/aboutdlg.ui index 5f146ba..f1c50a4 100644 --- a/app/aboutdlg.ui +++ b/app/aboutdlg.ui @@ -23,7 +23,7 @@ - Dialog + About diff --git a/app/config.h b/app/config.h index 09eac37..2f0451d 100644 --- a/app/config.h +++ b/app/config.h @@ -2,9 +2,9 @@ #define CONFIG_H // App version -#define QBREAK_VERSION_MAJOR 0 -#define QBREAK_VERSION_MINOR 1 -#define QBREAK_VERSION_SUFFIX 0 +#define QBREAK_VERSION_MAJOR 0 +#define QBREAK_VERSION_MINOR 1 +#define QBREAK_VERSION_SUFFIX 0 // How often UI is updated - interval in seconds #define INTERVAL_UPDATE_UI (60) diff --git a/app/strings.ts b/app/strings.ts index c507b7e..0ee905c 100644 --- a/app/strings.ts +++ b/app/strings.ts @@ -5,8 +5,8 @@ AboutDlg - Dialog - + About + @@ -37,52 +37,52 @@ - + Skip this break - + Start next break - + Settings - + About - + Exit - + Less than a minute left until the next break. - + There are %1 minutes left until the next break. - + New break - + New break will start in %1 secs - + Postpone for @@ -90,12 +90,12 @@ QObject - + %1 seconds - + %1 minutes @@ -137,5 +137,25 @@ Preferred monitor + + + Audio to play when break finish + + + + + Command to run when break finish + + + + + Select audio file + + + + + Sound files(*.wav *.mp3 *.ogg) + + diff --git a/app/strings_en.ts b/app/strings_en.ts index 73ee997..cd99d36 100644 --- a/app/strings_en.ts +++ b/app/strings_en.ts @@ -5,8 +5,8 @@ AboutDlg - Dialog - + About + About @@ -37,52 +37,52 @@ - + Skip this break - + Start next break - + Settings - + About - + Exit - + Less than a minute left until the next break. - + There are %1 minutes left until the next break. - + New break - + New break will start in %1 secs - + Postpone for @@ -90,12 +90,12 @@ QObject - + %1 seconds - + %1 minutes @@ -137,5 +137,25 @@ Preferred monitor + + + Audio to play when break finish + Audio to play when break finish + + + + Command to run when break finish + Command to run when break finish + + + + Select audio file + Select audio file + + + + Sound files(*.wav *.mp3 *.ogg) + Sound files(*.wav *.mp3 *.ogg) + diff --git a/app/strings_ru.ts b/app/strings_ru.ts index 3feaabe..ee6722a 100644 --- a/app/strings_ru.ts +++ b/app/strings_ru.ts @@ -4,8 +4,12 @@ AboutDlg - Dialog + О программе + + + + About О программе @@ -37,52 +41,52 @@ QBreak - + Skip this break Пропустить - + Start next break Начать перерыв - + Settings Настройки - + About О программе - + Exit Выход - + Less than a minute left until the next break. До перерыва осталось меньше минуты. - + There are %1 minutes left until the next break. Осталось %1 минут до перерыва. - + New break Скоро перерыв - + New break will start in %1 secs Перерыв начнется через %1 секунд. - + Postpone for Отложить на @@ -90,12 +94,12 @@ QObject - + %1 seconds %1 секунд - + %1 minutes %1 минут @@ -137,6 +141,16 @@ Preferred monitor Предпочитаемый монитор + + + Audio to play when break finish + Проигрывать по окончанию перерыва + + + + Command to run when break finish + Запускать по окончанию перерыва + Break interval (seconds) Промежуток между перерывами в секундах @@ -149,5 +163,15 @@ Postpone time (seconds) На сколько можно отложить перерыв (в секундах) + + + Select audio file + Выбрать аудиозапись + + + + Sound files(*.wav *.mp3 *.ogg) + Аудио файлы (*.wav *.mp3 *.ogg) + diff --git a/scripts/build_linux.sh b/scripts/build_linux.sh index 2b32f0e..0980196 100755 --- a/scripts/build_linux.sh +++ b/scripts/build_linux.sh @@ -1,5 +1,12 @@ -#export QTDIR=/home/$USER/qt/5.12.10/gcc_64 -export QTDIR=/home/$USER/qt5/5.12.12/gcc_64 +#!/bin/bash +# I use this script on two different hosts so there are logic to find proper Qt installation + +export QT_HOME=/home/$USER/qt/5.12.10/gcc_64 +if [ ! -d "$QT_HOME" ] ; then + export QT_HOME=/home/$USER/qt5/5.12.12/gcc_64 +fi + +# Build .appimage /usr/bin/python3 build_qbreak.py diff --git a/scripts/build_qbreak.py b/scripts/build_qbreak.py index 4ccb1a5..f890e05 100755 --- a/scripts/build_qbreak.py +++ b/scripts/build_qbreak.py @@ -13,8 +13,8 @@ EXIT_OK = 0 EXIT_ERROR = 1 # Check if Qt is specified -if not 'QTDIR' in os.environ: - print('Qt location must be set in QTDIR environment variable.') +if not 'QT_HOME' in os.environ: + print('Qt location must be set in QT_HOME environment variable.') exit(1) # Prepare build directory @@ -28,6 +28,10 @@ version_suffix = build_utils.get_version(app_source / 'config.h', 'QBREAK_VERSIO version_minor = build_utils.get_version(app_source / 'config.h', 'QBREAK_VERSION_MINOR') version_major = build_utils.get_version(app_source / 'config.h', 'QBREAK_VERSION_MAJOR') +if version_major is None or version_minor is None or version_suffix is None: + print('App version is not found, exiting.') + exit(EXIT_OK) + app_version = f'{version_major}.{version_minor}.{version_suffix}' print (f'Found QBreak version: {app_version}') @@ -37,7 +41,9 @@ os.chdir(build_dir) if platform.system() == 'Linux': print('Linux detected') print('Configure...') - retcode = os.system('qmake ../../app') + + qmake_path = Path(os.environ['QT_HOME']) / 'bin' / 'qmake' + retcode = os.system(f'{qmake_path} ../../app') if retcode != 0: print(f'qmake call failed with code {retcode}') exit(retcode) @@ -69,7 +75,7 @@ if platform.system() == 'Linux': '-always-overwrite', '-verbose=2', '-appimage', - '-qmake=' + os.environ['QTDIR'] + '/bin/qmake', + '-qmake=' + os.environ['QT_HOME'] + '/bin/qmake', '-unsupported-allow-new-glibc', #'-no-translations', '-extra-plugins=iconengines,platformthemes/libqgtk3.so' diff --git a/scripts/build_utils.py b/scripts/build_utils.py index 00f317b..5b421dc 100644 --- a/scripts/build_utils.py +++ b/scripts/build_utils.py @@ -80,7 +80,7 @@ def get_version(path, name): with codecs.open(path, mode='r', encoding='utf-8') as f: t = f.read() - pattern = r"#define " + name + r" (?P[\d]+)" + pattern = r"#define " + name + r"[\s]+(?P[\d]+)" m = re.search(pattern=pattern, string=t, flags=re.MULTILINE) if m is not None: return m.group("number")