Skip to main content

Module control

Module control 

Source
Expand description

Control elements: text boxes, hyperlinks, footnotes, endnotes, etc.

Control represents non-text inline elements within a document. The enum is #[non_exhaustive] so new control types can be added in future phases without a breaking change.

TextBox, Footnote, and Endnote contain Vec<Paragraph> (recursive reference through the document tree). This is how HWP models inline frames and annotations.

§Examples

use hwpforge_core::control::Control;
use hwpforge_core::paragraph::Paragraph;
use hwpforge_foundation::{HwpUnit, ParaShapeIndex};

let link = Control::Hyperlink {
    text: "Click here".to_string(),
    url: "https://example.com".to_string(),
};
assert!(link.is_hyperlink());

Structs§

ArrowStyle
Arrowhead style for line endpoints.
DutmalMetadata
Wire-mirrored metadata attached to a Control::Dutmal.
MemoMetadata
Metadata associated with a memo annotation (HWPX <hp:parameters>).
ShapePoint
A 2D point in raw HWPUNIT coordinates for shape geometry.
ShapeStyle
Visual style overrides for drawing shapes.

Enums§

Control
An inline control element.
DutmalAlign
Alignment of dutmal annotation text.
DutmalPosition
Position of dutmal annotation text relative to the main text.
Fill
Fill specification for shapes.
InlinePageKind
Typed variant of the HWP5 atno inline page-number flag byte (Wave 12n).
LineStyle
Line drawing style for shapes.
PathFieldCommand
Typed variant of the HWP5 %pat Command string (Wave 12n).
RefTarget
Cross-reference target identifier (Wave 12m Phase 2).