egui_charts/chart/mod.rs
1//! Rendering and geometry helpers for chart composition.
2//!
3//! Use [`coords`] for coordinate conversions, [`series`] for hit testing and series
4//! settings, [`overlays`] for order flow visualizations and [`primitives`] for custom
5//! rendering. For a chart that manages data, layout and interaction, use
6//! [`Chart`](crate::Chart).
7//!
8//! Internal painting lives in one `rendering` tree, grouped into axes, chart
9//! types, overlays and supporting chart elements. Interaction state belongs to
10//! the widget.
11
12pub mod coords;
13pub mod overlays;
14pub mod primitives;
15pub(crate) mod selection;
16pub mod series;
17
18// Internal engine modules: used within the crate but not part of the public API.
19pub(crate) mod hit_test;
20pub(crate) mod indicators;
21pub(crate) mod rendering;
22
23// Axis composition for hosts that allocate their own pane and input regions.
24#[cfg(feature = "icons")]
25#[cfg_attr(docsrs, doc(cfg(feature = "icons")))]
26pub use rendering::axes::{axis_settings_button, crosshair_price_action};
27pub use rendering::axes::{price_axis_width, render_quote_tags};
28#[cfg(feature = "ui")]
29pub(crate) use rendering::entry_price;
30pub use rendering::{
31 PnlUnit, RenderContext, TradingLabelAlignment, TradingLineAction, TradingLineOptions,
32 TradingLines, alert_shortcut_price, render_alert_levels, render_axis_currency,
33 render_crosshair_full, render_event_band, render_trading_lines,
34};