搭建PVB架构,实现前端的基础布局、菜单、表格、图示等功能

This commit is contained in:
lixiaoyuan
2025-08-20 19:00:22 +08:00
parent 5de7687bcc
commit 7e965b6fb4
142 changed files with 28270 additions and 411 deletions

View File

@@ -1,5 +1,23 @@
cmake_minimum_required(VERSION 3.23)
###############################################################################
### define funcitons ###
## function: visual studio source group
macro(ADD_SOURCE_GROUP srcpath)
file(GLOB src_h ${PROJECT_SOURCE_DIR}/${srcpath}/*.h)
file(GLOB src_cpp ${PROJECT_SOURCE_DIR}/${srcpath}/*.cpp)
set(src_tmp ${src_h} ${src_cpp})
if (${srcpath} STREQUAL "./" OR ${srcpath} STREQUAL "." OR ${srcpath} STREQUAL "")
set(groupName src)
else()
set(groupName src/${srcpath})
endif()
source_group(${groupName} FILES ${src_tmp})
list(APPEND SOURCE_FILE ${src_tmp})
endmacro(ADD_SOURCE_GROUP)
###############################################################################
set(PROJECT_NAME EES)
project(${PROJECT_NAME})
@@ -15,6 +33,8 @@ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Od /Ob2")
# 设置 Release 模式下链接器的调试信息
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /DEBUG")
add_definitions(-DWIN32_LEAN_AND_MEAN)
# Qt_PATH 为 Qt 的安装地址
set(QT_PATH "D:/Programs/Qt5/5.15.2/msvc2019_64")
set(CMAKE_PREFIX_PATH ${QT_PATH}/lib/cmake)
@@ -33,10 +53,10 @@ find_package(Qt5 COMPONENTS
WebEngineWidgets
REQUIRED)
add_definitions(-DWIN32_LEAN_AND_MEAN)
set(ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR})
set(THIRDPARTY_PATH ${ROOT_PATH}/../thirdparty)
set(PVLIBS_PATH ${ROOT_PATH}/../libs/pvb)
include_directories(
${ROOT_PATH}
@@ -46,24 +66,20 @@ include_directories(
${THIRDPARTY_PATH}
${THIRDPARTY_PATH}/mysql/include
${THIRDPARTY_PATH}/nlohmann_json-3.11.2
${PVLIBS_PATH}/include/pvserver
${PVLIBS_PATH}/include/rllib
)
macro(ADD_SOURCE_GROUP srcpath)
file(GLOB src_h ${PROJECT_SOURCE_DIR}/${srcpath}/*.h)
file(GLOB src_cpp ${PROJECT_SOURCE_DIR}/${srcpath}/*.cpp)
set(src_tmp ${src_h} ${src_cpp})
source_group(src/${srcpath} FILES ${src_tmp})
list(APPEND SOURCE_FILE ${src_tmp})
endmacro(ADD_SOURCE_GROUP)
# 设置编译源文件
ADD_SOURCE_GROUP(./)
ADD_SOURCE_GROUP(.)
ADD_SOURCE_GROUP(common)
ADD_SOURCE_GROUP(app)
ADD_SOURCE_GROUP(database)
ADD_SOURCE_GROUP(protocol)
ADD_SOURCE_GROUP(widgets)
ADD_SOURCE_GROUP(widgets/pages)
#ADD_SOURCE_GROUP(widgets)
#ADD_SOURCE_GROUP(widgets/pages)
ADD_SOURCE_GROUP(pv)
ADD_SOURCE_GROUP(pv/pages)
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../bin)
add_executable(${PROJECT_NAME} ${SOURCE_FILE})
@@ -81,5 +97,7 @@ target_link_libraries(${PROJECT_NAME}
target_link_libraries(${PROJECT_NAME}
ws2_32 iphlpapi
${THIRDPARTY_PATH}/mysql/lib/x64/libmysql.lib
${PVLIBS_PATH}/x64/serverlib.lib
${PVLIBS_PATH}/x64/rllib.lib
)