Skip to main content

egui_charts/ui/top_toolbar/components/
mod.rs

1//! Symbol search, interval and chart type pickers, study selection and layout controls.
2//!
3//! Use these components individually when composing a custom top toolbar.
4
5pub mod chart_grid_selector;
6pub mod chart_type_selector;
7pub mod layout_menu;
8pub mod settings_menu;
9pub mod sync_button;
10pub mod timeframe_selector;
11
12pub use crate::ui::dialogs::{indicator_dialog, symbol_search};
13
14// Explicit re-exports to avoid ambiguous glob conflicts
15// (indicator_dialog and settings_menu both have actions, config, data, dialog, types submodules)
16
17// From chart_type_selector (ChartType is re-exported from crate::model)
18pub use chart_type_selector::{
19    ChartTypeAction, ChartTypePreferences, ChartTypeSelector, ChartTypeSelectorConfig,
20    ChartTypeUiExt,
21};
22
23// From indicator_dialog
24pub use indicator_dialog::{
25    IndicatorCategory, IndicatorDialog, IndicatorDialogAction, IndicatorDialogConfig,
26    IndicatorInfo, IndicatorTab,
27};
28
29// From chart_grid_selector
30pub use chart_grid_selector::ChartGridSelector;
31
32// From sync_button
33pub use sync_button::SyncButton;
34
35// From layout_menu
36pub use layout_menu::{LayoutAction, LayoutMenu, LayoutMenuConfig};
37
38// From settings_menu (ChartType comes from chart_type_selector - single source of truth)
39pub use settings_menu::{
40    ChartSettings, SettingsAction, SettingsDialog, SettingsDialogConfig, SettingsMenu, SettingsTab,
41};
42
43// From symbol_search
44pub use symbol_search::{
45    CompareAction, ComparePlacement, CompareSymbol, CompareSymbolsConfig, CompareSymbolsDialog,
46    SymbolSearchConfig, SymbolSearchDialog,
47};
48
49// From timeframe_selector
50pub use timeframe_selector::{
51    TimeframeAction, TimeframePreferences, TimeframeSelector, TimeframeSelectorConfig,
52    TimeframeUnit,
53};