Skip to main content

ScreenerPanel

Struct ScreenerPanel 

Source
pub struct ScreenerPanel { /* private fields */ }
Expand description

A screener fed by the host’s Datafeed::screen.

The host gives the column sets; the user picks one, adds filters on its columns and sorts by a column by clicking its heading. With set_universes the user also picks the market to screen, and with set_text_query describes the screen in words, which the feed interprets in Datafeed::screen_text and explains above the rows. set_storage lets the user save, rename, load and delete named screens. Each change asks the feed again, which filters, sorts and limits, and only the answer to the latest request is shown. A full answer offers the next page of the same screen. The chosen criteria stay through loading, failures, paging and export. Call poll each frame, then show while the panel is open.

Implementations§

Source§

impl ScreenerPanel

Source

pub fn new(sets: Vec<ScreenerColumnSet>) -> Self

A screener of sets, showing the first, without a feed.

Source

pub fn set_feed(&mut self, feed: Arc<dyn Datafeed>)

Ask feed for rows from now on, starting at once.

Source

pub fn set_universes(&mut self, universes: Vec<ScreenerUniverse>)

Offer universes as the markets to screen, the first at first. The chosen one stays chosen while it is still offered.

Source

pub fn set_text_query(&mut self, enabled: bool)

Offer a field to describe the screen in words, which the feed interprets in Datafeed::screen_text.

Source

pub fn set_storage(&mut self, storage: Arc<dyn Storage>)

Keep named screens in storage, in StoreKind::Screens. Poll every frame, as the panel is.

Source

pub fn refresh(&mut self)

Ask the feed again, such as when the host’s data changed.

Source

pub fn poll(&mut self, ctx: &Context)

Receive the feed’s answer and wake the UI when the next one arrives.

Source

pub fn show(&mut self, ui: &mut Ui) -> ScreenerAction

Render the filters and the table after poll.

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
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> 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, 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, 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.