Custom drawing tool authoring
Most apps do not need this page
If you want to draw trend lines, levels, Fibonacci, or boxes, use the built-in tools. Start with Drawing tools recipes and the catalog.
This page is for library maintainers who need a shape that does not exist yet — for example a proprietary annotation type that must ship inside @efixdata/exeria-chart.
Two different meanings of “custom drawing tool”
| Path | Who | What you do |
|---|---|---|
| Recipes | App developers | Call toolDrawer.drawTool({ type: "trendLine", … }) with an existing type |
| Authoring | Package maintainers | Add a new type in chart source code |
Maintainer workflow (high level)
- Copy the closest existing shape (for example
trendLine.tsorhLine.ts) underpackages/chart/src/objects/shapes/. - Implement drawing, hit-testing, and drag handles.
- Register the new
typeinRenderer.ts. - Add labels (and optional ChartUI menu entry) in
DrawingTools.tsx. - Document the new key in the drawing catalog.
Same boundary as Custom indicator authoring: app developers use built-in keys; new keys ship with the package or a licensed plugin.