From f69f4fb27de987c9438648ef0989c66ab8e1d2ea Mon Sep 17 00:00:00 2001 From: JackLee_CN <809262979@qq.com> Date: Sun, 13 Oct 2024 23:18:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E4=BD=93=E7=B2=97?= =?UTF-8?q?=E7=BB=86=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 4 ++-- src/sui_title.cpp | 30 +++++++++++++++++++++++++++--- src/sui_title.h | 2 +- src/xsteam_base.h | 1 + src/xsteam_ex.cpp | 3 +++ 5 files changed, 34 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d145f47..4a1251b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -110,12 +110,12 @@ SET(PROJECT_SOURCES ${src} ) # 设置消息策略为qFatal来禁用qDebug信息 -LIST(APPEND CMAKE_CXX_FLAGS "-DQT_NO_DEBUG_OUTPUT") +#LIST(APPEND CMAKE_CXX_FLAGS "-DQT_NO_DEBUG_OUTPUT") #资源文件 QT6_ADD_RESOURCES(RCFILES res.qrc) #WIN32 -add_executable(${PROJECT_NAME} WIN32 ${PROJECT_SOURCES} ${RCFILES} xsteam.rc) +add_executable(${PROJECT_NAME} ${PROJECT_SOURCES} ${RCFILES} xsteam.rc) #安全编译 #关闭RPATH特性 diff --git a/src/sui_title.cpp b/src/sui_title.cpp index 390c3ea..cc38bc2 100644 --- a/src/sui_title.cpp +++ b/src/sui_title.cpp @@ -113,6 +113,18 @@ void sui_title::slots_ico_menu() connect(f_Action,SIGNAL(triggered (bool)),this,SLOT(slots_set_font_change())); f_menu->addAction(f_Action); } + QAction *separator = new QAction(nullptr); + separator->setSeparator(true); + f_menu->addAction(separator); + QActionGroup* b_QGroup = new QActionGroup(this); + QAction* b_Action=new QAction("字体加粗",b_QGroup); + b_Action->setObjectName("font_bold"); + b_Action->setCheckable(true); + if(_data.x_config.font_bold){ + b_Action->setChecked(true); + } + connect(b_Action,SIGNAL(triggered (bool)),this,SLOT(slots_set_font_change())); + f_menu->addAction(b_Action); } m_menu->addMenu(s_menu); m_menu->addMenu(f_menu); @@ -129,14 +141,26 @@ void sui_title::slots_set_style_change() } void sui_title::slots_set_font_change() { - if(sender()!=nullptr){ - _data.x_config.font=sender()->objectName().toInt(); + if(sender()!=nullptr){ + if(sender()->objectName()=="font_bold"){ + if(_data.x_config.font_bold){ + _data.x_config.font_bold=0; + }else{ + _data.x_config.font_bold=1; + } + }else{ + _data.x_config.font=sender()->objectName().toInt(); + } } QFont font; if(!font_table[_data.x_config.font].isEmpty()){ font.setFamily(font_table[_data.x_config.font]); font.setPointSize(10); - font.setBold(true); + if( _data.x_config.font_bold){ + font.setBold(true); + }else{ + font.setBold(false); + } QApplication::setFont(font); }else { qDebug()<<"Failed to load font."; diff --git a/src/sui_title.h b/src/sui_title.h index fb93440..a338e6d 100644 --- a/src/sui_title.h +++ b/src/sui_title.h @@ -45,7 +45,7 @@ private: QPushButton *m_max_button; //最大化/还原按钮 QPushButton *m_close_button; //关闭按钮 QSpacerItem *sparcer_item = new QSpacerItem(0,0,QSizePolicy::Expanding,QSizePolicy::Fixed); - QMenu *m_menu; + QMenu* m_menu; QMenu* s_menu; QMenu* f_menu; QStringList style_table; diff --git a/src/xsteam_base.h b/src/xsteam_base.h index c61c6fd..4fa21a6 100644 --- a/src/xsteam_base.h +++ b/src/xsteam_base.h @@ -56,6 +56,7 @@ typedef struct { int style = 0; int font = 0; + int font_bold=0; std::string steam_dir={}; std::string steamtools_dir={}; std::string steamtools_st_dir={}; diff --git a/src/xsteam_ex.cpp b/src/xsteam_ex.cpp index fe65ea7..27facbd 100644 --- a/src/xsteam_ex.cpp +++ b/src/xsteam_ex.cpp @@ -348,6 +348,7 @@ void xsteam_save_data_read() } _data.x_config.style = j3.at("xsteam_sets").at("style"); _data.x_config.font = j3.at("xsteam_sets").at("font"); + _data.x_config.font_bold = j3.at("xsteam_sets").at("font_bold"); _data.x_config.steam_dir = j3.at("xsteam_sets").at("steam_dir"); _data.x_config.steamtools_dir = j3.at("xsteam_sets").at("steamtools_dir"); _data.x_config.steamtools_st_dir = j3.at("xsteam_sets").at("steamtools_st_dir"); @@ -365,6 +366,7 @@ void xsteam_save_data_read() _data.s_data.push_back(_src_data); // 默认配置 _data.x_config.font = 0; + _data.x_config.font_bold=0; _data.x_config.style = 1; QSettings settings("HKEY_CURRENT_USER\\Software\\Valve\\Steam", QSettings::NativeFormat); _data.x_config.steam_dir = (settings.value("SteamPath", "").toString()).toStdString(); @@ -425,6 +427,7 @@ json xsteam_data_serialize(json jsonData) } jsonData[toStr(xsteam_sets)][toStr(style)] = _data.x_config.style; jsonData[toStr(xsteam_sets)][toStr(font)] = _data.x_config.font; + jsonData[toStr(xsteam_sets)][toStr(font_bold)] = _data.x_config.font_bold; jsonData[toStr(xsteam_sets)][toStr(steam_dir)] = _data.x_config.steam_dir; jsonData[toStr(xsteam_sets)][toStr(steamtools_dir)] = _data.x_config.steamtools_dir; jsonData[toStr(xsteam_sets)][toStr(steamtools_st_dir)] = _data.x_config.steamtools_st_dir;