mirror of
https://github.com/ciphervance/supercell-wx.git
synced 2025-10-30 16:00:08 +00:00
Merge pull request #284 from dpaulat/feature/qt-6.8.0
Bump dependency Qt to 6.8.0
This commit is contained in:
commit
72a1697d65
10 changed files with 88 additions and 45 deletions
10
.github/workflows/ci.yml
vendored
10
.github/workflows/ci.yml
vendored
|
|
@ -28,9 +28,9 @@ jobs:
|
||||||
compiler: msvc
|
compiler: msvc
|
||||||
msvc_arch: x64
|
msvc_arch: x64
|
||||||
msvc_version: 2022
|
msvc_version: 2022
|
||||||
qt_version: 6.7.2
|
qt_version: 6.8.0
|
||||||
qt_arch_aqt: win64_msvc2019_64
|
qt_arch_aqt: win64_msvc2022_64
|
||||||
qt_arch_dir: msvc2019_64
|
qt_arch_dir: msvc2022_64
|
||||||
qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport
|
qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport
|
||||||
qt_tools: ''
|
qt_tools: ''
|
||||||
conan_arch: x86_64
|
conan_arch: x86_64
|
||||||
|
|
@ -46,7 +46,7 @@ jobs:
|
||||||
env_cc: gcc-11
|
env_cc: gcc-11
|
||||||
env_cxx: g++-11
|
env_cxx: g++-11
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
qt_version: 6.7.2
|
qt_version: 6.8.0
|
||||||
qt_arch_aqt: linux_gcc_64
|
qt_arch_aqt: linux_gcc_64
|
||||||
qt_arch_dir: gcc_64
|
qt_arch_dir: gcc_64
|
||||||
qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport
|
qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport
|
||||||
|
|
@ -64,7 +64,7 @@ jobs:
|
||||||
env_cc: clang-17
|
env_cc: clang-17
|
||||||
env_cxx: clang++-17
|
env_cxx: clang++-17
|
||||||
compiler: clang
|
compiler: clang
|
||||||
qt_version: 6.7.2
|
qt_version: 6.8.0
|
||||||
qt_arch_aqt: linux_gcc_64
|
qt_arch_aqt: linux_gcc_64
|
||||||
qt_arch_dir: gcc_64
|
qt_arch_dir: gcc_64
|
||||||
qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport
|
qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport
|
||||||
|
|
|
||||||
11
external/maplibre-native-qt.cmake
vendored
11
external/maplibre-native-qt.cmake
vendored
|
|
@ -19,6 +19,17 @@ if (MSVC)
|
||||||
target_link_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:/DEBUG>")
|
target_link_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:/DEBUG>")
|
||||||
target_link_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:/OPT:REF>")
|
target_link_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:/OPT:REF>")
|
||||||
target_link_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:/OPT:ICF>")
|
target_link_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:/OPT:ICF>")
|
||||||
|
|
||||||
|
# Enable multi-processor compilation
|
||||||
|
target_compile_options(MLNQtCore PRIVATE "/MP")
|
||||||
|
target_compile_options(mbgl-core PRIVATE "/MP")
|
||||||
|
target_compile_options(mbgl-vendor-csscolorparser PRIVATE "/MP")
|
||||||
|
target_compile_options(mbgl-vendor-nunicode PRIVATE "/MP")
|
||||||
|
target_compile_options(mbgl-vendor-parsedate PRIVATE "/MP")
|
||||||
|
|
||||||
|
if (TARGET mbgl-vendor-sqlite)
|
||||||
|
target_compile_options(mbgl-vendor-sqlite PRIVATE "/MP")
|
||||||
|
endif()
|
||||||
else()
|
else()
|
||||||
target_compile_options(mbgl-core PRIVATE "$<$<CONFIG:Release>:-g>")
|
target_compile_options(mbgl-core PRIVATE "$<$<CONFIG:Release>:-g>")
|
||||||
target_compile_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:-g>")
|
target_compile_options(MLNQtCore PRIVATE "$<$<CONFIG:Release>:-g>")
|
||||||
|
|
|
||||||
|
|
@ -25,11 +25,13 @@
|
||||||
#include <fmt/format.h>
|
#include <fmt/format.h>
|
||||||
#include <QApplication>
|
#include <QApplication>
|
||||||
#include <QStandardPaths>
|
#include <QStandardPaths>
|
||||||
|
#include <QStyleHints>
|
||||||
#include <QTranslator>
|
#include <QTranslator>
|
||||||
|
|
||||||
static const std::string logPrefix_ = "scwx::main";
|
static const std::string logPrefix_ = "scwx::main";
|
||||||
static const auto logger_ = scwx::util::Logger::Create(logPrefix_);
|
static const auto logger_ = scwx::util::Logger::Create(logPrefix_);
|
||||||
|
|
||||||
|
static void ConfigureTheme(const std::vector<std::string>& args);
|
||||||
static void OverrideDefaultStyle(const std::vector<std::string>& args);
|
static void OverrideDefaultStyle(const std::vector<std::string>& args);
|
||||||
|
|
||||||
int main(int argc, char* argv[])
|
int main(int argc, char* argv[])
|
||||||
|
|
@ -103,18 +105,7 @@ int main(int argc, char* argv[])
|
||||||
scwx::qt::manager::ResourceManager::Initialize();
|
scwx::qt::manager::ResourceManager::Initialize();
|
||||||
|
|
||||||
// Theme
|
// Theme
|
||||||
auto uiStyle = scwx::qt::types::GetUiStyle(
|
ConfigureTheme(args);
|
||||||
scwx::qt::settings::GeneralSettings::Instance().theme().GetValue());
|
|
||||||
|
|
||||||
if (uiStyle == scwx::qt::types::UiStyle::Default)
|
|
||||||
{
|
|
||||||
OverrideDefaultStyle(args);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
QApplication::setStyle(
|
|
||||||
QString::fromStdString(scwx::qt::types::GetUiStyleName(uiStyle)));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Run initial setup if required
|
// Run initial setup if required
|
||||||
if (scwx::qt::ui::setup::SetupWizard::IsSetupRequired())
|
if (scwx::qt::ui::setup::SetupWizard::IsSetupRequired())
|
||||||
|
|
@ -152,6 +143,27 @@ int main(int argc, char* argv[])
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void ConfigureTheme(const std::vector<std::string>& args)
|
||||||
|
{
|
||||||
|
auto& generalSettings = scwx::qt::settings::GeneralSettings::Instance();
|
||||||
|
|
||||||
|
auto uiStyle =
|
||||||
|
scwx::qt::types::GetUiStyle(generalSettings.theme().GetValue());
|
||||||
|
auto qtColorScheme = scwx::qt::types::GetQtColorScheme(uiStyle);
|
||||||
|
|
||||||
|
if (uiStyle == scwx::qt::types::UiStyle::Default)
|
||||||
|
{
|
||||||
|
OverrideDefaultStyle(args);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
QApplication::setStyle(
|
||||||
|
QString::fromStdString(scwx::qt::types::GetQtStyleName(uiStyle)));
|
||||||
|
}
|
||||||
|
|
||||||
|
QGuiApplication::styleHints()->setColorScheme(qtColorScheme);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
OverrideDefaultStyle([[maybe_unused]] const std::vector<std::string>& args)
|
OverrideDefaultStyle([[maybe_unused]] const std::vector<std::string>& args)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1080,9 +1080,9 @@ void MainWindowImpl::ConnectOtherSignals()
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
connect(mainWindow_->ui->trackLocationCheckBox,
|
connect(mainWindow_->ui->trackLocationCheckBox,
|
||||||
&QCheckBox::stateChanged,
|
&QCheckBox::checkStateChanged,
|
||||||
mainWindow_,
|
mainWindow_,
|
||||||
[this](int state)
|
[this](Qt::CheckState state)
|
||||||
{
|
{
|
||||||
bool trackingEnabled = (state == Qt::CheckState::Checked);
|
bool trackingEnabled = (state == Qt::CheckState::Checked);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
#include <scwx/qt/types/qt_types.hpp>
|
#include <scwx/qt/types/qt_types.hpp>
|
||||||
|
#include <scwx/util/enum.hpp>
|
||||||
|
|
||||||
#include <boost/algorithm/string.hpp>
|
#include <boost/algorithm/string.hpp>
|
||||||
|
|
||||||
|
|
@ -9,27 +10,37 @@ namespace qt
|
||||||
namespace types
|
namespace types
|
||||||
{
|
{
|
||||||
|
|
||||||
|
static const std::unordered_map<UiStyle, std::string> qtStyleName_ {
|
||||||
|
{UiStyle::Default, "Default"},
|
||||||
|
{UiStyle::Fusion, "Fusion"},
|
||||||
|
{UiStyle::FusionLight, "Fusion"},
|
||||||
|
{UiStyle::FusionDark, "Fusion"},
|
||||||
|
{UiStyle::Unknown, "?"}};
|
||||||
|
|
||||||
static const std::unordered_map<UiStyle, std::string> uiStyleName_ {
|
static const std::unordered_map<UiStyle, std::string> uiStyleName_ {
|
||||||
{UiStyle::Default, "Default"},
|
{UiStyle::Default, "Default"},
|
||||||
{UiStyle::Fusion, "Fusion"},
|
{UiStyle::Fusion, "Fusion"},
|
||||||
|
{UiStyle::FusionLight, "Fusion Light"},
|
||||||
|
{UiStyle::FusionDark, "Fusion Dark"},
|
||||||
{UiStyle::Unknown, "?"}};
|
{UiStyle::Unknown, "?"}};
|
||||||
|
|
||||||
UiStyle GetUiStyle(const std::string& name)
|
static const std::unordered_map<UiStyle, Qt::ColorScheme> qtColorSchemeMap_ {
|
||||||
{
|
{UiStyle::Default, Qt::ColorScheme::Unknown},
|
||||||
auto result =
|
{UiStyle::Fusion, Qt::ColorScheme::Unknown},
|
||||||
std::find_if(uiStyleName_.cbegin(),
|
{UiStyle::FusionLight, Qt::ColorScheme::Light},
|
||||||
uiStyleName_.cend(),
|
{UiStyle::FusionDark, Qt::ColorScheme::Dark},
|
||||||
[&](const std::pair<UiStyle, std::string>& pair) -> bool
|
{UiStyle::Unknown, Qt::ColorScheme::Unknown}};
|
||||||
{ return boost::iequals(pair.second, name); });
|
|
||||||
|
|
||||||
if (result != uiStyleName_.cend())
|
SCWX_GET_ENUM(UiStyle, GetUiStyle, uiStyleName_)
|
||||||
{
|
|
||||||
return result->first;
|
Qt::ColorScheme GetQtColorScheme(UiStyle uiStyle)
|
||||||
}
|
{
|
||||||
else
|
return qtColorSchemeMap_.at(uiStyle);
|
||||||
{
|
}
|
||||||
return UiStyle::Unknown;
|
|
||||||
}
|
std::string GetQtStyleName(UiStyle uiStyle)
|
||||||
|
{
|
||||||
|
return qtStyleName_.at(uiStyle);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string GetUiStyleName(UiStyle uiStyle)
|
std::string GetUiStyleName(UiStyle uiStyle)
|
||||||
|
|
|
||||||
|
|
@ -20,17 +20,22 @@ enum ItemDataRole
|
||||||
RawDataRole
|
RawDataRole
|
||||||
};
|
};
|
||||||
|
|
||||||
enum UiStyle
|
enum class UiStyle
|
||||||
{
|
{
|
||||||
Default,
|
Default,
|
||||||
Fusion,
|
Fusion,
|
||||||
|
FusionLight,
|
||||||
|
FusionDark,
|
||||||
Unknown
|
Unknown
|
||||||
};
|
};
|
||||||
typedef scwx::util::Iterator<UiStyle, UiStyle::Default, UiStyle::Fusion>
|
typedef scwx::util::Iterator<UiStyle, UiStyle::Default, UiStyle::FusionDark>
|
||||||
UiStyleIterator;
|
UiStyleIterator;
|
||||||
|
|
||||||
|
Qt::ColorScheme GetQtColorScheme(UiStyle uiStyle);
|
||||||
|
std::string GetQtStyleName(UiStyle uiStyle);
|
||||||
|
|
||||||
UiStyle GetUiStyle(const std::string& name);
|
UiStyle GetUiStyle(const std::string& name);
|
||||||
std::string GetUiStyleName(UiStyle alertAction);
|
std::string GetUiStyleName(UiStyle uiStyle);
|
||||||
|
|
||||||
} // namespace types
|
} // namespace types
|
||||||
} // namespace qt
|
} // namespace qt
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,12 @@ call tools\setup-common.bat
|
||||||
|
|
||||||
set build_dir=build-debug
|
set build_dir=build-debug
|
||||||
set build_type=Debug
|
set build_type=Debug
|
||||||
set qt_version=6.7.2
|
set qt_version=6.8.0
|
||||||
|
set qt_arch=msvc2022_64
|
||||||
|
|
||||||
mkdir %build_dir%
|
mkdir %build_dir%
|
||||||
cmake -B %build_dir% -S . ^
|
cmake -B %build_dir% -S . ^
|
||||||
-DCMAKE_BUILD_TYPE=%build_type% ^
|
-DCMAKE_BUILD_TYPE=%build_type% ^
|
||||||
-DCMAKE_CONFIGURATION_TYPES=%build_type% ^
|
-DCMAKE_CONFIGURATION_TYPES=%build_type% ^
|
||||||
-DCMAKE_PREFIX_PATH=C:/Qt/%qt_version%/msvc2019_64
|
-DCMAKE_PREFIX_PATH=C:/Qt/%qt_version%/%qt_arch%
|
||||||
pause
|
pause
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
|
|
||||||
build_dir=${1:-build-debug}
|
build_dir=${1:-build-debug}
|
||||||
build_type=Debug
|
build_type=Debug
|
||||||
qt_version=6.7.2
|
qt_version=6.8.0
|
||||||
|
qt_arch=gcc_64
|
||||||
script_dir="$(dirname "$(readlink -f "$0")")"
|
script_dir="$(dirname "$(readlink -f "$0")")"
|
||||||
|
|
||||||
mkdir -p ${build_dir}
|
mkdir -p ${build_dir}
|
||||||
|
|
@ -11,5 +12,5 @@ cmake -B ${build_dir} -S . \
|
||||||
-DCMAKE_BUILD_TYPE=${build_type} \
|
-DCMAKE_BUILD_TYPE=${build_type} \
|
||||||
-DCMAKE_CONFIGURATION_TYPES=${build_type} \
|
-DCMAKE_CONFIGURATION_TYPES=${build_type} \
|
||||||
-DCMAKE_INSTALL_PREFIX=${build_dir}/${build_type}/supercell-wx \
|
-DCMAKE_INSTALL_PREFIX=${build_dir}/${build_type}/supercell-wx \
|
||||||
-DCMAKE_PREFIX_PATH=/opt/Qt/${qt_version}/gcc_64 \
|
-DCMAKE_PREFIX_PATH=/opt/Qt/${qt_version}/${qt_arch} \
|
||||||
-G Ninja
|
-G Ninja
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,12 @@ call tools\setup-common.bat
|
||||||
|
|
||||||
set build_dir=build-release
|
set build_dir=build-release
|
||||||
set build_type=Release
|
set build_type=Release
|
||||||
set qt_version=6.7.2
|
set qt_version=6.8.0
|
||||||
|
set qt_arch=msvc2022_64
|
||||||
|
|
||||||
mkdir %build_dir%
|
mkdir %build_dir%
|
||||||
cmake -B %build_dir% -S . ^
|
cmake -B %build_dir% -S . ^
|
||||||
-DCMAKE_BUILD_TYPE=%build_type% ^
|
-DCMAKE_BUILD_TYPE=%build_type% ^
|
||||||
-DCMAKE_CONFIGURATION_TYPES=%build_type% ^
|
-DCMAKE_CONFIGURATION_TYPES=%build_type% ^
|
||||||
-DCMAKE_PREFIX_PATH=C:/Qt/%qt_version%/msvc2019_64
|
-DCMAKE_PREFIX_PATH=C:/Qt/%qt_version%/%qt_arch%
|
||||||
pause
|
pause
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
|
|
||||||
build_dir=${1:-build-release}
|
build_dir=${1:-build-release}
|
||||||
build_type=Release
|
build_type=Release
|
||||||
qt_version=6.7.2
|
qt_version=6.8.0
|
||||||
|
qt_arch=gcc_64
|
||||||
script_dir="$(dirname "$(readlink -f "$0")")"
|
script_dir="$(dirname "$(readlink -f "$0")")"
|
||||||
|
|
||||||
mkdir -p ${build_dir}
|
mkdir -p ${build_dir}
|
||||||
|
|
@ -11,5 +12,5 @@ cmake -B ${build_dir} -S . \
|
||||||
-DCMAKE_BUILD_TYPE=${build_type} \
|
-DCMAKE_BUILD_TYPE=${build_type} \
|
||||||
-DCMAKE_CONFIGURATION_TYPES=${build_type} \
|
-DCMAKE_CONFIGURATION_TYPES=${build_type} \
|
||||||
-DCMAKE_INSTALL_PREFIX=${build_dir}/${build_type}/supercell-wx \
|
-DCMAKE_INSTALL_PREFIX=${build_dir}/${build_type}/supercell-wx \
|
||||||
-DCMAKE_PREFIX_PATH=/opt/Qt/${qt_version}/gcc_64 \
|
-DCMAKE_PREFIX_PATH=/opt/Qt/${qt_version}/${qt_arch} \
|
||||||
-G Ninja
|
-G Ninja
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue