docx-rs/docx-wasm/src/level.rs

37 lines
1003 B
Rust
Raw Normal View History

use super::*;
use docx_rs;
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
#[derive(Debug)]
pub struct Level(docx_rs::Level);
#[wasm_bindgen(js_name = createLevel)]
pub fn create_level(id: usize, start: usize, format: &str, text: &str, jc: &str) -> Level {
let start = docx_rs::Start::new(start);
let format = docx_rs::NumberFormat::new(format);
let text = docx_rs::LevelText::new(text);
let jc = docx_rs::LevelJc::new(jc);
Level(docx_rs::Level::new(id, start, format, text, jc))
}
impl Level {
pub fn take(self) -> docx_rs::Level {
self.0
}
}
#[wasm_bindgen]
impl Level {
pub fn indent(
mut self,
left: i32,
special_indent_kind: Option<docx_rs::SpecialIndentKind>,
special_indent_size: Option<i32>,
) -> Self {
let special_indent = create_special_indent(special_indent_kind, special_indent_size);
self.0.paragraph_property = self.0.paragraph_property.indent(left, special_indent, None);
self
}
}