1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
//! ferroui-controls-inking
//!
//! The inking controls and services of WinUI on FerroUI: [`InkCanvas`] with its
//! [`InkPresenter`], the stroke services ([`InkStroke`], [`InkStrokeBuilder`],
//! [`InkStrokeContainer`], erasing and selection), the ruler and protractor stencils,
//! custom drying through [`InkSynchronizer`], [`InkToolbar`] with its buttons and pen
//! configuration, the portable FERROINK format and the clipboard. On Windows,
//! `WindowsInkServices` connects a stroke container to the ink services of the system (ISF
//! and GIF with ISF, the system ink clipboard, handwriting recognition).
//!
//! The toolbar's WinUI theme is part of this crate, not of the WinUI theme: an application
//! that uses the toolbar with the WinUI theme includes its styles,
//!
//! ```xml
//! <StyleInclude Source="ferres://FerroUI.Controls.Inking/Themes/WinUI.xaml" />
//! ```
//!
//! The theme documents are compiled by the build of the crate (`build.rs`);
//! [`register_types`] registers the types of the crate and the loader table of its compiled
//! markup. See `docs/porting/winui-inking.md` for the source mappings and the limits of
//! interoperability.
// The compiled markup names the types of the crate by the name of the crate, as the markup of any
// other crate does.
extern crate self as ferroui_controls_inking;
// `compiled_xaml` (the compiled markup of the theme documents) and `compiled_markup` (the loader
// table of the crate and `register()`), which the build script generates.
include_compiled_xaml!;
pub use ;
pub use *;
pub use InkClipboard;
pub use *;
pub use InkStroke;
pub use InkStrokeBuilder;
pub use InkStrokeContainer;
pub use ;
pub use *;
pub use *;
pub use *;
pub use InkSynchronizer;
pub use InkCanvas;
pub use InkCanvasAutomationPeer;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use ;
pub use ;