<<<<<<< HEAD #ifndef __LOG_HANDLER_H__ #define __LOG_HANDLER_H__ #include #include #include class LogHandler : public QObject { Q_OBJECT public: // 获取单例实例 static LogHandler* log_instance(); // 初始化日志输出目标(UI控件) static void log_init(QPlainTextEdit *logWidget = nullptr); // Qt 消息处理函数(静态) static void log_handleMessage(QtMsgType type, const QMessageLogContext &context, const QString &msg); signals: // 日志信号(用于跨线程传递) void log_messageLogged(const QString &formattedMsg); private: explicit LogHandler(QObject *parent = nullptr); static LogHandler *s_instance; // 单例实例 static QMutex s_mutex; // 线程安全锁 QPlainTextEdit *m_logWidget; // 日志输出UI组件 }; #endif ======= #ifndef __LOG_HANDLER_H__ #define __LOG_HANDLER_H__ #include #include #include class LogHandler : public QObject { Q_OBJECT public: // 获取单例实例 static LogHandler* log_instance(); // 初始化日志输出目标(UI控件) static void log_init(QPlainTextEdit *logWidget = nullptr); // Qt 消息处理函数(静态) static void log_handleMessage(QtMsgType type, const QMessageLogContext &context, const QString &msg); signals: // 日志信号(用于跨线程传递) void log_messageLogged(const QString &formattedMsg); private: explicit LogHandler(QObject *parent = nullptr); static LogHandler *s_instance; // 单例实例 static QMutex s_mutex; // 线程安全锁 QPlainTextEdit *m_logWidget; // 日志输出UI组件 }; #endif >>>>>>> 799590bc1dd9b9faee90d554f54d6ad46e8b8ddd