🎨 大纲面板加入文档标题调整缩进 https://github.com/siyuan-note/siyuan/issues/5011

This commit is contained in:
Liang Ding 2022-05-27 18:05:27 +08:00
parent 5c63e4a56d
commit efd668f956
No known key found for this signature in database
GPG key ID: 136F30F901A2231D

View file

@ -82,30 +82,22 @@ func Outline(rootID string) (ret []*Path, err error) {
} }
ret = toFlatTree(blocks, 0, "outline") ret = toFlatTree(blocks, 0, "outline")
if 0 < len(ret) { resetDepth(ret)
children := ret[0].Blocks
ret = nil
for _, b := range children {
resetDepth(b, 0)
ret = append(ret, &Path{
ID: b.ID,
Box: b.Box,
Name: b.Content,
Type: b.Type,
SubType: b.SubType,
Blocks: b.Children,
Depth: 0,
Count: b.Count,
})
}
}
return return
} }
func resetDepth(b *Block, depth int) { func resetDepth(paths []*Path) {
b.Depth = depth for _, p := range paths {
b.Count = len(b.Children) for _, b := range p.Blocks {
for _, c := range b.Children { resetDepth0(b, p.Depth)
resetDepth(c, depth+1) }
}
}
func resetDepth0(b *Block, depth int) {
b.Depth = depth + 1
b.Count = len(b.Children)
for _, c := range b.Children {
resetDepth0(c, depth+1)
} }
} }