Add MataAvistas project (BudgetPro) as regular files

This commit is contained in:
Javier
2026-06-04 15:59:46 +02:00
parent 7643acf109
commit dccaa63bcc
644 changed files with 104937 additions and 1 deletions
@@ -0,0 +1,107 @@
cmake_minimum_required(VERSION 3.5)
project(StaticExample LANGUAGES CXX)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
# frameless能提供windows的窗口特效,如边缘吸附,且对高分屏多屏幕的支持更好,默认开启
option(SARIBBON_USE_FRAMELESS_LIB "Using the QWindowKit library as a frameless solution" OFF)
# QtCreator supports the following variables for Android, which are identical to qmake Android variables.
# Check https://doc.qt.io/qt/deployment-android.html for more information.
# They need to be set before the find_package( ...) calls below.
#if(ANDROID)
# set(ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android")
# if (ANDROID_ABI STREQUAL "armeabi-v7a")
# set(ANDROID_EXTRA_LIBS
# ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libcrypto.so
# ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libssl.so)
# endif()
#endif()
find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets REQUIRED)
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets REQUIRED)
# 注意后面所有SARIBBON_USE_FRAMELESS_LIB的判断,都是和framelss有关
# 如果是使用frameless库,需要c++17,否则c++11足以
if(SARIBBON_USE_FRAMELESS_LIB)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
if(MSVC)
# CMAKE_CXX_STANDARD对有些版本的msvc无效
set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} /std:c++17")
endif()
message(STATUS "The current QT version can use the frameless library and enable C++17")
else()
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
if(MSVC)
# CMAKE_CXX_STANDARD对有些版本的msvc无效
set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} /std:c++14")
endif()
message(STATUS "The current qt version cannot use the frameless library, enable C++11")
endif()
#################################################
# SARibbon相关的文件只要3个
#################################################
# 这里展示如何简单的使用SARibbon在CMake文件里
# Here is an example of how to simply use SARibbon in a CMake file
SET(SARIBBON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../src)
set(SARIBBON_SIMPLE
${SARIBBON_DIR}/SARibbon.h
${SARIBBON_DIR}/SARibbon.cpp
${SARIBBON_DIR}/SARibbonBar/resource.qrc
)
set(PROJECT_SOURCES
main.cpp
MainWindow.cpp
MainWindow.h
icon.qrc
${SARIBBON_SIMPLE}
)
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(StaticExample
${PROJECT_SOURCES}
)
else()
if(ANDROID)
add_library(StaticExample SHARED
${PROJECT_SOURCES}
)
else()
add_executable(StaticExample WIN32
${PROJECT_SOURCES}
)
endif()
endif()
target_link_libraries(StaticExample PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
target_include_directories(StaticExample PUBLIC
$<INSTALL_INTERFACE:include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<BUILD_INTERFACE:${SARIBBON_DIR}>
)
if(SARIBBON_USE_FRAMELESS_LIB)
find_package(QWindowKit QUIET)
if(QWindowKit_FOUND)
target_link_libraries(StaticExample PRIVATE QWindowKit::Widgets)
target_compile_definitions(StaticExample PRIVATE SARIBBON_USE_3RDPARTY_FRAMELESSHELPER=1)
else()
message(WARNING "can not find package QWindowKit,You need to specify the cmake installation path of QWindowKit to the QWindowKit_DIR variable")
target_compile_definitions(StaticExample PRIVATE SARIBBON_USE_3RDPARTY_FRAMELESSHELPER=0)
endif()
else()
#不使用frameless必须设置SARIBBON_USE_3RDPARTY_FRAMELESSHELPER宏为0
target_compile_definitions(StaticExample PRIVATE SARIBBON_USE_3RDPARTY_FRAMELESSHELPER=0)
endif()
@@ -0,0 +1,43 @@
#include "MainWindow.h"
#include "SARibbon.h"
#include <QComboBox>
#include <QTimer>
MainWindow::MainWindow(QWidget* parent) : SARibbonMainWindow(parent)
{
setWindowIcon(QIcon(":/app/icon/SA.svg"));
SARibbonBar* bar = ribbonBar();
bar->applicationButton()->setText(tr(" File "));
SARibbonCategory* mainCate = bar->addCategoryPage(tr("Main"));
SARibbonPannel* pannel = mainCate->addPannel(tr("actions"));
pannel->addAction(tr("action1"), QIcon(":/app/icon/action.svg"), QToolButton::InstantPopup);
pannel->addAction(tr("action2"), QIcon(":/app/icon/customize0.svg"), QToolButton::InstantPopup);
pannel->addAction(tr("action3"), QIcon(":/app/icon/save.svg"), QToolButton::InstantPopup);
pannel->addAction(tr("action4"), QIcon(":/app/icon/item.svg"), QToolButton::InstantPopup, SARibbonPannelItem::Small);
pannel->addAction(tr("action5"), QIcon(":/app/icon/folder-star.svg"), QToolButton::InstantPopup, SARibbonPannelItem::Small);
pannel->addAction(tr("action6"), QIcon(":/app/icon/test1.svg"), QToolButton::InstantPopup, SARibbonPannelItem::Small);
SARibbonCategory* otherCate = bar->addCategoryPage(tr("Other"));
SARibbonPannel* pannel2 = otherCate->addPannel(tr("other"));
pannel2->addAction(tr("action1"), QIcon(":/app/icon/action.svg"), QToolButton::InstantPopup);
QComboBox* combo = new QComboBox(this);
pannel2->addMediumWidget(combo);
combo->addItem("RibbonThemeWindows7", static_cast< int >(SARibbonTheme::RibbonThemeWindows7));
combo->addItem("RibbonThemeOffice2013", static_cast< int >(SARibbonTheme::RibbonThemeOffice2013));
combo->addItem("RibbonThemeOffice2016Blue", static_cast< int >(SARibbonTheme::RibbonThemeOffice2016Blue));
combo->addItem("RibbonThemeOffice2021Blue", static_cast< int >(SARibbonTheme::RibbonThemeOffice2021Blue));
combo->addItem("RibbonThemeDark", static_cast< int >(SARibbonTheme::RibbonThemeDark));
combo->addItem("RibbonThemeDark2", static_cast< int >(SARibbonTheme::RibbonThemeDark2));
combo->setCurrentIndex(3);
connect(combo, QOverload< int >::of(&QComboBox::currentIndexChanged), [ this, combo ](int index) {
SARibbonTheme th = static_cast< SARibbonTheme >(combo->itemData(index).toInt());
this->setRibbonTheme(th);
});
resize(800, 600);
// 在构造函数设置主题会不完全生效
// QTimer::singleShot(0, this, [ this ]() { this->setRibbonTheme(SARibbonMainWindow::RibbonThemeOffice2016Blue); });
// more example see MainWindowExample
}
MainWindow::~MainWindow()
{
}
@@ -0,0 +1,15 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "SARibbon.h"
class MainWindow : public SARibbonMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget* parent = nullptr);
~MainWindow();
};
#endif // MAINWINDOW_H
@@ -0,0 +1,23 @@
#-------------------------------------------------
#
# Project created by QtCreator 2017-09-21T14:04:12
#
#-------------------------------------------------
QT += core gui
CONFIG += c++17
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = StaticExample
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += \
mainwindow.h
include($$PWD/../../src/SARibbon.pri)
RESOURCES += \
icon.qrc
@@ -0,0 +1,11 @@
<RCC>
<qresource prefix="/app">
<file>icon/action.svg</file>
<file>icon/customize0.svg</file>
<file>icon/folder-star.svg</file>
<file>icon/item.svg</file>
<file>icon/SA.svg</file>
<file>icon/save.svg</file>
<file>icon/test1.svg</file>
</qresource>
</RCC>
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1646226693026" class="icon" viewBox="0 0 1057 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="27766" xmlns:xlink="http://www.w3.org/1999/xlink" width="33.03125" height="32"><defs><style type="text/css"></style></defs><path d="M854.441558 1024h-651.636363C91.096104 1024 0 932.903896 0 821.194805v-618.38961C0 91.096104 91.096104 0 202.805195 0h651.636363C966.150649 0 1057.246753 91.096104 1057.246753 202.805195v618.38961c0 111.709091-91.096104 202.805195-202.805195 202.805195zM202.805195 19.948052C101.735065 19.948052 19.948052 101.735065 19.948052 202.805195v618.38961C19.948052 922.264935 101.735065 1004.051948 202.805195 1004.051948h651.636363c101.07013 0 182.857143-81.787013 182.857143-182.857143v-618.38961C1037.298701 101.735065 955.511688 19.948052 854.441558 19.948052h-651.636363z" p-id="27767" fill="#024089"></path><path d="M13.963636 646.316883c33.246753-4.654545 53.85974-7.314286 61.838961-7.979221 16.623377-1.994805 40.561039-3.98961 73.142858-7.97922 6.649351 40.561039 19.948052 69.818182 40.561039 89.101298 20.612987 18.618182 47.875325 28.592208 82.451948 28.592208 36.571429 0 63.833766-8.644156 82.451948-25.267532 18.618182-16.623377 27.927273-36.571429 27.927272-59.179221 0-14.628571-3.98961-26.597403-11.968831-36.571429-7.979221-9.974026-21.277922-19.283117-40.561039-26.597402-13.298701-5.319481-43.220779-13.963636-91.096104-26.597403-60.509091-16.623377-103.72987-36.571429-127.667532-60.509091-34.576623-33.911688-51.864935-74.472727-51.864935-123.012987 0-31.251948 7.979221-60.509091 24.602597-87.106493s39.896104-47.875325 69.818182-61.838961c30.587013-13.963636 67.158442-21.277922 110.379221-21.277923 70.483117 0 123.677922 16.623377 158.91948 50.535065 28.592208 27.262338 38.566234 39.231169 45.215585 81.122078 1.32987 9.974026 26.597403 43.885714 26.597402 54.524676h-46.545454c-18.618182 0.664935-46.545455 1.994805-83.116883 3.98961-4.654545-31.251948-15.293506-53.85974-31.251948-67.823377s-39.896104-20.612987-71.812987-20.612987c-33.246753 0-58.514286 7.314286-77.132468 21.942858-11.968831 9.309091-17.953247 21.942857-17.953247 37.901298 0 14.628571 5.319481 26.597403 16.623377 37.236364 14.628571 13.298701 49.205195 26.597403 104.394805 40.561039 55.18961 13.963636 95.750649 28.592208 122.348052 43.885714s47.21039 35.906494 61.838961 61.838961c14.628571 26.597403 22.607792 58.514286 22.607792 97.08052 0 35.241558-8.644156 67.823377-26.597402 98.410389-17.953247 30.587013-43.220779 53.194805-75.802598 68.488312s-73.142857 22.607792-122.348052 22.607792c-71.148052 0-125.672727-17.953247-163.574026-53.85974-29.257143-27.262338-49.205195-64.498701-60.509091-111.044156-2.65974-13.298701-29.922078-24.602597-31.916883-40.561039z" p-id="27768" fill="#024089"></path><path d="M1041.953247 840.477922h-144.955844l-49.205195-138.971428H623.709091l-46.545455 138.971428H439.522078l31.251948-38.566234 204.8-572.509091h119.688312l210.784415 571.844156 35.906494 39.231169zM811.885714 598.441558l-77.132467-226.742857L658.285714 598.441558h153.6z" p-id="27769" fill="#024089"></path></svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1646316928855" class="icon" viewBox="0 0 1187 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5394" xmlns:xlink="http://www.w3.org/1999/xlink" width="37.09375" height="32"><defs><style type="text/css"></style></defs><path d="M591.619164 303.326125l-134.993793 63.531367-87.359085-70.479103 224.342551-110.182754 225.332782 113.164961-85.369412 67.496896zM592.614001 670.616555l135.005307-63.531367 87.34757 70.479103-223.347714 111.177591-226.318407-114.159798 85.369412-67.496896zM387.138801 576.309735l-91.324613 60.556069L0.992534 486.970189l298.789486-151.873775 87.356781 70.479104-162.798553 81.394671zM963.867657 486.970189l-162.79625-81.394671 87.356781-70.479104 298.787184 151.873775-293.826818 150.890452-91.324614-61.550906z" fill="#5D7690" p-id="5395"></path><path d="M592.614001 1024L0.992534 704.362701 0 542.56359 593.608837 862.191677l593.606535-315.657953v162.793948z" fill="#5D7690" p-id="5396"></path><path d="M1155.313819 333.560405L598.463271 613.712826 58.241693 359.997265 623.564471 97.7496z" fill="#5D7690" p-id="5397"></path><path d="M1040.083191 336.337657l-439.872047 221.295864L173.472321 357.220013l446.564165-207.156288z" fill="#B9D2E2" p-id="5398"></path><path d="M621.839627 108.234532m-80.190274 0a80.190274 80.190274 0 1 0 160.380548 0 80.190274 80.190274 0 1 0-160.380548 0Z" fill="#B9D2E2" p-id="5399"></path><path d="M621.839627 216.469064c59.777702 0 108.234532-48.45683 108.234532-108.234532s-48.45683-108.234532-108.234532-108.234532-108.234532 48.45683-108.234532 108.234532 48.459133 108.234532 108.234532 108.234532z m0-181.585305c40.511955 0 73.353076 32.838818 73.353076 73.350773s-32.84112 73.350773-73.353076 73.350773c-40.509652 0-73.34847-32.84112-73.34847-73.350773s32.838818-73.350773 73.34847-73.350773z" fill="#5D7690" p-id="5400"></path><path d="M157.223324 340.261735m-80.190274 0a80.190274 80.190274 0 1 0 160.380548 0 80.190274 80.190274 0 1 0-160.380548 0Z" fill="#B9D2E2" p-id="5401"></path><path d="M157.223324 448.496267c59.777702 0 108.234532-48.45683 108.234532-108.234532s-48.45683-108.234532-108.234532-108.234532-108.234532 48.45683-108.234532 108.234532 48.459133 108.234532 108.234532 108.234532z m0-181.583002c40.509652 0 73.353076 32.838818 73.353075 73.350773s-32.843423 73.350773-73.353075 73.350772-73.350773-32.838818-73.350773-73.350772 32.843423-73.350773 73.350773-73.350773z" fill="#5D7690" p-id="5402"></path><path d="M594.207581 542.12144m-80.190274 0a80.190274 80.190274 0 1 0 160.380548 0 80.190274 80.190274 0 1 0-160.380548 0Z" fill="#B9D2E2" p-id="5403"></path><path d="M594.205279 650.355972c59.777702 0 108.234532-48.45683 108.234532-108.234532s-48.45683-108.234532-108.234532-108.234532c-59.775399 0-108.234532 48.45683-108.234533 108.234532s48.459133 108.234532 108.234533 108.234532z m0-181.585305c40.511955 0 73.353076 32.838818 73.353075 73.350773s-32.84112 73.350773-73.353075 73.350773c-40.509652 0-73.350773-32.838818-73.350773-73.350773s32.84112-73.350773 73.350773-73.350773z" fill="#5D7690" p-id="5404"></path><path d="M1061.681737 328.747423m-80.190274 0a80.190274 80.190274 0 1 0 160.380548 0 80.190274 80.190274 0 1 0-160.380548 0Z" fill="#B9D2E2" p-id="5405"></path><path d="M1061.681737 436.981955c59.777702 0 108.234532-48.45683 108.234532-108.234532s-48.45683-108.234532-108.234532-108.234532-108.234532 48.45683-108.234532 108.234532 48.459133 108.234532 108.234532 108.234532z m0-181.583002c40.509652 0 73.353076 32.838818 73.353076 73.350773s-32.843423 73.350773-73.353076 73.350772-73.350773-32.838818-73.350772-73.350772 32.843423-73.350773 73.350772-73.350773z" fill="#5D7690" p-id="5406"></path></svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1646225290986" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9990" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><defs><style type="text/css"></style></defs><path d="M594.336 310.816a547.632 547.632 0 0 0-21.824-65.056c-77.472 17.12-102.704-50.144-70.24-97.2a89.776 89.776 0 0 0-53.92-37.488c-32.528 49.744-121.248 24.688-113.36-43.296h-75.856c6.384 72.848-81.376 88.224-118.656 43.232-18.368 12.096-43.44 17.296-48.8 43.072 35.616 42.736 3.088 109.52-70.24 91.68C13.504 266.352 5.664 287.968 0 310.816c61.424 9.728 61.424 103.728 0 113.456 5.728 22.688 13.504 44.32 21.456 64.848 77.472-17.072 103.424 50.208 70.24 97.248 12.272 18.368 29.728 31.504 54.304 37.712 32.528-49.824 121.04-24.768 113.136 43.376h75.856c-6.592-73.136 81.328-88.384 118.88-43.376 18.32-12.112 43.552-17.664 48.4-43.232-35.28-42.944-2.8-109.344 70.24-91.68a579.328 579.328 0 0 0 21.776-64.848c-64.048-15.776-64.048-97.952 0-113.504h0.048zM297.168 480.144a112.608 112.608 0 1 1 0-225.216 112.608 112.608 0 0 1 0 225.216z m0 0" fill="#13227a" p-id="9991"></path><path d="M1024 551.712a399.584 399.584 0 0 0-15.776-47.024c-56.016 12.384-74.24-36.24-50.784-70.272a64.784 64.784 0 0 0-38.976-27.088c-23.536 35.984-87.664 17.84-81.952-31.296h-54.848c4.608 52.656-58.816 63.776-85.76 31.248-13.28 8.752-31.408 12.496-35.28 31.136 25.744 30.896 2.24 79.168-50.768 66.272-5.744 14.896-11.424 30.512-15.52 47.024 44.4 7.024 44.4 75.008 0 82.032 4.144 16.384 9.76 32.032 15.52 46.88 56-12.352 74.768 36.288 50.768 70.32 8.896 13.28 21.488 22.752 39.264 27.248 23.52-36.016 87.488-17.888 81.776 31.36h54.848c-4.768-52.896 58.784-63.904 85.936-31.36 13.232-8.752 31.488-12.768 34.992-31.248-25.504-31.04-2.032-79.04 50.784-66.288 5.984-14.88 11.328-30.544 15.744-46.88-46.304-11.408-46.304-70.816 0-82.064H1024z m-214.848 122.432c-44.944 0-81.376-36.448-81.376-81.408s36.432-81.392 81.376-81.392a81.392 81.392 0 1 1 0 162.8z m0 0" fill="#13227a" p-id="9992"></path><path d="M667.488 777.168a276.736 276.736 0 0 0-10.96-32.672c-38.912 8.592-51.568-25.168-35.28-48.8a44.944 44.944 0 0 0-27.04-18.816c-16.336 24.992-60.896 12.368-56.928-21.744h-38.096c3.216 36.576-40.848 44.304-59.568 21.696-9.232 6.096-21.808 8.688-24.496 21.632 17.872 21.472 1.536 54.992-35.28 46.032-3.984 10.336-7.92 21.184-10.768 32.672 30.848 4.896 30.848 52.08 0 56.976 2.864 11.392 6.784 22.24 10.768 32.544 38.896-8.56 51.936 25.2 35.28 48.832 6.16 9.232 14.912 15.808 27.264 18.944 16.336-25.024 60.768-12.416 56.8 21.76h38.096c-3.312-36.72 40.816-44.352 59.664-21.76 9.2-6.08 21.856-8.864 24.304-21.712-17.696-21.552-1.392-54.912 35.28-46.016 4.144-10.336 7.856-21.232 10.944-32.56-32.16-7.936-32.16-49.184 0.016-57.008z m-149.2 85.008a56.528 56.528 0 1 1 0-113.04 56.528 56.528 0 0 1 0 113.04z m0 0" fill="#13227a" p-id="9993"></path></svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1645972771227" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1573" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><defs><style type="text/css"></style></defs><path d="M800 800m-224 0a224 224 0 1 0 448 0 224 224 0 1 0-448 0Z" fill="#EACA44" p-id="1574"></path><path d="M800 672l40 88 88 16-64 64 15.936 88L800 888 720.064 928 736 840l-64-64 88-16z" fill="#FFFFFF" p-id="1575"></path><path d="M960 128H512V64a64 64 0 0 0-64-64H64a64 64 0 0 0-64 64v256a64 64 0 0 1 64-64h896a64 64 0 0 1 64 64V192a64 64 0 0 0-64-64z" fill="#434854" p-id="1576"></path><path d="M512 800a288 288 0 0 1 288-288 287.296 287.296 0 0 1 224 107.168V320a64 64 0 0 0-64-64H64a64 64 0 0 0-64 64v640a64 64 0 0 0 64 64h555.168A287.296 287.296 0 0 1 512 800z" fill="#EDD87E" p-id="1577"></path><path d="M960 224H64a64 64 0 0 0-64 64v32a64 64 0 0 1 64-64h896a64 64 0 0 1 64 64V288a64 64 0 0 0-64-64z" fill="" p-id="1578"></path><path d="M128 192h768v64H128z" fill="#EAEAEA" p-id="1579"></path></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1645972053003" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12456" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><defs><style type="text/css"></style></defs><path d="M512 161.28a21.333333 21.333333 0 0 1 10.24 2.56l283.733333 156.16-283.733333 156.16a21.76 21.76 0 0 1-20.48 0L218.026667 320l283.733333-156.16a21.333333 21.333333 0 0 1 10.24-2.56m0-64a87.466667 87.466667 0 0 0-42.666667 10.666667L153.173333 282.453333a42.666667 42.666667 0 0 0 0 75.093334L469.333333 532.053333a85.333333 85.333333 0 0 0 81.92 0l317.866667-174.506666a42.666667 42.666667 0 0 0 0-75.093334L554.666667 107.946667a87.466667 87.466667 0 0 0-42.666667-10.666667zM512 906.666667a85.333333 85.333333 0 0 1-37.973333-8.96l-317.866667-158.72A32 32 0 1 1 185.173333 682.666667l317.44 158.72a20.906667 20.906667 0 0 0 18.773334 0L838.826667 682.666667a32 32 0 1 1 28.586666 57.173333L549.973333 896a85.333333 85.333333 0 0 1-37.973333 10.666667z" fill="#333333" p-id="12457"></path><path d="M512 640l-320-158.72v69.12a42.666667 42.666667 0 0 0 23.466667 37.973333l277.333333 136.96a42.666667 42.666667 0 0 0 38.4 0L810.666667 588.373333a42.666667 42.666667 0 0 0 23.466666-37.973333v-69.12z" fill="#DCB56D" p-id="12458"></path></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1645969588174" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4449" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><defs><style type="text/css"></style></defs><path d="M165.840081 127.921872h608.774771l121.254934 121.254934v608.774771c0 20.834181-17.084028 37.91821-37.918209 37.918209H165.840081c-20.834181 0-37.91821-17.084028-37.918209-37.918209V165.840081c0-20.834181 17.084028-37.91821 37.918209-37.918209z" fill="#01579B" p-id="4450"></path><path d="M284.803255 127.921872h454.39349V318.76297c0 25.626043-20.834181 46.668566-46.668566 46.668566H331.471821c-25.626043 0-46.668566-20.834181-46.668566-46.668566V127.921872zM743.155239 896.078128H280.844761V654.818311c0-27.917803 22.709257-50.62706 50.62706-50.62706h361.2647c27.917803 0 50.62706 22.709257 50.62706 50.62706l-0.208342 241.259817z" fill="#0277BD" p-id="4451"></path><path d="M299.803866 127.921872h424.392268V318.76297c0 17.29237-14.167243 31.667955-31.667955 31.667956H331.471821c-17.29237 0-31.667955-14.167243-31.667955-31.667956V127.921872zM299.803866 896.078128h424.392268V654.818311c0-17.29237-14.167243-31.667955-31.667955-31.667955H331.471821c-17.29237 0-31.667955 14.167243-31.667955 31.667955v241.259817z" fill="#EEEEEE" p-id="4452"></path><path d="M572.731638 127.921872h93.128789v181.882401h-93.128789z" fill="#424242" p-id="4453"></path><path d="M360.431333 724.612818h303.137334v19.167446H360.431333zM360.431333 808.991251h303.137334v19.167447H360.431333z" fill="#757575" p-id="4454"></path></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1645972462678" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3334" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><defs><style type="text/css"></style></defs><path d="M854.42 938.77H177.51V85.28h529.76l147.15 147.16z" fill="#949BA6" p-id="3335"></path><path d="M854.42 232.44H707.27V85.28z" fill="#FFC600" p-id="3336"></path><path d="M721.98 261.87c0 8.09 6.62 14.72 14.72 14.72h117.72v-44.15H721.98v29.43z" fill="#717582" p-id="3337"></path><path d="M236.37 247.15c-8.09 0-14.72-6.62-14.72-14.72v-88.29c0-8.09 6.62-14.72 14.72-14.72 8.09 0 14.72 6.62 14.72 14.72v88.29c0 8.1-6.62 14.72-14.72 14.72zM236.37 894.63c-8.09 0-14.72-6.62-14.72-14.72V350.16c0-8.09 6.62-14.72 14.72-14.72 8.09 0 14.72 6.62 14.72 14.72v529.75c0 8.1-6.62 14.72-14.72 14.72z" fill="#DFE1E4" p-id="3338"></path><path d="M236.37 291.3m-14.72 0a14.72 14.72 0 1 0 29.44 0 14.72 14.72 0 1 0-29.44 0Z" fill="#DFE1E4" p-id="3339"></path><path d="M913.28 423.74c-8.09 0-14.72 6.62-14.72 14.72V673.9c0 8.09 6.62 14.72 14.72 14.72 8.09 0 14.72-6.62 14.72-14.72V438.45c0-8.09-6.63-14.71-14.72-14.71z" fill="#090418" p-id="3340"></path><path d="M913.28 791.62m-14.72 0a14.72 14.72 0 1 0 29.44 0 14.72 14.72 0 1 0-29.44 0Z" fill="#090418" p-id="3341"></path><path d="M913.28 732.76m-14.72 0a14.72 14.72 0 1 0 29.44 0 14.72 14.72 0 1 0-29.44 0Z" fill="#090418" p-id="3342"></path><path d="M118.65 232.44m-14.72 0a14.72 14.72 0 1 0 29.44 0 14.72 14.72 0 1 0-29.44 0Z" fill="#090418" p-id="3343"></path><path d="M118.65 291.3m-14.72 0a14.72 14.72 0 1 0 29.44 0 14.72 14.72 0 1 0-29.44 0Z" fill="#090418" p-id="3344"></path><path d="M118.65 173.58m-14.72 0a14.72 14.72 0 1 0 29.44 0 14.72 14.72 0 1 0-29.44 0Z" fill="#090418" p-id="3345"></path><path d="M295.24 453.17h264.88c8.09 0 14.72-6.62 14.72-14.72s-6.62-14.72-14.72-14.72H295.24c-8.09 0-14.72 6.62-14.72 14.72s6.62 14.72 14.72 14.72zM604.26 438.45c0 8.09 6.62 14.72 14.72 14.72H736.7c8.09 0 14.72-6.62 14.72-14.72s-6.62-14.72-14.72-14.72H618.97c-8.09 0.01-14.71 6.63-14.71 14.72zM736.7 482.6H295.24c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.72 14.72 14.72H736.7c8.09 0 14.72-6.62 14.72-14.72-0.01-8.1-6.63-14.72-14.72-14.72zM295.24 688.61h264.88c8.09 0 14.72-6.62 14.72-14.72s-6.62-14.72-14.72-14.72H295.24c-8.09 0-14.72 6.62-14.72 14.72s6.62 14.72 14.72 14.72zM574.83 776.9H295.24c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.72 14.72 14.72h279.59c8.09 0 14.72-6.62 14.72-14.72-0.01-8.09-6.63-14.72-14.72-14.72zM736.7 659.18h-58.86c-8.09 0-14.72 6.62-14.72 14.72s6.62 14.72 14.72 14.72h58.86c8.09 0 14.72-6.62 14.72-14.72s-6.63-14.72-14.72-14.72zM295.24 364.87h58.86c8.09 0 14.72-6.62 14.72-14.72 0-8.09-6.62-14.72-14.72-14.72h-9.2l9.93-29.43h57.39l9.93 29.43h-9.2c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.72 14.72 14.72h58.86c8.09 0 14.72-6.62 14.72-14.72 0-8.09-6.62-14.72-14.72-14.72h-18.76L397.5 168.78c0-0.37-0.37-0.37-0.37-0.74-0.37-0.74-0.37-1.1-0.74-1.47-0.37-1.1-1.1-1.84-1.84-2.94-0.37-0.37-0.74-0.74-1.47-1.1-0.74-0.74-1.84-1.47-2.94-1.84-0.37-0.37-1.1-0.74-1.47-0.74-1.47-0.74-3.31-1.1-5.15-1.1H354.1c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.72 14.72 14.72h9.2L314 335.44h-18.76c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.71 14.72 14.71z m88.29-144.94l18.76 56.65h-37.52l18.76-56.65zM471.82 276.58h22.07v22.07c0 8.09 6.62 14.72 14.72 14.72 8.09 0 14.72-6.62 14.72-14.72v-22.07h22.07c8.09 0 14.72-6.62 14.72-14.72s-6.62-14.72-14.72-14.72h-22.07v-22.07c0-8.09-6.62-14.72-14.72-14.72-8.09 0-14.72 6.62-14.72 14.72v22.07h-22.07c-8.09 0-14.72 6.62-14.72 14.72s6.63 14.72 14.72 14.72zM648.4 615.04c0-8.09-6.62-14.72-14.72-14.72H295.24c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.72 14.72 14.72h338.45c8.09-0.01 14.71-6.63 14.71-14.72zM736.7 541.46H295.24c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.72 14.72 14.72H736.7c8.09 0 14.72-6.62 14.72-14.72-0.01-8.1-6.63-14.72-14.72-14.72zM736.7 718.04H295.24c-8.09 0-14.72 6.62-14.72 14.72 0 8.09 6.62 14.72 14.72 14.72H736.7c8.09 0 14.72-6.62 14.72-14.72-0.01-8.1-6.63-14.72-14.72-14.72z" fill="#090418" p-id="3346"></path><path d="M864.72 222.14L717.57 74.98c-1.47-1.47-2.94-2.58-4.78-3.31s-3.68-1.1-5.52-1.1H177.51c-8.09 0-14.72 6.62-14.72 14.72v853.49c0 8.09 6.62 14.72 14.72 14.72h676.91c8.09 0 14.72-6.62 14.72-14.72V232.44c0-1.84-0.37-4.05-1.1-5.52-0.75-1.84-1.85-3.68-3.32-4.78zM721.98 120.97l96.75 96.75h-96.75v-96.75zM839.7 924.06H192.23V100h500.32v132.44c0 8.09 6.62 14.72 14.72 14.72H839.7v676.9z" fill="#090418" p-id="3347"></path><path d="M618.97 673.9m-14.72 0a14.72 14.72 0 1 0 29.44 0 14.72 14.72 0 1 0-29.44 0Z" fill="#090418" p-id="3348"></path></svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

@@ -0,0 +1,14 @@
#include "MainWindow.h"
#include <QApplication>
int main(int argc, char* argv[])
{
QApplication a(argc, argv);
QFont f = a.font();
f.setFamily(u8"微软雅黑");
a.setFont(f);
MainWindow w;
w.show();
return a.exec();
}
@@ -0,0 +1,464 @@
#define __DBL_MIN_EXP__ (-1021)
#define __cpp_nontype_template_parameter_auto 201606L
#define __UINT_LEAST16_MAX__ 0xffff
#define __FLT16_HAS_QUIET_NAN__ 1
#define __ATOMIC_ACQUIRE 2
#define __FLT128_MAX_10_EXP__ 4932
#define __FLT_MIN__ 1.17549435082228750796873653722224568e-38F
#define __GCC_IEC_559_COMPLEX 2
#define __cpp_aggregate_nsdmi 201304L
#define __UINT_LEAST8_TYPE__ unsigned char
#define __SIZEOF_FLOAT80__ 16
#define __BFLT16_DENORM_MIN__ 9.18354961579912115600575419704879436e-41BF16
#define __INTMAX_C(c) c ## L
#define __CHAR_BIT__ 8
#define __UINT8_MAX__ 0xff
#define __SCHAR_WIDTH__ 8
#define __WINT_MAX__ 0xffffffffU
#define __FLT32_MIN_EXP__ (-125)
#define __cpp_static_assert 201411L
#define __BFLT16_MIN_10_EXP__ (-37)
#define __ORDER_LITTLE_ENDIAN__ 1234
#define __WCHAR_MAX__ 0x7fffffff
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
#define __GCC_IEC_559 2
#define __FLT32X_DECIMAL_DIG__ 17
#define __FLT_EVAL_METHOD__ 0
#define __cpp_binary_literals 201304L
#define __FLT64_DECIMAL_DIG__ 17
#define __CET__ 3
#define __cpp_noexcept_function_type 201510L
#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
#define __cpp_variadic_templates 200704L
#define __UINT_FAST64_MAX__ 0xffffffffffffffffUL
#define __SIG_ATOMIC_TYPE__ int
#define __DBL_MIN_10_EXP__ (-307)
#define __FINITE_MATH_ONLY__ 0
#define __cpp_variable_templates 201304L
#define __FLT32X_MAX_EXP__ 1024
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
#define __FLT32_HAS_DENORM__ 1
#define __UINT_FAST8_MAX__ 0xff
#define __cpp_rvalue_reference 200610L
#define __cpp_nested_namespace_definitions 201411L
#define __DEC64_MAX_EXP__ 385
#define __INT8_C(c) c
#define __LDBL_HAS_INFINITY__ 1
#define __INT_LEAST8_WIDTH__ 8
#define __cpp_variadic_using 201611L
#define __UINT_LEAST64_MAX__ 0xffffffffffffffffUL
#define __INT_LEAST8_MAX__ 0x7f
#define __cpp_attributes 200809L
#define __cpp_capture_star_this 201603L
#define __SHRT_MAX__ 0x7fff
#define __LDBL_MAX__ 1.18973149535723176502126385303097021e+4932L
#define __FLT64X_MAX_10_EXP__ 4932
#define __cpp_if_constexpr 201606L
#define __BFLT16_MAX_10_EXP__ 38
#define __BFLT16_MAX_EXP__ 128
#define __LDBL_IS_IEC_60559__ 1
#define __FLT64X_HAS_QUIET_NAN__ 1
#define __UINT_LEAST8_MAX__ 0xff
#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
#define __FLT128_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966F128
#define __UINTMAX_TYPE__ long unsigned int
#define __cpp_nsdmi 200809L
#define __BFLT16_DECIMAL_DIG__ 4
#define __linux 1
#define __DEC32_EPSILON__ 1E-6DF
#define __FLT_EVAL_METHOD_TS_18661_3__ 0
#define __OPTIMIZE__ 1
#define __UINT32_MAX__ 0xffffffffU
#define __GXX_EXPERIMENTAL_CXX0X__ 1
#define __DBL_DENORM_MIN__ double(4.94065645841246544176568792868221372e-324L)
#define __FLT128_MIN_EXP__ (-16381)
#define __WINT_MIN__ 0U
#define __FLT128_MIN_10_EXP__ (-4931)
#define __FLT32X_IS_IEC_60559__ 1
#define __INT_LEAST16_WIDTH__ 16
#define __SCHAR_MAX__ 0x7f
#define __FLT128_MANT_DIG__ 113
#define __WCHAR_MIN__ (-__WCHAR_MAX__ - 1)
#define __INT64_C(c) c ## L
#define __SSP_STRONG__ 3
#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
#define __ATOMIC_SEQ_CST 5
#define _FORTIFY_SOURCE 3
#define __unix 1
#define __INT_LEAST64_MAX__ 0x7fffffffffffffffL
#define __FLT32X_MANT_DIG__ 53
#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
#define __cpp_aligned_new 201606L
#define __FLT32_MAX_10_EXP__ 38
#define __FLT64X_EPSILON__ 1.08420217248550443400745280086994171e-19F64x
#define __STDC_HOSTED__ 1
#define __DEC64_MIN_EXP__ (-382)
#define __cpp_decltype_auto 201304L
#define __DBL_DIG__ 15
#define __FLT_EPSILON__ 1.19209289550781250000000000000000000e-7F
#define __GXX_WEAK__ 1
#define __SHRT_WIDTH__ 16
#define __FLT32_IS_IEC_60559__ 1
#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
#define __DBL_IS_IEC_60559__ 1
#define __DEC32_MAX__ 9.999999E96DF
#define __cpp_threadsafe_static_init 200806L
#define __cpp_enumerator_attributes 201411L
#define __FLT64X_DENORM_MIN__ 3.64519953188247460252840593361941982e-4951F64x
#define __FLT32X_HAS_INFINITY__ 1
#define __unix__ 1
#define __INT_WIDTH__ 32
#define __STDC_IEC_559__ 1
#define __STDC_ISO_10646__ 201706L
#define __DECIMAL_DIG__ 21
#define __STDC_IEC_559_COMPLEX__ 1
#define __FLT64_EPSILON__ 2.22044604925031308084726333618164062e-16F64
#define __gnu_linux__ 1
#define __INT16_MAX__ 0x7fff
#define __FLT64_MIN_EXP__ (-1021)
#define __FLT64X_MIN_10_EXP__ (-4931)
#define __LDBL_HAS_QUIET_NAN__ 1
#define __cpp_return_type_deduction 201304L
#define __FLT16_MIN_EXP__ (-13)
#define __FLT64_MANT_DIG__ 53
#define __FLT64X_MANT_DIG__ 64
#define __BFLT16_DIG__ 2
#define __GNUC__ 13
#define __GXX_RTTI 1
#define __pie__ 2
#define __MMX__ 1
#define __FLT_HAS_DENORM__ 1
#define __SIZEOF_LONG_DOUBLE__ 16
#define __BIGGEST_ALIGNMENT__ 16
#define __STDC_UTF_16__ 1
#define __FLT64_MAX_10_EXP__ 308
#define __BFLT16_IS_IEC_60559__ 0
#define __FLT16_MAX_10_EXP__ 4
#define __cpp_delegating_constructors 200604L
#define __DBL_MAX__ double(1.79769313486231570814527423731704357e+308L)
#define __cpp_raw_strings 200710L
#define __INT_FAST32_MAX__ 0x7fffffffffffffffL
#define __DBL_HAS_INFINITY__ 1
#define __INT64_MAX__ 0x7fffffffffffffffL
#define __SIZEOF_FLOAT__ 4
#define __HAVE_SPECULATION_SAFE_VALUE 1
#define __cpp_fold_expressions 201603L
#define __DEC32_MIN_EXP__ (-94)
#define __INTPTR_WIDTH__ 64
#define __UINT_LEAST32_MAX__ 0xffffffffU
#define __FLT32X_HAS_DENORM__ 1
#define __INT_FAST16_TYPE__ long int
#define __MMX_WITH_SSE__ 1
#define __LDBL_HAS_DENORM__ 1
#define __SEG_GS 1
#define __BFLT16_EPSILON__ 7.81250000000000000000000000000000000e-3BF16
#define __cplusplus 201703L
#define __cpp_ref_qualifiers 200710L
#define __DEC32_MIN__ 1E-95DF
#define __DEPRECATED 1
#define __cpp_rvalue_references 200610L
#define __DBL_MAX_EXP__ 1024
#define __WCHAR_WIDTH__ 32
#define __FLT32_MAX__ 3.40282346638528859811704183484516925e+38F32
#define __DEC128_EPSILON__ 1E-33DL
#define __FLT16_DECIMAL_DIG__ 5
#define __SSE2_MATH__ 1
#define __ATOMIC_HLE_RELEASE 131072
#define __PTRDIFF_MAX__ 0x7fffffffffffffffL
#define __amd64 1
#define __ATOMIC_HLE_ACQUIRE 65536
#define __GNUG__ 13
#define __LONG_LONG_MAX__ 0x7fffffffffffffffLL
#define __SIZEOF_SIZE_T__ 8
#define __BFLT16_HAS_INFINITY__ 1
#define __FLT64X_MIN_EXP__ (-16381)
#define __SIZEOF_WINT_T__ 4
#define __FLT32X_DIG__ 15
#define __LONG_LONG_WIDTH__ 64
#define __cpp_initializer_lists 200806L
#define __FLT32_MAX_EXP__ 128
#define __cpp_hex_float 201603L
#define __GXX_ABI_VERSION 1018
#define __FLT_MIN_EXP__ (-125)
#define __GCC_HAVE_DWARF2_CFI_ASM 1
#define __x86_64 1
#define __cpp_lambdas 200907L
#define __INT_FAST64_TYPE__ long int
#define __BFLT16_MAX__ 3.38953138925153547590470800371487867e+38BF16
#define __FLT64_DENORM_MIN__ 4.94065645841246544176568792868221372e-324F64
#define __cpp_template_auto 201606L
#define __FLT16_DENORM_MIN__ 5.96046447753906250000000000000000000e-8F16
#define __FLT128_EPSILON__ 1.92592994438723585305597794258492732e-34F128
#define __FLT64X_NORM_MAX__ 1.18973149535723176502126385303097021e+4932F64x
#define __SIZEOF_POINTER__ 8
#define __SIZE_TYPE__ long unsigned int
#define __LP64__ 1
#define __DBL_HAS_QUIET_NAN__ 1
#define __FLT32X_EPSILON__ 2.22044604925031308084726333618164062e-16F32x
#define __LDBL_MAX_EXP__ 16384
#define __DECIMAL_BID_FORMAT__ 1
#define __FLT64_MIN_10_EXP__ (-307)
#define __FLT16_MIN_10_EXP__ (-4)
#define __FLT64X_DECIMAL_DIG__ 21
#define __DEC128_MIN__ 1E-6143DL
#define __REGISTER_PREFIX__
#define __UINT16_MAX__ 0xffff
#define __FLT128_HAS_INFINITY__ 1
#define __FLT32_MIN__ 1.17549435082228750796873653722224568e-38F32
#define __UINT8_TYPE__ unsigned char
#define __FLT_DIG__ 6
#define __DEC_EVAL_METHOD__ 2
#define __FLT_MANT_DIG__ 24
#define __LDBL_DECIMAL_DIG__ 21
#define __VERSION__ "13.3.0"
#define __UINT64_C(c) c ## UL
#define __cpp_unicode_characters 201411L
#define _STDC_PREDEF_H 1
#define __INT_LEAST32_MAX__ 0x7fffffff
#define __GCC_ATOMIC_INT_LOCK_FREE 2
#define __FLT128_MAX_EXP__ 16384
#define __FLT32_MANT_DIG__ 24
#define __FLOAT_WORD_ORDER__ __ORDER_LITTLE_ENDIAN__
#define __FLT32X_MIN_EXP__ (-1021)
#define __STDC_IEC_60559_COMPLEX__ 201404L
#define __cpp_aggregate_bases 201603L
#define __BFLT16_MIN__ 1.17549435082228750796873653722224568e-38BF16
#define __FLT128_HAS_DENORM__ 1
#define __FLT32_DECIMAL_DIG__ 9
#define __FLT128_DIG__ 33
#define __INT32_C(c) c
#define __DEC64_EPSILON__ 1E-15DD
#define __ORDER_PDP_ENDIAN__ 3412
#define __DEC128_MIN_EXP__ (-6142)
#define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
#define __INT_FAST32_TYPE__ long int
#define __UINT_LEAST16_TYPE__ short unsigned int
#define __DEC128_MAX_EXP__ 6145
#define unix 1
#define __DBL_HAS_DENORM__ 1
#define __cpp_rtti 199711L
#define __UINT64_MAX__ 0xffffffffffffffffUL
#define __FLT_IS_IEC_60559__ 1
#define __GNUC_WIDE_EXECUTION_CHARSET_NAME "UTF-32LE"
#define __FLT64X_DIG__ 18
#define __INT8_TYPE__ signed char
#define __cpp_digit_separators 201309L
#define __ELF__ 1
#define __GCC_ASM_FLAG_OUTPUTS__ 1
#define __UINT32_TYPE__ unsigned int
#define __BFLT16_HAS_QUIET_NAN__ 1
#define __FLT_RADIX__ 2
#define __INT_LEAST16_TYPE__ short int
#define __LDBL_EPSILON__ 1.08420217248550443400745280086994171e-19L
#define __UINTMAX_C(c) c ## UL
#define __FLT16_DIG__ 3
#define __k8 1
#define __FLT32X_MIN__ 2.22507385850720138309023271733240406e-308F32x
#define __SIG_ATOMIC_MAX__ 0x7fffffff
#define __cpp_constexpr 201603L
#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
#define __USER_LABEL_PREFIX__
#define __STDC_IEC_60559_BFP__ 201404L
#define __SIZEOF_PTRDIFF_T__ 8
#define __FLT64X_HAS_INFINITY__ 1
#define __SIZEOF_LONG__ 8
#define __LDBL_DIG__ 18
#define __FLT64_IS_IEC_60559__ 1
#define __x86_64__ 1
#define __FLT16_IS_IEC_60559__ 1
#define __FLT16_MAX_EXP__ 16
#define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
#define __INT_FAST16_MAX__ 0x7fffffffffffffffL
#define __GCC_CONSTRUCTIVE_SIZE 64
#define __FLT64_DIG__ 15
#define __UINT_FAST32_MAX__ 0xffffffffffffffffUL
#define __UINT_LEAST64_TYPE__ long unsigned int
#define __FLT16_EPSILON__ 9.76562500000000000000000000000000000e-4F16
#define __FLT_HAS_QUIET_NAN__ 1
#define __FLT_MAX_10_EXP__ 38
#define __LONG_MAX__ 0x7fffffffffffffffL
#define __FLT64X_HAS_DENORM__ 1
#define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
#define __FLT_HAS_INFINITY__ 1
#define __GNUC_EXECUTION_CHARSET_NAME "UTF-8"
#define __cpp_unicode_literals 200710L
#define __UINT_FAST16_TYPE__ long unsigned int
#define __DEC64_MAX__ 9.999999999999999E384DD
#define __INT_FAST32_WIDTH__ 64
#define __CHAR16_TYPE__ short unsigned int
#define __PRAGMA_REDEFINE_EXTNAME 1
#define __SIZE_WIDTH__ 64
#define __SEG_FS 1
#define __INT_LEAST16_MAX__ 0x7fff
#define __FLT16_NORM_MAX__ 6.55040000000000000000000000000000000e+4F16
#define __DEC64_MANT_DIG__ 16
#define __FLT32_DENORM_MIN__ 1.40129846432481707092372958328991613e-45F32
#define __SIG_ATOMIC_WIDTH__ 32
#define __INT_LEAST64_TYPE__ long int
#define __INT16_TYPE__ short int
#define __INT_LEAST8_TYPE__ signed char
#define __FLT16_MAX__ 6.55040000000000000000000000000000000e+4F16
#define __FLT128_MIN__ 3.36210314311209350626267781732175260e-4932F128
#define __cpp_structured_bindings 201606L
#define __SIZEOF_INT__ 4
#define __DEC32_MAX_EXP__ 97
#define __INT_FAST8_MAX__ 0x7f
#define __FLT128_MAX__ 1.18973149535723176508575932662800702e+4932F128
#define __INTPTR_MAX__ 0x7fffffffffffffffL
#define __cpp_sized_deallocation 201309L
#define __cpp_guaranteed_copy_elision 201606L
#define linux 1
#define __FLT64_HAS_QUIET_NAN__ 1
#define __FLT32_MIN_10_EXP__ (-37)
#define __EXCEPTIONS 1
#define __UINT16_C(c) c
#define __PTRDIFF_WIDTH__ 64
#define __LDBL_MANT_DIG__ 64
#define __cpp_range_based_for 201603L
#define __INT_FAST16_WIDTH__ 64
#define __FLT64_HAS_INFINITY__ 1
#define __FLT64X_MAX__ 1.18973149535723176502126385303097021e+4932F64x
#define __FLT16_HAS_INFINITY__ 1
#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16
#define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1)
#define __code_model_small__ 1
#define __GCC_ATOMIC_LONG_LOCK_FREE 2
#define __cpp_nontype_template_args 201411L
#define __DEC32_MANT_DIG__ 7
#define __k8__ 1
#define __INTPTR_TYPE__ long int
#define __UINT16_TYPE__ short unsigned int
#define __WCHAR_TYPE__ int
#define __pic__ 2
#define __UINTPTR_MAX__ 0xffffffffffffffffUL
#define __INT_FAST64_WIDTH__ 64
#define __cpp_decltype 200707L
#define __INT_FAST64_MAX__ 0x7fffffffffffffffL
#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
#define __FLT_NORM_MAX__ 3.40282346638528859811704183484516925e+38F
#define __FLT32_HAS_INFINITY__ 1
#define __FLT64X_MAX_EXP__ 16384
#define __UINT_FAST64_TYPE__ long unsigned int
#define __cpp_inline_variables 201606L
#define __BFLT16_MIN_EXP__ (-125)
#define __INT_MAX__ 0x7fffffff
#define __linux__ 1
#define __INT64_TYPE__ long int
#define __FLT_MAX_EXP__ 128
#define __ORDER_BIG_ENDIAN__ 4321
#define __DBL_MANT_DIG__ 53
#define __cpp_inheriting_constructors 201511L
#define __SIZEOF_FLOAT128__ 16
#define __BFLT16_MANT_DIG__ 8
#define __DEC64_MIN__ 1E-383DD
#define __WINT_TYPE__ unsigned int
#define __UINT_LEAST32_TYPE__ unsigned int
#define __SIZEOF_SHORT__ 2
#define __FLT32_NORM_MAX__ 3.40282346638528859811704183484516925e+38F32
#define __SSE__ 1
#define __LDBL_MIN_EXP__ (-16381)
#define __FLT64_MAX__ 1.79769313486231570814527423731704357e+308F64
#define __amd64__ 1
#define __WINT_WIDTH__ 32
#define __INT_LEAST64_WIDTH__ 64
#define __FLT32X_MAX_10_EXP__ 308
#define __cpp_namespace_attributes 201411L
#define __SIZEOF_INT128__ 16
#define __FLT16_MIN__ 6.10351562500000000000000000000000000e-5F16
#define __FLT64X_IS_IEC_60559__ 1
#define __LDBL_MAX_10_EXP__ 4932
#define __ATOMIC_RELAXED 0
#define __DBL_EPSILON__ double(2.22044604925031308084726333618164062e-16L)
#define __INT_LEAST32_TYPE__ int
#define _LP64 1
#define __UINT8_C(c) c
#define __FLT64_MAX_EXP__ 1024
#define __SIZEOF_WCHAR_T__ 4
#define __GNUC_PATCHLEVEL__ 0
#define __FLT128_NORM_MAX__ 1.18973149535723176508575932662800702e+4932F128
#define __FLT64_NORM_MAX__ 1.79769313486231570814527423731704357e+308F64
#define __FLT128_HAS_QUIET_NAN__ 1
#define __INTMAX_MAX__ 0x7fffffffffffffffL
#define __INT_FAST8_TYPE__ signed char
#define __FLT64X_MIN__ 3.36210314311209350626267781732175260e-4932F64x
#define __STDCPP_THREADS__ 1
#define __BFLT16_HAS_DENORM__ 1
#define __GNUC_STDC_INLINE__ 1
#define __FLT64_HAS_DENORM__ 1
#define __FLT32_EPSILON__ 1.19209289550781250000000000000000000e-7F32
#define __FLT16_HAS_DENORM__ 1
#define __DBL_DECIMAL_DIG__ 17
#define __STDC_UTF_32__ 1
#define __INT_FAST8_WIDTH__ 8
#define __FXSR__ 1
#define __FLT32X_MAX__ 1.79769313486231570814527423731704357e+308F32x
#define __DBL_NORM_MAX__ double(1.79769313486231570814527423731704357e+308L)
#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
#define __GCC_DESTRUCTIVE_SIZE 64
#define __INTMAX_WIDTH__ 64
#define __cpp_runtime_arrays 198712L
#define __FLT32_DIG__ 6
#define __UINT64_TYPE__ long unsigned int
#define __UINT32_C(c) c ## U
#define __cpp_alias_templates 200704L
#define __FLT_DENORM_MIN__ 1.40129846432481707092372958328991613e-45F
#define __FLT128_IS_IEC_60559__ 1
#define __INT8_MAX__ 0x7f
#define __LONG_WIDTH__ 64
#define __DBL_MIN__ double(2.22507385850720138309023271733240406e-308L)
#define __PIC__ 2
#define __INT32_MAX__ 0x7fffffff
#define __UINT_FAST32_TYPE__ long unsigned int
#define __FLT16_MANT_DIG__ 11
#define __FLT32X_NORM_MAX__ 1.79769313486231570814527423731704357e+308F32x
#define __CHAR32_TYPE__ unsigned int
#define __FLT_MAX__ 3.40282346638528859811704183484516925e+38F
#define __SSE2__ 1
#define __cpp_deduction_guides 201703L
#define __BFLT16_NORM_MAX__ 3.38953138925153547590470800371487867e+38BF16
#define __INT32_TYPE__ int
#define __SIZEOF_DOUBLE__ 8
#define __cpp_exceptions 199711L
#define __FLT_MIN_10_EXP__ (-37)
#define __FLT64_MIN__ 2.22507385850720138309023271733240406e-308F64
#define __INT_LEAST32_WIDTH__ 32
#define __INTMAX_TYPE__ long int
#define __GLIBCXX_BITSIZE_INT_N_0 128
#define __FLT32X_HAS_QUIET_NAN__ 1
#define __ATOMIC_CONSUME 1
#define __GNUC_MINOR__ 3
#define __GLIBCXX_TYPE_INT_N_0 __int128
#define __UINTMAX_MAX__ 0xffffffffffffffffUL
#define __PIE__ 2
#define __FLT32X_DENORM_MIN__ 4.94065645841246544176568792868221372e-324F32x
#define __cpp_template_template_args 201611L
#define __DBL_MAX_10_EXP__ 308
#define __LDBL_DENORM_MIN__ 3.64519953188247460252840593361941982e-4951L
#define __INT16_C(c) c
#define __STDC__ 1
#define __PTRDIFF_TYPE__ long int
#define __FLT32X_MIN_10_EXP__ (-307)
#define __UINTPTR_TYPE__ long unsigned int
#define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
#define __DEC128_MANT_DIG__ 34
#define __LDBL_MIN_10_EXP__ (-4931)
#define __cpp_generic_lambdas 201304L
#define __SSE_MATH__ 1
#define __SIZEOF_LONG_LONG__ 8
#define __cpp_user_defined_literals 200809L
#define __FLT128_DECIMAL_DIG__ 36
#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
#define __FLT32_HAS_QUIET_NAN__ 1
#define __FLT_DECIMAL_DIG__ 9
#define __UINT_FAST16_MAX__ 0xffffffffffffffffUL
#define __LDBL_NORM_MAX__ 1.18973149535723176502126385303097021e+4932L
#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
#define __SIZE_MAX__ 0xffffffffffffffffUL
#define __UINT_FAST8_TYPE__ unsigned char
#define _GNU_SOURCE 1
#define __cpp_init_captures 201304L
#define __ATOMIC_ACQ_REL 4
#define __ATOMIC_RELEASE 3