fix: improve doc link navigation and tree display

- Fix link resolution with proper relative/absolute path handling
- Improve link styling with underline decoration
- Hide leaf nodes from tree, only show directories
- Fix log file path for packaged app
This commit is contained in:
2026-03-19 12:44:08 +08:00
parent e003fe6513
commit 58a83f445a
1012 changed files with 56880 additions and 22 deletions

View File

@@ -0,0 +1,21 @@
# ConsoleLogSink::ConsoleLogSink
```cpp
ConsoleLogSink()
```
默认构造函数。创建一个 `ConsoleLogSink` 实例,默认启用彩色输出,最小日志级别为 `Verbose`
**复杂度:** O(1)
**示例:**
```cpp
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
```
## 相关文档
- [ConsoleLogSink 总览](overview.md) - 返回类总览
- [Debug 模块总览](../debug.md) - 返回模块总览

View File

@@ -0,0 +1,22 @@
# ConsoleLogSink::Flush
```cpp
void Flush() override
```
刷新标准输出流stdout调用 `fflush(stdout)` 确保所有待输出的日志内容立即显示在控制台上。
**复杂度:** O(1)
**示例:**
```cpp
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
// 在程序异常退出前确保日志已输出
XCEngine::Debug::Logger::Get().Flush();
```
## 相关文档
- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览

View File

@@ -0,0 +1,25 @@
# ConsoleLogSink::Log
```cpp
void Log(const LogEntry& entry) override
```
将日志输出到控制台。根据 `LogEntry` 的级别和分类格式化输出内容,并根据 `m_colorOutput` 设置决定是否使用 Windows 控制台颜色 API。如果日志级别低于设置的最小级别则不输出。
**参数:**
- `entry` - 日志条目
**复杂度:** O(1)
**示例:**
```cpp
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
// Log 方法由 Logger 在内部调用,用户无需直接调用
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
XCEngine::Debug::Logger::Get().Info(XCEngine::Debug::LogCategory::General, "Hello console");
```
## 相关文档
- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览

View File

@@ -0,0 +1,41 @@
# ConsoleLogSink
**命名空间**: `XCEngine::Debug`
**类型**: `class`
**头文件**: `XCEngine/Debug/ConsoleLogSink.h`
**描述**: 控制台日志输出目标,将日志输出到标准输出流。
## 概述
`ConsoleLogSink` 是日志系统的控制台输出实现。它将日志条目输出到标准输出流stdout支持彩色输出和日志级别过滤。
## 公共方法
| 方法 | 描述 |
|------|------|
| `ConsoleLogSink()` | [构造函数](consolelogsink.md) |
| `~ConsoleLogSink()` | [析构函数](~consolelogsink.md) |
| `void Log(const LogEntry& entry)` | [输出日志到控制台](log.md) |
| `void Flush()` | [刷新输出流](flush.md) |
| `void SetColorOutput(bool enable)` | [设置彩色输出](setcoloroutput.md) |
| `void SetMinimumLevel(LogLevel level)` | [设置最小日志级别](setminimumlevel.md) |
## 使用示例
```cpp
#include <XCEngine/Debug/ConsoleLogSink.h>
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
sink->SetColorOutput(true);
sink->SetMinimumLevel(XCEngine::Debug::LogLevel::Warning);
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
```
## 相关文档
- [Debug 模块总览](../debug.md) - 返回模块总览
- [Logger](../logger/logger.md) - 日志记录器
- [ILogSink](../ilogsink/ilogsink.md) - 日志输出接口

View File

@@ -0,0 +1,24 @@
# ConsoleLogSink::SetColorOutput
```cpp
void SetColorOutput(bool enable)
```
启用或禁用控制台彩色输出。启用后,不同日志级别使用 Windows 控制台颜色 API 输出,便于快速区分日志类型。
**参数:**
- `enable` - true 启用彩色输出false 禁用
**复杂度:** O(1)
**示例:**
```cpp
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
sink->SetColorOutput(false); // 禁用颜色(适合日志文件或 CI 环境)
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
```
## 相关文档
- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览

View File

@@ -0,0 +1,24 @@
# ConsoleLogSink::SetMinimumLevel
```cpp
void SetMinimumLevel(LogLevel level)
```
设置该 Sink 的最小输出级别。此设置仅影响当前 Sink不会影响 Logger 的全局级别过滤。
**参数:**
- `level` - 最小日志级别
**复杂度:** O(1)
**示例:**
```cpp
auto sink = std::make_unique<XCEngine::Debug::ConsoleLogSink>();
sink->SetMinimumLevel(XCEngine::Debug::LogLevel::Warning); // 控制台只显示警告及以上
XCEngine::Debug::Logger::Get().AddSink(std::move(sink));
```
## 相关文档
- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览

View File

@@ -0,0 +1,13 @@
# ConsoleLogSink::~ConsoleLogSink
```cpp
~ConsoleLogSink() override
```
析构函数。销毁 `ConsoleLogSink` 实例,释放相关资源。
**复杂度:** O(1)
## 相关文档
- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览