diff options
author | Michele Calgaro <michele.calgaro@yahoo.it> | 2022-09-04 20:23:16 +0900 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2022-09-04 23:11:37 +0900 |
commit | 6a21dd39143b725e5d78ae5eb644fd226107261d (patch) | |
tree | cef03f0da350a1279743e2c7402a6280fa60cf48 | |
parent | 4940b4ebe7d5520f88aaa85eb2c6f9b31d3a03f1 (diff) | |
download | tde-cmake-6a21dd39143b725e5d78ae5eb644fd226107261d.tar.gz tde-cmake-6a21dd39143b725e5d78ae5eb644fd226107261d.zip |
Allows tde macros to be used for processing .ui files in pure TQt
applications.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
-rw-r--r-- | modules/TDEMacros.cmake | 2 | ||||
-rw-r--r-- | modules/tde_uic.cmake | 39 |
2 files changed, 28 insertions, 13 deletions
diff --git a/modules/TDEMacros.cmake b/modules/TDEMacros.cmake index 440088c..216a9de 100644 --- a/modules/TDEMacros.cmake +++ b/modules/TDEMacros.cmake @@ -430,6 +430,8 @@ macro( tde_add_ui_files _sources ) -DUI_FILE:FILEPATH=${_ui_absolute_path} -DMASTER_SOURCE_DIR:FILEPATH=${CMAKE_SOURCE_DIR} -DMASTER_BINARY_DIR:FILEPATH=${CMAKE_BINARY_DIR} + -DTDE_FOUND=${TDE_FOUND} + -DTQT_ONLY=${TQT_ONLY} -P ${TDE_CMAKE_MODULES}/tde_uic.cmake DEPENDS ${_ui_absolute_path} ) diff --git a/modules/tde_uic.cmake b/modules/tde_uic.cmake index ebe7d14..572781a 100644 --- a/modules/tde_uic.cmake +++ b/modules/tde_uic.cmake @@ -31,8 +31,16 @@ if( TDE_TQTPLUGINS_DIR ) set( L -L ${TDE_TQTPLUGINS_DIR} ) endif( ) +# Choose translation function, different for TQt and TDE +if ( TDE_FOUND AND NOT TQT_ONLY ) + set( TR_FUNC "tr2i18n" ) +else( TDE_FOUND AND NOT TQT_ONLY ) + set( TR_FUNC "tr" ) +endif( TDE_FOUND AND NOT TQT_ONLY ) + +# Generate ui .h file tde_execute_process( COMMAND ${UIC_EXECUTABLE} - -nounload -tr tr2i18n + -nounload -tr ${TR_FUNC} ${L} ${local_ui_file} OUTPUT_VARIABLE _ui_h_content ) @@ -40,30 +48,35 @@ tde_execute_process( COMMAND ${UIC_EXECUTABLE} if( _ui_h_content ) string( REGEX REPLACE "#ifndef " "#ifndef UI_" _ui_h_content "${_ui_h_content}" ) string( REGEX REPLACE "#define " "#define UI_" _ui_h_content "${_ui_h_content}" ) - string( REGEX REPLACE "public TQWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) - string( REGEX REPLACE "public QWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) - string( REGEX REPLACE "#include <ntqwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) - string( REGEX REPLACE "#include <qwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) + if ( TDE_FOUND AND NOT TQT_ONLY ) + string( REGEX REPLACE "public TQWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) + string( REGEX REPLACE "public QWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) + string( REGEX REPLACE "#include <ntqwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) + string( REGEX REPLACE "#include <qwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) + endif( TDE_FOUND AND NOT TQT_ONLY ) file( WRITE ${_ui_basename}.h "${_ui_h_content}" ) endif( ) +# Generate ui .cpp file tde_execute_process( COMMAND ${UIC_EXECUTABLE} - -nounload -tr tr2i18n + -nounload -tr ${TR_FUNC} ${L} -impl ${_ui_basename}.h ${local_ui_file} OUTPUT_VARIABLE _ui_cpp_content ) if( _ui_cpp_content ) - string( REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _ui_cpp_content "${_ui_cpp_content}" ) - string( REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _ui_cpp_content "${_ui_cpp_content}" ) - string( REGEX REPLACE ": TQWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) - string( REGEX REPLACE ": QWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) - file( WRITE ${_ui_basename}.cpp "#include <kdialog.h>\n#include <tdelocale.h>\n\n${_ui_cpp_content}" ) + string( REGEX REPLACE "${TR_FUNC}\\(\"\"\\)" "TQString::null" _ui_cpp_content "${_ui_cpp_content}" ) + string( REGEX REPLACE "${TR_FUNC}\\(\"\", \"\"\\)" "TQString::null" _ui_cpp_content "${_ui_cpp_content}" ) + if ( TDE_FOUND AND NOT TQT_ONLY ) + string( REGEX REPLACE ": TQWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) + string( REGEX REPLACE ": QWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) + set( _ui_cpp_content "#include <kdialog.h>\n#include <tdelocale.h>\n\n${_ui_cpp_content}" ) + endif( TDE_FOUND AND NOT TQT_ONLY ) + file( WRITE ${_ui_basename}.cpp "${_ui_cpp_content}" ) tde_execute_process( COMMAND ${MOC_EXECUTABLE} ${_ui_basename}.h OUTPUT_VARIABLE _ui_h_moc_content ) file( APPEND ${_ui_basename}.cpp "${_ui_h_moc_content}" ) - -endif( ) +endif( _ui_cpp_content ) |