Skip to main content

Module switch

Module switch 

Source
Expand description

The page that follows a change of container engine: what the new engine lacks, what of the old one comes along, and what stays behind.

It opens in two ways and offers the same thing in both. The person chose the other engine in the settings; or QCode started, the saved engine did not answer and the other one did (crate::switch::offer_at_start). In the second case nothing has been switched yet, so the page first asks whether to use the engine that answers; what it lists is the same.

Nothing here happens without a press: every image is built, every home copied and every container removed because the person asked for that one or for all of them. Homes are only ever copied, never moved, and nothing asks to delete a volume at all.

Structs§

Finder
How the page finds an engine: the engine layer’s own search in the application, and a stand-in engine in a test, so the whole page is walked without either engine installed.
Found
What a look found: the two engines, and the survey when the new one answered.
Switch
The page.

Enums§

Home
Where a volume of the old engine stands.
Image
Where a profile’s image stands in the new engine.
Leftover
Where the old engine’s leftover containers stand.
Msg
What happens on the page.
Request
What the page asks of the application.

Functions§

entry
The control the page hands the keyboard to when it opens.
hints
The keys of the page that are not in the keymap.
survey
Finds both engines and asks them what the switch involves, off the render path. The page asks this when it opens, and again when the person asks it to look again: an old engine that did not answer may have been started since, and its homes can then be copied.
update
Applies a message to the page, and says what the application has to do, if anything.
view
Draws the page.