Files
Radio/module/F/main.cpp
T
2026-06-16 13:38:08 +08:00

71 lines
1.8 KiB
C++

#include <QApplication>
#include <QTextCodec>
#ifdef _WINDOWS
#include <Windows.h>
#endif
#include <QColor>
#include <QDomDocument>
#include <QHash>
#include "MainWindow.h"
#include "component/SVG.h"
#include "global.h"
// 自定义 qHash 函数
#include <QColor>
#include <QDebug>
#include <QImage>
#include <QSet>
QColor base = QColor("#007ee1");
MainWindow::MainWindow() {
background_color = base;
main_layout = new QVBoxLayout(this);
int a = 2;
main_layout->setContentsMargins(leftMargin + 20, topMargin + a, rightMargin + a, bottomMargin + a);
header = new Header(this);
main_layout->addWidget(header);
create_center_Layout();
data_source.set_root(this);
}
void MainWindow::create_center_Layout() {
center_layout = new QHBoxLayout();
navigate_bar = new Navigate_Bar();
center_layout->addWidget(navigate_bar, 1);
center = new Center();
center_layout->addWidget(center, 4);
main_layout->addSpacing(16);
main_layout->addLayout(center_layout);
static auto click = [this](_Dat* d) {
if(std::holds_alternative<_Dat1>(d->data)){
auto& dd = std::get<_Dat1>(d->data);
auto w = dd.widget;
center->setWidget(dd.widget);
header->set_title(dd.title, dd.detail);
}
};
navigate_bar->set_click(click);
click(&navigate_bar->w->items[0]);
}
int main(int argc, char* argv[]) {
QApplication app(argc, argv);
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
#ifdef _WINDOWS
SetConsoleOutputCP(CP_UTF8);
system("chcp 65001");
// setbuf(stdout, 0);
#endif
qRegisterMetaType<_Dat>("Dat");
MainWindow w;
w.resize(1000, 700);
w.show();
// svg/filter_1_24dp_5985E1_FILL0_wght400_GRAD0_opsz24.svg
YSG::startAllRenderThread();
return QApplication::exec();
}