Skip to main content

Control

Enum Control 

Source
#[non_exhaustive]
pub enum Control {
Show 28 variants Menu, SymbolSearch, Interval, ChartType, Indicators, Undo, Redo, Theme, QuickSearch, Settings, Fullscreen, Snapshot, ObjectTree, Help, ContextMenus, ResetView, CopyPrice, ExportData, Alerts, Trading, Publish, Replay, Layouts, Templates, Compare, TimeZone, Session, DividendAdjustment,
}
Expand description

A control the terminal or a host can hide. Hidden controls are not drawn and emit nothing.

Each component that draws one of these has a set_control_visible(control, visible) method; every control starts visible. This controls presentation, not authorization: hosts choose which services, commands and shortcut bindings they provide. Chart behavior switches live in ChartOptions; component config fields override dimensions and Theme overrides colours and text sizes. ChartBuilder::with_theme keeps those theme properties local to one chart.

use egui_charts::ui::{Control, context_menu::ChartMenus, top_toolbar::TopToolbar};
let mut toolbar = TopToolbar::new();
let mut menus = ChartMenus::default();
for control in [Control::Alerts, Control::Trading, Control::Settings] {
    toolbar.set_control_visible(control, false);
    menus.set_control_visible(control, false);
}
toolbar.set_control_visible(Control::Snapshot, false);

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

Menu

The top toolbar’s menu button or host menu slot.

§

SymbolSearch

The top toolbar’s symbol search button.

§

Interval

The top toolbar’s interval selector.

§

ChartType

The top toolbar’s chart type selector.

§

Indicators

Study selection and removal entries in the toolbar and series/chart menus.

§

Undo

The top toolbar’s undo button. Shortcut bindings remain host configurable.

§

Redo

The top toolbar’s redo button. Shortcut bindings remain host configurable.

§

Theme

The top toolbar’s theme toggle.

§

QuickSearch

The top toolbar’s quick search button.

§

Settings

Chart and series settings buttons and menu entries.

§

Fullscreen

The top toolbar’s fullscreen button.

§

Snapshot

The top toolbar’s snapshot button and menu.

§

ObjectTree

Object Tree buttons and chart-menu entries.

§

Help

The right rail’s help button.

§

ContextMenus

All chart, series, drawing and axis context menus.

§

ResetView

Reset-view entries in the chart menu.

§

CopyPrice

Copy-price entries in chart and series menus.

§

ExportData

CSV export entries in the chart menu.

§

Alerts

Alert creation: the top toolbar’s Alert button, the right rail’s Alerts button and the add alert rows of the chart and series menus.

§

Trading

Positions and orders: the top toolbar’s Trade button, the drawing toolbar’s hide rows for them and the chart menu’s order rows.

§

Publish

The top toolbar’s Publish button.

§

Replay

The top toolbar’s Replay button.

§

Layouts

The top toolbar’s Save and Layout setup buttons.

§

Templates

Templates: the top toolbar’s indicator templates button, the drawing toolbar’s templates button and menu, and the chart settings dialog’s template button.

§

Compare

The top toolbar’s Compare button.

§

TimeZone

The bottom toolbar’s time zone menu.

§

Session

The bottom toolbar’s session menu.

§

DividendAdjustment

The bottom toolbar’s dividend adjustment toggle.

Trait Implementations§

Source§

impl Clone for Control

Source§

fn clone(&self) -> Control

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for Control

Source§

impl Debug for Control

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for Control

Source§

impl Hash for Control

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for Control

Source§

fn eq(&self, other: &Control) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Control

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> AsId for T
where T: Hash + Debug,

§

impl<T> AsIdSalt for T
where T: Hash + Debug,

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> MaybeSend for T
where T: Send + Sync + ?Sized,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

§

impl<T> SerializableAny for T
where T: 'static + Any + Clone + for<'a> Send + Sync,

§

impl<T, S> SimdFrom<T, S> for T
where S: Simd,

§

fn simd_from(_simd: S, value: T) -> T

§

impl<F, T, S> SimdInto<T, S> for F
where T: SimdFrom<F, S>, S: Simd,

§

fn simd_into(self, simd: S) -> T

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.