Skip to main content

graphitepdf_kit/
outline.rs

1#[derive(Clone, Debug)]
2pub struct OutlineItem {
3    pub title: String,
4    pub page: u32,
5    pub children: Vec<OutlineItem>,
6}
7
8#[derive(Clone, Debug, Default)]
9pub struct Outline {
10    items: Vec<OutlineItem>,
11}
12
13impl Outline {
14    pub fn new() -> Self {
15        Self { items: Vec::new() }
16    }
17
18    pub fn add(&mut self, item: OutlineItem) {
19        self.items.push(item);
20    }
21
22    pub fn items(&self) -> &[OutlineItem] {
23        &self.items
24    }
25}