From 1f55e86755e29f8b3a87f05bff3ee42ad75ab0f3 Mon Sep 17 00:00:00 2001 From: Wang Yu Date: Thu, 16 Jan 2025 11:16:45 +0800 Subject: [PATCH] chore: support Qt6 - Update CMakeLists.txt to support both Qt5 and Qt6 - Replace DApplicationHelper with DGuiApplicationHelper for Qt6 - Update debian/control and debian/rules for Qt6 compatibility - Fix Qt6 compatibility issues in various widgets and utilities - Update unit tests for Qt6 support Log: support Qt6 --- CMakeLists.txt | 21 +++-- debian/control | 27 +++---- deepin-system-monitor-daemon/CMakeLists.txt | 20 +++-- .../src/cpuprofile.cpp | 4 + .../src/memoryprofile.cpp | 6 ++ deepin-system-monitor-main/CMakeLists.txt | 66 +++++---------- .../common/error_context.cpp | 2 +- .../compact_cpu_monitor.cpp | 21 +++++ .../compact_disk_monitor.cpp | 9 +++ .../compact_memory_monitor.cpp | 25 ++++++ .../compact_network_monitor.cpp | 18 ++++- .../compact_network_monitor.h | 12 ++- deepin-system-monitor-main/cpu_monitor.cpp | 30 +++++++ deepin-system-monitor-main/cpu_monitor.h | 14 +++- .../dbus/unit_file_info.cpp | 13 ++- .../dbus/unit_file_info.h | 16 ++-- .../gui/accounts_widget.cpp | 4 + .../gui/base/base_detail_item_delegate.cpp | 26 ++++++ .../gui/base/base_detail_view_widget.cpp | 29 ++++++- .../gui/base/base_detail_view_widget.h | 1 - .../gui/base/base_header_view.cpp | 8 ++ .../gui/base/base_item_delegate.cpp | 28 ++++++- .../gui/base/base_table_view.cpp | 8 ++ .../gui/block_dev_item_widget.cpp | 24 ++++++ .../gui/block_dev_summary_view_widget.cpp | 13 +++ .../gui/chart_view_widget.cpp | 36 +++++++-- .../gui/cpu_detail_widget.cpp | 28 +++++++ .../gui/cpu_summary_view_widget.cpp | 4 + .../gui/cpu_summary_view_widget.h | 16 +++- .../gui/dialog/error_dialog.cpp | 13 +++ .../gui/dialog/systemprotectionsetting.cpp | 1 - .../gui/main_window.cpp | 12 ++- .../gui/mem_detail_view_widget.cpp | 1 - .../gui/mem_stat_view_widget.cpp | 16 ++++ .../gui/mem_summary_view_widget.cpp | 13 +++ .../gui/monitor_compact_view.cpp | 5 +- .../gui/monitor_expand_view.cpp | 5 +- .../gui/netif_item_view_widget.cpp | 35 +++++++- .../gui/netif_summary_view_widget.cpp | 4 + .../gui/netif_summary_view_widget.h | 37 ++++++++- .../gui/process_attribute_dialog.cpp | 15 +++- .../gui/process_page_widget.cpp | 55 ++++++++++++- .../gui/process_page_widget.h | 8 ++ .../gui/process_table_view.cpp | 22 +++++ .../gui/system_service_page_widget.cpp | 16 ++++ .../gui/system_service_table_view.cpp | 30 +++++++ .../gui/user_page_widget.cpp | 62 +++++++++----- .../gui/user_page_widget.h | 11 ++- .../xwin_kill_preview_background_widget.cpp | 12 +++ .../gui/xwin_kill_preview_widget.cpp | 2 + deepin-system-monitor-main/main.cpp | 4 + deepin-system-monitor-main/memory_monitor.cpp | 28 +++++++ deepin-system-monitor-main/memory_monitor.h | 17 +++- .../cpu_list_sort_filter_proxy_model.cpp | 4 + .../model/process_sort_filter_proxy_model.cpp | 54 +++++++++---- ...system_service_sort_filter_proxy_model.cpp | 27 +++++-- .../network_monitor.cpp | 25 ++++++ deepin-system-monitor-main/network_monitor.h | 12 ++- .../process/desktop_entry_cache.cpp | 4 + .../process/desktop_entry_cache_updater.cpp | 4 + .../process/process_icon_cache.h | 6 +- .../process/process_set.cpp | 17 ++-- .../service/service_manager_worker.cpp | 7 +- .../system/block_device.cpp | 4 + .../system/block_device_info_db.cpp | 8 ++ deepin-system-monitor-main/system/cpu_set.cpp | 22 ++++- .../system/netif_packet_capture.cpp | 6 +- .../system/private/netif_p.h | 1 + .../system/sys_info.cpp | 4 + .../translations/CMakeLists.txt | 6 +- .../wm/wm_window_list.cpp | 4 + .../wm/wm_window_list.h | 2 + .../CMakeLists.txt | 48 +++++------ .../common/utils.cpp | 5 +- .../gui/base/base_item_delegate.cpp | 31 +++++++ .../gui/base/base_item_delegate.h | 11 ++- .../gui/base/base_table_view.cpp | 8 ++ .../gui/cpu_widget.cpp | 29 +++++++ .../gui/cpu_widget.h | 10 ++- .../gui/disk_widget.cpp | 29 +++++++ .../gui/disk_widget.h | 12 ++- .../gui/mainwindow.cpp | 38 ++++++++- .../gui/mainwindow.h | 4 + .../gui/memory_widget.cpp | 30 +++++++ .../gui/memory_widget.h | 11 ++- .../gui/net_widget.cpp | 30 +++++++ .../gui/net_widget.h | 12 ++- .../gui/process_table_view.cpp | 18 +++++ .../gui/process_widget.cpp | 34 ++++++++ .../gui/process_widget.h | 8 ++ deepin-system-monitor-plugin-popup/main.cpp | 7 ++ .../model/process_sort_filter_proxy_model.cpp | 31 +++++-- .../system/cpu_set.cpp | 16 ++++ .../translations/CMakeLists.txt | 8 +- deepin-system-monitor-plugin/CMakeLists.txt | 29 +++---- .../gui/monitor_plugin.cpp | 17 +++- .../gui/quickpanelwidget.cpp | 4 + .../gui/systemmonitortipswidget.cpp | 28 +++++++ .../translations/CMakeLists.txt | 6 +- deepin-system-monitor-server/CMakeLists.txt | 18 ++--- .../CMakeLists.txt | 28 +++---- ...deepin-system-monitor-system-server.policy | 80 +++++++++---------- .../src/systemdbusserver.cpp | 11 ++- tests/CMakeLists.txt | 46 ++++------- .../gui/ut_block_dev_summary_view_widget.cpp | 9 +++ .../gui/ut_cpu_summary_view_widget.cpp | 1 - .../gui/ut_process_page_widget.cpp | 8 ++ .../system/ut_block_device.cpp | 4 + .../system/ut_cpu.cpp | 8 ++ .../ut_compact_memory_monitor.cpp | 15 ++++ .../ut_compact_network_monitor.cpp | 1 - .../ut_cpu_monitor.cpp | 12 +++ .../ut_memory_monitor.cpp | 15 ++++ .../ut_network_monitor.cpp | 1 - 114 files changed, 1586 insertions(+), 355 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 857a172a..f9267bf8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -40,6 +40,17 @@ else() SET(IS_LOONGARCH_TYPE 0) endif() +if (NOT DEFINED QT_VERSION_MAJOR) + set(QT_VERSION_MAJOR 6) +endif() +if (QT_VERSION_MAJOR EQUAL 6) + set(DTK_VERSION_MAJOR 6) +else() + set(DTK_VERSION_MAJOR) +endif() +set(QT_NS Qt${QT_VERSION_MAJOR}) +set(DTK_NS Dtk${DTK_VERSION_MAJOR}) + #系统监视器主应用 ADD_SUBDIRECTORY(deepin-system-monitor-main) #系统监视器插件 @@ -73,11 +84,11 @@ set(system_monitor_plugin_popup assets/configs/org.deepin.system-monitor.plugin. set(system_monitor_plugin_server assets/configs/org.deepin.system-monitor.server.json) if (DEFINED DSG_DATA_DIR) - dconfig_meta_files(APPID ${APPID} FILES ${system_monitor_main}) - dconfig_meta_files(APPID ${APPID} FILES ${system_monitor_daemon}) - dconfig_meta_files(APPID ${APPID} FILES ${system_monitor_plugin}) - dconfig_meta_files(APPID ${APPID} FILES ${system_monitor_plugin_popup}) - dconfig_meta_files(APPID ${APPID} FILES ${system_monitor_plugin_server}) + dtk_add_config_meta_files(APPID ${APPID} FILES ${system_monitor_main}) + dtk_add_config_meta_files(APPID ${APPID} FILES ${system_monitor_daemon}) + dtk_add_config_meta_files(APPID ${APPID} FILES ${system_monitor_plugin}) + dtk_add_config_meta_files(APPID ${APPID} FILES ${system_monitor_plugin_popup}) + dtk_add_config_meta_files(APPID ${APPID} FILES ${system_monitor_plugin_server}) message("-- DConfig is supported by DTK") else() install(FILES ${system_monitor_main} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/dsg/configs/${APPID}/) diff --git a/debian/control b/debian/control index ab380c91..9fc8e29a 100644 --- a/debian/control +++ b/debian/control @@ -6,14 +6,16 @@ Build-Depends: debhelper (>= 11), cmake, pkg-config, - qtbase5-dev, - qttools5-dev, - libdtkwidget-dev, + qt6-base-dev | qtbase5-dev, + qt6-svg-dev | libqt5svg5-dev, + qt6-tools-dev | qttools5-dev, + libdtk6core-dev | libdtkcore-dev, + libdtk6gui-dev | libdtkgui-dev, + libdtk6widget-dev | libdtkwidget-dev, libxcb1-dev, - libqt5x11extras5-dev, libxext-dev, libpcap-dev, - qttools5-dev-tools, + qt6-tools-dev-tools | qttools5-dev-tools, libicu-dev, deepin-gettext-tools, libxcb-util0-dev, @@ -21,13 +23,10 @@ Build-Depends: libnl-3-dev, libnl-route-3-dev, libudev-dev, - libgsettings-qt-dev, - dde-dock-dev, - libgtest-dev, - libgmock-dev, - libdwayland-dev | libkf5wayland-dev, - libwayland-dev, - libpolkit-qt5-1-dev + dde-tray-loader-dev | dde-dock-dev, + libgtest-dev, + libgmock-dev, + libpolkit-qt6-1-dev | libpolkit-qt5-1-dev Standards-Version: 3.9.8 Homepage: https://github.com/linuxdeepin/deepin-system-monitor @@ -35,9 +34,7 @@ Package: deepin-system-monitor Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, - libcap2-bin, - libdwaylandclient5 | libkf5waylandclient5, - libdwaylandserver5 | libkf5waylandserver5, + libcap2-bin, deepin-service-manager Recommends: uos-reporter, deepin-event-log Replaces: deepin-system-monitor-plugin diff --git a/deepin-system-monitor-daemon/CMakeLists.txt b/deepin-system-monitor-daemon/CMakeLists.txt index 5d4fbe15..f44db47a 100644 --- a/deepin-system-monitor-daemon/CMakeLists.txt +++ b/deepin-system-monitor-daemon/CMakeLists.txt @@ -29,10 +29,14 @@ endforeach() file(GLOB_RECURSE SRC_CPP ${CMAKE_CURRENT_LIST_DIR}/src/*.cpp) file(GLOB_RECURSE SRC_H ${CMAKE_CURRENT_LIST_DIR}/src/*.h) -find_package(Qt5 COMPONENTS Core DBus REQUIRED) -find_package(DtkCore CONFIG REQUIRED) +find_package(${QT_NS} COMPONENTS Core DBus REQUIRED) +find_package(${DTK_NS} REQUIRED COMPONENTS Core) +if (QT_VERSION_MAJOR LESS 6) qt5_add_resources(RESOURCES_FILE assets/${BIN_NAME}.qrc) +else() +qt6_add_resources(RESOURCES_FILE assets/${BIN_NAME}.qrc) +endif() add_library(${BIN_NAME} MODULE ${SRC_CPP} @@ -40,16 +44,10 @@ add_library(${BIN_NAME} MODULE ${RESOURCES_FILE} ) -target_include_directories(${BIN_NAME} PUBLIC - Qt5::Core - Qt5::DBus - ${DtkCore_INCLUDE_DIRS} -) - target_link_libraries(${BIN_NAME} PRIVATE - Qt5::Core - Qt5::DBus - ${DtkCore_LIBRARIES} + ${QT_NS}::Core + ${QT_NS}::DBus + ${DTK_NS}::Core ) #安全测试加固编译参数 diff --git a/deepin-system-monitor-daemon/src/cpuprofile.cpp b/deepin-system-monitor-daemon/src/cpuprofile.cpp index ffb54052..34107297 100644 --- a/deepin-system-monitor-daemon/src/cpuprofile.cpp +++ b/deepin-system-monitor-daemon/src/cpuprofile.cpp @@ -47,7 +47,11 @@ double CpuProfile::updateSystemCpuUsage() // |user|nice|sys|idle|iowait|hardqirq|softirq|steal|guest|guest_nice| // 分割行数据 +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList cpuStatus = QString(lineData).split(" ", QString::SkipEmptyParts); +#else + QStringList cpuStatus = QString(lineData).split(" ", Qt::SkipEmptyParts); +#endif // CPU状态应包含10个数据片段,有效数据 1-10,位置0不使用 if (cpuStatus.size() < 11) { diff --git a/deepin-system-monitor-daemon/src/memoryprofile.cpp b/deepin-system-monitor-daemon/src/memoryprofile.cpp index f23aed0d..22af6f7e 100644 --- a/deepin-system-monitor-daemon/src/memoryprofile.cpp +++ b/deepin-system-monitor-daemon/src/memoryprofile.cpp @@ -36,9 +36,15 @@ double MemoryProfile::updateSystemMemoryUsage() } // 数据提取 +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList list1 = QString(lineData1).split(" ", QString::SkipEmptyParts); QStringList list2 = QString(lineData2).split(" ", QString::SkipEmptyParts); QStringList list3 = QString(lineData3).split(" ", QString::SkipEmptyParts); +#else + QStringList list1 = QString(lineData1).split(" ", Qt::SkipEmptyParts); + QStringList list2 = QString(lineData2).split(" ", Qt::SkipEmptyParts); + QStringList list3 = QString(lineData3).split(" ", Qt::SkipEmptyParts); +#endif if (list1.size() < 3 || list2.size() < 3 || list3.size() < 3) { qCWarning(app) << QString(" parse %1 file fail !").arg(PROC_MEM_INFOI_PATH) << list1 << list2 << list3; diff --git a/deepin-system-monitor-main/CMakeLists.txt b/deepin-system-monitor-main/CMakeLists.txt index 2b0baa5a..b52fd706 100644 --- a/deepin-system-monitor-main/CMakeLists.txt +++ b/deepin-system-monitor-main/CMakeLists.txt @@ -13,7 +13,7 @@ set(APP_RESOURCES ${APP_RES_ROOT}/${PROJECT_NAME}.qrc) set(DESKTOP_FILE ${PROJECT_NAME}.desktop) set(POLICY_FILE com.deepin.pkexec.${PROJECT_NAME}.policy) -set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED True) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wl,--as-need -fPIE") @@ -25,7 +25,7 @@ endif () if (CMAKE_BUILD_TYPE STREQUAL "Release") add_definitions("-DQT_NO_DEBUG_OUTPUT") endif() -if (USE_DEEPIN_WAYLAND) +if (USE_DEEPIN_WAYLAND AND QT_VERSION LESS 6) add_definitions("-DUSE_DEEPIN_WAYLAND") endif() @@ -37,29 +37,10 @@ include(CheckSymbolExists) check_symbol_exists(syscall "unistd.h" HAVE_SYS_CALL) check_symbol_exists(SYS_getrandom "sys/syscall.h" HAVE_SYS_GETRANDOM) include(FindPkgConfig) -if (USE_DEEPIN_WAYLAND) - find_package(DWayland) - find_package(KF5Wayland) - if (DWayland_FOUND) - message("DWayland founded.") - add_definitions(-DDWAYLAND) - elseif(KF5Wayland_FOUND) - message("KF5Wayland founded.") - add_definitions(-DKF5WAYLAND) - endif() -endif() -find_package(Qt5 COMPONENTS Core REQUIRED) -find_package(Qt5 COMPONENTS Widgets REQUIRED) -find_package(Qt5 COMPONENTS Gui REQUIRED) -find_package(Qt5 COMPONENTS X11Extras REQUIRED) -find_package(Qt5 COMPONENTS DBus REQUIRED) -find_package(Qt5 COMPONENTS Concurrent REQUIRED) -find_package(Qt5 COMPONENTS LinguistTools REQUIRED) - -find_package(DtkCore REQUIRED) -find_package(DtkGui REQUIRED) -find_package(DtkWidget REQUIRED) +find_package(${QT_NS} COMPONENTS Core Widgets Gui DBus Concurrent LinguistTools REQUIRED) +find_package(${DTK_NS} COMPONENTS Core Gui Widget REQUIRED) + find_library(LIB_PCAP NAMES pcap REQUIRED) find_library(LIB_XCB NAMES xcb REQUIRED) find_library(LIB_XEXT NAMES Xext REQUIRED) @@ -70,9 +51,6 @@ find_package(ICU COMPONENTS i18n uc REQUIRED) pkg_search_module(LIB_NL3 REQUIRED libnl-3.0) pkg_search_module(LIB_NL3_ROUTE REQUIRED libnl-route-3.0) pkg_search_module(LIB_UDEV REQUIRED libudev) -include_directories(${DtkCore_INCLUDE_DIRS}) -include_directories(${DtkGui_INCLUDE_DIRS}) -include_directories(${DtkWidget_INCLUDE_DIRS}) include_directories(${LIB_NL3_INCLUDE_DIRS}) include_directories(${LIB_NL3_ROUTE_INCLUDE_DIRS}) @@ -588,15 +566,14 @@ set(APP_CPP ${DMIDECODE} ) set(LIBS - Qt5::Core - Qt5::Widgets - Qt5::Gui - Qt5::DBus - Qt5::Concurrent - Qt5::X11Extras - dtkcore - dtkwidget - dtkgui + ${QT_NS}::Core + ${QT_NS}::Widgets + ${QT_NS}::Gui + ${QT_NS}::DBus + ${QT_NS}::Concurrent + ${DTK_NS}::Core + ${DTK_NS}::Widget + ${DTK_NS}::Gui ${LIB_PCAP} ICU::i18n ICU::uc @@ -607,19 +584,14 @@ set(LIBS ${LIB_NL3_ROUTE_LIBRARIES} ${LIB_UDEV_LIBRARIES} # ${DFrameworkDBus_LIBRARIES} # chinalife - Dtk::Core ) -if (USE_DEEPIN_WAYLAND) - if (DWayland_FOUND) - list(APPEND LIBS DWaylandClient DWaylandServer) - else() - list(APPEND LIBS KF5::WaylandClient KF5::WaylandServer) - endif() -endif() - file(GLOB APP_TS_FILES LIST_DIRECTORIES false translations/*.ts) -qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +if (QT_VERSION_MAJOR LESS 6) + qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +else() + qt6_add_translation(APP_QM_FILES ${APP_TS_FILES}) +endif() add_custom_target(QMFILES ALL DEPENDS ${APP_QM_FILES}) find_program(POLICY_TS_CONV deepin-policy-ts-convert REQUIRED) @@ -657,5 +629,5 @@ message("-- DConfig is supported by DTK ${PROJECT_SOURCE_DIR}") set(configFile ${PROJECT_SOURCE_DIR}/assets/org.deepin.system-monitor.main.json) if (DEFINED DSG_DATA_DIR) message("-- DConfig is supported by DTK") - dconfig_meta_files(APPID ${APPID} FILES ${configFile}) + dtk_add_config_meta_files(APPID ${APPID} FILES ${configFile}) endif() diff --git a/deepin-system-monitor-main/common/error_context.cpp b/deepin-system-monitor-main/common/error_context.cpp index dff2698d..8432bd5e 100644 --- a/deepin-system-monitor-main/common/error_context.cpp +++ b/deepin-system-monitor-main/common/error_context.cpp @@ -86,7 +86,7 @@ ErrorContext::~ErrorContext() {} bool ErrorContext::operator==(const ErrorContext &other) const { return (data->m_code == other.getCode() && data->m_subCode == other.getSubCode() && - data->m_errName == other.getSubCode() && data->m_errMessage == getErrorMessage()); + data->m_errName == other.getErrorName() && data->m_errMessage == getErrorMessage()); } // get error code diff --git a/deepin-system-monitor-main/compact_cpu_monitor.cpp b/deepin-system-monitor-main/compact_cpu_monitor.cpp index 76b65c91..ba5937b3 100644 --- a/deepin-system-monitor-main/compact_cpu_monitor.cpp +++ b/deepin-system-monitor-main/compact_cpu_monitor.cpp @@ -14,7 +14,11 @@ #include "gui/base/base_commandlink_button.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -173,7 +177,11 @@ void CompactCpuMonitor::resizeEvent(QResizeEvent *event) void CompactCpuMonitor::resizeItemRect() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_detailButton->setFixedSize(m_detailButton->fontMetrics().width(m_detailButton->text()) + 12, m_detailButton->fontMetrics().height() + 4); +#else + m_detailButton->setFixedSize(m_detailButton->fontMetrics().horizontalAdvance(m_detailButton->text()) + 12, m_detailButton->fontMetrics().height() + 4); +#endif const QSize &detailtextSize = m_detailButton->size(); m_detailButton->setGeometry(this->width() - detailtextSize.width() + additionCPUPosX, additionCPUPoxY, detailtextSize.width(), detailtextSize.height()); } @@ -183,7 +191,11 @@ void CompactCpuMonitor::paintEvent(QPaintEvent *) QPainter painter(this); painter.setRenderHint(QPainter::Antialiasing); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif // init colors auto palette = dAppHelper->applicationPalette(); @@ -208,11 +220,20 @@ void CompactCpuMonitor::paintEvent(QPaintEvent *) QString cpuText = DApplication::translate("Process.Graph.View", "CPU"); QString cpuStatText = QString::number(totalCpuPercent, 'f', 1).append('%'); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect cpuRect(pointerRadius * 2 + spacing - 2, 0, fm.width(cpuText), fm.height() + 4); +#else + QRect cpuRect(pointerRadius * 2 + spacing - 2, 0, fm.horizontalAdvance(cpuText), fm.height() + 4); +#endif QRect sectionRect(0, cpuRect.y() + qCeil((cpuRect.height() - pointerRadius) / 2.), pointerRadius, pointerRadius); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect statRect(cpuRect.x() + cpuRect.width() + spacing, cpuRect.y(), fmStat.width(cpuStatText), fmStat.height() + 4); +#else + QRect statRect(cpuRect.x() + cpuRect.width() + spacing, cpuRect.y(), fmStat.horizontalAdvance(cpuStatText), + fmStat.height() + 4); +#endif m_detailButton->setText(m_detailButton->fontMetrics().elidedText(m_detailText, Qt::ElideRight, this->width() - statRect.right() - 2 * spacing)); resizeItemRect(); diff --git a/deepin-system-monitor-main/compact_disk_monitor.cpp b/deepin-system-monitor-main/compact_disk_monitor.cpp index f1fcaec5..68f6e7f1 100644 --- a/deepin-system-monitor-main/compact_disk_monitor.cpp +++ b/deepin-system-monitor-main/compact_disk_monitor.cpp @@ -11,7 +11,11 @@ #include "system/diskio_info.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -21,6 +25,7 @@ #include DWIDGET_USE_NAMESPACE +DGUI_USE_NAMESPACE using namespace core::system; using namespace common; using namespace common::format; @@ -117,7 +122,11 @@ void CompactDiskMonitor::paintEvent(QPaintEvent *) int margin = 10; // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR QColor tagColor = palette.color(DPalette::TextTitle); diff --git a/deepin-system-monitor-main/compact_memory_monitor.cpp b/deepin-system-monitor-main/compact_memory_monitor.cpp index 432c44e3..20affee4 100644 --- a/deepin-system-monitor-main/compact_memory_monitor.cpp +++ b/deepin-system-monitor-main/compact_memory_monitor.cpp @@ -10,7 +10,11 @@ #include "system/system_monitor.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -31,7 +35,11 @@ using namespace core::system; CompactMemoryMonitor::CompactMemoryMonitor(QWidget *parent) : QWidget(parent) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif int statusBarMaxWidth = common::getStatusBarMaxWidth(); setFixedWidth(statusBarMaxWidth); @@ -39,8 +47,13 @@ CompactMemoryMonitor::CompactMemoryMonitor(QWidget *parent) setFixedHeight(150); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &CompactMemoryMonitor::changeTheme); +#else + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, + &CompactMemoryMonitor::changeTheme); +#endif changeTheme(dAppHelper->themeType()); @@ -90,12 +103,20 @@ void CompactMemoryMonitor::onValueChanged() void CompactMemoryMonitor::changeTheme(int themeType) { switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::LightType: +#endif memoryBackgroundColor = "#000000"; swapBackgroundColor = "#000000"; break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::DarkType: +#endif memoryBackgroundColor = "#FFFFFF"; swapBackgroundColor = "#FFFFFF"; @@ -105,7 +126,11 @@ void CompactMemoryMonitor::changeTheme(int themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR textColor = palette.color(DPalette::TextTitle); diff --git a/deepin-system-monitor-main/compact_network_monitor.cpp b/deepin-system-monitor-main/compact_network_monitor.cpp index b7941e3a..b7ff72af 100644 --- a/deepin-system-monitor-main/compact_network_monitor.cpp +++ b/deepin-system-monitor-main/compact_network_monitor.cpp @@ -12,7 +12,11 @@ #include "system/system_monitor.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -33,7 +37,11 @@ const int pointsNumber = 30; CompactNetworkMonitor::CompactNetworkMonitor(QWidget *parent) : QWidget(parent) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif int statusBarMaxWidth = common::getStatusBarMaxWidth(); setFixedWidth(statusBarMaxWidth); @@ -48,9 +56,13 @@ CompactNetworkMonitor::CompactNetworkMonitor(QWidget *parent) for (int i = 0; i <= pointsNumber; i++) { uploadSpeeds->append(0); } - +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &CompactNetworkMonitor::changeTheme); +#else + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, + &CompactNetworkMonitor::changeTheme); +#endif changeTheme(dAppHelper->themeType()); connect(SystemMonitor::instance(), &SystemMonitor::statInfoUpdated, this, &CompactNetworkMonitor::updateStatus); @@ -264,7 +276,11 @@ void CompactNetworkMonitor::changeTheme(DGuiApplicationHelper::ColorType themeTy Q_UNUSED(themeType); // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR textColor = palette.color(DPalette::TextTitle); diff --git a/deepin-system-monitor-main/compact_network_monitor.h b/deepin-system-monitor-main/compact_network_monitor.h index 56a4bfa8..bf19af7f 100644 --- a/deepin-system-monitor-main/compact_network_monitor.h +++ b/deepin-system-monitor-main/compact_network_monitor.h @@ -6,12 +6,16 @@ #ifndef COMPACTNETWORKMONITOR_H #define COMPACTNETWORKMONITOR_H -#include - #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class CompactNetworkMonitor : public QWidget { @@ -39,7 +43,11 @@ public slots: private: +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); void getPainterPathByData(QList *listData, QPainterPath &path, qreal maxVlaue); diff --git a/deepin-system-monitor-main/cpu_monitor.cpp b/deepin-system-monitor-main/cpu_monitor.cpp index caff43c7..71d367d3 100644 --- a/deepin-system-monitor-main/cpu_monitor.cpp +++ b/deepin-system-monitor-main/cpu_monitor.cpp @@ -14,7 +14,11 @@ #include "gui/base/base_commandlink_button.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -42,8 +46,13 @@ CpuMonitor::CpuMonitor(QWidget *parent) cpuPercents->append(0); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DApplicationHelper *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &CpuMonitor::changeTheme); +#else + DGuiApplicationHelper *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &CpuMonitor::changeTheme); +#endif changeTheme(dAppHelper->themeType()); m_cpuInfomodel = CPUInfoModel::instance(); @@ -83,14 +92,27 @@ void CpuMonitor::setDetailButtonVisible(bool visible) m_detailButton->setVisible(visible); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void CpuMonitor::changeTheme(DApplicationHelper::ColorType themeType) { +#else +void CpuMonitor::changeTheme(DGuiApplicationHelper::ColorType themeType) +{ +#endif switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::LightType: +#endif ringBackgroundColor = "#000000"; m_icon = QIcon(iconPathFromQrc("light/icon_cpu_light.svg")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::DarkType: +#endif ringBackgroundColor = "#FFFFFF"; m_icon = QIcon(iconPathFromQrc("dark/icon_cpu_light.svg")); break; @@ -99,7 +121,11 @@ void CpuMonitor::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); textColor = palette.color(DPalette::Text); #ifndef THEME_FALLBACK_COLOR @@ -169,7 +195,11 @@ void CpuMonitor::resizeEvent(QResizeEvent *event) void CpuMonitor::resizeItemWidgetRect() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_detailButton->setFixedSize(m_detailButton->fontMetrics().width(m_detailButton->text()) + 16, m_detailButton->fontMetrics().height() + 4); +#else + m_detailButton->setFixedSize(m_detailButton->fontMetrics().horizontalAdvance(m_detailButton->text()) + 16, m_detailButton->fontMetrics().height() + 4); +#endif const QSize &detailtextSize = m_detailButton->size(); m_detailButton->setGeometry(this->width() / 2 - detailtextSize.width() / 2 - 4, this->height() - detailtextSize.height() + 3, detailtextSize.width(), detailtextSize.height()); } diff --git a/deepin-system-monitor-main/cpu_monitor.h b/deepin-system-monitor-main/cpu_monitor.h index cf02fca7..b42223ac 100644 --- a/deepin-system-monitor-main/cpu_monitor.h +++ b/deepin-system-monitor-main/cpu_monitor.h @@ -6,15 +6,19 @@ #ifndef CpuMONITOR_H #define CpuMONITOR_H -#include - #include #include #include #include -#include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif +#include class Settings; class QPropertyAnimation; @@ -38,7 +42,11 @@ class CpuMonitor : public QWidget void clicked(QString msgCode); public slots: +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void updateStatus(); void onDetailInfoClicked(); diff --git a/deepin-system-monitor-main/dbus/unit_file_info.cpp b/deepin-system-monitor-main/dbus/unit_file_info.cpp index aef9950e..01e863dc 100644 --- a/deepin-system-monitor-main/dbus/unit_file_info.cpp +++ b/deepin-system-monitor-main/dbus/unit_file_info.cpp @@ -116,13 +116,6 @@ void UnitFileInfo::registerMetaType() qDBusRegisterMetaType(); } -// Print UnitFileInfo object to debug stream -QDebug &operator<<(QDebug &debug, const UnitFileInfo &unit) -{ - debug << unit.getName() << unit.getStatus(); - return debug; -} - // Output UnitFileInfo object to DBus argument QDBusArgument &operator<<(QDBusArgument &argument, const UnitFileInfo &unit) { @@ -184,3 +177,9 @@ const QDBusArgument &operator>>(const QDBusArgument &argument, UnitFileInfoList argument.endArray(); return argument; } + +QDebug operator<<(QDebug debug, const UnitFileInfo &info) +{ + debug << info.getName() << info.getStatus(); + return debug; +} diff --git a/deepin-system-monitor-main/dbus/unit_file_info.h b/deepin-system-monitor-main/dbus/unit_file_info.h index 562b335e..354bc030 100644 --- a/deepin-system-monitor-main/dbus/unit_file_info.h +++ b/deepin-system-monitor-main/dbus/unit_file_info.h @@ -9,6 +9,7 @@ #include #include #include +#include class UnitFileInfoData; class QDebug; @@ -74,13 +75,6 @@ class UnitFileInfo */ static void registerMetaType(); - /** - * @brief operator << Print UnitFileInfo object to debug stream - * @param debug Debug stream - * @param unit Unit file info - * @return Debug stream - */ - friend QDebug &operator<<(QDebug debug, const UnitFileInfo &unit); /** * @brief operator << Print UnitFileInfo object to DBus argument * @param argument DBus argument object @@ -134,4 +128,12 @@ QDBusArgument &operator<<(QDBusArgument &argument, const UnitFileInfoList &list) */ const QDBusArgument &operator>>(const QDBusArgument &argument, UnitFileInfoList &list); +/** + * @brief operator << Print UnitFileInfo object to debug stream + * @param debug Debug stream + * @param unit Unit file info + * @return Debug stream + */ +QDebug operator<<(QDebug debug, const UnitFileInfo &info); + #endif // UNIT_FILE_INFO_H diff --git a/deepin-system-monitor-main/gui/accounts_widget.cpp b/deepin-system-monitor-main/gui/accounts_widget.cpp index 01b52a97..6a0fbe29 100644 --- a/deepin-system-monitor-main/gui/accounts_widget.cpp +++ b/deepin-system-monitor-main/gui/accounts_widget.cpp @@ -45,7 +45,11 @@ void AccountsWidget::initUI() // setBackgroundRole(DPalette::Window); // 禁用横向滚动条,防止内容被截断 QVBoxLayout *mainContentLayout = new QVBoxLayout(this); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) mainContentLayout->setMargin(0); +#else + mainContentLayout->setContentsMargins(0, 0, 0, 0); +#endif mainContentLayout->setSpacing(0); mainContentLayout->addWidget(m_userlistView); diff --git a/deepin-system-monitor-main/gui/base/base_detail_item_delegate.cpp b/deepin-system-monitor-main/gui/base/base_detail_item_delegate.cpp index cb349f0d..39f5e250 100644 --- a/deepin-system-monitor-main/gui/base/base_detail_item_delegate.cpp +++ b/deepin-system-monitor-main/gui/base/base_detail_item_delegate.cpp @@ -7,7 +7,11 @@ #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -38,7 +42,11 @@ void BaseDetailItemDelegate::paint(QPainter *painter, { QBrush background; QColor backgroundColor; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) if (DApplicationHelper::instance()->themeType() == Dtk::Gui::DGuiApplicationHelper::ColorType::LightType) +#else + if (DGuiApplicationHelper::instance()->themeType() == Dtk::Gui::DGuiApplicationHelper::ColorType::LightType) +#endif { backgroundColor = QColor(0, 0, 0); backgroundColor.setAlphaF(0); @@ -64,14 +72,23 @@ void BaseDetailItemDelegate::paint(QPainter *painter, if (index.isValid()) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto <extpalette = index.data(Qt::TextColorRole).value(); +#else + const auto <extpalette = index.data(Qt::ForegroundRole).value(); +#endif painter->setPen(ltextpalette); QString ltext = index.data().toString(); QString rtext = index.data(Qt::UserRole).toString(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int rtmpW = painter->fontMetrics().width(rtext) + space; int ltmpW = painter->fontMetrics().width(ltext) + space; +#else + int rtmpW = painter->fontMetrics().horizontalAdvance(rtext) + space; + int ltmpW = painter->fontMetrics().horizontalAdvance(ltext) + space; +#endif int leftWidth = qMin(qMax(option.rect.width() - rtmpW - 2 * margin, 68), ltmpW); int rightWidth = qMin(option.rect.width() - leftWidth - 2 * margin, rtmpW); @@ -79,7 +96,11 @@ void BaseDetailItemDelegate::paint(QPainter *painter, ltext = painter->fontMetrics().elidedText(ltext, Qt::ElideRight, leftWidth); painter->drawText(option.rect.adjusted(margin, 0, 0, 0), Qt::AlignLeft | Qt::AlignVCenter, ltext); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &rtextpalette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &rtextpalette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif painter->setPen(rtextpalette.color(DPalette::TextTips)); rtext = painter->fontMetrics().elidedText(rtext, Qt::ElideRight, rightWidth); @@ -104,8 +125,13 @@ bool BaseDetailItemDelegate::helpEvent(QHelpEvent *e, QAbstractItemView *view, c QString ltext = index.data().toString(); QString rtext = index.data(Qt::UserRole).toString(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int rtmpW = fm.width(rtext) + space; int ltmpW = fm.width(ltext) + space; +#else + int rtmpW = fm.horizontalAdvance(rtext) + space; + int ltmpW = fm.horizontalAdvance(ltext) + space; +#endif int leftWidth = qMin(qMax(option.rect.width() - rtmpW - 2 * margin, 68), ltmpW); int rightWidth = qMin(option.rect.width() - leftWidth - 2 * margin, rtmpW); diff --git a/deepin-system-monitor-main/gui/base/base_detail_view_widget.cpp b/deepin-system-monitor-main/gui/base/base_detail_view_widget.cpp index 879d33de..2f241d0d 100644 --- a/deepin-system-monitor-main/gui/base/base_detail_view_widget.cpp +++ b/deepin-system-monitor-main/gui/base/base_detail_view_widget.cpp @@ -73,7 +73,11 @@ BaseDetailViewWidget::BaseDetailViewWidget(QWidget *parent) : QWidget(parent) // adjust search result tip label text color dynamically on theme type change onThemeTypeChanged(DGuiApplicationHelper::instance()->themeType()); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(DApplicationHelper::instance(), &DApplicationHelper::themeTypeChanged, this, &BaseDetailViewWidget::onThemeTypeChanged); +#else + connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, &BaseDetailViewWidget::onThemeTypeChanged); +#endif // 当前的策略是为了解决页面切换时,焦点停留在按钮上,这样设置不会影响代码的逻辑 if (stackViewWidget) stackViewWidget->setFocus(); @@ -134,12 +138,17 @@ void BaseDetailViewWidget::updateWidgetGrometry() { QFontMetrics titleFont(m_titleFont); const QMargins &margin = m_centralLayout->contentsMargins(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_arrowButton->setGeometry(margin.left() + titleFont.width(m_titleText) + 6, 10 + titleFont.height() / 2 - m_arrowButton->height() / 2, m_arrowButton->width(), m_arrowButton->height()); - m_detailButton->setFixedSize(m_detailButton->fontMetrics().width(m_detailButton->text()) + 16, m_detailButton->fontMetrics().height() + 4); const QSize &detailtextSize = m_detailButton->size(); - m_detailButton->setGeometry(this->width() - detailtextSize.width() - 6, 10 + titleFont.height() / 2 - detailtextSize.height() / 2, detailtextSize.width(), detailtextSize.height()); +#else + m_arrowButton->setGeometry(margin.left() + titleFont.horizontalAdvance(m_titleText) + 6, 10 + titleFont.height() / 2 - m_arrowButton->height() / 2, m_arrowButton->width(), m_arrowButton->height()); + m_detailButton->setFixedSize(m_detailButton->fontMetrics().horizontalAdvance(m_detailButton->text()) + 16, m_detailButton->fontMetrics().height() + 4); + const QSize &detailtextSize = m_detailButton->size(); +#endif + m_detailButton->setGeometry(this->width() - detailtextSize.width() - 6, 10 + titleFont.height() / 2 - detailtextSize.height() / 2, detailtextSize.width(), detailtextSize.height()); m_switchButton->setGeometry(m_detailButton->x() - 30, 10 + titleFont.height() / 2 - m_switchButton->height() / 2, m_switchButton->width(), m_switchButton->height()); } @@ -165,23 +174,39 @@ void BaseDetailViewWidget::paintEvent(QPaintEvent *event) QPainter painter(this); painter.setRenderHint(QPainter::Antialiasing, true); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); painter.setPen(Qt::NoPen); painter.setBrush(palette.color(DPalette::Base)); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) painter.drawRoundRect(this->rect(), 2, 2); +#else + painter.drawRoundedRect(this->rect(), 2, 2); +#endif painter.setFont(m_titleFont); painter.setPen(palette.color(DPalette::Text)); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect titleRect(m_centralLayout->contentsMargins().left(), 10, painter.fontMetrics().width(m_titleText), painter.fontMetrics().height()); +#else + QRect titleRect(m_centralLayout->contentsMargins().left(), 10, painter.fontMetrics().horizontalAdvance(m_titleText), painter.fontMetrics().height()); +#endif painter.drawText(titleRect, Qt::AlignLeft | Qt::AlignVCenter, m_titleText); m_centralLayout->setContentsMargins(16, titleRect.height() + 10, 16, 16); if (!m_detailText.isEmpty()) { painter.setFont(m_contentFont); painter.setPen(palette.color(DPalette::TextTips)); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect detailRect(m_arrowButton->width() + titleRect.right() + 12, titleRect.y(), painter.fontMetrics().width(m_detailText), titleRect.height()); +#else + QRect detailRect(m_arrowButton->width() + titleRect.right() + 12, titleRect.y(), painter.fontMetrics().horizontalAdvance(m_detailText), titleRect.height()); +#endif painter.drawText(detailRect, Qt::AlignLeft | Qt::AlignVCenter, m_detailText); } } diff --git a/deepin-system-monitor-main/gui/base/base_detail_view_widget.h b/deepin-system-monitor-main/gui/base/base_detail_view_widget.h index 75557e33..7c250bfe 100644 --- a/deepin-system-monitor-main/gui/base/base_detail_view_widget.h +++ b/deepin-system-monitor-main/gui/base/base_detail_view_widget.h @@ -8,7 +8,6 @@ #include #include -#include #include #include #include diff --git a/deepin-system-monitor-main/gui/base/base_header_view.cpp b/deepin-system-monitor-main/gui/base/base_header_view.cpp index 99d733c7..024db624 100644 --- a/deepin-system-monitor-main/gui/base/base_header_view.cpp +++ b/deepin-system-monitor-main/gui/base/base_header_view.cpp @@ -6,7 +6,11 @@ #include "base_header_view.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -58,7 +62,11 @@ void BaseHeaderView::paintEvent(QPaintEvent *event) innerPath.addRoundedRect(viewport()->rect(),8,8); outPath.addRect(viewport()->rect()); outPath=outPath.subtracted(innerPath); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) painter.fillPath(outPath,DApplicationHelper::instance()->applicationPalette().color(DPalette::Active,DPalette::AlternateBase)); +#else + painter.fillPath(outPath,DGuiApplicationHelper::instance()->applicationPalette().color(DPalette::Active,DPalette::AlternateBase)); +#endif } void BaseHeaderView::focusInEvent(QFocusEvent *event) diff --git a/deepin-system-monitor-main/gui/base/base_item_delegate.cpp b/deepin-system-monitor-main/gui/base/base_item_delegate.cpp index 094e7628..86bef72b 100644 --- a/deepin-system-monitor-main/gui/base/base_item_delegate.cpp +++ b/deepin-system-monitor-main/gui/base/base_item_delegate.cpp @@ -7,7 +7,11 @@ #include "process/process_icon_cache.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -22,7 +26,7 @@ #include DWIDGET_USE_NAMESPACE - +DGUI_USE_NAMESPACE // content margin const int margin = 10; // content spacing @@ -82,7 +86,11 @@ void BaseItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti auto iconSize = style->pixelMetric(DStyle::PM_ListViewIconSize, &option); // global palette +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif QPen forground; if (index.data(Qt::UserRole + 2).isValid()) { @@ -110,8 +118,13 @@ void BaseItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti } else { // color used when it's normal row & hovered by mouse if (opt.state & DStyle::State_MouseOver) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto type = DApplicationHelper::instance()->themeType(); forground = style->adjustColor(forground.color(), 0, 0, type == DApplicationHelper::DarkType ? 20 : -50); +#else + auto type = DGuiApplicationHelper::instance()->themeType(); + forground = style->adjustColor(forground.color(), 0, 0, type == DGuiApplicationHelper::ColorType::DarkType ? 20 : -50); +#endif } } } @@ -188,7 +201,8 @@ void BaseItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti // https://pms.uniontech.com/bug-view-239575.html const QString &procName = index.data(Qt::UserRole + 4).toString(); - QPixmap iconPixmap; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + QPixmap iconPixmap; core::process::ProcessIconCache::instance()->iconPixmapCache.find(procName, iconPixmap); if (!iconPixmap.isNull()) { painter->drawPixmap(iconRect, iconPixmap); @@ -197,6 +211,16 @@ void BaseItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti core::process::ProcessIconCache::instance()->iconPixmapCache.insert(procName, iconPix); painter->drawPixmap(iconRect, iconPix); } +#else + QPixmap iconPixmap; + if (core::process::ProcessIconCache::instance()->iconPixmapCache.find(procName, &iconPixmap)) { + painter->drawPixmap(iconRect, iconPixmap); + } else { + const QPixmap &iconPix = icon.pixmap(iconRect.size()); + core::process::ProcessIconCache::instance()->iconPixmapCache.insert(procName, iconPix); + painter->drawPixmap(iconRect, iconPix); + } +#endif } // draw content text painter->setPen(forground); diff --git a/deepin-system-monitor-main/gui/base/base_table_view.cpp b/deepin-system-monitor-main/gui/base/base_table_view.cpp index 071318ea..b4902099 100644 --- a/deepin-system-monitor-main/gui/base/base_table_view.cpp +++ b/deepin-system-monitor-main/gui/base/base_table_view.cpp @@ -9,7 +9,11 @@ #include "base_item_delegate.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -127,7 +131,11 @@ void BaseTableView::paintEvent(QPaintEvent *event) // DStyle object auto style = dynamic_cast(DApplication::style()); // global app helper instance +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif // global palette auto palette = dAppHelper->applicationPalette(); diff --git a/deepin-system-monitor-main/gui/block_dev_item_widget.cpp b/deepin-system-monitor-main/gui/block_dev_item_widget.cpp index d929b27f..ef10d110 100644 --- a/deepin-system-monitor-main/gui/block_dev_item_widget.cpp +++ b/deepin-system-monitor-main/gui/block_dev_item_widget.cpp @@ -13,7 +13,11 @@ #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif DWIDGET_USE_NAMESPACE using namespace common::format; @@ -97,12 +101,20 @@ void BlockDevItemWidget::paintEvent(QPaintEvent *event) painter.setFont(font); painter.setRenderHint(QPainter:: Antialiasing, true); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); QString deviceName = m_blokeDeviceInfo.deviceName().data(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int deviceNameWidth = painter.fontMetrics().width(deviceName); +#else + int deviceNameWidth = painter.fontMetrics().horizontalAdvance(deviceName); +#endif int deviceNameHeight = painter.fontMetrics().height(); QRect devtitleRect(curXMargin, margin, deviceNameWidth, deviceNameHeight); @@ -129,14 +141,22 @@ void BlockDevItemWidget::paintEvent(QPaintEvent *event) QString writeTitle = QString("%1 %2") .arg(tr("Write")) .arg(formatUnit_memory_disk(m_blokeDeviceInfo.writeSpeed(), B, 1, true)); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int readTitleWidth = painter.fontMetrics().width(readTitle); +#else + int readTitleWidth = painter.fontMetrics().horizontalAdvance(readTitle); +#endif int readTitleHeight = painter.fontMetrics().height(); if (m_mode == TITLE_HORIZONTAL) { QRect memtitleRect(sectionSize + devtitleRect.right() + spacing * 2, devtitleRect.y() + deviceNameHeight, readTitleWidth, readTitleHeight); painter.drawText(memtitleRect, Qt::AlignLeft | Qt::AlignVCenter, readTitle); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect swaptitleRect(sectionSize + memtitleRect.right() + 2 * spacing, memtitleRect.y() + readTitleHeight, painter.fontMetrics().width(writeTitle), painter.fontMetrics().height()); +#else + QRect swaptitleRect(sectionSize + memtitleRect.right() + 2 * spacing, memtitleRect.y() + readTitleHeight, painter.fontMetrics().horizontalAdvance(writeTitle), painter.fontMetrics().height()); +#endif painter.drawText(swaptitleRect, Qt::AlignLeft | Qt::AlignVCenter, writeTitle); painter.setPen(Qt::NoPen); @@ -157,7 +177,11 @@ void BlockDevItemWidget::paintEvent(QPaintEvent *event) painter.setPen(Qt::NoPen); painter.setBrush(writeColor); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect writeStrRect(devtitleRect.left() + spacing + sectionSize, readStrRect.y() + readTitleHeight, painter.fontMetrics().width(writeTitle), painter.fontMetrics().height()); +#else + QRect writeStrRect(devtitleRect.left() + spacing + sectionSize, readStrRect.y() + readTitleHeight, painter.fontMetrics().horizontalAdvance(writeTitle), painter.fontMetrics().height()); +#endif painter.drawEllipse(devtitleRect.left(), writeStrRect.y() + qCeil((writeStrRect.height() - sectionSize) / 2.0), sectionSize, sectionSize); // 写硬盘速度的颜色提示 painter.setPen(palette.color(DPalette::TextTips)); painter.drawText(writeStrRect, writeTitle); diff --git a/deepin-system-monitor-main/gui/block_dev_summary_view_widget.cpp b/deepin-system-monitor-main/gui/block_dev_summary_view_widget.cpp index 0206d46f..c5a1b03d 100644 --- a/deepin-system-monitor-main/gui/block_dev_summary_view_widget.cpp +++ b/deepin-system-monitor-main/gui/block_dev_summary_view_widget.cpp @@ -16,7 +16,11 @@ #include "base/base_detail_item_delegate.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -144,8 +148,13 @@ class DeailTableModelBlock : public QAbstractTableModel return m_blockInfo.writeRequestMergedPerSecond(); break; } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) } else if (role == Qt::TextColorRole) { const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + } else if (role == Qt::ForegroundRole) { + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif return palette.color(DPalette::Text); } return QVariant(); @@ -256,7 +265,11 @@ void BlockDevSummaryViewWidget::paintEvent(QPaintEvent *event) DTableView::paintEvent(event); QPainter painter(this->viewport()); painter.setRenderHints(QPainter::Antialiasing); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif QColor frameColor = palette.color(DPalette::FrameBorder); frameColor.setAlphaF(SUMMARY_CHART_LINE_ALPH); painter.setPen(QPen(frameColor, 1)); diff --git a/deepin-system-monitor-main/gui/chart_view_widget.cpp b/deepin-system-monitor-main/gui/chart_view_widget.cpp index fac45fe1..4cd48d90 100644 --- a/deepin-system-monitor-main/gui/chart_view_widget.cpp +++ b/deepin-system-monitor-main/gui/chart_view_widget.cpp @@ -7,7 +7,11 @@ #include "common/common.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -21,7 +25,11 @@ ChartViewWidget::ChartViewWidget(ChartViewTypes types, QWidget *parent) : QWidge connect(dynamic_cast(DApplication::instance()), &DApplication::fontChanged, this, &ChartViewWidget::changeFont); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(DApplicationHelper::instance(), &DApplicationHelper::themeTypeChanged, this, &ChartViewWidget::changeTheme); +#else + connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, &ChartViewWidget::changeTheme); +#endif } void ChartViewWidget::changeTheme() @@ -34,9 +42,9 @@ void ChartViewWidget::setSpeedAxis(bool speed) { m_speedAxis = speed; if (m_viewType == BLOCK_CHART || m_viewType == MEM_CHART) - setAxisTitle(formatUnit_memory_disk(qMax(m_maxData1, m_maxData2), B, 1, true)); + setAxisTitle(formatUnit_memory_disk(qMax(m_maxData1.toLongLong(), m_maxData2.toLongLong()), B, 1, true)); else - setAxisTitle(formatUnit_net(qMax(m_maxData1, m_maxData2), B, 1, true)); + setAxisTitle(formatUnit_net(qMax(m_maxData1.toLongLong(), m_maxData2.toLongLong()), B, 1, true)); } void ChartViewWidget::setData1Color(const QColor &color) @@ -51,10 +59,14 @@ void ChartViewWidget::addData1(const QVariant &data) m_listData1.pop_front(); } - const QVariant &maxdata = *std::max_element(m_listData1.begin(), m_listData1.end()); + auto maxElement = std::max_element(m_listData1.begin(), m_listData1.end(), + [](const QVariant &a, const QVariant &b) { + return a.toLongLong() < b.toLongLong(); + }); + const QVariant &maxdata = *maxElement; if (maxdata.toLongLong() > 0 && maxdata != m_maxData1) { m_maxData1 = QVariant(maxdata.toLongLong() * 1.1); - m_maxData = qMax(m_maxData1, m_maxData2); + m_maxData = qMax(m_maxData1.toLongLong(), m_maxData2.toLongLong()); // 这边需要通过当前的图标界面类型去区分, 内存和磁盘统一处理 if (m_speedAxis) { @@ -87,10 +99,14 @@ void ChartViewWidget::addData2(const QVariant &data) m_listData2.pop_front(); } - const QVariant &maxdata = *std::max_element(m_listData2.begin(), m_listData2.end()); + auto maxElement = std::max_element(m_listData2.begin(), m_listData2.end(), + [](const QVariant &a, const QVariant &b) { + return a.toDouble() < b.toDouble(); + }); + const QVariant &maxdata = *maxElement; if (maxdata.toLongLong() > 0 && maxdata != m_maxData2) { m_maxData2 = QVariant(maxdata.toLongLong() * 1.1); - m_maxData = qMax(m_maxData1, m_maxData2); + m_maxData = qMax(m_maxData1.toLongLong(), m_maxData2.toLongLong()); if (m_speedAxis) { if (m_viewType == BLOCK_CHART || m_viewType == MEM_CHART) @@ -210,7 +226,11 @@ void ChartViewWidget::drawBackPixmap() QPainter painter(&m_backPixmap); // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); QColor frameColor = palette.color(DPalette::TextTips); frameColor.setAlphaF(0.3); @@ -256,7 +276,11 @@ void ChartViewWidget::drawBackPixmap() void ChartViewWidget::drawAxisText(QPainter *painter) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); QColor color = palette.color(DPalette::ToolTipText); color.setAlphaF(0.3); diff --git a/deepin-system-monitor-main/gui/cpu_detail_widget.cpp b/deepin-system-monitor-main/gui/cpu_detail_widget.cpp index bb5c0a93..92ae70e8 100644 --- a/deepin-system-monitor-main/gui/cpu_detail_widget.cpp +++ b/deepin-system-monitor-main/gui/cpu_detail_widget.cpp @@ -15,7 +15,11 @@ #include "cpu_summary_view_widget.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -121,7 +125,11 @@ void CPUDetailGrapTableItem::drawNormalMode(QPainter &painter) drawBackground(painter, graphicRect); //draw text +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); painter.setPen(palette.color(DPalette::TextTips)); painter.setRenderHints(QPainter::Antialiasing); @@ -211,7 +219,11 @@ void CPUDetailGrapTableItem::drawTextMode(QPainter &painter) QRect rect = QRect(0, 0, this->width() - (m_isHorizontalLast ? 1 : 0), this->height() - (m_isVerticalLast ? 1 : 0)); // draw frame +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); QColor frameColor = palette.color(DPalette::FrameBorder); painter.setPen(frameColor); @@ -238,7 +250,11 @@ void CPUDetailGrapTableItem::drawSingleCoreMode(QPainter &painter) drawBackground(painter, graphicRect); //draw text +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); painter.setPen(palette.color(DPalette::TextTips)); painter.setRenderHints(QPainter::Antialiasing); @@ -280,7 +296,11 @@ void CPUDetailGrapTableItem::drawSingleCoreMode(QPainter &painter) void CPUDetailGrapTableItem::drawBackground(QPainter &painter, const QRect &graphicRect) { // draw frame +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); QColor frameColor = palette.color(DPalette::TextTips); frameColor.setAlphaF(0.3); @@ -381,7 +401,11 @@ void CPUDetailGrapTable::setMutliCoreMode(bool isMutliCoreMode) void CPUDetailGrapTable::setSingleModeLayout(CPUInfoModel *model) { QGridLayout *graphicsLayout = new QGridLayout(this); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) graphicsLayout->setMargin(0); +#else + graphicsLayout->setContentsMargins(0, 0, 0, 0); +#endif graphicsLayout->setHorizontalSpacing(10); graphicsLayout->setVerticalSpacing(10); @@ -399,7 +423,11 @@ void CPUDetailGrapTable::setSingleModeLayout(CPUInfoModel *model) void CPUDetailGrapTable::setMultiModeLayout(CPUInfoModel *model) { QGridLayout *graphicsLayout = new QGridLayout(this); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) graphicsLayout->setMargin(0); +#else + graphicsLayout->setContentsMargins(0, 0, 0, 0); +#endif graphicsLayout->setHorizontalSpacing(10); graphicsLayout->setVerticalSpacing(10); diff --git a/deepin-system-monitor-main/gui/cpu_summary_view_widget.cpp b/deepin-system-monitor-main/gui/cpu_summary_view_widget.cpp index dd6aab09..74b57b29 100644 --- a/deepin-system-monitor-main/gui/cpu_summary_view_widget.cpp +++ b/deepin-system-monitor-main/gui/cpu_summary_view_widget.cpp @@ -73,7 +73,11 @@ void CPUDetailSummaryTable::paintEvent(QPaintEvent *event) QPainter painter(this->viewport()); painter.setRenderHint(QPainter::Antialiasing, true); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif QColor frameColor = palette.color(DPalette::FrameBorder); frameColor.setAlphaF(SUMMARY_CHART_LINE_ALPH); diff --git a/deepin-system-monitor-main/gui/cpu_summary_view_widget.h b/deepin-system-monitor-main/gui/cpu_summary_view_widget.h index 13df65fc..3f90085f 100644 --- a/deepin-system-monitor-main/gui/cpu_summary_view_widget.h +++ b/deepin-system-monitor-main/gui/cpu_summary_view_widget.h @@ -8,7 +8,11 @@ #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -199,8 +203,18 @@ class CPUSummaryTableModel : public QAbstractTableModel default: break; } - } else if (role == Qt::TextColorRole) { + } else if ( +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + role == Qt::TextColorRole +#else + role == Qt::ForegroundRole +#endif + ) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif return palette.color(DPalette::Text); } diff --git a/deepin-system-monitor-main/gui/dialog/error_dialog.cpp b/deepin-system-monitor-main/gui/dialog/error_dialog.cpp index 215ca28f..f16fb6b6 100644 --- a/deepin-system-monitor-main/gui/dialog/error_dialog.cpp +++ b/deepin-system-monitor-main/gui/dialog/error_dialog.cpp @@ -7,7 +7,12 @@ #include "gui/ui_common.h" +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#include +#endif #include #include @@ -33,10 +38,18 @@ void ErrorDialog::initUI() m_detailLabel = new DLabel(this); // global palette of current theme +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto pa = DApplicationHelper::instance()->palette(m_detailLabel); +#else + auto pa = DPaletteHelper::instance()->palette(m_detailLabel); +#endif // get TextTips color from palette auto color = pa.color(DPalette::TextTips); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) pa.setColor(DPalette::Foreground, color); +#else + pa.setColor(DPalette::Text, color); +#endif // set palette for error detail label m_detailLabel->setPalette(pa); // bind font size diff --git a/deepin-system-monitor-main/gui/dialog/systemprotectionsetting.cpp b/deepin-system-monitor-main/gui/dialog/systemprotectionsetting.cpp index a6d20bd1..e85a64c7 100644 --- a/deepin-system-monitor-main/gui/dialog/systemprotectionsetting.cpp +++ b/deepin-system-monitor-main/gui/dialog/systemprotectionsetting.cpp @@ -11,7 +11,6 @@ #include #include #include -#include #include #include diff --git a/deepin-system-monitor-main/gui/main_window.cpp b/deepin-system-monitor-main/gui/main_window.cpp index 5235576c..f7c96b1b 100644 --- a/deepin-system-monitor-main/gui/main_window.cpp +++ b/deepin-system-monitor-main/gui/main_window.cpp @@ -17,16 +17,18 @@ #include "common/eventlogutils.h" #include -#include #include #ifdef DTKCORE_CLASS_DConfigFile # include #endif #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#endif #include #include +#include using namespace core::process; using namespace common::init; @@ -42,7 +44,11 @@ MainWindow::MainWindow(QWidget *parent) { m_settings = Settings::instance(); setMinimumSize(WINDOW_MIN_WIDTH, WINDOW_MIN_HEIGHT); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) setMaximumSize(QApplication::desktop()->size()); +#else + setMaximumSize(QGuiApplication::primaryScreen()->size()); +#endif connect(this, &MainWindow::loadingStatusChanged, this, &MainWindow::onLoadStatusChanged); #ifdef DTKCORE_CLASS_DConfigFile //需要查询是否支持特殊机型静音恢复,例如hw机型 @@ -114,7 +120,11 @@ void MainWindow::initUI() // kill process menu item QAction *killAction = new QAction(DApplication::translate("Title.Bar.Context.Menu", "Force end application"), menu); // control + alt + k +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) killAction->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_K)); +#else + killAction->setShortcut(QKeyCombination(Qt::CTRL | Qt::ALT, Qt::Key_K)); +#endif // emit process kill requested signal if kill process menu item triggered connect(killAction, &QAction::triggered, this, [=]() { Q_EMIT killProcessPerformed(); }); menu->addAction(killAction); diff --git a/deepin-system-monitor-main/gui/mem_detail_view_widget.cpp b/deepin-system-monitor-main/gui/mem_detail_view_widget.cpp index 8e6ec901..42c82835 100644 --- a/deepin-system-monitor-main/gui/mem_detail_view_widget.cpp +++ b/deepin-system-monitor-main/gui/mem_detail_view_widget.cpp @@ -8,7 +8,6 @@ #include "mem_summary_view_widget.h" #include "system/system_monitor.h" -#include #include #include diff --git a/deepin-system-monitor-main/gui/mem_stat_view_widget.cpp b/deepin-system-monitor-main/gui/mem_stat_view_widget.cpp index 206f14c5..d617aed5 100644 --- a/deepin-system-monitor-main/gui/mem_stat_view_widget.cpp +++ b/deepin-system-monitor-main/gui/mem_stat_view_widget.cpp @@ -13,7 +13,11 @@ #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif using namespace common::format; using namespace core::system; @@ -79,7 +83,11 @@ void MemStatViewWidget::paintEvent(QPaintEvent *event) painter.setFont(font); painter.setRenderHint(QPainter::Antialiasing, true); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); painter.setPen(palette.color(DPalette::TextTips)); @@ -87,11 +95,19 @@ void MemStatViewWidget::paintEvent(QPaintEvent *event) int sectionSize = 6; QString memory = DApplication::translate("Process.Graph.Title", "Memory"); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect memtitleRect(sectionSize + spacing, 0, painter.fontMetrics().width(memory), painter.fontMetrics().height()); +#else + QRect memtitleRect(sectionSize + spacing, 0, painter.fontMetrics().horizontalAdvance(memory), painter.fontMetrics().height()); +#endif painter.drawText(memtitleRect, Qt::AlignLeft | Qt::AlignVCenter, memory); QString swap = DApplication::translate("Process.Graph.View", "Swap"); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect swaptitleRect(sectionSize + memtitleRect.right() + 2 * spacing, memtitleRect.y(), painter.fontMetrics().width(swap), painter.fontMetrics().height()); +#else + QRect swaptitleRect(sectionSize + memtitleRect.right() + 2 * spacing, memtitleRect.y(), painter.fontMetrics().horizontalAdvance(swap), painter.fontMetrics().height()); +#endif if (m_memInfo->swapTotal() > 0) { painter.drawText(swaptitleRect, Qt::AlignLeft | Qt::AlignVCenter, swap); diff --git a/deepin-system-monitor-main/gui/mem_summary_view_widget.cpp b/deepin-system-monitor-main/gui/mem_summary_view_widget.cpp index 227c7685..92a13e56 100644 --- a/deepin-system-monitor-main/gui/mem_summary_view_widget.cpp +++ b/deepin-system-monitor-main/gui/mem_summary_view_widget.cpp @@ -10,7 +10,11 @@ #include "base/base_detail_item_delegate.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -141,8 +145,13 @@ class DeailTableModel : public QAbstractTableModel default: break; } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) } else if (role == Qt::TextColorRole) { const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + } else if (role == Qt::ForegroundRole) { + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif return palette.color(DPalette::Text); } @@ -217,7 +226,11 @@ void MemSummaryViewWidget::paintEvent(QPaintEvent *event) QPainter painter(this->viewport()); painter.setRenderHint(QPainter::Antialiasing, true); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif QColor frameColor = palette.color(DPalette::FrameBorder); frameColor.setAlphaF(SUMMARY_CHART_LINE_ALPH); diff --git a/deepin-system-monitor-main/gui/monitor_compact_view.cpp b/deepin-system-monitor-main/gui/monitor_compact_view.cpp index 21e85ae7..99e96906 100644 --- a/deepin-system-monitor-main/gui/monitor_compact_view.cpp +++ b/deepin-system-monitor-main/gui/monitor_compact_view.cpp @@ -11,7 +11,6 @@ #include "compact_network_monitor.h" #include "detailwidgetmanager.h" -#include #include #include @@ -39,7 +38,11 @@ MonitorCompactView::MonitorCompactView(QWidget *parent) // vertical layout to hold monitor instances QVBoxLayout *layout = new QVBoxLayout(this); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) layout->setMargin(0); +#else + layout->setContentsMargins(0, 0, 0, 0); +#endif layout->setSpacing(10); layout->addStretch(1); layout->addWidget(m_cpuMonitor, 0, Qt::AlignHCenter); diff --git a/deepin-system-monitor-main/gui/monitor_expand_view.cpp b/deepin-system-monitor-main/gui/monitor_expand_view.cpp index f973f38c..f47e1acd 100644 --- a/deepin-system-monitor-main/gui/monitor_expand_view.cpp +++ b/deepin-system-monitor-main/gui/monitor_expand_view.cpp @@ -10,7 +10,6 @@ #include "network_monitor.h" #include "detailwidgetmanager.h" -#include #include #include @@ -36,7 +35,11 @@ MonitorExpandView::MonitorExpandView(QWidget *parent) // monitor view layout QVBoxLayout *layout = new QVBoxLayout(this); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) layout->setMargin(0); +#else + layout->setContentsMargins(0, 0, 0, 0); +#endif layout->setSpacing(0); layout->addStretch(1); layout->addWidget(m_cpuMonitor, 0, Qt::AlignHCenter); diff --git a/deepin-system-monitor-main/gui/netif_item_view_widget.cpp b/deepin-system-monitor-main/gui/netif_item_view_widget.cpp index 94fbe62e..03979ec0 100644 --- a/deepin-system-monitor-main/gui/netif_item_view_widget.cpp +++ b/deepin-system-monitor-main/gui/netif_item_view_widget.cpp @@ -12,7 +12,11 @@ #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif using namespace common::format; using namespace core::system; @@ -44,7 +48,11 @@ void NetifItemViewWidget::paintEvent(QPaintEvent *event) painter.setRenderHint(QPainter::Antialiasing, true); painter.setFont(m_font); - DApplicationHelper *dAppHelper = DApplicationHelper::instance(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif const DPalette &palette = dAppHelper->applicationPalette(); const QColor &textColor = palette.color(DPalette::TextTips); @@ -61,24 +69,39 @@ void NetifItemViewWidget::paintEvent(QPaintEvent *event) painter.setPen(textColor); } - +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect ifnameRect(curXMargin, margin / 2, painter.fontMetrics().width(m_ifname), painter.fontMetrics().height()); +#else + QRect ifnameRect(curXMargin, margin / 2, painter.fontMetrics().horizontalAdvance(m_ifname), painter.fontMetrics().height()); +#endif painter.drawText(ifnameRect, Qt::AlignLeft | Qt::AlignVCenter, m_ifname); painter.setPen(textColor); if (m_mode == TITLE_HORIZONTAL) { QString strLeftBrackets = "("; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect leftBracketsRect(ifnameRect.right() + spacing, ifnameRect.y(), painter.fontMetrics().width(strLeftBrackets), painter.fontMetrics().height()); +#else + QRect leftBracketsRect(ifnameRect.right() + spacing, ifnameRect.y(), painter.fontMetrics().horizontalAdvance(strLeftBrackets), painter.fontMetrics().height()); +#endif painter.drawText(leftBracketsRect, Qt::AlignLeft | Qt::AlignVCenter, strLeftBrackets); QString strRecvData = DApplication::translate("Process.Graph.Title", "Receive"); strRecvData = strRecvData + " " + m_recv_bps; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect recvRect(leftBracketsRect.right() + spacing * 2 + sectionSize, ifnameRect.y(), painter.fontMetrics().width(strRecvData), painter.fontMetrics().height()); +#else + QRect recvRect(leftBracketsRect.right() + spacing * 2 + sectionSize, ifnameRect.y(), painter.fontMetrics().horizontalAdvance(strRecvData), painter.fontMetrics().height()); +#endif painter.drawText(recvRect, Qt::AlignLeft | Qt::AlignVCenter, strRecvData); QString strSentData = DApplication::translate("Process.Graph.View", "Send"); strSentData = strSentData + " " + m_sent_bps + " )"; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect sentRect(sectionSize + recvRect.right() + 3 * spacing, ifnameRect.y(), painter.fontMetrics().width(strSentData), painter.fontMetrics().height()); +#else + QRect sentRect(sectionSize + recvRect.right() + 3 * spacing, ifnameRect.y(), painter.fontMetrics().horizontalAdvance(strSentData), painter.fontMetrics().height()); +#endif painter.drawText(sentRect, Qt::AlignLeft | Qt::AlignVCenter, strSentData); painter.setPen(Qt::NoPen); @@ -91,12 +114,20 @@ void NetifItemViewWidget::paintEvent(QPaintEvent *event) QString strRecvData = DApplication::translate("Process.Graph.Title", "Receive"); strRecvData = strRecvData + " " + m_recv_bps; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect recvRect(margin + spacing + sectionSize, ifnameRect.bottom(), painter.fontMetrics().width(strRecvData), painter.fontMetrics().height()); +#else + QRect recvRect(margin + spacing + sectionSize, ifnameRect.bottom(), painter.fontMetrics().horizontalAdvance(strRecvData), painter.fontMetrics().height()); +#endif painter.drawText(recvRect, Qt::AlignLeft | Qt::AlignVCenter, strRecvData); QString strSentData = DApplication::translate("Process.Graph.View", "Send"); strSentData = strSentData + " " + m_sent_bps; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QRect sentRect(margin + spacing + sectionSize, recvRect.bottom(), painter.fontMetrics().width(strSentData), painter.fontMetrics().height()); +#else + QRect sentRect(margin + spacing + sectionSize, recvRect.bottom(), painter.fontMetrics().horizontalAdvance(strSentData), painter.fontMetrics().height()); +#endif painter.drawText(sentRect, Qt::AlignLeft | Qt::AlignVCenter, strSentData); diff --git a/deepin-system-monitor-main/gui/netif_summary_view_widget.cpp b/deepin-system-monitor-main/gui/netif_summary_view_widget.cpp index 2dc8cab3..e86fcdb3 100644 --- a/deepin-system-monitor-main/gui/netif_summary_view_widget.cpp +++ b/deepin-system-monitor-main/gui/netif_summary_view_widget.cpp @@ -102,7 +102,11 @@ void NetifSummaryViewWidget::paintEvent(QPaintEvent *event) QPainter painter(this->viewport()); painter.setRenderHint(QPainter::Antialiasing, true); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif QColor frameColor = palette.color(DPalette::FrameBorder); frameColor.setAlphaF(SUMMARY_CHART_LINE_ALPH); diff --git a/deepin-system-monitor-main/gui/netif_summary_view_widget.h b/deepin-system-monitor-main/gui/netif_summary_view_widget.h index 5dd2832a..f7d66b25 100644 --- a/deepin-system-monitor-main/gui/netif_summary_view_widget.h +++ b/deepin-system-monitor-main/gui/netif_summary_view_widget.h @@ -10,15 +10,20 @@ #include #include #include -#include #include #include -#include -#include #include #include -#include "system/netif.h" +#include +#include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include +#else +#include +#endif + +#include "system/netif.h" #include "system/device_db.h" #include "common/common.h" #include "system/netif.h" @@ -96,10 +101,18 @@ class NetInfoDetailItemDelegate : public QStyledItemDelegate const QStyleOptionViewItem &option, const QModelIndex &index) const { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif QBrush background; QColor backgroundColor; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) if (DApplicationHelper::instance()->themeType() == Dtk::Gui::DGuiApplicationHelper::ColorType::LightType) +#else + if (DGuiApplicationHelper::instance()->themeType() == Dtk::Gui::DGuiApplicationHelper::ColorType::LightType) +#endif { backgroundColor = QColor(0, 0, 0); backgroundColor.setAlphaF(0); @@ -149,11 +162,19 @@ class NetInfoDetailItemDelegate : public QStyledItemDelegate if ((listKey.count() == listValue.count()) && (listValue.count() == 3)) { // 获取key最宽的数值 QFontMetrics fm(painter->font()); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int iMaxW = fm.width(listKey[0]); for (int i = 1; i < listKey.count(); ++i) { if (iMaxW < fm.width(listKey[i])) iMaxW = fm.width(listKey[i]); } +#else + int iMaxW = fm.horizontalAdvance(listKey[0]); + for (int i = 1; i < listKey.count(); ++i) { + if (iMaxW < fm.horizontalAdvance(listKey[i])) + iMaxW = fm.horizontalAdvance(listKey[i]); + } +#endif // 绘制内容 for (int i = 0; i < listKey.count(); ++i) { @@ -161,7 +182,11 @@ class NetInfoDetailItemDelegate : public QStyledItemDelegate QRect titleRect; titleRect.setX(textRect.x()); titleRect.setY(textRect.y() + TOPMARGIN + i * fm.height()); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) titleRect.setWidth(fm.width(listKey[i])); +#else + titleRect.setWidth(fm.horizontalAdvance(listKey[i])); +#endif titleRect.setHeight(fm.height()); painter->drawText(titleRect, Qt::AlignLeft | Qt::AlignVCenter, listKey[i]); @@ -169,7 +194,11 @@ class NetInfoDetailItemDelegate : public QStyledItemDelegate QRect valueRect; valueRect.setX(textRect.x() + iMaxW + TEXTSPACING); valueRect.setY(textRect.y() + TOPMARGIN + i * fm.height()); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) valueRect.setWidth(fm.width(listValue[i])); +#else + valueRect.setWidth(fm.horizontalAdvance(listValue[i])); +#endif valueRect.setHeight(fm.height()); painter->drawText(valueRect, Qt::AlignLeft | Qt::AlignVCenter, listValue[i]); } diff --git a/deepin-system-monitor-main/gui/process_attribute_dialog.cpp b/deepin-system-monitor-main/gui/process_attribute_dialog.cpp index 41a20660..85b07376 100644 --- a/deepin-system-monitor-main/gui/process_attribute_dialog.cpp +++ b/deepin-system-monitor-main/gui/process_attribute_dialog.cpp @@ -9,7 +9,6 @@ #include "common/common.h" #include -#include #include #include #include @@ -98,7 +97,11 @@ void ProcessAttributeDialog::initUI() // frame layout auto *vlayout = new QVBoxLayout(m_frame); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) vlayout->setMargin(m_margin); +#else + vlayout->setContentsMargins(m_margin, m_margin, m_margin, m_margin); +#endif vlayout->setSpacing(m_margin); vlayout->addStretch(1); @@ -122,7 +125,11 @@ void ProcessAttributeDialog::initUI() auto *grid = new QGridLayout(wnd); grid->setHorizontalSpacing(m_margin); grid->setVerticalSpacing(0); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) grid->setMargin(0); +#else + grid->setContentsMargins(0, 0, 0, 0); +#endif QString buf; buf = QString("%1:").arg(DApplication::translate("Process.Attributes.Dialog", "Name")); @@ -219,9 +226,15 @@ void ProcessAttributeDialog::resizeEvent(QResizeEvent *event) void ProcessAttributeDialog::resizeItemWidget() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_procNameLabel->setFixedSize(m_procNameLabel->fontMetrics().width(m_procNameLabel->text()), m_procNameLabel->fontMetrics().height()); m_procCmdLabel->setFixedSize(m_procCmdLabel->fontMetrics().width(m_procCmdLabel->text()), m_procCmdLabel->fontMetrics().height()); m_procStartLabel->setFixedSize(m_procStartLabel->fontMetrics().width(m_procStartLabel->text()), m_procStartLabel->fontMetrics().height()); +#else + m_procNameLabel->setFixedSize(m_procNameLabel->fontMetrics().horizontalAdvance(m_procNameLabel->text()), m_procNameLabel->fontMetrics().height()); + m_procCmdLabel->setFixedSize(m_procCmdLabel->fontMetrics().horizontalAdvance(m_procCmdLabel->text()), m_procCmdLabel->fontMetrics().height()); + m_procStartLabel->setFixedSize(m_procStartLabel->fontMetrics().horizontalAdvance(m_procStartLabel->text()), m_procStartLabel->fontMetrics().height()); +#endif int procNametextH = qMin(120, int(m_procNameText->document()->size().height())); m_procNameText->setFixedSize(qMin(kPreferedTextWidth, m_procNameText->fontMetrics().size(Qt::TextSingleLine, m_procNameText->toPlainText()).width()), procNametextH); diff --git a/deepin-system-monitor-main/gui/process_page_widget.cpp b/deepin-system-monitor-main/gui/process_page_widget.cpp index 5ed578b5..6bd0c94e 100644 --- a/deepin-system-monitor-main/gui/process_page_widget.cpp +++ b/deepin-system-monitor-main/gui/process_page_widget.cpp @@ -24,13 +24,20 @@ #include "common/eventlogutils.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#include +#endif #include #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#endif #include #include #include @@ -77,7 +84,11 @@ ProcessPageWidget::~ProcessPageWidget() {} void ProcessPageWidget::initUI() { // global app helper instance +#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)) + auto *dAppHelper = DGuiApplicationHelper::instance(); +#else auto *dAppHelper = DApplicationHelper::instance(); +#endif // global palette auto palette = dAppHelper->applicationPalette(); @@ -115,7 +126,11 @@ void ProcessPageWidget::initUI() // text aligment m_procViewMode->setAlignment(Qt::AlignLeft | Qt::AlignVCenter); // change text color to text title style +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto pam = DApplicationHelper::instance()->palette(m_procViewMode); +#else + auto pam = DPaletteHelper::instance()->palette(m_procViewMode); +#endif palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_procViewMode->setPalette(palette); @@ -126,13 +141,22 @@ void ProcessPageWidget::initUI() m_procViewModeSummary->setAlignment(Qt::AlignLeft | Qt::AlignVCenter); m_procViewModeSummary->setElideMode(Qt::ElideRight); // change text color to text tips style +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto pa = DApplicationHelper::instance()->palette(m_procViewModeSummary); +#else + auto pa = DPaletteHelper::instance()->palette(m_procViewModeSummary); +#endif palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_procViewModeSummary->setPalette(palette); // change icon type when theme changed +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &ProcessPageWidget::changeIconTheme); +#else + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, + &ProcessPageWidget::changeIconTheme); +#endif auto *modeButtonGroup = new DButtonBox(tw); modeButtonGroup->setFixedWidth(30 * 3); @@ -290,16 +314,29 @@ void ProcessPageWidget::initConnections() // Note: do not update on non-GUI thread. connect(monitor, &SystemMonitor::appAndProcCountUpdate, this, &ProcessPageWidget::onAppAndProcCountUpdated); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); // change text color dynamically on theme type change, if not do this way, text color wont synchronize with theme type connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, [=]() { +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, [=]() { +#endif if (m_procViewMode) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_procViewMode->setPalette(palette); } if (m_procViewModeSummary) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_procViewModeSummary->setPalette(palette); } @@ -386,9 +423,17 @@ void ProcessPageWidget::paintEvent(QPaintEvent *) path.addRect(QRectF(rect())); painter.setOpacity(1); - DApplicationHelper *dAppHelper = DApplicationHelper::instance(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif DPalette palette = dAppHelper->applicationPalette(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QColor bgColor = palette.color(DPalette::Background); +#else + QColor bgColor = palette.color(DPalette::Window); +#endif // // 显示0.1s // QTimer::singleShot(NORMAL_PERFORMANCE_CPU_LOADING_TIME, this, [ = ]() {m_loadingAndProcessTB->setCurrentWidget(m_procTable);}); @@ -419,7 +464,11 @@ void ProcessPageWidget::changeIconTheme(DGuiApplicationHelper::ColorType themeTy QIcon myProcIcon; QIcon allProcIcon; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) if (themeType == DApplicationHelper::LightType) { +#else + if (themeType == DGuiApplicationHelper::LightType) { +#endif // light theme icon appIcon.addFile(iconPathFromQrc("light/app_normal.svg"), {}, QIcon::Normal, QIcon::Off); appIcon.addFile(iconPathFromQrc("light/app_highlight.svg"), {}, QIcon::Normal, QIcon::On); @@ -429,7 +478,11 @@ void ProcessPageWidget::changeIconTheme(DGuiApplicationHelper::ColorType themeTy allProcIcon.addFile(iconPathFromQrc("light/all_normal.svg"), {}, QIcon::Normal, QIcon::Off); allProcIcon.addFile(iconPathFromQrc("light/all_highlight.svg"), {}, QIcon::Normal, QIcon::On); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) } else if (themeType == DApplicationHelper::DarkType) { +#else + } else if (themeType == DGuiApplicationHelper::DarkType) { +#endif // dark theme icon appIcon.addFile(iconPathFromQrc("dark/app_normal_dark.svg"), {}, QIcon::Normal, QIcon::Off); appIcon.addFile(iconPathFromQrc("dark/app_highlight.svg"), {}, QIcon::Normal, QIcon::On); diff --git a/deepin-system-monitor-main/gui/process_page_widget.h b/deepin-system-monitor-main/gui/process_page_widget.h index c222b010..d8e2b860 100644 --- a/deepin-system-monitor-main/gui/process_page_widget.h +++ b/deepin-system-monitor-main/gui/process_page_widget.h @@ -9,7 +9,11 @@ #include "ui_common.h" #include "model/cpu_info_model.h" +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -104,7 +108,11 @@ private Q_SLOTS: * @brief Change icons when theme changed * @param themeType Theme currently applied */ +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeIconTheme(DApplicationHelper::ColorType themeType); +#else + void changeIconTheme(DGuiApplicationHelper::ColorType themeType); +#endif /** * @brief 列表数据刷新,更新应用和进程统计 diff --git a/deepin-system-monitor-main/gui/process_table_view.cpp b/deepin-system-monitor-main/gui/process_table_view.cpp index 2806f9c6..22dccf9b 100644 --- a/deepin-system-monitor-main/gui/process_table_view.cpp +++ b/deepin-system-monitor-main/gui/process_table_view.cpp @@ -24,7 +24,12 @@ #include "helper.hpp" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#include +#endif #include #include #include @@ -46,6 +51,7 @@ #include #include #include +#include using namespace DDLog; using namespace common::init; @@ -77,7 +83,11 @@ ProcessTableView::ProcessTableView(DWidget *parent, QString userName) initConnections(settingsLoaded); // adjust search result tip label text color dynamically on theme type change onThemeTypeChanged(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(DApplicationHelper::instance(), &DApplicationHelper::themeTypeChanged, this, &ProcessTableView::onThemeTypeChanged); +#else + connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, &ProcessTableView::onThemeTypeChanged); +#endif if (!userName.isNull()) { m_cpuUsage = m_model->getTotalCPUUsage(); m_memUsage = m_model->getTotalMemoryUsage(); @@ -99,7 +109,11 @@ ProcessTableView::~ProcessTableView() void ProcessTableView::onThemeTypeChanged() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif palette.setColor(DPalette::Text, palette.color(DPalette::PlaceholderText)); m_notFoundLabel->setPalette(palette); } @@ -256,7 +270,11 @@ void ProcessTableView::openExecDirWithFM() QString devStr; do { QString line = file.readLine(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto works = line.split(" ", QString::SkipEmptyParts); +#else + auto works = line.split(" ", Qt::SkipEmptyParts); +#endif if (works.size() > 9 && exeStr.startsWith(works[4]) && works[9].startsWith("/dev")) { devStr = works[9]; if (!devStr.isEmpty()) { @@ -433,7 +451,11 @@ void ProcessTableView::initUI(bool settingsLoaded) m_notFoundLabel = new DLabel(DApplication::translate("Common.Search", "No search results"), this); DFontSizeManager::instance()->bind(m_notFoundLabel, DFontSizeManager::T4); // change text color +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->palette(m_notFoundLabel); +#else + auto palette = DPaletteHelper::instance()->palette(m_notFoundLabel); +#endif QColor labelColor = palette.color(DPalette::PlaceholderText); palette.setColor(DPalette::Text, labelColor); m_notFoundLabel->setPalette(palette); diff --git a/deepin-system-monitor-main/gui/system_service_page_widget.cpp b/deepin-system-monitor-main/gui/system_service_page_widget.cpp index baa47c78..55f7ba78 100644 --- a/deepin-system-monitor-main/gui/system_service_page_widget.cpp +++ b/deepin-system-monitor-main/gui/system_service_page_widget.cpp @@ -9,7 +9,11 @@ #include "system_service_table_view.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -20,7 +24,11 @@ SystemServicePageWidget::SystemServicePageWidget(DWidget *parent) : DFrame(parent) { // global app helper instance +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif // global palette auto palette = dAppHelper->applicationPalette(); @@ -47,9 +55,17 @@ void SystemServicePageWidget::paintEvent(QPaintEvent *) path.addRect(QRectF(rect())); painter.setOpacity(1); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto bgColor = palette.color(DPalette::Background); +#else + auto bgColor = palette.color(DPalette::Window); +#endif // paint frame background painter.fillPath(path, bgColor); diff --git a/deepin-system-monitor-main/gui/system_service_table_view.cpp b/deepin-system-monitor-main/gui/system_service_table_view.cpp index 2bdee83c..f33dab83 100644 --- a/deepin-system-monitor-main/gui/system_service_table_view.cpp +++ b/deepin-system-monitor-main/gui/system_service_table_view.cpp @@ -24,7 +24,12 @@ #include "service/system_service_entry.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#include +#endif #include #include #include @@ -361,7 +366,11 @@ void SystemServiceTableView::refreshServiceStatus(const QString sname) // filter service on specific pattern void SystemServiceTableView::search(const QString &pattern) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_proxyModel->setFilterRegExp(QRegExp(pattern, Qt::CaseInsensitive)); +#else + m_proxyModel->setFilterRegularExpression(QRegularExpression(pattern, QRegularExpression::CaseInsensitiveOption)); +#endif // adjust search result tip label's position & visibility adjustInfoLabelVisibility(); @@ -406,7 +415,11 @@ void SystemServiceTableView::initUI(bool settingsLoaded) new DLabel(DApplication::translate("Common.Search", "No search results"), this); DFontSizeManager::instance()->bind(m_noMatchingResultLabel, DFontSizeManager::T4); // set text color +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->palette(m_noMatchingResultLabel); +#else + auto palette = DPaletteHelper::instance()->palette(m_noMatchingResultLabel); +#endif QColor labelColor = palette.color(DPalette::PlaceholderText); palette.setColor(DPalette::Text, labelColor); m_noMatchingResultLabel->setPalette(palette); @@ -540,7 +553,11 @@ void SystemServiceTableView::initUI(bool settingsLoaded) // spinner instance m_spinner = new DSpinner(this); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto pa = DApplicationHelper::instance()->applicationPalette(); +#else + auto pa = DGuiApplicationHelper::instance()->applicationPalette(); +#endif // set spinner color QBrush hlBrush = pa.color(DPalette::Active, DPalette::Highlight); pa.setColor(DPalette::Highlight, hlBrush.color()); @@ -552,17 +569,30 @@ void SystemServiceTableView::initUI(bool settingsLoaded) // initialize connections void SystemServiceTableView::initConnections() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif Q_ASSERT(dAppHelper != nullptr); // change search result tip label text color when theme type changed +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, [ = ]() { auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, [ = ]() { + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif if (m_noMatchingResultLabel) { QColor labelColor = palette.color(DPalette::PlaceholderText); palette.setColor(DPalette::Text, labelColor); m_noMatchingResultLabel->setPalette(palette); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto pa = DApplicationHelper::instance()->applicationPalette(); +#else + auto pa = DGuiApplicationHelper::instance()->applicationPalette(); +#endif // set spinner color QBrush hlBrush = pa.color(DPalette::Active, DPalette::Highlight); pa.setColor(DPalette::Highlight, hlBrush.color()); diff --git a/deepin-system-monitor-main/gui/user_page_widget.cpp b/deepin-system-monitor-main/gui/user_page_widget.cpp index 1de8a60d..367b2e2f 100644 --- a/deepin-system-monitor-main/gui/user_page_widget.cpp +++ b/deepin-system-monitor-main/gui/user_page_widget.cpp @@ -22,7 +22,12 @@ #include "process_table_view.h" #include "model/process_table_model.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#include +#endif #include #include @@ -47,7 +52,11 @@ UserPageWidget::~UserPageWidget() {} // initialize ui components void UserPageWidget::initUI() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_dAppHelper = DApplicationHelper::instance(); +#else + m_dAppHelper = DGuiApplicationHelper::instance(); +#endif // process table view instance m_procTable = new ProcessTableView(this, m_currentUser); m_procTable->switchDisplayMode(kNoFilter); @@ -160,7 +169,11 @@ void UserPageWidget::initUI() userInfoWideget->setLayout(contentlayout); QHBoxLayout *layout = new QHBoxLayout(this); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) layout->setMargin(10); +#else + layout->setContentsMargins(10, 10, 10, 10); +#endif layout->setSpacing(0); layout->addWidget(m_accountListWidget); layout->addWidget(userInfoWideget); @@ -173,7 +186,11 @@ void UserPageWidget::initConnections() { connect(m_accountListWidget, &AccountsWidget::signalCurrentChanged, this, &UserPageWidget::onUserChanged); connect(m_procTable, &ProcessTableView::signalModelUpdated, this, &UserPageWidget::onTextContentChanged); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(m_dAppHelper, &DApplicationHelper::themeTypeChanged, this, &UserPageWidget::onThemeChanged); +#else + connect(m_dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &UserPageWidget::onThemeChanged); +#endif connect(m_procTable, &ProcessTableView::signalHeadchanged, this, &UserPageWidget::onHeaderChanged); } @@ -185,10 +202,6 @@ void UserPageWidget::paintEvent(QPaintEvent *) QPainterPath path; path.addRect(QRectF(rect())); painter.setOpacity(1); - - DApplicationHelper *dAppHelper = DApplicationHelper::instance(); - DPalette palette = dAppHelper->applicationPalette(); - QColor bgColor = palette.color(DPalette::Background); } void UserPageWidget::onUserChanged() { @@ -276,7 +289,11 @@ void UserPageWidget::setLabelFormat(DLabel *label, DPalette::ColorType corlorTyp label->setAlignment(Qt::AlignLeft | Qt::AlignVCenter); label->setElideMode(Qt::ElideRight); // change text color to text tips style +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto pa = DApplicationHelper::instance()->palette(label); +#else + auto pa = DPaletteHelper::instance()->palette(label); +#endif palette.setColor(DPalette::Text, palette.color(corlorType)); label->setPalette(palette); label->adjustSize(); @@ -284,84 +301,89 @@ void UserPageWidget::setLabelFormat(DLabel *label, DPalette::ColorType corlorTyp void UserPageWidget::onThemeChanged() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + auto applicationPalette = DApplicationHelper::instance()->applicationPalette(); +#else + auto applicationPalette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif if (m_CPULabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_CPULabel->setPalette(palette); } if (m_MemeryLabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_MemeryLabel->setPalette(palette); } if (m_SMemLabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_SMemLabel->setPalette(palette); } if (m_VMemLabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_VMemLabel->setPalette(palette); } if (m_UploadLabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_UploadLabel->setPalette(palette); } if (m_DownLoadLabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_DownLoadLabel->setPalette(palette); } if (m_DiskReadLabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_DiskReadLabel->setPalette(palette); } if (m_DiskWriteLabel) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTitle)); m_DiskWriteLabel->setPalette(palette); } if (m_CPUUsageSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_CPUUsageSummary->setPalette(palette); } if (m_MemeryUsageSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_MemeryUsageSummary->setPalette(palette); } if (m_SMemUsageSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_SMemUsageSummary->setPalette(palette); } if (m_VMemUsageSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_VMemUsageSummary->setPalette(palette); } if (m_UploadSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_UploadSummary->setPalette(palette); } if (m_DownLoadSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_DownLoadSummary->setPalette(palette); } if (m_DiskReadSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_DiskReadSummary->setPalette(palette); } if (m_DiskWriteSummary) { - auto palette = DApplicationHelper::instance()->applicationPalette(); + auto palette = applicationPalette; palette.setColor(DPalette::Text, palette.color(DPalette::TextTips)); m_DiskWriteSummary->setPalette(palette); } diff --git a/deepin-system-monitor-main/gui/user_page_widget.h b/deepin-system-monitor-main/gui/user_page_widget.h index ca769492..6add0c50 100644 --- a/deepin-system-monitor-main/gui/user_page_widget.h +++ b/deepin-system-monitor-main/gui/user_page_widget.h @@ -23,9 +23,12 @@ #include "accounts_widget.h" #include #include -#include #include - +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include +#else +#include +#endif class ProcessTableView; @@ -100,7 +103,11 @@ public Q_SLOTS: DLabel *m_DiskReadSummary = nullptr; DLabel *m_DiskWriteSummary = nullptr; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DApplicationHelper *m_dAppHelper = nullptr; +#else + DGuiApplicationHelper *m_dAppHelper = nullptr; +#endif QString m_currentUser {}; }; diff --git a/deepin-system-monitor-main/gui/xwin_kill_preview_background_widget.cpp b/deepin-system-monitor-main/gui/xwin_kill_preview_background_widget.cpp index 762cd16c..25f18a8c 100644 --- a/deepin-system-monitor-main/gui/xwin_kill_preview_background_widget.cpp +++ b/deepin-system-monitor-main/gui/xwin_kill_preview_background_widget.cpp @@ -7,7 +7,11 @@ #include "ui_common.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include #include @@ -60,7 +64,11 @@ void XWinKillPreviewBackgroundWidget::paintEvent(QPaintEvent *) painter.fillPath(path, Qt::red); // global palette +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif // DStyle instance auto *style = dynamic_cast(this->style()); // frame radius @@ -68,7 +76,11 @@ void XWinKillPreviewBackgroundWidget::paintEvent(QPaintEvent *) // content margin auto margin = 10; // background color +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto background = palette.color(DPalette::Current, DPalette::Background); +#else + auto background = palette.color(DPalette::Current, DPalette::Window); +#endif // forground color auto foreground = palette.color(DPalette::Current, DPalette::Text); diff --git a/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp b/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp index 3c536d26..9b9cfaf3 100644 --- a/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp +++ b/deepin-system-monitor-main/gui/xwin_kill_preview_widget.cpp @@ -37,6 +37,7 @@ using namespace core::wm; using namespace common::init; using namespace DDLog; +#ifdef USE_DEEPIN_WAYLAND typedef int (*InitDtkWmDisplayPtr)(); typedef void (*DestoryDtkWmDisplayPtr)(); typedef int (*GetAllWindowStatesListPtr)(WindowState **states); @@ -45,6 +46,7 @@ typedef int (*GetAllWindowStatesListPtr)(WindowState **states); static InitDtkWmDisplayPtr InitDtkWmDisplay = nullptr; static DestoryDtkWmDisplayPtr DestoryDtkWmDisplay = nullptr; static GetAllWindowStatesListPtr GetAllWindowStatesList = nullptr; +#endif // constructor XWinKillPreviewWidget::XWinKillPreviewWidget(QWidget *parent) diff --git a/deepin-system-monitor-main/main.cpp b/deepin-system-monitor-main/main.cpp index 69e83b5c..6d01eba5 100644 --- a/deepin-system-monitor-main/main.cpp +++ b/deepin-system-monitor-main/main.cpp @@ -15,7 +15,9 @@ #include "3rdparty/dmidecode/dmidecode.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#endif #include #include #include @@ -99,7 +101,9 @@ int main(int argc, char *argv[]) QAccessible::installFactory(accessibleFactory); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DApplicationSettings appSettings; +#endif DLogManager::registerConsoleAppender(); DLogManager::registerFileAppender(); diff --git a/deepin-system-monitor-main/memory_monitor.cpp b/deepin-system-monitor-main/memory_monitor.cpp index 5d41f802..7d66f72f 100644 --- a/deepin-system-monitor-main/memory_monitor.cpp +++ b/deepin-system-monitor-main/memory_monitor.cpp @@ -12,7 +12,11 @@ #include "system/system_monitor.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -32,7 +36,11 @@ using namespace core::system; MemoryMonitor::MemoryMonitor(QWidget *parent) : QWidget(parent) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif int statusBarMaxWidth = common::getStatusBarMaxWidth(); setFixedWidth(statusBarMaxWidth); @@ -40,7 +48,11 @@ MemoryMonitor::MemoryMonitor(QWidget *parent) setFixedHeight(160); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &MemoryMonitor::changeTheme); +#else + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &MemoryMonitor::changeTheme); +#endif m_themeType = dAppHelper->themeType(); changeTheme(m_themeType); @@ -76,18 +88,30 @@ void MemoryMonitor::onValueChanged() update(); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void MemoryMonitor::changeTheme(DApplicationHelper::ColorType themeType) +#else +void MemoryMonitor::changeTheme(DGuiApplicationHelper::ColorType themeType) +#endif { m_themeType = themeType; switch (m_themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::LightType: +#endif memoryBackgroundColor = "#000000"; swapBackgroundColor = "#000000"; m_icon = QIcon(iconPathFromQrc("light/icon_memory_light.svg")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::DarkType: +#endif memoryBackgroundColor = "#FFFFFF"; swapBackgroundColor = "#FFFFFF"; @@ -96,7 +120,11 @@ void MemoryMonitor::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR diff --git a/deepin-system-monitor-main/memory_monitor.h b/deepin-system-monitor-main/memory_monitor.h index 34dc297b..7ac87008 100644 --- a/deepin-system-monitor-main/memory_monitor.h +++ b/deepin-system-monitor-main/memory_monitor.h @@ -6,12 +6,16 @@ #ifndef MemoryMONITOR_H #define MemoryMONITOR_H -#include - #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class Settings; class QPropertyAnimation; @@ -33,7 +37,11 @@ class MemoryMonitor : public QWidget ~MemoryMonitor(); private: +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); protected: @@ -105,7 +113,12 @@ private slots: QPropertyAnimation *m_animation {}; Settings *m_settings; + +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DApplicationHelper::ColorType m_themeType; +#else + DGuiApplicationHelper::ColorType m_themeType; +#endif }; #endif diff --git a/deepin-system-monitor-main/model/cpu_list_sort_filter_proxy_model.cpp b/deepin-system-monitor-main/model/cpu_list_sort_filter_proxy_model.cpp index 5e368e25..cec94c9b 100644 --- a/deepin-system-monitor-main/model/cpu_list_sort_filter_proxy_model.cpp +++ b/deepin-system-monitor-main/model/cpu_list_sort_filter_proxy_model.cpp @@ -23,7 +23,11 @@ bool CPUListSortFilterProxyModel::filterAcceptsRow(int row, const QModelIndex &) if (idx.isValid()) { QString lgIdx = QString("%1").arg(idx.data(CPUListModel::kPropCPUIndex).toInt()); // search format (list of cpu indices with comma separated): 1,3,...,10,...,... +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) ok |= filterRegExp().pattern().contains(lgIdx); +#else + ok |= filterRegularExpression().pattern().contains(lgIdx); +#endif } return ok; diff --git a/deepin-system-monitor-main/model/process_sort_filter_proxy_model.cpp b/deepin-system-monitor-main/model/process_sort_filter_proxy_model.cpp index fefa690b..219bc19c 100644 --- a/deepin-system-monitor-main/model/process_sort_filter_proxy_model.cpp +++ b/deepin-system-monitor-main/model/process_sort_filter_proxy_model.cpp @@ -30,13 +30,21 @@ void ProcessSortFilterProxyModel::setSortFilterString(const QString &search) } // set search pattern & do the filter +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) setFilterRegExp(QRegExp(search, Qt::CaseInsensitive)); +#else + setFilterRegularExpression(QRegularExpression(search, QRegularExpression::CaseInsensitiveOption)); +#endif } void ProcessSortFilterProxyModel::setFilterType(int type) { m_fileterType = type; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) setFilterRegExp(filterRegExp()); +#else + setFilterRegularExpression(filterRegularExpression()); +#endif } // filters the row of specified parent with given pattern @@ -58,10 +66,18 @@ bool ProcessSortFilterProxyModel::filterAcceptsRow(int row, const QModelIndex &p const QModelIndex &name = sourceModel()->index(row, ProcessTableModel::kProcessNameColumn, parent); // display name or name matches pattern if (name.isValid()) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) rc |= name.data().toString().contains(filterRegExp()); +#else + rc |= name.data().toString().contains(filterRegularExpression()); +#endif if (rc) return rc; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) rc |= name.data(Qt::UserRole).toString().contains(filterRegExp()); +#else + rc |= name.data(Qt::UserRole).toString().contains(filterRegularExpression()); +#endif if (rc) return rc; if (QLocale::system().language() == QLocale::Chinese) { @@ -72,14 +88,24 @@ bool ProcessSortFilterProxyModel::filterAcceptsRow(int row, const QModelIndex &p } // pid matches pattern - if (pid.isValid()) + if (pid.isValid()) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) rc |= pid.data().toString().contains(filterRegExp()); +#else + rc |= pid.data().toString().contains(filterRegularExpression()); +#endif + } if (rc) return rc; // user name matches pattern const QModelIndex &user = sourceModel()->index(row, ProcessTableModel::kProcessUserColumn, parent); - if (user.isValid()) + if (user.isValid()) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) rc |= user.data().toString().contains(filterRegExp()); +#else + rc |= user.data().toString().contains(filterRegularExpression()); +#endif + } return rc; } @@ -105,9 +131,9 @@ bool ProcessSortFilterProxyModel::lessThan(const QModelIndex &left, const QModel if (rc == 0) { return left.sibling(left.row(), ProcessTableModel::kProcessCPUColumn) - .data(Qt::UserRole) < + .data(Qt::UserRole).toDouble() < right.sibling(right.row(), ProcessTableModel::kProcessCPUColumn) - .data(Qt::UserRole); + .data(Qt::UserRole).toDouble(); } else return rc < 0; } @@ -125,11 +151,11 @@ bool ProcessSortFilterProxyModel::lessThan(const QModelIndex &left, const QModel // compare memory usage first, then by cpu time if (lmem == rmem) { return left.sibling(left.row(), ProcessTableModel::kProcessCPUColumn) - .data(Qt::UserRole) < + .data(Qt::UserRole).toDouble() < right.sibling(right.row(), ProcessTableModel::kProcessCPUColumn) - .data(Qt::UserRole); + .data(Qt::UserRole).toDouble(); } else { - return lmem < rmem; + return lmem.toULongLong() < rmem.toULongLong(); } } case ProcessTableModel::kProcessCPUColumn: { @@ -141,9 +167,9 @@ bool ProcessSortFilterProxyModel::lessThan(const QModelIndex &left, const QModel // compare cpu time first, then by memory usage if (qFuzzyCompare(lcpu.toReal(), rcpu.toReal())) { - return lmem < rmem; + return lmem.toULongLong() < rmem.toULongLong(); } else { - return lcpu < rcpu; + return lcpu.toDouble() < rcpu.toDouble(); } } case ProcessTableModel::kProcessUploadColumn: { @@ -171,23 +197,23 @@ bool ProcessSortFilterProxyModel::lessThan(const QModelIndex &left, const QModel } case ProcessTableModel::kProcessPIDColumn: { // compare pid - return left.data(Qt::UserRole) < right.data(Qt::UserRole); + return left.data(Qt::UserRole).toInt() < right.data(Qt::UserRole).toInt(); } case ProcessTableModel::kProcessDiskReadColumn: { // compare disk read speed - return left.data(Qt::UserRole) < right.data(Qt::UserRole); + return left.data(Qt::UserRole).toDouble() < right.data(Qt::UserRole).toDouble(); } case ProcessTableModel::kProcessDiskWriteColumn: { // compare disk write speed - return left.data(Qt::UserRole) < right.data(Qt::UserRole); + return left.data(Qt::UserRole).toDouble() < right.data(Qt::UserRole).toDouble(); } case ProcessTableModel::kProcessNiceColumn: { // higher priority has negative number - return !(left.data(Qt::UserRole) < right.data(Qt::UserRole)); + return !(left.data(Qt::UserRole).toInt() < right.data(Qt::UserRole).toInt()); } case ProcessTableModel::kProcessPriorityColumn: { // compare priority with nice value instead of nice display name - return !(left.sibling(left.row(), ProcessTableModel::kProcessNiceColumn).data(Qt::UserRole) < right.sibling(right.row(), ProcessTableModel::kProcessNiceColumn).data(Qt::UserRole)); + return !(left.sibling(left.row(), ProcessTableModel::kProcessNiceColumn).data(Qt::UserRole).toInt() < right.sibling(right.row(), ProcessTableModel::kProcessNiceColumn).data(Qt::UserRole).toInt()); } default: break; diff --git a/deepin-system-monitor-main/model/system_service_sort_filter_proxy_model.cpp b/deepin-system-monitor-main/model/system_service_sort_filter_proxy_model.cpp index ba57cb85..2e277f4d 100644 --- a/deepin-system-monitor-main/model/system_service_sort_filter_proxy_model.cpp +++ b/deepin-system-monitor-main/model/system_service_sort_filter_proxy_model.cpp @@ -22,7 +22,11 @@ bool SystemServiceSortFilterProxyModel::canFetchMore(const QModelIndex &parent) // fetches any available data for the items with the parent specified by the parent index void SystemServiceSortFilterProxyModel::fetchMore(const QModelIndex &parent) { - if (!filterRegExp().pattern().isEmpty()) { + #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + if (!filterRegExp().pattern().isEmpty()) { + #else + if (!filterRegularExpression().pattern().isEmpty()) { + #endif // when search content is non-empty, to avoid model refresh malfunction, // we need load all contents in a batch. while (canFetchMore(parent)) { @@ -52,12 +56,21 @@ bool SystemServiceSortFilterProxyModel::filterAcceptsRow(int row, const QModelIn // filters the row out if none of the service's name, description or pid matches the pattern bool rc = false; - if (index0.isValid()) - rc |= sourceModel()->data(index0).toString().contains(filterRegExp()); - if (index1.isValid()) - rc |= sourceModel()->data(index1).toString().contains(filterRegExp()); - if (index2.isValid()) - rc |= sourceModel()->data(index2).toString().contains(filterRegExp()); + #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + if (index0.isValid()) + rc |= sourceModel()->data(index0).toString().contains(filterRegExp()); + if (index1.isValid()) + rc |= sourceModel()->data(index1).toString().contains(filterRegExp()); + if (index2.isValid()) + rc |= sourceModel()->data(index2).toString().contains(filterRegExp()); + #else + if (index0.isValid()) + rc |= sourceModel()->data(index0).toString().contains(filterRegularExpression()); + if (index1.isValid()) + rc |= sourceModel()->data(index1).toString().contains(filterRegularExpression()); + if (index2.isValid()) + rc |= sourceModel()->data(index2).toString().contains(filterRegularExpression()); + #endif return rc; } diff --git a/deepin-system-monitor-main/network_monitor.cpp b/deepin-system-monitor-main/network_monitor.cpp index 028befae..9a8ca868 100644 --- a/deepin-system-monitor-main/network_monitor.cpp +++ b/deepin-system-monitor-main/network_monitor.cpp @@ -12,7 +12,11 @@ #include "system/system_monitor.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -45,8 +49,13 @@ NetworkMonitor::NetworkMonitor(QWidget *parent) uploadSpeeds->append(0); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &NetworkMonitor::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &NetworkMonitor::changeTheme); +#endif changeTheme(dAppHelper->themeType()); connect(SystemMonitor::instance(), &SystemMonitor::statInfoUpdated, this, &NetworkMonitor::updateStatus); @@ -62,13 +71,25 @@ NetworkMonitor::~NetworkMonitor() delete uploadSpeeds; } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void NetworkMonitor::changeTheme(DApplicationHelper::ColorType themeType) +#else +void NetworkMonitor::changeTheme(DGuiApplicationHelper::ColorType themeType) +#endif { switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::LightType: +#endif m_icon = QIcon(iconPathFromQrc("light/icon_network_light.svg")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::DarkType: +#endif m_icon = QIcon(iconPathFromQrc("dark/icon_network_light.svg")); break; default: @@ -76,7 +97,11 @@ void NetworkMonitor::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR ltextColor = palette.color(DPalette::TextTitle); diff --git a/deepin-system-monitor-main/network_monitor.h b/deepin-system-monitor-main/network_monitor.h index dd143b3f..da2540bf 100644 --- a/deepin-system-monitor-main/network_monitor.h +++ b/deepin-system-monitor-main/network_monitor.h @@ -6,13 +6,17 @@ #ifndef NETWORKMONITOR_H #define NETWORKMONITOR_H -#include - #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class NetworkMonitor : public QWidget { @@ -39,7 +43,11 @@ public slots: void mouseMoveEvent(QMouseEvent *event) Q_DECL_OVERRIDE; private: +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); void getPainterPathByData(QList *listData, QPainterPath &path, qreal maxVlaue); diff --git a/deepin-system-monitor-main/process/desktop_entry_cache.cpp b/deepin-system-monitor-main/process/desktop_entry_cache.cpp index f4a7f307..9bfbbcc7 100644 --- a/deepin-system-monitor-main/process/desktop_entry_cache.cpp +++ b/deepin-system-monitor-main/process/desktop_entry_cache.cpp @@ -55,7 +55,11 @@ void DesktopEntryCache::updateCache() entryWithDesktopFile(fileInfo.filePath()); } } else { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList xdgDataDirPaths = xdgDataDirPath.split(":", QString::SkipEmptyParts); +#else + QStringList xdgDataDirPaths = xdgDataDirPath.split(":", Qt::SkipEmptyParts); +#endif for (auto path : xdgDataDirPaths) { auto fileInfoList = QDir(path.trimmed() + "/applications").entryInfoList(QDir::Files); for (auto &fileInfo : fileInfoList) { diff --git a/deepin-system-monitor-main/process/desktop_entry_cache_updater.cpp b/deepin-system-monitor-main/process/desktop_entry_cache_updater.cpp index c15f6f93..73e60317 100644 --- a/deepin-system-monitor-main/process/desktop_entry_cache_updater.cpp +++ b/deepin-system-monitor-main/process/desktop_entry_cache_updater.cpp @@ -39,7 +39,11 @@ DesktopEntry DesktopEntryCacheUpdater::createEntry(const QFileInfo &fileInfo) // exec & name auto tryExec = dde.stringValue("TryExec"); auto execStr = dde.stringValue("Exec"); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList execList = execStr.split("exec", QString::SkipEmptyParts, Qt::CaseInsensitive); +#else + QStringList execList = execStr.split("exec", Qt::SkipEmptyParts, Qt::CaseInsensitive); +#endif QString exec = execList.size() > 1 ? execList.last().trimmed() : execStr.trimmed(); exec = exec.remove("\""); if (!tryExec.isEmpty()) { diff --git a/deepin-system-monitor-main/process/process_icon_cache.h b/deepin-system-monitor-main/process/process_icon_cache.h index bf57ba7c..5ca3aec3 100644 --- a/deepin-system-monitor-main/process/process_icon_cache.h +++ b/deepin-system-monitor-main/process/process_icon_cache.h @@ -10,11 +10,11 @@ #include #include +#include "process_icon.h" + namespace core { namespace process { - -class ProcessIcon; -class ProcessIconCache : QObject +class ProcessIconCache : public QObject { Q_OBJECT Q_DISABLE_COPY(ProcessIconCache) diff --git a/deepin-system-monitor-main/process/process_set.cpp b/deepin-system-monitor-main/process/process_set.cpp index fefd01df..e5b149e4 100644 --- a/deepin-system-monitor-main/process/process_set.cpp +++ b/deepin-system-monitor-main/process/process_set.cpp @@ -99,14 +99,15 @@ void ProcessSet::scanProcess() } if(m_prePid != m_curPid) { - for (const pid_t &pid : m_prePid) { - if(!m_curPid.contains(pid)){ - m_prePid.removeAt(pid); //remove disappear process pid - if(m_simpleSet.contains(pid)) - m_simpleSet.remove(pid); - //for each pid,only one process reflected.So "removeOne()"func replied. - if(m_pidMyApps.contains(pid)) - m_pidMyApps.removeOne(pid); + for (auto it = m_prePid.begin(); it != m_prePid.end();) { + if (!m_curPid.contains(*it)) { + if (m_simpleSet.contains(*it)) + m_simpleSet.remove(*it); + if (m_pidMyApps.contains(*it)) + m_pidMyApps.removeOne(*it); + it = m_prePid.erase(it); + } else { + ++it; } } diff --git a/deepin-system-monitor-main/service/service_manager_worker.cpp b/deepin-system-monitor-main/service/service_manager_worker.cpp index d18a9ed8..f91ab9ee 100644 --- a/deepin-system-monitor-main/service/service_manager_worker.cpp +++ b/deepin-system-monitor-main/service/service_manager_worker.cpp @@ -17,6 +17,7 @@ #include #include +#include using namespace DDLog; ServiceManagerWorker::ServiceManagerWorker(QObject *parent) @@ -266,7 +267,11 @@ QString ServiceManagerWorker::readUnitDescriptionFromUnitFile(const QString &pat if (fp) { while ((fgets(buf.data(), BLEN, fp))) { descStr = QString("Description=%1").arg(buf.data()); - QStringList descStrList = descStr.split(QRegExp("[\n]"), QString::SkipEmptyParts); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + QStringList descStrList = descStr.split(QRegularExpression("[\n]"), Qt::SkipEmptyParts); +#else + QStringList descStrList = descStr.split(QRegularExpression("[\n]"), Qt::SkipEmptyParts); +#endif if (descStrList.size() > 0) { descStr = descStrList.at(0); b = true; diff --git a/deepin-system-monitor-main/system/block_device.cpp b/deepin-system-monitor-main/system/block_device.cpp index 5f81d118..5c1ee964 100644 --- a/deepin-system-monitor-main/system/block_device.cpp +++ b/deepin-system-monitor-main/system/block_device.cpp @@ -53,7 +53,11 @@ void BlockDevice::readDeviceInfo() do{ line = in.readLine(); if (!line.contains("loop")){ +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) strList << line.split(" ", QString::SkipEmptyParts); +#else + strList << line.split(" ", Qt::SkipEmptyParts); +#endif } }while (!line.isNull()); file.close(); diff --git a/deepin-system-monitor-main/system/block_device_info_db.cpp b/deepin-system-monitor-main/system/block_device_info_db.cpp index 0b77c399..c54851be 100644 --- a/deepin-system-monitor-main/system/block_device_info_db.cpp +++ b/deepin-system-monitor-main/system/block_device_info_db.cpp @@ -111,7 +111,11 @@ void BlockDeviceInfoDB::readDiskInfo() QFileInfoList list = dir.entryInfoList(); //获取实体磁盘 for (int i = 0; i < list.size(); ++i) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QString t_link = list.at(i).readLink(); +#else + QString t_link = list.at(i).readSymLink(); +#endif if (list[i].fileName() != "." && list[i].fileName() != ".." && !list[i].fileName().contains("ram") && !list[i].fileName().contains("loop") && !t_link.contains("virtual")) { int index = -1; // 查找当前的device是否存在 @@ -135,7 +139,11 @@ void BlockDeviceInfoDB::readDiskInfo() //获取虚拟磁盘 for (int i = 0; i < list.size(); ++i) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QString t_link = list.at(i).readLink(); +#else + QString t_link = list.at(i).readSymLink(); +#endif if (list[i].fileName() != "." && list[i].fileName() != ".." && !list[i].fileName().contains("ram") && !list[i].fileName().contains("loop") && t_link.contains("virtual")) { int index = -1; // 查找当前的device是否存在 diff --git a/deepin-system-monitor-main/system/cpu_set.cpp b/deepin-system-monitor-main/system/cpu_set.cpp index 44d05552..13cb8f79 100644 --- a/deepin-system-monitor-main/system/cpu_set.cpp +++ b/deepin-system-monitor-main/system/cpu_set.cpp @@ -22,7 +22,7 @@ extern "C" { #include #include #include - +#include #include #include #include @@ -603,11 +603,19 @@ void CPUSet::read_overall_info() process.start("cat /proc/cpuinfo"); process.waitForFinished(3000); QString cpuinfo = process.readAllStandardOutput(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList processors = cpuinfo.split("\n\n", QString::SkipEmptyParts); +#else + QStringList processors = cpuinfo.split("\n\n", Qt::SkipEmptyParts); +#endif for (int i = 0; i < processors.count(); ++i) { CPUInfo info; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList list = processors[i].split("\n", QString::SkipEmptyParts); +#else + QStringList list = processors[i].split("\n", Qt::SkipEmptyParts); +#endif for (QString text : list) { if (text.startsWith("processor")) { info.setIndex(text.split(":").value(1).toInt()); @@ -705,7 +713,11 @@ void CPUSet::read_dmi_cache_info() << "cache"); process.waitForFinished(-1); QString cacheinfo = process.readAllStandardOutput(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList caches = cacheinfo.split("\n\n", QString::SkipEmptyParts); +#else + QStringList caches = cacheinfo.split("\n\n", Qt::SkipEmptyParts); +#endif process.close(); QList> mapInfos; @@ -722,7 +734,11 @@ void CPUSet::read_dmi_cache_info() QStringList words = line.split(": "); if (1 == words.size() && words[0].endsWith(":")) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) lasKey = words[0].replace(QRegExp(":$"), ""); +#else + lasKey = words[0].replace(QRegularExpression(":$"), ""); +#endif mapInfo.insert(lasKey.trimmed(), " "); } else if (1 == words.size() && !lasKey.isEmpty()) { mapInfo[lasKey.trimmed()] += words[0]; @@ -738,7 +754,11 @@ void CPUSet::read_dmi_cache_info() for (auto &item : mapInfos) { if (!item.contains("Socket Designation") || !item.contains("Maximum Size")) continue; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList strList = item["Maximum Size"].split(" ", QString::SkipEmptyParts); +#else + QStringList strList = item["Maximum Size"].split(" ", Qt::SkipEmptyParts); +#endif if (strList.size() != 2) continue; diff --git a/deepin-system-monitor-main/system/netif_packet_capture.cpp b/deepin-system-monitor-main/system/netif_packet_capture.cpp index ef59de45..46259724 100644 --- a/deepin-system-monitor-main/system/netif_packet_capture.cpp +++ b/deepin-system-monitor-main/system/netif_packet_capture.cpp @@ -19,7 +19,7 @@ #include #include #include - +#include #ifndef IFNAMESZ # define IFNAMESZ 16 #endif @@ -121,7 +121,11 @@ bool NetifPacketCapture::getCurrentDevName() outputList.removeFirst(); QList totalList; foreach (QString tmpList, outputList) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList lineList = tmpList.split(QRegExp("\\s{1,}")); +#else + QStringList lineList = tmpList.split(QRegularExpression("\\s{1,}")); +#endif totalList.append(lineList); } // 设备和优先级列编号 diff --git a/deepin-system-monitor-main/system/private/netif_p.h b/deepin-system-monitor-main/system/private/netif_p.h index 07202c12..f12ef85f 100644 --- a/deepin-system-monitor-main/system/private/netif_p.h +++ b/deepin-system-monitor-main/system/private/netif_p.h @@ -8,6 +8,7 @@ // qt #include +#include // c++11 #include diff --git a/deepin-system-monitor-main/system/sys_info.cpp b/deepin-system-monitor-main/system/sys_info.cpp index b8ce4117..88540f7b 100644 --- a/deepin-system-monitor-main/system/sys_info.cpp +++ b/deepin-system-monitor-main/system/sys_info.cpp @@ -396,7 +396,11 @@ void SysInfo::read_loadavg(LoadAvg &loadAvg) */ // 分割数据 取前3 +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList cpuStatus = QString(lineData).split(" ", QString::SkipEmptyParts); +#else + QStringList cpuStatus = QString(lineData).split(" ", Qt::SkipEmptyParts); +#endif if (cpuStatus.size() > 3) { loadAvg->lavg_1m = cpuStatus[0].toFloat(); diff --git a/deepin-system-monitor-main/translations/CMakeLists.txt b/deepin-system-monitor-main/translations/CMakeLists.txt index 0b97aeff..6abd8c7e 100644 --- a/deepin-system-monitor-main/translations/CMakeLists.txt +++ b/deepin-system-monitor-main/translations/CMakeLists.txt @@ -1,5 +1,9 @@ file(GLOB APP_TS_FILES LIST_DIRECTORIES false *.ts) -qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +if (QT_VERSION_MAJOR LESS 6) + qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +else() + qt6_add_translation(APP_QM_FILES ${APP_TS_FILES}) +endif() add_custom_target(QMFILES ALL DEPENDS ${APP_QM_FILES}) install(FILES ${APP_QM_FILES} DESTINATION share/${CMAKE_PROJECT_NAME}/translations) diff --git a/deepin-system-monitor-main/wm/wm_window_list.cpp b/deepin-system-monitor-main/wm/wm_window_list.cpp index 9e9a3c92..d917e8f4 100644 --- a/deepin-system-monitor-main/wm/wm_window_list.cpp +++ b/deepin-system-monitor-main/wm/wm_window_list.cpp @@ -229,7 +229,11 @@ QImage WMWindowList::getWindowIcon(pid_t pid) const } QImage img(max_w, max_h, QImage::Format_ARGB32); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int byteCount = img.byteCount() / 4; +#else + int byteCount = img.sizeInBytes() / 4; +#endif for (int i = 0; i < byteCount; ++i) { //Save covert uchar* to uint* diff --git a/deepin-system-monitor-main/wm/wm_window_list.h b/deepin-system-monitor-main/wm/wm_window_list.h index 5bcc266e..c0b15a27 100644 --- a/deepin-system-monitor-main/wm/wm_window_list.h +++ b/deepin-system-monitor-main/wm/wm_window_list.h @@ -10,6 +10,8 @@ #include "wm_atom.h" #include "wm_info.h" +#include + namespace core { namespace process { class Process; diff --git a/deepin-system-monitor-plugin-popup/CMakeLists.txt b/deepin-system-monitor-plugin-popup/CMakeLists.txt index 6dcfb6c1..5c3b977b 100644 --- a/deepin-system-monitor-plugin-popup/CMakeLists.txt +++ b/deepin-system-monitor-plugin-popup/CMakeLists.txt @@ -9,7 +9,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) set(APP_RES_ROOT asserts) set(APP_RESOURCES ${APP_RES_ROOT}/${PROJECT_NAME}.qrc) -set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED True) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall ") @@ -31,18 +31,10 @@ check_symbol_exists(syscall "unistd.h" HAVE_SYS_CALL) check_symbol_exists(SYS_getrandom "sys/syscall.h" HAVE_SYS_CALL) include(FindPkgConfig) -find_package(Qt5 COMPONENTS Core REQUIRED) -find_package(Qt5 COMPONENTS Widgets REQUIRED) -find_package(Qt5 COMPONENTS Gui REQUIRED) -find_package(Qt5 COMPONENTS X11Extras REQUIRED) -find_package(Qt5 COMPONENTS DBus REQUIRED) -find_package(Qt5 COMPONENTS Concurrent REQUIRED) -find_package(Qt5 COMPONENTS LinguistTools REQUIRED) - -find_package(DtkCore REQUIRED) -find_package(DtkGui REQUIRED) -find_package(DtkWidget REQUIRED) -find_package(Qt5Svg REQUIRED) +find_package(${QT_NS} COMPONENTS Core Widgets Gui DBus Concurrent LinguistTools REQUIRED) + +find_package(${DTK_NS} COMPONENTS Core Gui Widget REQUIRED) + find_library(LIB_XCB NAMES xcb REQUIRED) find_library(LIB_XEXT NAMES Xext REQUIRED) find_library(LIB_ICCCM NAMES xcb-icccm REQUIRED) @@ -278,24 +270,17 @@ add_executable(${PROJECT_NAME} ) target_include_directories(${PROJECT_NAME} PUBLIC -# ${Qt5Widgets_INCLUDE_DIRS} - ${DtkWidget_INCLUDE_DIRS} - ${DtkCore_INCLUDE_DIRS} - ${DtkGui_INCLUDE_DIRS} ${DdeDockInterface_INCLUDE_DIRS} - Dtk::Core ) target_link_libraries(${PROJECT_NAME} - Qt5::Core - Qt5::Widgets - Qt5::Gui - Qt5::DBus - Qt5::Concurrent - Qt5::X11Extras - Qt5::Svg - dtkcore - dtkwidget - dtkgui + ${QT_NS}::Core + ${QT_NS}::Widgets + ${QT_NS}::Gui + ${QT_NS}::DBus + ${QT_NS}::Concurrent + ${DTK_NS}::Core + ${DTK_NS}::Gui + ${DTK_NS}::Widget ICU::i18n ICU::uc ${LIB_XCB} @@ -306,13 +291,16 @@ target_link_libraries(${PROJECT_NAME} ${LIB_UDEV_LIBRARIES} ${LIB_DDEDOCK} # gsettings-qt - Dtk::Core ) #生成qm file(GLOB APP_TS_FILES LIST_DIRECTORIES false translations/*.ts) -qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +if (QT_VERSION_MAJOR LESS 6) + qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +else() + qt6_add_translation(APP_QM_FILES ${APP_TS_FILES}) +endif() add_custom_target(POPUP_QMFILES ALL DEPENDS ${APP_QM_FILES}) # diff --git a/deepin-system-monitor-plugin-popup/common/utils.cpp b/deepin-system-monitor-plugin-popup/common/utils.cpp index 57bc9a47..cce0ed48 100644 --- a/deepin-system-monitor-plugin-popup/common/utils.cpp +++ b/deepin-system-monitor-plugin-popup/common/utils.cpp @@ -16,7 +16,6 @@ #include #include #include -#include #include #include @@ -106,7 +105,11 @@ QSize getRenderSize(int fontSize, QString string) int width = 0; int height = 0; foreach (auto line, string.split("\n")) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int lineWidth = fm.width(line); +#else + int lineWidth = fm.horizontalAdvance(line); +#endif int lineHeight = fm.height(); if (lineWidth > width) { diff --git a/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.cpp b/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.cpp index 9483335b..8836db3e 100644 --- a/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.cpp +++ b/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.cpp @@ -31,19 +31,37 @@ const int spacing = 10; BaseItemDelegate::BaseItemDelegate(QObject *parent) : QStyledItemDelegate(parent) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DApplicationHelper *dAppHelper = DApplicationHelper::instance(); changeTheme(dAppHelper->themeType()); connect(DApplicationHelper::instance(), &DApplicationHelper::themeTypeChanged, this, &BaseItemDelegate::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + changeTheme(dAppHelper->themeType()); + connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, &BaseItemDelegate::changeTheme); +#endif } //切换主题时更改ToolTip背景色 +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void BaseItemDelegate::changeTheme(DApplicationHelper::ColorType themeType) +#else +void BaseItemDelegate::changeTheme(DGuiApplicationHelper::ColorType themeType) +#endif { switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::ColorType::LightType: +#endif m_tipColor.setRgb(255,255,255,255); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::ColorType::DarkType: +#endif m_tipColor.setRgb(0,0,0,200); break; default: @@ -98,7 +116,11 @@ void BaseItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti auto iconSize = style->pixelMetric(DStyle::PM_ListViewIconSize, &option); // global palette +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif QPen forground; if (index.data(Qt::UserRole + 2).isValid()) { @@ -126,8 +148,13 @@ void BaseItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti } else { // color used when it's normal row & hovered by mouse if (opt.state & DStyle::State_MouseOver) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto type = DApplicationHelper::instance()->themeType(); forground = style->adjustColor(forground.color(), 0, 0, type == DApplicationHelper::DarkType ? 20 : -50); +#else + auto type = DGuiApplicationHelper::instance()->themeType(); + forground = style->adjustColor(forground.color(), 0, 0, type == DGuiApplicationHelper::ColorType::DarkType ? 20 : -50); +#endif } } } @@ -281,7 +308,11 @@ bool BaseItemDelegate::helpEvent(QHelpEvent *e, QAbstractItemView *view, QString("
%1
").arg(tooltip.toString().toHtmlEscaped()), view); QPalette palette = QToolTip::palette(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) palette.setColor(QPalette::ColorRole::Background, m_tipColor); +#else + palette.setColor(QPalette::ColorRole::Window, m_tipColor); +#endif QToolTip::setPalette(palette); return true; } diff --git a/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.h b/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.h index 6d38294e..2c7d9d6a 100644 --- a/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.h +++ b/deepin-system-monitor-plugin-popup/gui/base/base_item_delegate.h @@ -7,9 +7,14 @@ #define BASE_ITEM_DELEGATE_H #include -#include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class QModelIndex; class QPainter; @@ -70,7 +75,11 @@ class BaseItemDelegate : public QStyledItemDelegate const QModelIndex &index) override; private Q_SLOTS: //切换主题时更改ToolTip背景色 +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif protected: /** diff --git a/deepin-system-monitor-plugin-popup/gui/base/base_table_view.cpp b/deepin-system-monitor-plugin-popup/gui/base/base_table_view.cpp index 38b71d9b..cc6f3f2f 100644 --- a/deepin-system-monitor-plugin-popup/gui/base/base_table_view.cpp +++ b/deepin-system-monitor-plugin-popup/gui/base/base_table_view.cpp @@ -9,7 +9,11 @@ #include "gui/base/base_item_delegate.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -121,7 +125,11 @@ void BaseTableView::paintEvent(QPaintEvent *event) // DStyle object auto style = dynamic_cast(DApplication::style()); // global app helper instance +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif // global palette auto palette = dAppHelper->applicationPalette(); diff --git a/deepin-system-monitor-plugin-popup/gui/cpu_widget.cpp b/deepin-system-monitor-plugin-popup/gui/cpu_widget.cpp index d9def2a5..84a68613 100644 --- a/deepin-system-monitor-plugin-popup/gui/cpu_widget.cpp +++ b/deepin-system-monitor-plugin-popup/gui/cpu_widget.cpp @@ -9,7 +9,11 @@ #include "dbus/dbuscallmaininterface.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -39,8 +43,13 @@ CpuWidget::CpuWidget(QWidget *parent) downloadSpeeds->append(0); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &CpuWidget::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &CpuWidget::changeTheme); +#endif changeTheme(dAppHelper->themeType()); initConnection(); @@ -108,16 +117,28 @@ void CpuWidget::updateStatus() update(); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void CpuWidget::changeTheme(DApplicationHelper::ColorType themeType) +#else +void CpuWidget::changeTheme(DGuiApplicationHelper::ColorType themeType) +#endif { switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::ColorType::LightType: +#endif m_titleTrans = Globals::TitleTransLight; m_contentTrans = Globals::contentTransLight; m_hoverTrans = Globals::hoverTransLight; m_icon = QIcon(QString(":/icons/deepin/builtin/light/icon_cpu.png")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::ColorType::DarkType: +#endif m_titleTrans = Globals::TitleTransDark; m_contentTrans = Globals::contentTransDark; m_hoverTrans = Globals::hoverTransDark; @@ -128,7 +149,11 @@ void CpuWidget::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR ltextColor = palette.color(DPalette::TextTitle); @@ -171,7 +196,11 @@ void CpuWidget::paintEvent(QPaintEvent *e) QString cpuTitle = DApplication::translate("Cpu.Widget", "CPU"); painter.setFont(m_TitleFont); // QFontMetrics fmTitle = painter.fontMetrics(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int widthTitle = fmTitleContent.width(cpuTitle); +#else + int widthTitle = fmTitleContent.horizontalAdvance(cpuTitle); +#endif int heightTitle = fmTitleContent.descent() + fmTitleContent.ascent(); QRect cpuTitleRect(titleRect.x(), titleRect.y(), widthTitle, heightTitle); painter.drawText(titleRect, Qt::AlignHCenter | Qt::AlignVCenter, cpuTitle); diff --git a/deepin-system-monitor-plugin-popup/gui/cpu_widget.h b/deepin-system-monitor-plugin-popup/gui/cpu_widget.h index 22b84b08..85f1daca 100644 --- a/deepin-system-monitor-plugin-popup/gui/cpu_widget.h +++ b/deepin-system-monitor-plugin-popup/gui/cpu_widget.h @@ -9,9 +9,13 @@ #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include - DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class CpuWidget : public QWidget { @@ -39,7 +43,11 @@ public slots: private: void initConnection(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); void getPainterPathByData(QList *listData, QPainterPath &path, qreal maxVlaue); diff --git a/deepin-system-monitor-plugin-popup/gui/disk_widget.cpp b/deepin-system-monitor-plugin-popup/gui/disk_widget.cpp index 77ff67e2..82418518 100644 --- a/deepin-system-monitor-plugin-popup/gui/disk_widget.cpp +++ b/deepin-system-monitor-plugin-popup/gui/disk_widget.cpp @@ -10,7 +10,11 @@ #include "dbus/dbuscallmaininterface.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -46,8 +50,13 @@ DiskWidget::DiskWidget(QWidget *parent) writeSpeeds->append(0); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &DiskWidget::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &DiskWidget::changeTheme); +#endif changeTheme(dAppHelper->themeType()); changeFont(DApplication::font()); @@ -136,16 +145,28 @@ void DiskWidget::updateStatus() update(); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void DiskWidget::changeTheme(DApplicationHelper::ColorType themeType) +#else +void DiskWidget::changeTheme(DGuiApplicationHelper::ColorType themeType) +#endif { switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::ColorType::LightType: +#endif m_titleTrans = Globals::TitleTransLight; m_contentTrans = Globals::contentTransLight; m_hoverTrans = Globals::hoverTransLight; m_icon = QIcon(QString(":/icons/deepin/builtin/light/icon_disk.png")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::ColorType::DarkType: +#endif m_titleTrans = Globals::TitleTransDark; m_contentTrans = Globals::contentTransDark; m_hoverTrans = Globals::hoverTransDark; @@ -156,7 +177,11 @@ void DiskWidget::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR ltextColor = palette.color(DPalette::TextTitle); @@ -217,7 +242,11 @@ void DiskWidget::paintEvent(QPaintEvent *e) QString disksTitle = DApplication::translate("Disk.Widget", "Disk"); painter.setFont(m_sectionFont); QFontMetrics fmTitle = painter.fontMetrics(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int widthTitleTxt = fmTitle.width(disksTitle); +#else + int widthTitleTxt = fmTitle.horizontalAdvance(disksTitle); +#endif int heightTitleTxt = fmTitle.descent()+fmTitle.ascent(); QRect netTitleRect(titleRect.x(), titleRect.y(), widthTitleTxt, heightTitleTxt); painter.drawText(titleRect, Qt::AlignHCenter | Qt::AlignVCenter, disksTitle); diff --git a/deepin-system-monitor-plugin-popup/gui/disk_widget.h b/deepin-system-monitor-plugin-popup/gui/disk_widget.h index eb38781d..dc13ae77 100644 --- a/deepin-system-monitor-plugin-popup/gui/disk_widget.h +++ b/deepin-system-monitor-plugin-popup/gui/disk_widget.h @@ -9,10 +9,14 @@ #include #include #include -#include - +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) +#include DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class DiskWidget : public QWidget { @@ -36,7 +40,11 @@ public slots: void mouseDoubleClickEvent(QMouseEvent *event) override; private: +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); void getPainterPathByData(QList *listData, QPainterPath &path, qreal maxVlaue); diff --git a/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp b/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp index d0a6666e..6d5c8ac8 100644 --- a/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp +++ b/deepin-system-monitor-plugin-popup/gui/mainwindow.cpp @@ -10,9 +10,12 @@ #include "helper.hpp" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include -#include +#else #include +#endif +#include #include #include @@ -24,7 +27,9 @@ #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#endif #include #include #include @@ -297,7 +302,11 @@ void MainWindow::initUI() m_scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded); auto pal = qApp->palette(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) pal.setColor(QPalette::Background, QColor(0, 0, 0, 0)); +#else + pal.setColor(QPalette::ColorRole::Window, QColor(0, 0, 0, 0)); +#endif m_scrollArea->setPalette(pal); m_scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); m_scrollArea->setWidget(parentWidget); @@ -324,8 +333,13 @@ void MainWindow::initAni() m_aniGroup->addAnimation(m_xAni); m_aniGroup->addAnimation(m_widthAni); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &MainWindow::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &MainWindow::changeTheme); +#endif changeTheme(dAppHelper->themeType()); } @@ -377,21 +391,39 @@ void MainWindow::initConnect() }); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void MainWindow::changeTheme(DApplicationHelper::ColorType themeType) { +#else +void MainWindow::changeTheme(DGuiApplicationHelper::ColorType themeType) +{ +#endif // disable auto fill frame background QPalette palette; setAutoFillBackground(true); switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: palette.setColor(QPalette::Background, QColor(210, 210, 210, 75)); +#else + case DGuiApplicationHelper::ColorType::LightType: + palette.setColor(QPalette::ColorRole::Window, QColor(210, 210, 210, 75)); +#endif m_scrollArea->verticalScrollBar()->setStyleSheet("QScrollBar::handle:vertical:hover{background-color:rgb(50,50,50);}"); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::ColorType::DarkType: +#endif setAutoFillBackground(false); //Dark主题的透明度为204 +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) palette.setColor(QPalette::Background, QColor(25, 25, 25, 204)); +#else + palette.setColor(QPalette::ColorRole::Window, QColor(25, 25, 25, 204)); +#endif m_scrollArea->verticalScrollBar()->setStyleSheet("QScrollBar::handle:vertical:hover{background-color:rgb(200,200,200);}"); break; default: @@ -466,7 +498,11 @@ void MainWindow::adjustPosition() m_scrollArea->horizontalScrollBar()->setEnabled(false); auto pal = qApp->palette(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) pal.setColor(QPalette::Background, QColor(0, 0, 0, 0)); +#else + pal.setColor(QPalette::ColorRole::Window, QColor(0, 0, 0, 0)); +#endif m_scrollArea->setPalette(pal); m_scrollArea->setWindowFlags(Qt::FramelessWindowHint); m_scrollArea->setFrameShape(QFrame::NoFrame); diff --git a/deepin-system-monitor-plugin-popup/gui/mainwindow.h b/deepin-system-monitor-plugin-popup/gui/mainwindow.h index 11d1bcde..b01588cb 100644 --- a/deepin-system-monitor-plugin-popup/gui/mainwindow.h +++ b/deepin-system-monitor-plugin-popup/gui/mainwindow.h @@ -164,7 +164,11 @@ private slots: //! \brief changeTheme 切换系统主题时,改变当前的显示内容 //! \param themeType 主题类型 //! +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif //! //! \brief dbusPropertiesChanged 获取属性变化信号 //! \param interface 接口,maps 数据,strs 名称 diff --git a/deepin-system-monitor-plugin-popup/gui/memory_widget.cpp b/deepin-system-monitor-plugin-popup/gui/memory_widget.cpp index e083a818..81a42eef 100644 --- a/deepin-system-monitor-plugin-popup/gui/memory_widget.cpp +++ b/deepin-system-monitor-plugin-popup/gui/memory_widget.cpp @@ -10,7 +10,11 @@ #include "dbus/dbuscallmaininterface.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -35,8 +39,13 @@ MemoryWidget::MemoryWidget(QWidget *parent) setFixedSize(m_width, 153); setContentsMargins(0, 0, 0, 0); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &MemoryWidget::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &MemoryWidget::changeTheme); +#endif changeTheme(dAppHelper->themeType()); changeFont(DApplication::font()); @@ -94,17 +103,30 @@ void MemoryWidget::updateStatus() update(); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void MemoryWidget::changeTheme(DApplicationHelper::ColorType themeType) { +#else +void MemoryWidget::changeTheme(DGuiApplicationHelper::ColorType themeType) +{ +#endif switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::ColorType::LightType: +#endif numberColor.setRgb(0, 26, 46); m_titleTrans = Globals::TitleTransLight; m_contentTrans = Globals::contentTransLight; m_hoverTrans = Globals::hoverTransLight; m_icon = QIcon(QString(":/icons/deepin/builtin/light/icon_memory.png")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::ColorType::DarkType: +#endif numberColor.setRgb(192, 198, 212); m_titleTrans = Globals::TitleTransDark; m_contentTrans = Globals::contentTransDark; @@ -116,7 +138,11 @@ void MemoryWidget::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); textColor = palette.color(DPalette::Text); @@ -150,7 +176,11 @@ void MemoryWidget::paintEvent(QPaintEvent *e) QString strMemory = DApplication::translate("Memory.Widget", "Memory"); painter.setFont(m_sectionFont); QFontMetrics fmTitle = painter.fontMetrics(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int widthTitleTxt = fmTitle.width(strMemory); +#else + int widthTitleTxt = fmTitle.horizontalAdvance(strMemory); +#endif int heightTitleTxt = fmTitle.descent() + fmTitle.ascent(); QRect netTitleRect(titleRect.x(), titleRect.y(), widthTitleTxt, heightTitleTxt); painter.drawText(titleRect, Qt::AlignHCenter | Qt::AlignVCenter, strMemory); diff --git a/deepin-system-monitor-plugin-popup/gui/memory_widget.h b/deepin-system-monitor-plugin-popup/gui/memory_widget.h index 4feb43b8..b307f8a2 100644 --- a/deepin-system-monitor-plugin-popup/gui/memory_widget.h +++ b/deepin-system-monitor-plugin-popup/gui/memory_widget.h @@ -1,4 +1,3 @@ -// Copyright (C) 2011 ~ 2020 Uniontech Software Technology Co.,Ltd // SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd. // // SPDX-License-Identifier: GPL-3.0-or-later @@ -9,9 +8,13 @@ #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include - DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class QPropertyAnimation; @@ -37,7 +40,11 @@ public slots: void mouseDoubleClickEvent(QMouseEvent *event) override; private: +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); private: diff --git a/deepin-system-monitor-plugin-popup/gui/net_widget.cpp b/deepin-system-monitor-plugin-popup/gui/net_widget.cpp index c5cf2e23..0bdf2113 100644 --- a/deepin-system-monitor-plugin-popup/gui/net_widget.cpp +++ b/deepin-system-monitor-plugin-popup/gui/net_widget.cpp @@ -10,7 +10,11 @@ #include "dbus/dbuscallmaininterface.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -35,8 +39,13 @@ NetWidget::NetWidget(QWidget *parent) setFixedSize(m_width, 203); setContentsMargins(0, 0, 0, 0); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &NetWidget::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &NetWidget::changeTheme); +#endif changeTheme(dAppHelper->themeType()); changeFont(DApplication::font()); @@ -157,16 +166,29 @@ void NetWidget::updateStatus() update(); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void NetWidget::changeTheme(DApplicationHelper::ColorType themeType) { +#else +void NetWidget::changeTheme(DGuiApplicationHelper::ColorType themeType) +{ +#endif switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::ColorType::LightType: +#endif m_titleTrans = Globals::TitleTransLight; m_contentTrans = Globals::contentTransLight; m_hoverTrans = Globals::hoverTransLight; m_icon = QIcon(QString(":/icons/deepin/builtin/light/icon_network.png")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::ColorType::DarkType: +#endif m_titleTrans = Globals::TitleTransDark; m_contentTrans = Globals::contentTransDark; m_hoverTrans = Globals::hoverTransDark; @@ -177,7 +199,11 @@ void NetWidget::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); textColor = palette.color(DPalette::Text); @@ -211,7 +237,11 @@ void NetWidget::paintEvent(QPaintEvent *e) //标题 painter.setFont(m_sectionFont); QFontMetrics fmTitle = painter.fontMetrics(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int widthTitleTxt = fmTitle.width(tr("Network")); +#else + int widthTitleTxt = fmTitle.horizontalAdvance(tr("Network")); +#endif int heightTitleTxt = fmTitle.descent()+fmTitle.ascent(); QRect netTitleRect(titleRect.x(), titleRect.y(), widthTitleTxt, heightTitleTxt); painter.drawText(titleRect, Qt::AlignHCenter | Qt::AlignVCenter, tr("Network")); diff --git a/deepin-system-monitor-plugin-popup/gui/net_widget.h b/deepin-system-monitor-plugin-popup/gui/net_widget.h index e497fc00..37a57bc0 100644 --- a/deepin-system-monitor-plugin-popup/gui/net_widget.h +++ b/deepin-system-monitor-plugin-popup/gui/net_widget.h @@ -9,11 +9,13 @@ #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include - -//#include "net_read.h" - DWIDGET_USE_NAMESPACE +#else +#include +DGUI_USE_NAMESPACE +#endif class NetWidget : public QWidget { @@ -39,7 +41,11 @@ public slots: private: void initConnection(); void getPainterPathByData(QList *listData, QPainterPath &path, qreal maxVlaue); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); private: diff --git a/deepin-system-monitor-plugin-popup/gui/process_table_view.cpp b/deepin-system-monitor-plugin-popup/gui/process_table_view.cpp index 7ce21c34..e06444a1 100644 --- a/deepin-system-monitor-plugin-popup/gui/process_table_view.cpp +++ b/deepin-system-monitor-plugin-popup/gui/process_table_view.cpp @@ -17,7 +17,12 @@ #include "process/process_db.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#include +#endif #include #include #include @@ -62,7 +67,12 @@ ProcessTableView::ProcessTableView(DWidget *parent) // adjust search result tip label text color dynamically on theme type change onThemeTypeChanged(); + +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) connect(DApplicationHelper::instance(), &DApplicationHelper::themeTypeChanged, this, &ProcessTableView::onThemeTypeChanged); +#else + connect(DGuiApplicationHelper::instance(), &DGuiApplicationHelper::themeTypeChanged, this, &ProcessTableView::onThemeTypeChanged); +#endif this->setAttribute(Qt::WA_TranslucentBackground, true); @@ -77,7 +87,11 @@ ProcessTableView::~ProcessTableView() void ProcessTableView::onThemeTypeChanged() { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->applicationPalette(); +#else + auto palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif palette.setColor(DPalette::Text, palette.color(DPalette::PlaceholderText)); m_notFoundLabel->setPalette(palette); @@ -122,7 +136,11 @@ void ProcessTableView::initUI() m_notFoundLabel = new DLabel(DApplication::translate("Common.Search", "No search results"), this); DFontSizeManager::instance()->bind(m_notFoundLabel, DFontSizeManager::T1); // change text color +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto palette = DApplicationHelper::instance()->palette(m_notFoundLabel); +#else + auto palette = DPaletteHelper::instance()->palette(m_notFoundLabel); +#endif QColor labelColor = palette.color(DPalette::PlaceholderText); palette.setColor(DPalette::Text, labelColor); m_notFoundLabel->setPalette(palette); diff --git a/deepin-system-monitor-plugin-popup/gui/process_widget.cpp b/deepin-system-monitor-plugin-popup/gui/process_widget.cpp index 63a42407..d8d355fb 100644 --- a/deepin-system-monitor-plugin-popup/gui/process_widget.cpp +++ b/deepin-system-monitor-plugin-popup/gui/process_widget.cpp @@ -11,7 +11,11 @@ #include "datadealsingleton.h" #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif #include #include @@ -42,8 +46,13 @@ ProcessWidget::ProcessWidget(QWidget *parent) setFixedSize(m_width, m_processWidgetHeight); setContentsMargins(0, 0, 0, 0); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); connect(dAppHelper, &DApplicationHelper::themeTypeChanged, this, &ProcessWidget::changeTheme); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); + connect(dAppHelper, &DGuiApplicationHelper::themeTypeChanged, this, &ProcessWidget::changeTheme); +#endif changeTheme(dAppHelper->themeType()); changeFont(DApplication::font()); @@ -64,7 +73,11 @@ ProcessWidget::ProcessWidget(QWidget *parent) QVBoxLayout *mainLayout = new QVBoxLayout(this); mainLayout->setContentsMargins(0, 0, 0, 0); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) mainLayout->setMargin(0); +#else + mainLayout->setContentsMargins(0, 0, 0, 0); +#endif mainLayout->addSpacing(35); mainLayout->addWidget(headerLabel); mainLayout->addWidget(m_processTableView); @@ -98,16 +111,29 @@ void ProcessWidget::updateStatus(qreal cpuPercent, const QList cPercents) update(); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void ProcessWidget::changeTheme(DApplicationHelper::ColorType themeType) { +#else +void ProcessWidget::changeTheme(DGuiApplicationHelper::ColorType themeType) +{ +#endif switch (themeType) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::LightType: +#else + case DGuiApplicationHelper::ColorType::LightType: +#endif m_titleTrans = Globals::TitleTransLight; m_contentTrans = Globals::contentTransLight; m_hoverTrans = Globals::hoverTransLight; m_icon = QIcon(QString(":/icons/deepin/builtin/light/icon_list.png")); break; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) case DApplicationHelper::DarkType: +#else + case DGuiApplicationHelper::ColorType::DarkType: +#endif m_titleTrans = Globals::TitleTransDark; m_contentTrans = Globals::contentTransDark; m_hoverTrans = Globals::hoverTransDark; @@ -118,7 +144,11 @@ void ProcessWidget::changeTheme(DApplicationHelper::ColorType themeType) } // init colors +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) auto *dAppHelper = DApplicationHelper::instance(); +#else + auto *dAppHelper = DGuiApplicationHelper::instance(); +#endif auto palette = dAppHelper->applicationPalette(); #ifndef THEME_FALLBACK_COLOR ltextColor = palette.color(DPalette::TextTitle); @@ -169,7 +199,11 @@ void ProcessWidget::paintEvent(QPaintEvent *e) //标题 painter.setFont(m_sectionFont); QFontMetrics fmTitle = painter.fontMetrics(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int widthTitleTxt = fmTitle.width(tr("Processes")); +#else + int widthTitleTxt = fmTitle.horizontalAdvance(tr("Processes")); +#endif int heightTitleTxt = fmTitle.descent()+fmTitle.ascent(); QRect netTitleRect(titleRect.x(), titleRect.y(), widthTitleTxt, heightTitleTxt); painter.drawText(titleRect, Qt::AlignHCenter | Qt::AlignVCenter, tr("Processes")); diff --git a/deepin-system-monitor-plugin-popup/gui/process_widget.h b/deepin-system-monitor-plugin-popup/gui/process_widget.h index 38b47213..678ba297 100644 --- a/deepin-system-monitor-plugin-popup/gui/process_widget.h +++ b/deepin-system-monitor-plugin-popup/gui/process_widget.h @@ -11,7 +11,11 @@ #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif DWIDGET_USE_NAMESPACE @@ -38,7 +42,11 @@ public slots: void mouseDoubleClickEvent(QMouseEvent *event) override; private: +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) void changeTheme(DApplicationHelper::ColorType themeType); +#else + void changeTheme(DGuiApplicationHelper::ColorType themeType); +#endif void changeFont(const QFont &font); private: diff --git a/deepin-system-monitor-plugin-popup/main.cpp b/deepin-system-monitor-plugin-popup/main.cpp index b0729f39..604a77c6 100644 --- a/deepin-system-monitor-plugin-popup/main.cpp +++ b/deepin-system-monitor-plugin-popup/main.cpp @@ -45,12 +45,19 @@ int main(int argc, char *argv[]) qputenv("QT_WAYLAND_SHELL_INTEGRATION", "kwayland-shell"); } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DGuiApplicationHelper::setUseInactiveColorGroup(false); DGuiApplicationHelper::setColorCompositingEnabled(true); +#else + DGuiApplicationHelper::setAttribute(DGuiApplicationHelper::UseInactiveColorGroup, false); + DGuiApplicationHelper::setAttribute(DGuiApplicationHelper::ColorCompositing, true); +#endif // DApplication *app = DApplication::globalApplication(argc, argv); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) Application::setAttribute(Qt::AA_UseHighDpiPixmaps, true); +#endif Application ac(argc, argv); ac.setAutoActivateWindows(true); diff --git a/deepin-system-monitor-plugin-popup/model/process_sort_filter_proxy_model.cpp b/deepin-system-monitor-plugin-popup/model/process_sort_filter_proxy_model.cpp index 5833a561..4b5e3811 100644 --- a/deepin-system-monitor-plugin-popup/model/process_sort_filter_proxy_model.cpp +++ b/deepin-system-monitor-plugin-popup/model/process_sort_filter_proxy_model.cpp @@ -30,13 +30,21 @@ void ProcessSortFilterProxyModel::setSortFilterString(const QString &search) } // set search pattern & do the filter +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) setFilterRegExp(QRegExp(search, Qt::CaseInsensitive)); +#else + setFilterRegularExpression(QRegularExpression(search, QRegularExpression::CaseInsensitiveOption)); +#endif } void ProcessSortFilterProxyModel::setFilterType(int type) { m_fileterType = type; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) setFilterRegExp(filterRegExp()); +#else + setFilterRegularExpression(filterRegularExpression()); +#endif } int ProcessSortFilterProxyModel::rowCount(const QModelIndex &parent) const @@ -64,10 +72,18 @@ bool ProcessSortFilterProxyModel::filterAcceptsRow(int row, const QModelIndex &p const QModelIndex &name = sourceModel()->index(row, ProcessTableModel::kProcessNameColumn, parent); // display name or name matches pattern if (name.isValid()) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) rc |= name.data().toString().contains(filterRegExp()); +#else + rc |= name.data().toString().contains(filterRegularExpression()); +#endif if (rc) return rc; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) rc |= name.data(Qt::UserRole).toString().contains(filterRegExp()); +#else + rc |= name.data(Qt::UserRole).toString().contains(filterRegularExpression()); +#endif if (rc) return rc; if (QLocale::system().language() == QLocale::Chinese) { @@ -79,8 +95,13 @@ bool ProcessSortFilterProxyModel::filterAcceptsRow(int row, const QModelIndex &p } // pid matches pattern - if (pid.isValid()) + if (pid.isValid()) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) rc |= pid.data().toString().contains(filterRegExp()); +#else + rc |= pid.data().toString().contains(filterRegularExpression()); +#endif + } if (rc) return rc; return false; @@ -107,9 +128,9 @@ bool ProcessSortFilterProxyModel::lessThan(const QModelIndex &left, const QModel if (rc == 0) { return left.sibling(left.row(), ProcessTableModel::kProcessCPUColumn) - .data(Qt::UserRole) < + .data(Qt::UserRole).toDouble() < right.sibling(right.row(), ProcessTableModel::kProcessCPUColumn) - .data(Qt::UserRole); + .data(Qt::UserRole).toDouble(); } else return rc < 0; } @@ -122,9 +143,9 @@ bool ProcessSortFilterProxyModel::lessThan(const QModelIndex &left, const QModel // compare cpu time first, then by memory usage if (qFuzzyCompare(lcpu.toReal(), rcpu.toReal())) { - return lmem < rmem; + return lmem.toULongLong() < rmem.toULongLong(); } else { - return lcpu < rcpu; + return lcpu.toDouble() < rcpu.toDouble(); } } default: diff --git a/deepin-system-monitor-plugin-popup/system/cpu_set.cpp b/deepin-system-monitor-plugin-popup/system/cpu_set.cpp index cc6faf1f..b80156cd 100644 --- a/deepin-system-monitor-plugin-popup/system/cpu_set.cpp +++ b/deepin-system-monitor-plugin-popup/system/cpu_set.cpp @@ -450,11 +450,19 @@ void CPUSet::read_overall_info() process.start("cat /proc/cpuinfo"); process.waitForFinished(3000); QString cpuinfo = process.readAllStandardOutput(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList processors = cpuinfo.split("\n\n", QString::SkipEmptyParts); +#else + QStringList processors = cpuinfo.split("\n\n", Qt::SkipEmptyParts); +#endif for (int i = 0; i < processors.count(); ++i) { CPUInfo info; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList list = processors[i].split("\n", QString::SkipEmptyParts); +#else + QStringList list = processors[i].split("\n", Qt::SkipEmptyParts); +#endif for (QString text : list) { if (text.startsWith("processor")) { info.setIndex(text.split(":").value(1).toInt()); @@ -478,10 +486,18 @@ void CPUSet::read_overall_info() process.start("lscpu"); process.waitForFinished(3000); QString lscpu = process.readAllStandardOutput(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList lscpuList = lscpu.split("\n", QString::SkipEmptyParts); +#else + QStringList lscpuList = lscpu.split("\n", Qt::SkipEmptyParts); +#endif d->m_info.clear(); for (QString lscpuLine : lscpuList) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList keyValue = lscpuLine.split(":", QString::SkipEmptyParts); +#else + QStringList keyValue = lscpuLine.split(":", Qt::SkipEmptyParts); +#endif if (keyValue.count() > 1) d->m_info[keyValue.value(0).trimmed()] = keyValue.value(1).trimmed(); } diff --git a/deepin-system-monitor-plugin-popup/translations/CMakeLists.txt b/deepin-system-monitor-plugin-popup/translations/CMakeLists.txt index 9761c5b7..04fd28b1 100644 --- a/deepin-system-monitor-plugin-popup/translations/CMakeLists.txt +++ b/deepin-system-monitor-plugin-popup/translations/CMakeLists.txt @@ -1,4 +1,8 @@ file(GLOB APP_POPUP_TS_FILES LIST_DIRECTORIES false *.ts) -qt5_add_translation(APP_POPUP_QM_FILES ${APP_POPUP_TS_FILES}) +if (QT_VERSION_MAJOR LESS 6) + qt5_add_translation(APP_POPUP_QM_FILES ${APP_POPUP_TS_FILES}) +else() + qt6_add_translation(APP_POPUP_QM_FILES ${APP_POPUP_TS_FILES}) +endif() add_custom_target(POPUP_QMFILES ALL DEPENDS ${APP_POPUP_QM_FILES}) -install(FILES ${APP_POPUP_QM_FILES} DESTINATION share/${CMAKE_PROJECT_NAME}/translations) \ No newline at end of file +install(FILES ${APP_POPUP_QM_FILES} DESTINATION share/${CMAKE_PROJECT_NAME}/translations) diff --git a/deepin-system-monitor-plugin/CMakeLists.txt b/deepin-system-monitor-plugin/CMakeLists.txt index d1bcd9df..c5b3ab60 100644 --- a/deepin-system-monitor-plugin/CMakeLists.txt +++ b/deepin-system-monitor-plugin/CMakeLists.txt @@ -6,13 +6,7 @@ set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) -find_package(Qt5 COMPONENTS Core REQUIRED) -find_package(Qt5 COMPONENTS Widgets REQUIRED) -find_package(Qt5 COMPONENTS Gui REQUIRED) -find_package(Qt5 COMPONENTS X11Extras REQUIRED) -find_package(Qt5 COMPONENTS DBus REQUIRED) -find_package(Qt5 COMPONENTS Concurrent REQUIRED) -find_package(Qt5 COMPONENTS LinguistTools REQUIRED) +find_package(${QT_NS} COMPONENTS Core Widgets Gui DBus Concurrent Svg LinguistTools REQUIRED) set(APP_RES_ROOT asserts) set(APP_RESOURCES ${APP_RES_ROOT}/${PROJECT_NAME}.qrc) @@ -21,12 +15,8 @@ set(APP_RESOURCES ${APP_RES_ROOT}/${PROJECT_NAME}.qrc) file(GLOB SRCS "*.h" "*.cpp" "gui/*.h" "gui/*.cpp" "dbus/*.h" "dbus/*.cpp") find_package(PkgConfig REQUIRED) -find_package(Qt5Widgets REQUIRED) -find_package(Qt5Svg REQUIRED) -find_package(Qt5DBus REQUIRED) -find_package(DtkWidget REQUIRED) +find_package(${DTK_NS} REQUIRED COMPONENTS Widget) -pkg_check_modules(QGSettings REQUIRED gsettings-qt) pkg_check_modules(DdeDockInterface REQUIRED dde-dock) if (DdeDockInterface_FOUND) @@ -46,16 +36,13 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../) target_include_directories(${PROJECT_NAME} PUBLIC ${DdeDockInterface_INCLUDE_DIRS} - ${DtkWidget_INCLUDE_DIRS} ${QGSettings_INCLUDE_DIRS} ) target_link_libraries(${PROJECT_NAME} PRIVATE - ${Qt5DBus_LIBRARIES} - ${DtkWidget_LIBRARIES} - ${Qt5Widgets_LIBRARIES} - ${Qt5Svg_LIBRARIES} - ${QGSettings_LIBRARIES} + ${QT_NS}::DBus + ${QT_NS}::Svg + ${DTK_NS}::Widget ) #安全测试加固编译参数 @@ -68,7 +55,11 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wl,-Map=deepin-system-monitor-plugin #生成qm file(GLOB APP_TS_FILES LIST_DIRECTORIES false translations/*.ts) -qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +if (QT_VERSION_MAJOR LESS 6) + qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +else() + qt6_add_translation(APP_QM_FILES ${APP_TS_FILES}) +endif() add_custom_target(PLUGIN_QMFILES ALL DEPENDS ${APP_QM_FILES}) INSTALL(FILES com.deepin.dde.dock.module.system-monitor.gschema.xml DESTINATION ${CMAKE_INSTALL_DATADIR}/glib-2.0/schemas) diff --git a/deepin-system-monitor-plugin/gui/monitor_plugin.cpp b/deepin-system-monitor-plugin/gui/monitor_plugin.cpp index c4899477..ea5b61f3 100644 --- a/deepin-system-monitor-plugin/gui/monitor_plugin.cpp +++ b/deepin-system-monitor-plugin/gui/monitor_plugin.cpp @@ -10,14 +10,12 @@ #include #include #include -#include #include #include #include -#include #include #include - +#include namespace constantVal { const QString PLUGIN_STATE_KEY = "enable"; } @@ -328,7 +326,11 @@ void MonitorPlugin::calcCpuRate(qlonglong &totalCPU, qlonglong &availableCPU) QTextStream stream(&file); QString line = stream.readLine(); if (!line.isNull()) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList list = line.split(QRegExp("\\s{1,}")); +#else + QStringList list = line.split(QRegularExpression("\\s{1,}")); +#endif for (auto v = list.begin() + 1; v != list.end(); ++v) totalCPU += (*v).toLongLong(&ok); if (list.size() > 4) @@ -350,7 +352,11 @@ void MonitorPlugin::calcMemRate(qlonglong &memory, qlonglong &memoryAll) qlonglong buff[16] = { 0 }; for (int i = 0; i <= 15; ++i) { QString line = stream.readLine(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList list = line.split(QRegExp("\\s{1,}")); +#else + QStringList list = line.split(QRegularExpression("\\s{1,}")); +#endif if (list.size() >= 2) { buff[i] = list.at(1).toLongLong(&ok); } @@ -376,8 +382,11 @@ void MonitorPlugin::calcNetRate(qlonglong &netDown, qlonglong &netUpload) line = stream.readLine(); while (!line.isNull()) { line = line.trimmed(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList list = line.split(QRegExp("\\s{1,}")); // match number >= 1 space character - +#else + QStringList list = line.split(QRegularExpression("\\s{1,}")); +#endif if (!list.isEmpty()) { down = list.at(1).toLongLong(); upload = list.at(9).toLongLong(); diff --git a/deepin-system-monitor-plugin/gui/quickpanelwidget.cpp b/deepin-system-monitor-plugin/gui/quickpanelwidget.cpp index 4d5b49c9..1cdf12c2 100644 --- a/deepin-system-monitor-plugin/gui/quickpanelwidget.cpp +++ b/deepin-system-monitor-plugin/gui/quickpanelwidget.cpp @@ -42,7 +42,11 @@ void QuickPanelWidget::initUI() DFontSizeManager::instance()->bind(m_description, DFontSizeManager::T10); auto layout = new QVBoxLayout; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) layout->setMargin(8); +#else + layout->setContentsMargins(8, 8, 8, 8); +#endif layout->setSpacing(0); layout->addStretch(1); layout->addWidget(m_icon, 0, Qt::AlignCenter); diff --git a/deepin-system-monitor-plugin/gui/systemmonitortipswidget.cpp b/deepin-system-monitor-plugin/gui/systemmonitortipswidget.cpp index 1414c439..41d917b9 100644 --- a/deepin-system-monitor-plugin/gui/systemmonitortipswidget.cpp +++ b/deepin-system-monitor-plugin/gui/systemmonitortipswidget.cpp @@ -42,22 +42,46 @@ void SystemMonitorTipsWidget::setSystemMonitorTipsText(QStringList strList) // 设置左侧字符串宽度 if (cpu.length() == 3) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_leftWidth = fontMetrics().width(QString(" ") + DApplication::translate("Plugin.cpu", "CPU") + QString(": 0") + cpu + QString(" ")); +#else + m_leftWidth = fontMetrics().horizontalAdvance(QString(" ") + DApplication::translate("Plugin.cpu", "CPU") + QString(": 0") + cpu + QString(" ")); +#endif } else { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_leftWidth = fontMetrics().width(QString(" ") + DApplication::translate("Plugin.cpu", "CPU") + QString(": ") + cpu + QString(" ")); +#else + m_leftWidth = fontMetrics().horizontalAdvance(QString(" ") + DApplication::translate("Plugin.cpu", "CPU") + QString(": ") + cpu + QString(" ")); +#endif } // 左侧宽度预留20个像素 m_leftWidth += 20; // 设置右侧字符串宽度 if (downLoad.length() == 3) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_rightWidth = fontMetrics().width(QString("↓000") + downLoad + QString(" ")); +#else + m_rightWidth = fontMetrics().horizontalAdvance(QString("↓000") + downLoad + QString(" ")); +#endif } else if (downLoad.length() == 4) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_rightWidth = fontMetrics().width(QString("↓00") + downLoad + QString(" ")); +#else + m_rightWidth = fontMetrics().horizontalAdvance(QString("↓00") + downLoad + QString(" ")); +#endif } else if (downLoad.length() == 5) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_rightWidth = fontMetrics().width(QString("↓0") + downLoad + QString(" ")); +#else + m_rightWidth = fontMetrics().horizontalAdvance(QString("↓0") + downLoad + QString(" ")); +#endif } else { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_rightWidth = fontMetrics().width(QString("↓") + downLoad + QString(" ")); +#else + m_rightWidth = fontMetrics().horizontalAdvance(QString("↓") + downLoad + QString(" ")); +#endif } // 设置右侧字符串宽度预留20个像素 m_rightWidth += 20; @@ -111,7 +135,11 @@ void SystemMonitorTipsWidget::paintEvent(QPaintEvent *event) // int specialCharaWidth = fontMetrics().width(QString("↓")); int specialCharaWidth = 10; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int specialCharaHeight = fontMetrics().width(QString("1")) + 5; +#else + int specialCharaHeight = fontMetrics().horizontalAdvance(QString("1")) + 5; +#endif // 左侧空白区域 int leftMargin = 10; diff --git a/deepin-system-monitor-plugin/translations/CMakeLists.txt b/deepin-system-monitor-plugin/translations/CMakeLists.txt index 35b350af..6e004890 100644 --- a/deepin-system-monitor-plugin/translations/CMakeLists.txt +++ b/deepin-system-monitor-plugin/translations/CMakeLists.txt @@ -1,4 +1,8 @@ file(GLOB APP_PLUGIN_TS_FILES LIST_DIRECTORIES false *.ts) -qt5_add_translation(APP_PLUGIN_QM_FILES ${APP_PLUGIN_TS_FILES}) +if (QT_VERSION_MAJOR LESS 6) + qt5_add_translation(APP_PLUGIN_QM_FILES ${APP_PLUGIN_TS_FILES}) +else() + qt6_add_translation(APP_PLUGIN_QM_FILES ${APP_PLUGIN_TS_FILES}) +endif() add_custom_target(PLUGINQMFILES ALL DEPENDS ${APP_PLUGIN_QM_FILES}) install(FILES ${APP_PLUGIN_QM_FILES} DESTINATION share/${CMAKE_PROJECT_NAME}/translations) diff --git a/deepin-system-monitor-server/CMakeLists.txt b/deepin-system-monitor-server/CMakeLists.txt index 51ddfc83..828848b8 100644 --- a/deepin-system-monitor-server/CMakeLists.txt +++ b/deepin-system-monitor-server/CMakeLists.txt @@ -6,7 +6,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstack-protector-strong -D_FORTITY_SOURCE=1 -z noexecstack -pie -fPIC -z lazy") @@ -31,8 +31,8 @@ endforeach() file(GLOB_RECURSE SRC_CPP ${CMAKE_CURRENT_LIST_DIR}/src/*.cpp) file(GLOB_RECURSE SRC_H ${CMAKE_CURRENT_LIST_DIR}/src/*.h) -find_package(Qt5 COMPONENTS Core DBus REQUIRED) -find_package(Dtk REQUIRED COMPONENTS Core) +find_package(${QT_NS} COMPONENTS Core DBus REQUIRED) +find_package(${DTK_NS} REQUIRED COMPONENTS Core) add_executable(${BIN_NAME} ${SRC_CPP} @@ -41,15 +41,15 @@ add_executable(${BIN_NAME} ) target_include_directories(${BIN_NAME} PUBLIC - Qt5::Core - Qt5::DBus - Dtk::Core + ${QT_NS}::Core + ${QT_NS}::DBus + ${DTK_NS}::Core ) target_link_libraries(${BIN_NAME} PRIVATE - Qt5::Core - Qt5::DBus - Dtk::Core + ${QT_NS}::Core + ${QT_NS}::DBus + ${DTK_NS}::Core ) install(TARGETS ${BIN_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR}) diff --git a/deepin-system-monitor-system-server/CMakeLists.txt b/deepin-system-monitor-system-server/CMakeLists.txt index d701efd7..2d18efdc 100644 --- a/deepin-system-monitor-system-server/CMakeLists.txt +++ b/deepin-system-monitor-system-server/CMakeLists.txt @@ -6,7 +6,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstack-protector-strong -D_FORTITY_SOURCE=1 -z noexecstack -pie -fPIC -z lazy") @@ -31,27 +31,25 @@ endforeach() file(GLOB_RECURSE SRC_CPP ${CMAKE_CURRENT_LIST_DIR}/src/*.cpp) file(GLOB_RECURSE SRC_H ${CMAKE_CURRENT_LIST_DIR}/src/*.h) -find_package(Qt5 COMPONENTS Core DBus REQUIRED) -find_package(PolkitQt5-1 REQUIRED) -find_package(Dtk REQUIRED COMPONENTS Core) +find_package(${QT_NS} COMPONENTS Core DBus REQUIRED) +if (QT_VERSION_MAJOR LESS 6) + find_package(PolkitQt5-1 REQUIRED) +else() + find_package(PolkitQt6-1 REQUIRED) +endif() +find_package(${DTK_NS} REQUIRED COMPONENTS Core) add_executable(${BIN_NAME} ${SRC_CPP} ${SRC_H} ) -target_include_directories(${BIN_NAME} PUBLIC - Qt5::Core - Qt5::DBus - PolkitQt5-1::Agent - Dtk::Core -) - target_link_libraries(${BIN_NAME} PRIVATE - Qt5::Core - Qt5::DBus - PolkitQt5-1::Agent - Dtk::Core + ${QT_NS}::Core + ${QT_NS}::DBus + $<$:PolkitQt5-1::Agent> + $<$:PolkitQt6-1::Agent> + ${DTK_NS}::Core ) # Use deepin-service-manager mange DBus servicde diff --git a/deepin-system-monitor-system-server/misc/org.deepin.deepin-system-monitor-system-server.policy b/deepin-system-monitor-system-server/misc/org.deepin.deepin-system-monitor-system-server.policy index 9b16fa6a..9dd178ab 100644 --- a/deepin-system-monitor-system-server/misc/org.deepin.deepin-system-monitor-system-server.policy +++ b/deepin-system-monitor-system-server/misc/org.deepin.deepin-system-monitor-system-server.policy @@ -14,65 +14,65 @@ /usr/bin/deepin-system-monitor true - Hizmet başlangıç ​​türünü ayarla - Hizmet başlangıç ​​türünü ayarlamak için kimlik doğrulaması gerekli - Definir o tipo de arranque do serviço - É necessária a autenticação para definir o tipo de arranque do serviço - Tetapkan jenis permulaan perkhidmatan - Pengesahihan diperlukan untuk menetapkan jenis permulaan perkhidmatan - Indstil tjenestens opstartstype - Der kræves autentifikation for at indstille tjenestens opstartstype تعيين نوع بدء تشغيل الخدمة المصادقة مطلوبة لتعيين نوع بدء تشغيل الخدمة - Definir o tipo de inicialização do serviço - A autenticação é necessária para definir o tipo de inicialização do serviço + Xidmətin başladılma növünü təyin edin + Xidmətin başladılma növünü təyin etmək üçün doğrulama tələb olunur + ཞབས་ཞུའི་འགོ་སློང་བྱེད་ཐབས་སྒྲིག་འགོད་བྱེད་པ། + ཞབས་ཞུའི་འགོ་སློང་ཐབས་སྒྲིག་འགོད་བྱེད་པར་དཔང་དཔྱད་བྱ་དགོས། Termeniñ doare loc'hañ ar servij An anaoudadur a zo rekis evit termeniñ an doare loc'hañ servij + Establiu el tipus d'inici del servei + Cal autenticació per establir el tipus d'inici del servei. Nastavit typ spouštění služby Pro nastavení typu spouštění služby je třeba ověření se - Setel tipe layanan startup - Autentikasi diperlukan untuk menyetel tipe layanan startup - Estableza o tipo de inicio de servizo - A autenticación é necesaria para configurar o tipo de inicio de servizo + Indstil tjenestens opstartstype + Der kræves autentifikation for at indstille tjenestens opstartstype Dienst-Starttyp einstellen Authentifizierung ist erforderlich, um den Starttyp des Dienstes einzustellen - Palvelun käynnistystyypin vaihto - Palvelun käynnistystyypin vaihtamiseen vaaditaan todennus - 서비스 시작 유형 설정 - 서비스 시작 유형을 설정하려면 인증이 필요합니다. - 設定服務的啟動方式 - 設定服務的啟動方式需要認證 - 設置服務的啟動方式 - 設置服務的啟動方式需要認證 - Állítsa be a szolgáltatás indítási típusát - Hitelesítés szükséges a szolgáltatás indítási típusának beállításához - Ustaw typ uruchomienia usługi - Wymagane jest uwierzytelnienie, aby ustawić typ uruchamiania usługi - مۇلازىمەت باشلاش تىپىنى بەلگىلەش - مۇلازىمەت باشلاش تىپىنى تەڭشەش ئۈچۈن دەلىللەش تەلەپ قىلىنىدۇ - Xidmətin başladılma növünü təyin edin - Xidmətin başladılma növünü təyin etmək üçün doğrulama tələb olunur - Постави режим покретања услуге - Идентификација је неопходна за поставку режима покретања услуга Establecer tipo de inicio del servicio Se requiere autenticación para establecer el tipo de servicio de inicio + Palvelun käynnistystyypin vaihto + Palvelun käynnistystyypin vaihtamiseen vaaditaan todennus Définir le type de démarrage du service L'authentification est requise pour définir le type de démarrage du service + Estableza o tipo de inicio de servizo + A autenticación é necesaria para configurar o tipo de inicio de servizo + Állítsa be a szolgáltatás indítási típusát + Hitelesítés szükséges a szolgáltatás indítási típusának beállításához + Setel tipe layanan startup + Autentikasi diperlukan untuk menyetel tipe layanan startup Imposta tipo di avvio del servizio Autenticazione richiesta per variare il tipo di avvio automatico + 서비스 시작 유형 설정 + 서비스 시작 유형을 설정하려면 인증이 필요합니다. + Tetapkan jenis permulaan perkhidmatan + Pengesahihan diperlukan untuk menetapkan jenis permulaan perkhidmatan Soort opstart instellen Voer je wachtwoord in om het soort opstart in te stellen - 设置服务的启动方式 - 设置服务的启动方式需要认证 - ཞབས་ཞུའི་འགོ་སློང་བྱེད་ཐབས་སྒྲིག་འགོད་བྱེད་པ། - ཞབས་ཞུའི་འགོ་སློང་ཐབས་སྒྲིག་འགོད་བྱེད་པར་དཔང་དཔྱད་བྱ་དགོས། - Встановлення типу запуску служби - Для встановлення типу запуску служби слід пройти розпізнавання + Ustaw typ uruchomienia usługi + Wymagane jest uwierzytelnienie, aby ustawić typ uruchamiania usługi + Definir o tipo de arranque do serviço + É necessária a autenticação para definir o tipo de arranque do serviço + Definir o tipo de inicialização do serviço + A autenticação é necessária para definir o tipo de inicialização do serviço Задать тип запуска службы Требуется аутентификация для установки типа запуска службы Caktoni lloj nisjeje shërbimi Që të caktohet lloj nisjeje shërbimi, lyspet mirëfilltësim - Establiu el tipus d'inici del servei - Cal autenticació per establir el tipus d'inici del servei. + Постави режим покретања услуге + Идентификација је неопходна за поставку режима покретања услуга + Hizmet başlangıç ​​türünü ayarla + Hizmet başlangıç ​​türünü ayarlamak için kimlik doğrulaması gerekli + مۇلازىمەت باشلاش تىپىنى بەلگىلەش + مۇلازىمەت باشلاش تىپىنى تەڭشەش ئۈچۈن دەلىللەش تەلەپ قىلىنىدۇ + Встановлення типу запуску служби + Для встановлення типу запуску служби слід пройти розпізнавання + 设置服务的启动方式 + 设置服务的启动方式需要认证 + 設置服務的啟動方式 + 設置服務的啟動方式需要認證 + 設定服務的啟動方式 + 設定服務的啟動方式需要認證 diff --git a/deepin-system-monitor-system-server/src/systemdbusserver.cpp b/deepin-system-monitor-system-server/src/systemdbusserver.cpp index ba079afd..13e787bb 100644 --- a/deepin-system-monitor-system-server/src/systemdbusserver.cpp +++ b/deepin-system-monitor-system-server/src/systemdbusserver.cpp @@ -13,9 +13,14 @@ #include #include #include - +#include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include #include +#else +#include +#include +#endif using namespace DDLog; @@ -100,7 +105,11 @@ QString SystemDBusServer::setServiceEnableImpl(const QString &serviceName, bool } // 不允许包含';' ' '字符,服务名称长度同样限制 +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) if (serviceName.isEmpty() || (serviceName.size() > SHRT_MAX) || serviceName.contains(QRegExp("[; ]"))) { +#else + if (serviceName.isEmpty() || (serviceName.size() > SHRT_MAX) || serviceName.contains(QRegularExpression("[; ]"))) { +#endif qWarning() << qPrintable("Invalid service name"); return QString(strerror(EINVAL)); } diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index cbcaed69..50577fde 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -25,7 +25,7 @@ set(APP_RESOURCES ../deepin-system-monitor-main/${APP_RES_ROOT}/${PROJECT_NAME}. set(DESKTOP_FILE ${PROJECT_NAME}.desktop) set(POLICY_FILE com.deepin.pkexec.${PROJECT_NAME}.policy) -set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED True) @@ -57,18 +57,9 @@ check_symbol_exists(SYS_getrandom "sys/syscall.h" HAVE_SYS_GETRANDOM) configure_file(${CMAKE_HOME_DIRECTORY}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h) include(FindPkgConfig) -find_package(KF5Wayland) -find_package(Qt5 COMPONENTS Core REQUIRED) -find_package(Qt5 COMPONENTS Widgets REQUIRED) -find_package(Qt5 COMPONENTS Gui REQUIRED) -find_package(Qt5 COMPONENTS X11Extras REQUIRED) -find_package(Qt5 COMPONENTS DBus REQUIRED) -find_package(Qt5 COMPONENTS Concurrent REQUIRED) -find_package(Qt5 COMPONENTS LinguistTools REQUIRED) - -find_package(DtkCore REQUIRED) -find_package(DtkGui REQUIRED) -find_package(DtkWidget REQUIRED) +find_package(${QT_NS} COMPONENTS Core Widgets Gui DBus Concurrent LinguistTools REQUIRED) +find_package(${DTK_NS} REQUIRED COMPONENTS Core Gui Widget) + find_library(LIB_PCAP NAMES pcap REQUIRED) find_library(LIB_XCB NAMES xcb REQUIRED) find_library(LIB_XEXT NAMES Xext REQUIRED) @@ -84,8 +75,6 @@ include_directories(${GTEST_INCLUDE_DIRS}) pkg_search_module(LIB_NL3 REQUIRED libnl-3.0) pkg_search_module(LIB_NL3_ROUTE REQUIRED libnl-route-3.0) pkg_search_module(LIB_UDEV REQUIRED libudev) -include_directories(${DtkGui_INCLUDE_DIRS}) -include_directories(${DtkCore_INCLUDE_DIRS}) include_directories(${LIB_NL3_INCLUDE_DIRS}) include_directories(${LIB_NL3_ROUTE_INCLUDE_DIRS}) include_directories(${LIB_UDEV_INCLUDE_DIRS}) @@ -95,8 +84,6 @@ include_directories(${CMAKE_HOME_DIRECTORY}/${PROJECT_NAME}-main/3rdparty) include_directories(${CMAKE_HOME_DIRECTORY}/${PROJECT_NAME}-main/3rdparty/include) include_directories(${CMAKE_HOME_DIRECTORY}/${PROJECT_NAME}-main/3rdparty/libsmartcols/src) - - set(HPP_GLOBAL ${CMAKE_HOME_DIRECTORY}/config.h ${CMAKE_HOME_DIRECTORY}/${PROJECT_NAME}-main/environments.h @@ -574,7 +561,11 @@ set(APP_CPP ) file(GLOB APP_TS_FILES LIST_DIRECTORIES false ${CMAKE_HOME_DIRECTORY}/${PROJECT_NAME}-main/translations/*.ts) -qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +if (QT_VERSION_MAJOR LESS 6) + qt5_add_translation(APP_QM_FILES ${APP_TS_FILES}) +else() + qt6_add_translation(APP_QM_FILES ${APP_TS_FILES}) +endif() add_custom_target(QMFILES_TEST ALL DEPENDS ${APP_QM_FILES}) find_program(POLICY_TS_CONV deepin-policy-ts-convert REQUIRED) @@ -615,8 +606,6 @@ set_target_properties(${PROJECT_NAME_TEST} target_include_directories(${PROJECT_NAME_TEST} PRIVATE - ${DtkWidget_INCLUDE_DIRS} - ${Qt5DBus_LIBRARIES} ${GTEST_INCLUDE_DIRS} ${LIB_NL3_INCLUDE_DIRS} ${LIB_NL3_ROUTE_INCLUDE_DIRS} @@ -629,15 +618,14 @@ target_include_directories(${PROJECT_NAME_TEST} ) target_link_libraries(${PROJECT_NAME_TEST} - Qt5::Core - Qt5::Widgets - Qt5::Gui - Qt5::DBus - Qt5::Concurrent - Qt5::X11Extras - dtkcore - dtkwidget - dtkgui + ${QT_NS}::Core + ${QT_NS}::Widgets + ${QT_NS}::Gui + ${QT_NS}::DBus + ${QT_NS}::Concurrent + ${DTK_NS}::Core + ${DTK_NS}::Gui + ${DTK_NS}::Widget KF5::WaylandClient KF5::WaylandServer ${LIB_PCAP} diff --git a/tests/deepin-system-monitor-main/gui/ut_block_dev_summary_view_widget.cpp b/tests/deepin-system-monitor-main/gui/ut_block_dev_summary_view_widget.cpp index 440e0163..bed7005a 100644 --- a/tests/deepin-system-monitor-main/gui/ut_block_dev_summary_view_widget.cpp +++ b/tests/deepin-system-monitor-main/gui/ut_block_dev_summary_view_widget.cpp @@ -18,7 +18,12 @@ #include #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else +#include +#endif + using namespace core::system; using namespace common::format; /***************************************STUB begin*********************************************/ @@ -263,7 +268,11 @@ class DeailTableModelBlock : public QAbstractTableModel break; } } else if (role == Qt::TextColorRole) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) const auto &palette = DApplicationHelper::instance()->applicationPalette(); +#else + const auto &palette = DGuiApplicationHelper::instance()->applicationPalette(); +#endif return palette.color(DPalette::Text); } return QVariant(); diff --git a/tests/deepin-system-monitor-main/gui/ut_cpu_summary_view_widget.cpp b/tests/deepin-system-monitor-main/gui/ut_cpu_summary_view_widget.cpp index c8e04203..892caead 100644 --- a/tests/deepin-system-monitor-main/gui/ut_cpu_summary_view_widget.cpp +++ b/tests/deepin-system-monitor-main/gui/ut_cpu_summary_view_widget.cpp @@ -15,7 +15,6 @@ //Qt #include #include -#include /***************************************STUB begin*********************************************/ bool stub_CPUSummaryTableModel_data_isValid_true() diff --git a/tests/deepin-system-monitor-main/gui/ut_process_page_widget.cpp b/tests/deepin-system-monitor-main/gui/ut_process_page_widget.cpp index 59b38ada..b58432af 100644 --- a/tests/deepin-system-monitor-main/gui/ut_process_page_widget.cpp +++ b/tests/deepin-system-monitor-main/gui/ut_process_page_widget.cpp @@ -198,13 +198,21 @@ TEST_F(UT_ProcessPageWidget, test_showWindowKiller_01) TEST_F(UT_ProcessPageWidget, test_changeIconTheme_01) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DApplicationHelper::ColorType type = DApplicationHelper::ColorType::LightType; +#else + DGuiApplicationHelper::ColorType type = DGuiApplicationHelper::ColorType::LightType; +#endif m_tester->changeIconTheme(type); } TEST_F(UT_ProcessPageWidget, test_changeIconTheme_02) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) DApplicationHelper::ColorType type = DApplicationHelper::ColorType::DarkType; +#else + DGuiApplicationHelper::ColorType type = DGuiApplicationHelper::ColorType::DarkType; +#endif m_tester->changeIconTheme(type); } diff --git a/tests/deepin-system-monitor-main/system/ut_block_device.cpp b/tests/deepin-system-monitor-main/system/ut_block_device.cpp index 26cb4fd4..9f1222f7 100644 --- a/tests/deepin-system-monitor-main/system/ut_block_device.cpp +++ b/tests/deepin-system-monitor-main/system/ut_block_device.cpp @@ -131,7 +131,11 @@ TEST_F(UT_BlockDevice, test_calcDiskIoStates) do{ line = in.readLine(); if (!line.contains("loop")){ +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) strList << line.split(" ", QString::SkipEmptyParts); +#else + strList << line.split(" ", Qt::SkipEmptyParts); +#endif } }while (!line.isNull()); file.close(); diff --git a/tests/deepin-system-monitor-main/system/ut_cpu.cpp b/tests/deepin-system-monitor-main/system/ut_cpu.cpp index 8caf2a9e..5b178461 100644 --- a/tests/deepin-system-monitor-main/system/ut_cpu.cpp +++ b/tests/deepin-system-monitor-main/system/ut_cpu.cpp @@ -74,11 +74,19 @@ TEST_F(UT_CPU, test_logicalIndex) process.start("cat /proc/cpuinfo"); process.waitForFinished(3000); QString cpuinfo = process.readAllStandardOutput(); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList processors = cpuinfo.split("\n\n", QString::SkipEmptyParts); +#else + QStringList processors = cpuinfo.split("\n\n", Qt::SkipEmptyParts); +#endif for (int i = 0; i < 1; ++i) { core::system::CPUInfo info; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) QStringList list = processors[i].split("\n", QString::SkipEmptyParts); +#else + QStringList list = processors[i].split("\n", Qt::SkipEmptyParts); +#endif for (QString text : list) { if (text.startsWith("processor")) { info.setIndex(text.split(":").value(1).toInt()); diff --git a/tests/deepin-system-monitor-main/ut_compact_memory_monitor.cpp b/tests/deepin-system-monitor-main/ut_compact_memory_monitor.cpp index 726c15b0..8981ab4a 100644 --- a/tests/deepin-system-monitor-main/ut_compact_memory_monitor.cpp +++ b/tests/deepin-system-monitor-main/ut_compact_memory_monitor.cpp @@ -13,8 +13,11 @@ //qt #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else #include +#endif DWIDGET_USE_NAMESPACE using namespace core::system; @@ -90,19 +93,31 @@ TEST_F(UT_CompactMemoryMonitor, test_onValueChanged) TEST_F(UT_CompactMemoryMonitor, test_changeTheme_01) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int themeType = DApplicationHelper::LightType; +#else + int themeType = DGuiApplicationHelper::ColorType::LightType; +#endif m_tester->changeTheme(themeType); } TEST_F(UT_CompactMemoryMonitor, test_changeTheme_02) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int themeType = DApplicationHelper::DarkType; +#else + int themeType = DGuiApplicationHelper::ColorType::DarkType; +#endif m_tester->changeTheme(themeType); } TEST_F(UT_CompactMemoryMonitor, test_changeTheme_03) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) int themeType = DApplicationHelper::UnknownType; +#else + int themeType = DGuiApplicationHelper::ColorType::UnknownType; +#endif m_tester->changeTheme(themeType); } diff --git a/tests/deepin-system-monitor-main/ut_compact_network_monitor.cpp b/tests/deepin-system-monitor-main/ut_compact_network_monitor.cpp index 01ca58f3..9e622853 100644 --- a/tests/deepin-system-monitor-main/ut_compact_network_monitor.cpp +++ b/tests/deepin-system-monitor-main/ut_compact_network_monitor.cpp @@ -16,7 +16,6 @@ #include #include #include -#include /***************************************STUB begin*********************************************/ diff --git a/tests/deepin-system-monitor-main/ut_cpu_monitor.cpp b/tests/deepin-system-monitor-main/ut_cpu_monitor.cpp index d22798b1..cda9cb91 100644 --- a/tests/deepin-system-monitor-main/ut_cpu_monitor.cpp +++ b/tests/deepin-system-monitor-main/ut_cpu_monitor.cpp @@ -64,17 +64,29 @@ TEST_F(UT_CpuMonitor, test_setDetailButtonVisible) TEST_F(UT_CpuMonitor, test_changeTheme_01) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_tester->changeTheme(DApplicationHelper::LightType); +#else + m_tester->changeTheme(DGuiApplicationHelper::ColorType::LightType); +#endif } TEST_F(UT_CpuMonitor, test_changeTheme_02) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_tester->changeTheme(DApplicationHelper::DarkType); +#else + m_tester->changeTheme(DGuiApplicationHelper::ColorType::DarkType); +#endif } TEST_F(UT_CpuMonitor, test_changeTheme_03) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_tester->changeTheme(DApplicationHelper::UnknownType); +#else + m_tester->changeTheme(DGuiApplicationHelper::ColorType::UnknownType); +#endif } TEST_F(UT_CpuMonitor, test_updateStatus_01) diff --git a/tests/deepin-system-monitor-main/ut_memory_monitor.cpp b/tests/deepin-system-monitor-main/ut_memory_monitor.cpp index 3d688a71..79829395 100644 --- a/tests/deepin-system-monitor-main/ut_memory_monitor.cpp +++ b/tests/deepin-system-monitor-main/ut_memory_monitor.cpp @@ -13,8 +13,11 @@ //qt #include #include +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include +#else #include +#endif DWIDGET_USE_NAMESPACE using namespace core::system; @@ -78,17 +81,29 @@ TEST_F(UT_MemoryMonitor, test_onValueChanged) TEST_F(UT_MemoryMonitor, test_changeTheme_01) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_tester->changeTheme(DApplicationHelper::LightType); +#else + m_tester->changeTheme(DGuiApplicationHelper::ColorType::LightType); +#endif } TEST_F(UT_MemoryMonitor, test_changeTheme_02) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_tester->changeTheme(DApplicationHelper::DarkType); +#else + m_tester->changeTheme(DGuiApplicationHelper::ColorType::DarkType); +#endif } TEST_F(UT_MemoryMonitor, test_changeTheme_03) { +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) m_tester->changeTheme(DApplicationHelper::UnknownType); +#else + m_tester->changeTheme(DGuiApplicationHelper::ColorType::UnknownType); +#endif } TEST_F(UT_MemoryMonitor, test_changeFont) diff --git a/tests/deepin-system-monitor-main/ut_network_monitor.cpp b/tests/deepin-system-monitor-main/ut_network_monitor.cpp index 88c0457a..b9394374 100644 --- a/tests/deepin-system-monitor-main/ut_network_monitor.cpp +++ b/tests/deepin-system-monitor-main/ut_network_monitor.cpp @@ -16,7 +16,6 @@ #include #include #include -#include /***************************************STUB begin*********************************************/