separated translations as a new make target

This commit is contained in:
leca 2024-12-12 00:58:36 +03:00
parent a10271e595
commit e60aafd653
2 changed files with 49 additions and 41 deletions

View File

@ -4,14 +4,14 @@ project(checks-parser VERSION 0.1 LANGUAGES CXX)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTORCC OFF)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC_SEARCH_PATHS Designer)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets LinguistTools)
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets)
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets)
find_package(Qt5 COMPONENTS LinguistTools)
@ -21,43 +21,6 @@ set(PROJECT_SOURCES
mainwindow.h
mainwindow.ui
# Add other source files here that contain translatable strings
)
# Specify the UI files and source files for translation
set(TRANSLATION_SOURCES
main.cpp
mainwindow.cpp mainwindow.h mainwindow.ui
outputdialog.cpp outputdialog.h outputdialog.ui
settingsdialog.cpp settingsdialog.h settingsdialog.ui
solvecaptchadialog.cpp solvecaptchadialog.h solvecaptchadialog.ui
adjustpicturedialog.cpp adjustpicturedialog.h adjustpicturedialog.ui
# Add other .cpp or .ui files that need translation here
)
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(checks-parser
MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
# Generate translation files for Qt 6
qt_add_translation(TRANSLATIONS "${TRANSLATION_SOURCES}")
else()
if(ANDROID)
add_library(checks-parser SHARED
${PROJECT_SOURCES}
)
else()
# Generate translation files for Qt 5
# QT5_ADD_TRANSLATION()
qt5_create_translation(QM_FILES "${TRANSLATION_SOURCES}" translations/en_US.ts translations/ru_RU.ts)
qt5_add_resources(TRANSLATIONQRC translations.qrc)
add_executable(checks-parser
${PROJECT_SOURCES}
goods/goods.h goods/goods.cpp
check/check.h check/check.cpp
parser/parser.h parser/parser.cpp
@ -75,18 +38,66 @@ else()
image_redactor/imageredactor.h image_redactor/imageredactor.cpp
solvecaptchadialog.h solvecaptchadialog.cpp solvecaptchadialog.ui
exceptions/ofdrequestexception.h exceptions/ofdrequestexception.cpp
)
# Specify the UI files and source files for translation
set(TRANSLATION_SOURCES
main.cpp
mainwindow.cpp mainwindow.h mainwindow.ui
outputdialog.cpp outputdialog.h outputdialog.ui
settingsdialog.cpp settingsdialog.h settingsdialog.ui
solvecaptchadialog.cpp solvecaptchadialog.h solvecaptchadialog.ui
adjustpicturedialog.cpp adjustpicturedialog.h adjustpicturedialog.ui
)
set(TRANSLATION_FILES translations/en_US.ts translations/ru_RU.ts)
# set(QM_FILES "")
# qt5_create_translation(QM_FILES "${TRANSLATION_SOURCES}" translations/en_US.ts translations/ru_RU.ts)
# foreach(TS_FILE IN LISTS "${TRANSLATION_FILES}")
# qt5_create_translation(QM_FILE "${TRANSLATION_SOURCES}" TS_FILE)
# set(QM_FILE "${CMAKE_CURRENT_BINARY_DIR}/${QM_FILE}")
# set(QM_FILES "${QM_FILES};${QM_FILE}")
# endforeach()
qt5_create_translation(QM_FILES "${TRANSLATION_SOURCES}" translations/en_US.ts translations/ru_RU.ts)
# message(STATUS ${CMAKE_CURRENT_BINARY_DIR})
qt5_add_resources(TRANSLATIONQRC translations.qrc OPTIONS --root ${CMAKE_CURRENT_BINARY_DIR})
add_custom_target(translations
DEPENDS ${QM_FILES}
DEPENDS ${TRANSLATIONQRC}
VERBATIM
)
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(checks-parser
MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
else()
if(ANDROID)
add_library(checks-parser SHARED
${PROJECT_SOURCES}
)
else()
add_executable(checks-parser
${PROJECT_SOURCES}
# ${QM_FILES}
# ${TS_FILES}
translations.qrc
${TRANSLATIONQRC}
)
# configure_file(translations.qrc ${CMAKE_BINARY_DIR} COPYONLY)
# QT5_ADD_TRANSLATION(TRANSLATIONS ${CMAKE_SOURCE_DIR} translations/en_US.ts)
endif()
endif()
target_link_libraries(checks-parser PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
target_include_directories(checks-parser PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/image_redactor)
# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
# If you are developing for iOS or macOS you should consider setting an
# explicit, fixed bundle identifier manually though.

View File

@ -61,10 +61,10 @@
<widget class="ImageRedactor" name="graphicsView">
<property name="geometry">
<rect>
<x>15</x>
<y>41</y>
<width>791</width>
<height>391</height>
<x>5</x>
<y>21</y>
<width>801</width>
<height>421</height>
</rect>
</property>
</widget>
@ -77,10 +77,7 @@
<customwidget>
<class>ImageRedactor</class>
<extends>QGraphicsView</extends>
<header>../../image_redactor/imageredactor.h</header>
<slots>
<slot>slot1()</slot>
</slots>
<header location="global">imageredactor.h</header>
</customwidget>
</customwidgets>
<resources/>