|
1214 | 1214 | "returns": {"type": "OptionFontRef"},
|
1215 | 1215 | "fn_body": "callbackinfo.get_font_ref(node_id).into()"
|
1216 | 1216 | },
|
| 1217 | + "get_text_layout_options": { |
| 1218 | + "fn_args": [ |
| 1219 | + {"self": "ref"}, |
| 1220 | + {"node_id": "DomNodeId"} |
| 1221 | + ], |
| 1222 | + "returns": {"type": "OptionResolvedTextLayoutOptions"}, |
| 1223 | + "fn_body": "callbackinfo.get_text_layout_options(node_id).into()" |
| 1224 | + }, |
1217 | 1225 | "shape_text": {
|
1218 | 1226 | "doc": "Similar to `get_inline_text()`: If the node is a `Text` node, shape the `text` string with the same parameters as the current text and return the calculated InlineTextLayout. Necessary to calculate text cursor offsets and to detect when a line overflows content.",
|
1219 | 1227 | "fn_args": [
|
|
1668 | 1676 | {"css_path": {"type": "CssPath"}}
|
1669 | 1677 | ]
|
1670 | 1678 | },
|
| 1679 | + "ResolvedTextLayoutOptions": { |
| 1680 | + "external": "azul_impl::ui_solver::ResolvedTextLayoutOptions", |
| 1681 | + "struct_fields": [ |
| 1682 | + {"font_size_px": {"type": "f32"}}, |
| 1683 | + {"line_height": {"type": "OptionF32"}}, |
| 1684 | + {"letter_spacing": {"type": "OptionF32"}}, |
| 1685 | + {"word_spacing": {"type": "OptionF32"}}, |
| 1686 | + {"tab_width": {"type": "OptionF32"}}, |
| 1687 | + {"max_horizontal_width": {"type": "OptionF32"}}, |
| 1688 | + {"leading": {"type": "OptionF32"}}, |
| 1689 | + {"holes": {"type": "LogicalRectVec"}} |
| 1690 | + ] |
| 1691 | + }, |
1671 | 1692 | "Animation": {
|
1672 | 1693 | "doc": "Animation struct to start a new animation",
|
1673 | 1694 | "external": "azul_impl::callbacks::Animation",
|
|
10705 | 10726 | ],
|
10706 | 10727 | "returns": {"type": "FontMetrics"},
|
10707 | 10728 | "fn_body": "azul_impl::text_layout::get_font_metrics_fontref(fontref)"
|
| 10729 | + }, |
| 10730 | + "shape_text": { |
| 10731 | + "doc": "Returns the text layout of the shaped text", |
| 10732 | + "fn_args": [ |
| 10733 | + {"self": "ref"}, |
| 10734 | + {"text": "Refstr"}, |
| 10735 | + {"options": "ResolvedTextLayoutOptions"} |
| 10736 | + ], |
| 10737 | + "returns": {"type": "InlineText"}, |
| 10738 | + "fn_body": "azul_impl::text_layout::shape_text(fontref, text.as_str(), &options)" |
10708 | 10739 | }
|
10709 | 10740 | }
|
10710 | 10741 | }
|
|
12014 | 12045 | "vec": {
|
12015 | 12046 | "doc": "Definition of azuls internal `Vec<*>` wrappers",
|
12016 | 12047 | "classes": {
|
| 12048 | + "LogicalRectVec": { |
| 12049 | + "doc": "Wrapper over a Rust-allocated `Vec<LogicalRect>`", |
| 12050 | + "custom_destructor": true, |
| 12051 | + "external": "azul_core::window::LogicalRectVec", |
| 12052 | + "struct_fields": [ |
| 12053 | + { "ptr": { "type": "*const LogicalRect" } }, |
| 12054 | + { "len": { "type": "usize" } }, |
| 12055 | + { "cap": { "type": "usize" } }, |
| 12056 | + { "destructor": { "type": "LogicalRectVecDestructor" } } |
| 12057 | + ] |
| 12058 | + }, |
12017 | 12059 | "NodeTypeIdInfoMapVec": {
|
12018 | 12060 | "doc": "Wrapper over a Rust-allocated `Vec<NodeTypeIdInfoMap>`",
|
12019 | 12061 | "custom_destructor": true,
|
|
12743 | 12785 | ]
|
12744 | 12786 | }
|
12745 | 12787 | },
|
| 12788 | + "LogicalRectVecDestructor": { |
| 12789 | + "external": "azul_core::window::LogicalRectVecDestructor", |
| 12790 | + "derive": ["Copy"], |
| 12791 | + "enum_fields": [ |
| 12792 | + {"DefaultRust": {}}, |
| 12793 | + {"NoDestructor": {}}, |
| 12794 | + {"External": {"type": "LogicalRectVecDestructorType"}} |
| 12795 | + ] |
| 12796 | + }, |
| 12797 | + "LogicalRectVecDestructorType": { |
| 12798 | + "callback_typedef": { |
| 12799 | + "fn_args": [ |
| 12800 | + {"type": "LogicalRectVec", "ref": "refmut"} |
| 12801 | + ] |
| 12802 | + } |
| 12803 | + }, |
12746 | 12804 | "NodeTypeIdInfoMapVecDestructor": {
|
12747 | 12805 | "external": "crate::widgets::node_graph::NodeTypeIdInfoMapVecDestructor",
|
12748 | 12806 | "derive": ["Copy"],
|
|
13724 | 13782 | "option": {
|
13725 | 13783 | "doc": "Definition of azuls internal `Option<*>` wrappers",
|
13726 | 13784 | "classes": {
|
| 13785 | + "OptionResolvedTextLayoutOptions": { |
| 13786 | + "external": "azul_impl::ui_solver::OptionResolvedTextLayoutOptions", |
| 13787 | + "enum_fields": [ |
| 13788 | + {"None": {}}, |
| 13789 | + {"Some": {"type": "ResolvedTextLayoutOptions"}} |
| 13790 | + ] |
| 13791 | + }, |
13727 | 13792 | "OptionNodeGraphOnNodeAdded": {
|
13728 | 13793 | "external": "crate::widgets::node_graph::OptionOnNodeAdded",
|
13729 | 13794 | "enum_fields": [
|
|
0 commit comments