use crate::core::units::Emu;
#[derive(Debug, Clone)]
pub struct DrawingInfo {
pub relationship_id: String,
pub description: Option<String>,
pub width: Emu,
pub height: Emu,
pub inline: bool,
pub anchor_position: Option<AnchorPosition>,
pub shape: Option<ShapeInfo>,
}
#[derive(Debug, Clone, Copy, Default)]
pub struct AnchorPosition {
pub x_emu: i64,
pub y_emu: i64,
pub h_relative_from: AnchorFrame,
pub v_relative_from: AnchorFrame,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
pub enum AnchorFrame {
#[default]
Page,
Margin,
Column,
Paragraph,
Line,
Character,
}
#[derive(Debug, Clone)]
pub struct ShapeInfo {
pub kind: ShapeKind,
pub stroke_rgb: Option<(u8, u8, u8)>,
pub fill_rgb: Option<(u8, u8, u8)>,
pub stroke_w_emu: Option<i64>,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum ShapeKind {
Line,
Rect,
}