#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQmlContext>
#include <QQuickStyle>
#include "data/fileStorage.h"
#include "services/studentService.h"
#include <QtCharts>
#include <tests/test.h>
int main(int argc, char *argv[]) {
QGuiApplication app(argc, argv);
// QApplication app(argc, argv);
// 测试API等
Test::run();
// 初始化数据存储
auto *storage = new FileStorage("data/students.dat");
// 测试API等
Test::run();
// 注册图表类型
// qmlRegisterType<QChart>("QtCharts", 2, 0, "Chart");
// qmlRegisterType<QPieSeries>("QtCharts", 2, 0, "PieSeries");
// qmlRegisterType<QBarSeries>("QtCharts", 2, 0, "BarSeries");
// qmlRegisterType<QBarSet>("QtCharts", 2, 0, "BarSet");
// qmlRegisterType<QBarCategoryAxis>("QtCharts", 2, 0, "BarCategoryAxis");
// qmlRegisterType<QValueAxis>("QtCharts", 2, 0, "ValueAxis");
// qmlRegisterType<QHorizontalBarSeries>("QtCharts", 2, 0, "HorizontalBarSeries");
// 初始化学生服务
StudentService studentService(storage);
// 设置 QML 样式
QQuickStyle::setStyle("Fusion"); // 或 "Material", "Universal" 等
qputenv("QML_STYLE", "Fusion"); // 与 QSS 兼容
QQmlApplicationEngine engine;
// 将服务暴露给QML
engine.rootContext()->setContextProperty("StudentService", &studentService);
// 加载主界面
engine.load(QUrl(QStringLiteral("qrc:/src/ui/mainWindow.qml")));
return QGuiApplication::exec();
}