Skip to main content

Msg

Enum Msg 

Source
pub enum Msg {
Show 116 variants OpenWorkspace(usize), CloseWorkspace(usize), AddWorkspace, Freezable(bool), Look, Looked(usize, String, String, Read, Instant), Frozen(String, bool), Thawed(String, bool), OpenTab(usize), CloseTab(usize), CloseTabAnyway(TabKey), TabEnded, MoveTab { from: usize, to: usize, }, NewTab, RenameTab(usize), RenameOpenTab, TabName(String), NameTab, CancelRename, LeaveTerminal, EnterTerminal, Walking(bool), EnterTab, NextTab(bool), GoToTab(usize), Choose(TabKey, Choice), HighlightChoice(usize), ShowAll(HistoryKey), HistoryRead(HistoryKey, u64, Result<Vec<Conversation>, String>), HistorySlow(HistoryKey, u64), HistorySettled(HistoryKey), ManageProfiles, Profiles(Vec<Profile>), ProfileAdded(String, Result<WorkspaceFile, String>), Ready(TabKey, u64, Result<(), LaunchFailure>), BuildImage(TabKey), ImageLine(TabKey, String), ImageBuilt(TabKey, Result<(), Option<String>>), StopBuild(TabKey), BuildLooked(Instant), CancelOpen(TabKey), Woken(TabKey, u64, Result<(), LaunchFailure>, Option<Vec<Conversation>>, Option<String>), Output(TabKey, u64, TerminalEvent), Checked(TabKey, u64, bool), Restart(TabKey), TogglePanel(bool), ResizePanel(u16), ToggleWidget(usize, bool), MoveWidget { from: usize, to: usize, }, ShowWidgets(bool), HighlightWidget(usize), AddWidget(PanelWidget), RemoveWidget(PanelWidget), Files(String, FileManagerMsg), LeaveOut(String, bool), OpenFile(String), EditFile(String), Missing(TabKey, u64), DocumentRead(TabKey, u64, Result<String, DocumentTrouble>), TextRead(TabKey, u64, Result<Taken, LaunchFailure>), Page(TabKey, Option<usize>), Playable(TabKey, u64, Result<PathBuf, LaunchFailure>), Described(TabKey, u64, Quiet, Result<Taken, LaunchFailure>), Silenced, WindowOpened(TabKey, u64, Result<Opening, LaunchFailure>), WindowEnded(TabKey, u64, Option<u32>), SignInWanted(TabKey, u64, Vec<String>), SignInOpened(TabKey, u64, String, Shown), SignInBack(TabKey, u64, u64, Ending), SignInHere(TabKey), RaiseWindow(TabKey), WindowRaised(Result<(), LaunchFailure>), CloseWindow(TabKey), WindowsClosed(Option<LaunchFailure>), SelectContainer(usize), RefreshContainers, ContainersRead(String, Result<Vec<Container>, LaunchFailure>), StopContainer(String), RestartContainer(String), ContainerActed(Result<(), LaunchFailure>), Noted(Noting, Box<Msg>), BackupDue(String, u64), BackedUp { workspace: String, name: String, made: Result<Snapshot, BackupTrouble>, missed: Vec<(Part, BackupTrouble)>, }, NewestBackup(String, Option<i64>), BackupEvery(BackupEvery), SkipWritten(String, Result<Vec<String>, String>), BackupSize(String, u64), BackupAssets(bool), AssetsWritten(String, Result<bool, String>), ShowBackups(Option<String>), BackupsRead(u64, Result<Vec<Entry>, BackupTrouble>), BackupsSlow(u64), BackupsSettled(u64), HighlightBackup(usize), ChooseBackup(usize), BackupsOf(usize), RestoreBackup(SnapshotId), StopAndRestore(SnapshotId), KeepBackup, CloseBackups, Bridge(String, u64, Option<Call>), Allow { from: TabKey, to: TabKey, allow: bool, }, StillAsking { from: TabKey, to: TabKey, }, Letters(TabKey, Letters), Deliver, Return(TabKey), Turn(Instant), Reported(RelayEvent), Silence(String, u64), Asked(HarnessKind, Asks, Box<Msg>), Unapproved(String, Box<Msg>), Unbridged(HarnessKind, Unregistered, Box<Msg>), Unguided(HarnessKind, Unguided, Box<Msg>), Behind(String, String, Box<Msg>), OpenAdmin(String), Restored { workspace: String, name: String, of: BackupOf, file: Option<String>, done: Result<Brought, BackupTrouble>, },
}
Expand description

Everything that can happen on the workspace screen.

Variants§

§

OpenWorkspace(usize)

A workspace of the rail was opened.

§

CloseWorkspace(usize)

A workspace was closed from the rail, with every tab in it.

§

AddWorkspace

The list of workspaces was asked for, to open another one beside these. The screen itself cannot go there; the application that holds both answers this message.

§

Freezable(bool)

Whether this machine can freeze a container at all was asked, and this is the answer: only rootless podman with swap can, and nothing else about freezing happens without it.

§

Look

It is time to look at the open workspaces and see whether a profile’s container has gone quiet. Nothing is timed at all while freezing is off or the machine cannot do it.

§

Looked(usize, String, String, Read, Instant)

One profile’s container was read for a look: the workspace of the rail it belongs to, by its place, and the profile by name, so a reading is matched to the profile it was about even if the store was read again while the reading was in flight. With the CPU the container had used when the reading was taken and the command line of every process in it; either may be missing, and a missing one is not a yes.

§

Frozen(String, bool)

A profile’s container was frozen, and this is whether it is: a freeze the engine or the kernel refused leaves the container exactly as it was and says nothing to the person.

§

Thawed(String, bool)

A container QCode had frozen was woken, and this is whether it is awake. One that is still frozen stays frozen, and the next thing that needs it asks the engine again.

§

OpenTab(usize)

A tab was opened.

§

CloseTab(usize)

A tab was closed.

§

CloseTabAnyway(TabKey)

The person confirmed closing the tab TabKey, which still held messages from other tabs or an agent that was still running.

§

TabEnded

What a closed tab had started inside its container was ended.

§

MoveTab

A tab was dragged to another place.

Fields

§from: usize

Where it was.

§to: usize

Where it lands.

§

NewTab

A blank tab was asked for, to choose in it what it opens.

§

RenameTab(usize)

The person asked to name the tab at this place, from its menu on the strip.

§

RenameOpenTab

The person asked to name the open tab, with its key.

§

TabName(String)

The name being given to a tab was edited.

§

NameTab

The name being given to a tab was kept.

§

CancelRename

Naming a tab was given up; its name stays as it was.

§

LeaveTerminal

The keyboard was asked out of the harness, onto the tab strip.

§

EnterTerminal

The keyboard was asked back into the open tab’s harness, from wherever it was.

§

Walking(bool)

A key on the tab strip or the rail is being handled, or with false has been: a switch it makes in between leaves the keyboard walking there.

§

EnterTab

The keyboard was asked into the open tab, from the strip or the rail.

§

NextTab(bool)

The next tab was asked for, or with false the one before, going round at the ends.

§

GoToTab(usize)

The tab at this place on the strip was asked for, counted from 0.

§

Choose(TabKey, Choice)

A row of a blank tab’s page was chosen: the blank tab of this key turns into it.

§

HighlightChoice(usize)

The keyboard moved to another row of a blank tab’s page.

§

ShowAll(HistoryKey)

Every conversation of a profile was asked for on a blank tab’s page, not only the newest.

§

HistoryRead(HistoryKey, u64, Result<Vec<Conversation>, String>)

A reading of a profile’s conversations answered: the reading’s number, and the conversations newest first or why they could not be read.

§

HistorySlow(HistoryKey, u64)

A reading of a profile’s conversations, by its number, has run long enough to be noticed.

§

HistorySettled(HistoryKey)

The indicator of a reading has been on screen long enough to be read.

§

ManageProfiles

A new profile was asked for, from the blank tab’s “New profile” row: the application opens the profiles screen with its wizard already open. The screen itself cannot go there; the application that holds both answers this message.

§

Profiles(Vec<Profile>)

The profiles of the store were read again, after the person may have changed them.

§

ProfileAdded(String, Result<WorkspaceFile, String>)

A profile was recorded in a workspace’s workspace.qcode, or could not be.

§

Ready(TabKey, u64, Result<(), LaunchFailure>)

The container of a tab is up, or the engine refused.

§

BuildImage(TabKey)

Build the image of the profile of this tab, which the engine does not have.

§

ImageLine(TabKey, String)

A line the build of a tab’s image said.

§

ImageBuilt(TabKey, Result<(), Option<String>>)

The build of a tab’s image ended: done, or what went wrong in the engine’s words, or None when the person stopped it.

§

StopBuild(TabKey)

Stop building a tab’s image.

§

BuildLooked(Instant)

The moment a tab whose image is being built was looked at, which is what says whether its log has gone quiet for long enough to be stuck.

§

CancelOpen(TabKey)

Do not open this tab after all: its image is missing and the person would rather not build it now.

§

Woken(TabKey, u64, Result<(), LaunchFailure>, Option<Vec<Conversation>>, Option<String>)

The container of a new-chat tab brought back from the last session is up, or the engine refused; with the profile’s conversations when they could be read, to find the one the tab was showing.

§

Output(TabKey, u64, TerminalEvent)

A tab’s session printed something or ended.

§

Checked(TabKey, u64, bool)

Whether the container of a tab whose session ended is still running.

§

Restart(TabKey)

A tab was asked to start again.

§

TogglePanel(bool)

The widget panel was opened or closed.

§

ResizePanel(u16)

The widget panel was dragged to another width.

§

ToggleWidget(usize, bool)

A widget of the panel was opened or closed.

§

MoveWidget

A widget of the panel was dragged to another place.

Fields

§from: usize

Where it was.

§to: usize

Where it lands.

§

ShowWidgets(bool)

The chooser of widgets the panel does not carry was shown or dismissed.

§

HighlightWidget(usize)

The keyboard moved to another row of the chooser of widgets.

§

AddWidget(PanelWidget)

A widget was added to the panel.

§

RemoveWidget(PanelWidget)

A widget was taken off the panel.

§

Files(String, FileManagerMsg)

Something happened in the file manager of the workspace of this id: a click, a key, a folder read, an operation done or a change another program made on disk.

§

LeaveOut(String, bool)

The entry of this key, with the rest of the selection when it is part of it, was asked to be left out of the workspace’s backup, or taken into it again when false.

§

OpenFile(String)

A file of the file tree was opened: Enter or a click on it.

§

EditFile(String)

A file was asked for in the editor, from the Markdown tab that shows it.

§

Missing(TabKey, u64)

The file the tab of this key opens is not in the workspace any more.

§

DocumentRead(TabKey, u64, Result<String, DocumentTrouble>)

The document a Markdown tab shows was read, or could not be.

§

TextRead(TabKey, u64, Result<Taken, LaunchFailure>)

The text of the file a tab shows was taken out in the container, or could not be.

§

Page(TabKey, Option<usize>)

A page of the PDF the tab of this key shows was asked for as a picture, counted from 1, or with None its text again.

§

Playable(TabKey, u64, Result<PathBuf, LaunchFailure>)

The sound of a tab can be played through the sound server’s socket at this path, or the base image it plays in could not be made.

§

Described(TabKey, u64, Quiet, Result<Taken, LaunchFailure>)

The details of the sound of a tab were read, or could not be, and why they are shown rather than the sound played.

§

Silenced

The containers of sound tabs that were closed while playing were taken away.

§

WindowOpened(TabKey, u64, Result<Opening, LaunchFailure>)

The window of a tab is open, or it waits to be asked, or the engine refused.

§

WindowEnded(TabKey, u64, Option<u32>)

The window of a tab closed, whoever closed it, with the exit code the engine reported.

§

SignInWanted(TabKey, u64, Vec<String>)

The window of this tab, in this run, asked for these web addresses to be opened.

§

SignInOpened(TabKey, u64, String, Shown)

The opening of that address answered, saying where it was shown.

§

SignInBack(TabKey, u64, u64, Ending)

The listening for the way back of a sign-in, the one of that id, ended.

§

SignInHere(TabKey)

The person asked for the page of the sign-in in the window inside the container instead.

§

RaiseWindow(TabKey)

The open window of a tab was asked to show itself.

§

WindowRaised(Result<(), LaunchFailure>)

That asking finished; a refusal is worth saying, because nothing else would show it.

§

CloseWindow(TabKey)

The window of a tab was asked to close.

§

WindowsClosed(Option<LaunchFailure>)

The containers of windows that were closed have been taken away, or one of them would not go and this is the engine’s word on it.

§

SelectContainer(usize)

A row of the container widget was selected.

§

RefreshContainers

The container widget was asked for the engine’s current answer.

§

ContainersRead(String, Result<Vec<Container>, LaunchFailure>)

The containers of a workspace came back from the engine.

§

StopContainer(String)

A container was asked to stop.

§

RestartContainer(String)

A container was asked to stop and start again.

§

ContainerActed(Result<(), LaunchFailure>)

An engine command on a container finished.

§

Noted(Noting, Box<Msg>)

A container QCode started could not be noted cleanly in the list of the containers it started; the message that came with the start follows.

§

BackupDue(String, u64)

It is time to back a workspace up: the workspace’s id and the number of the timer that went off.

§

BackedUp

A backup of a workspace finished.

Fields

§workspace: String

The workspace’s id.

§name: String

Its name, to say a failure by after the workspace has left the rail.

§made: Result<Snapshot, BackupTrouble>

What came of the workspace’s own snapshot.

§missed: Vec<(Part, BackupTrouble)>

The other parts of the round that could not be backed up, and why.

§

NewestBackup(String, Option<i64>)

The newest backup of a workspace was asked after: the workspace’s id and when it was made, or None when there is none or the backup could not be asked.

§

BackupEvery(BackupEvery)

How often the open workspaces are backed up was changed.

§

SkipWritten(String, Result<Vec<String>, String>)

What a workspace’s backup leaves out was written into its workspace.qcode: the workspace’s id, and the list as the file now holds it or why it could not be written.

§

BackupSize(String, u64)

How much a workspace’s Backup/ holds was read: the workspace’s id and the bytes.

§

BackupAssets(bool)

The backup of the open workspace was asked to take Assets/ too, or no longer to.

§

AssetsWritten(String, Result<bool, String>)

Whether a workspace’s backup takes its assets was written into its workspace.qcode: the workspace’s id, and the choice as the file now holds it or why it could not be written.

§

ShowBackups(Option<String>)

The list of the open workspace’s backups was asked for, or of the earlier versions of the file of this key.

§

BackupsRead(u64, Result<Vec<Entry>, BackupTrouble>)

The list of backups was read: the number of the reading, and the backups newest first or why they could not be read.

§

BackupsSlow(u64)

A reading of the list of backups, by its number, has run long enough to be noticed.

§

BackupsSettled(u64)

The indicator of a reading of the list has been on screen long enough to be read.

§

HighlightBackup(usize)

The keyboard moved to another row of the list of backups.

§

ChooseBackup(usize)

The backup at this row of the list was chosen; the person is asked first.

§

BackupsOf(usize)

The list of backups was made one of what it offers, at this position: the workspace’s own files or a profile’s conversations.

§

RestoreBackup(SnapshotId)

The person said yes to bringing this backup back.

§

StopAndRestore(SnapshotId)

The person said yes to stopping the profile’s container and then bringing this backup of its conversations back.

§

KeepBackup

The person said no to bringing a backup back.

§

CloseBackups

The list of backups was closed.

§

Bridge(String, u64, Option<Call>)

A call came to the bridge of the workspace of this id, on the listener of this number, or the listener was closed.

§

Allow

The person answered whether the agent of one tab may send messages to another’s.

Fields

§from: TabKey

The sending tab.

§to: TabKey

The receiving tab.

§allow: bool

Whether it may.

§

StillAsking

The question about one tab sending to another has waited long enough that the senders are told their messages wait.

Fields

§from: TabKey

The sending tab.

§to: TabKey

The receiving tab.

§

Letters(TabKey, Letters)

Something was done with the messages waiting in a tab.

§

Deliver

Time to look again at the tabs that still hold messages for their agents.

§

Return(TabKey)

Time to look at the Return this tab owes a message it has already taken.

§

Turn(Instant)

Time to look at the tabs again and mark the ones still working, as of this moment.

§

Reported(RelayEvent)

The relay of an open workspace reported something. A report is a closure on the relay’s own thread, so what it found arrives as a message like any other and is said in this update.

§

Silence(String, u64)

The line under a tab about a fall back has been said for its ten seconds: the token of the tab it was under, and which fall back it was, so a line that came after it stays.

§

Asked(HarnessKind, Asks, Box<Msg>)

The settings that keep a harness from asking could not be merged into the home of a tab whose container came up; the message that came with the start follows.

§

Unapproved(String, Box<Msg>)

The agent of a window whose home came up could not be told what it may do without asking; the message that came with the open follows.

§

Unbridged(HarnessKind, Unregistered, Box<Msg>)

The bridge could not be registered in the settings of a harness whose container came up; the message that came with the start follows.

§

Unguided(HarnessKind, Unguided, Box<Msg>)

The instruction files of a QCode high profile whose container came up could not be brought up to date in the workspace; the message that came with the start follows.

§

Behind(String, String, Box<Msg>)

The profile’s image was rebuilt under a workspace that installed things of its own as the administrator, and running this command again on the new image failed: the workspace stays on the image it had. The profile’s name, the command, and the message that came with the start.

§

OpenAdmin(String)

“As administrator” was asked for in the container of the profile of this name.

§

Restored

Bringing a backup back finished.

Fields

§workspace: String

The workspace’s id.

§name: String

Its name, to say what came back by.

§of: BackupOf

What was brought back.

§file: Option<String>

The file that was brought back, or None for all of it.

§done: Result<Brought, BackupTrouble>

What came of it.

Trait Implementations§

Source§

impl Clone for Msg

Source§

fn clone(&self) -> Self

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 Debug for Msg

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Msg

§

impl RefUnwindSafe for Msg

§

impl Send for Msg

§

impl Sync for Msg

§

impl Unpin for Msg

§

impl UnsafeUnpin for Msg

§

impl UnwindSafe for Msg

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
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
Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert 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>

Convert 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)

Convert &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)

Convert &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
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync> ⓘ

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
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> 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 = !

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

fn try_from(value: U) -> Result<T, !>

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.