From 17fe8b971f0c838a4db279c48751ae396283ffe9 Mon Sep 17 00:00:00 2001 From: kradchen Date: Thu, 31 Jul 2025 10:04:08 +0800 Subject: [PATCH] feat: add ico and main window icon, change exe icon --- CMakeLists.txt | 97 ++++++++++++++++++++--------------------------- app.rc | 1 + logo.ico | Bin 0 -> 71926 bytes src/src/main.cpp | 2 + 4 files changed, 44 insertions(+), 56 deletions(-) create mode 100644 app.rc create mode 100644 logo.ico diff --git a/CMakeLists.txt b/CMakeLists.txt index 750f1f8..4401945 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,5 @@ -cmake_minimum_required(VERSION 2.8) -set(PROJECT_NAME CACHE STRING "project" ) -option(ENABLE_QT "ENABLE QT" ON) -project(OmegaV) +cmake_minimum_required(VERSION 3.8) +project(USCTViewer) set(CMAKE_CXX_STANDARD 11) set(CMAKE_INCLUDE_CURRENT_DIR ON) @@ -10,72 +8,59 @@ file(GLOB_RECURSE project_cpps src/*.cpp) file(GLOB_RECURSE project_cxx src/*.cxx) file(GLOB_RECURSE project_cc src/*.cc) -include_directories( - ./src/src/ - ./src/src/base - ./src/src/global - ./src/src/view - ./src/src/view/subview - ) - #set(VTK_DIR "D:/Libs/binary/VTK8.1.2/lib/cmake/vtk-8.2") -set(VTK_DIR "D:/Libs/binary/VTK9.2.2win11/lib/cmake/vtk-9.2") +set(VTK_DIR "D:/Libs/Static/VTK9.2.2win11/lib/cmake/vtk-9.2") set(Qt5_DIR "D:/Qt/Qt5.12.0/5.12.0/msvc2017_64/lib/cmake/Qt5") set(DCMTK_DIR "D:/Libs/binary/DCMTK/cmake") -find_package(DCMTK REQUIRED) -include_directories(${DCMTK_INCLUDE_DIRS}) +find_package(Qt5 COMPONENTS Core Widgets Gui OpenGL LinguistTools REQUIRED) +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +file(GLOB_RECURSE project_uis ./src/*.ui) +qt5_wrap_ui(ui_FILES ${project_uis}) + +file(GLOB project_res ./src/*.qrc) +set(TS_FILES + ./src/translations/en_US.ts + ./src/translations/zh_CN.ts) +set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION ${CMAKE_SOURCE_DIR}/src/translations) +qt5_create_translation(QM_FILES ${project_cpps} ${project_cxx} ${ui_FILES} ${TS_FILES}) + + + +add_executable(USCTViewer WIN32 app.rc ${project_headers} ${project_cpps} ${project_cxx} ${project_res} ${project_cc} ${ui_FILES} ${QM_FILES} ) + +target_link_libraries(USCTViewer Qt5::Core Qt5::Widgets Qt5::Gui Qt5::OpenGL) + +target_include_directories(USCTViewer PRIVATE +./src/src/ +./src/src/base +./src/src/global +./src/src/view +./src/src/view/subview +) + +find_package(DCMTK REQUIRED) set(DCM_NETWORK_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/thirdparty/dcm_network) set(DCM_NETWORK_RUNTIME_DIRS ${CMAKE_BINARY_DIR}/thirdparty/dcm_network) -set(ENABLE_QT ON) - -source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_headers}) -source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_cpps}) -source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_cxx}) -source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_cc}) - -if(ENABLE_QT) - message(${ENABLE_QT}) - find_package(Qt5 COMPONENTS Core Widgets Gui OpenGL REQUIRED) - set(CMAKE_AUTOMOC ON) - set(CMAKE_AUTORCC ON) - file(GLOB_RECURSE project_uis ./src/*.ui) - qt5_wrap_ui(ui_FILES ${project_uis}) - file(GLOB project_res ./src/*.qrc) - set(TS_FILES - ./src/translations/en_US.ts - ./src/translations/zh_CN.ts) - find_package(Qt5 COMPONENTS ${REQUIRED_LIBS} LinguistTools REQUIRED) - set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION ${CMAKE_SOURCE_DIR}/src/translations) - qt5_create_translation(QM_FILES ${project_cpps} ${project_cxx} ${ui_FILES} ${TS_FILES}) - source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_uis}) - source_group(TREE ${CMAKE_SOURCE_DIR} FILES ${project_res}) - - add_executable(${PROJECT_NAME} ${project_headers} ${project_cpps} ${project_cxx} ${project_res} ${project_cc} ${ui_FILES} ${QM_FILES} ) - - target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Widgets Qt5::Gui Qt5::OpenGL) -else(ENABLE_QT) - add_executable(${PROJECT_NAME} ${project_headers} ${project_cpps} ${project_cxx} ${project_cc}) -endif(ENABLE_QT) +target_include_directories(USCTViewer PRIVATE ${DCMTK_INCLUDE_DIRS}) +target_link_libraries(USCTViewer ${DCMTK_LIBRARIES}) find_package(VTK REQUIRED) -include(${VTK_USE_FILE}) -target_link_libraries(${PROJECT_NAME} ${VTK_LIBRARIES}) - -if(DCMTK_LIBRARIES) - target_link_libraries(${PROJECT_NAME} ${DCMTK_LIBRARIES}) -endif() +target_link_libraries(USCTViewer ${VTK_LIBRARIES}) add_subdirectory(thirdparty) -add_subdirectory(DIDKit) +# add_subdirectory(DIDKit) include_directories(${DCM_NETWORK_INCLUDE_DIRS}) -target_link_libraries(${PROJECT_NAME} dcm_network) -add_dependencies(${PROJECT_NAME} dcm_network) +target_link_libraries(USCTViewer dcm_network) +add_dependencies(USCTViewer dcm_network) -set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE") -set_target_properties(${PROJECT_NAME} PROPERTIES LINK_FLAGS_RELEASE "/SUBSYSTEM:WINDOWS") + + +set_target_properties(USCTViewer PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE") +set_target_properties(USCTViewer PROPERTIES LINK_FLAGS_RELEASE "/SUBSYSTEM:WINDOWS") diff --git a/app.rc b/app.rc new file mode 100644 index 0000000..e681731 --- /dev/null +++ b/app.rc @@ -0,0 +1 @@ +IDI_ICON1 ICON "logo.ico" \ No newline at end of file diff --git a/logo.ico b/logo.ico new file mode 100644 index 0000000000000000000000000000000000000000..c946204016e8a258dd34ba96912104ae378006ac GIT binary patch literal 71926 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