pub enum AppEvent {
Show 51 variants
Key(KeyEvent),
Press(KeyEvent),
Terminal(Event),
Wake,
TerminalBackground(ThemeMode),
TerminalFocused,
SettingsRead(Box<Result<Settings>>),
OpenNamed(Vec<PathBuf>, OpenOptions),
NamedPathMissing(PathBuf),
Open(Vec<PathBuf>, OpenOptions),
OpenLazyFrame(Box<LazyFrame>, OpenOptions),
HomeListingReady {
generation: u64,
listing: Box<Listing>,
known: HashMap<PathBuf, DatasetFacts>,
visits: HashMap<PathBuf, Visits>,
newest: Option<PathBuf>,
folds: Option<HashMap<String, bool>>,
},
HomeListingFailed,
HomePathListed {
listing: Box<PathListing>,
},
HomePathCompleted {
generation: u64,
typed: String,
completed: String,
candidates: usize,
},
HomePreviewReady {
path: PathBuf,
stamp: Stamp,
read_at: Option<Stamp>,
rows: Option<Arc<PreviewRows>>,
prepared: Handoff,
},
HomeSchemaReady {
generation: u64,
path: PathBuf,
preview: Option<SchemaPreview>,
},
HomeMeasured {
measured: Vec<(PathBuf, Measured)>,
done: bool,
},
HomeSized {
path: PathBuf,
measured: Measured,
},
HomeWebGone {
path: PathBuf,
gone: HttpGone,
},
HomeClassified {
measured: Vec<(PathBuf, Measured)>,
done: bool,
},
HomeSearchBatch {
generation: u64,
root: PathBuf,
found: Vec<Entry>,
scanned: usize,
},
HomeSearchScored {
epoch: u64,
matches: Option<Box<Matches>>,
},
HomeSearchDone {
generation: u64,
root: PathBuf,
scanned: usize,
limited: Option<String>,
},
HomeCloudSources {
sources: Vec<CloudSource>,
},
HomeCloudListed {
id: String,
buckets: Vec<PathBuf>,
details: Vec<(PathBuf, Vec<(String, String)>)>,
failure: Option<(String, String)>,
listed_at: SystemTime,
},
HomeProbeReady {
root: PathBuf,
rows: Option<Vec<Entry>>,
cut_short: bool,
},
HomeProbeProgress {
root: PathBuf,
rows: Vec<Entry>,
},
HomeCloudKinds {
kinds: Vec<(PathBuf, (EntryKind, Holds))>,
failed: Vec<PathBuf>,
},
HomeProbeCancelled {
root: PathBuf,
},
HomeNarrowed {
dir: PathBuf,
prefix: String,
listed: Option<(Vec<Entry>, bool)>,
},
HomeProbeFailed {
root: PathBuf,
message: String,
},
Followed(News),
Exit,
Crash(String),
Applied(Applied),
Collect,
Update,
Reset,
Resize(u16, u16),
Scroll(Scroll),
AnalysisCompute(AnalysisTool),
BackgroundQualitySampleKept {
kept: KeptQualitySample,
},
BackgroundQualityCopyKept {
dataset_generation: u64,
copy: Option<Arc<LocalCopy>>,
},
BackgroundLenReady {
len_generation: u64,
num_rows: usize,
file_row_groups: Option<Vec<Vec<usize>>>,
},
BackgroundLenFailed {
len_generation: u64,
},
FramePainted,
LookThenOpenDirectory(PathBuf, OpenOptions),
ClassifyThenOpen {
path: PathBuf,
jump: bool,
},
JobEnded(Ticket),
JobProgress {
ticket: Ticket,
progress: Progress,
},
}Variants§
Key(KeyEvent)
Press(KeyEvent)
A key taken as if typed (Enter on a help line). The pump runs it through
classify like a typed key; outside the pump it is a Key.
Terminal(Event)
Read from the terminal by app::terminal_input::TerminalInput. The
app::event_pump::EventPump turns it into Key/Resize.
Wake
Something polled rather than sent changed (a background panic, a Polars warning): wakes the loop. Handled as nothing.
TerminalBackground(ThemeMode)
The terminal’s background (an OSC 11 reply); theme.mode = "auto" follows it.
TerminalFocused
The terminal regained focus: under auto the background is asked again.
SettingsRead(Box<Result<Settings>>)
Settings run reads on a worker before building the app; never reaches the app.
OpenNamed(Vec<PathBuf>, OpenOptions)
Paths from the command line or the Python binding, checked on a worker
(JobKind::OpenNamed): a local-looking path may be a slow mount.
NamedPathMissing(PathBuf)
A path named on the command line is not there: the session ends.
Open(Vec<PathBuf>, OpenOptions)
Open these paths, through the loading controller’s phases.
OpenLazyFrame(Box<LazyFrame>, OpenOptions)
Open with an existing LazyFrame (e.g. from Python binding); no file load.
HomeListingReady
A home listing built off-thread is ready.
Fields
known: HashMap<PathBuf, DatasetFacts>What earlier runs measured, read from the cache with the listing.
HomeListingFailed
The home listing worker panicked; the panic is flashed.
HomePathListed
The directory the ~ prompt is typing, read off-thread.
Fields
listing: Box<PathListing>HomePathCompleted
A completed path, worked out off-thread.
Fields
HomePreviewReady
The highlighted file’s first rows, read as its open reads them, and the dataset that read built, for the open to install.
Fields
rows: Option<Arc<PreviewRows>>HomeSchemaReady
A schema read off-thread for the highlighted dataset.
HomeMeasured
Measurements for home rows, sent per row so a slow one holds back no other.
done ends the batch. No generation: a measurement is keyed by path and
stays true whichever listing asked.
HomeSized
What a HEAD said an HTTP(S) file on home weighs: its row, measured.
HomeWebGone
What a HEAD settled about an HTTP(S) file on home: it cannot be had.
HomeClassified
What the rows on screen turned out to be; folded like
AppEvent::HomeMeasured.
HomeSearchBatch
A batch of datasets from the background search, sent repeatedly while it walks.
HomeSearchScored
The filter scored against the search’s files, for the walk epoch names.
HomeSearchDone
The background search stopped; limited says why if it stopped short.
HomeCloudSources
The cloud sources on this machine with what an earlier run listed, sent before anything is fetched.
Fields
sources: Vec<CloudSource>HomeCloudListed
One source’s buckets listed, or not. Each source reports on its own.
Fields
details: Vec<(PathBuf, Vec<(String, String)>)>Lines for the details pane of each listed place that has any.
listed_at: SystemTimeHomeProbeReady
A network root has been listed off-thread, or could not be.
Fields
cut_short: boolThe listing stopped at crate::home::discover::MAX_ENTRIES_PER_DIR.
HomeProbeProgress
Rows of a network directory read since its last batch.
HomeCloudKinds
Cloud directories that peeking found to be partitioned or Parquet datasets.
Fields
HomeProbeCancelled
A cloud listing stopped because its place was left; it is listed again on return.
HomeNarrowed
Names under prefix in a cut-short cloud directory, asked for by a filter;
None when the listing failed or was stopped.
HomeProbeFailed
A cloud listing was refused, with the service’s reason.
Followed(News)
A followed file’s watcher found more rows, or that the file went.
Exit
Crash(String)
Applied(Applied)
A dialog or prompt answered: what it asks of the app. See Applied.
Collect
Update
Reset
Resize(u16, u16)
Scroll(Scroll)
A scroll deferred one frame, so the spinner shows while its rows are read.
AnalysisCompute(AnalysisTool)
Run an analysis tool off the UI thread; deferred so its progress shows first.
BackgroundQualitySampleKept
The sample a stopped Data Quality run had read, kept for the next run.
Fields
kept: KeptQualitySampleBackgroundQualityCopyKept
A full scan’s local copy of a remote dataset, kept for that dataset. None
when the copy did not read as the source.
BackgroundLenReady
The exact row count for the current LazyFrame, applied only if
len_generation still matches. Runs alongside the first paint, never
blocking it.
Fields
BackgroundLenFailed
The row count failed: the total stays unknown. Scrolling does not count again; End does.
FramePainted
A frame was painted. The run loop calls App::frame_painted; a harness
sends this when App::count_waits_for_a_frame.
LookThenOpenDirectory(PathBuf, OpenOptions)
A directory named on the command line: look at it on a worker, then do what
Enter on its row would. An event so the first frame, with a spinner and a
way out, is drawn before a look that can take seconds.
ClassifyThenOpen
Look at a path off the UI thread, then browse into it, report a lake table, or open it. The filesystem calls can hang on a slow mount.
Fields
JobEnded(Ticket)
A background job’s outcome is in its record: app::jobs::Jobs::end takes it.
JobProgress
A report from a background job still running.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for AppEvent
impl !RefUnwindSafe for AppEvent
impl !UnwindSafe for AppEvent
impl Send for AppEvent
impl Sync for AppEvent
impl Unpin for AppEvent
impl UnsafeUnpin for AppEvent
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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 moreSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more