Media Screenshots Selection Screen - cressie176/Load64 GitHub Wiki
Assign images to the Loading, Title, and Gameplay screenshot slots by selecting from candidates or adding new ones.
Reached from the Game Management screen. The left panel shows the currently assigned image for each slot. The highlighted slot is the current assignment target.
┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR │
│ <Game Title> > Media > Screenshots [Back] │
├──────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────┐ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ ░░░░░░░░░░░░░░░ │ │ │ │ │ │ │ │ │
│ │ ░░░ Loading ░░ │ │ │ │ │ │ │ │ │
│ └─────────────────┘ │ │ │ │ │ │ │ │
│ Loading │ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌─────────────────┐ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ │ │
│ └─────────────────┘ │ │ │ │ │ │ │ │
│ Title │ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌─────────────────┐ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ │ │
│ └─────────────────┘ │ └──────────────┘ └──────────────┘ └──────────────┘ │
│ Gameplay │ │
│ │ [Get Media] [Save] [Cancel] │
│ │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR │
└──────────────────────────────────────────────────────────────────────────────┘
░ cells indicate the currently selected (highlighted) slot.
┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR │
│ Import Games > <Title> > Media > Screenshots [Back] │
├──────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────┐ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ ░░░░░░░░░░░░░░░ │ │ │ │ │ │ │ │ │
│ │ ░░░ Loading ░░ │ │ │ │ │ │ │ │ │
│ └─────────────────┘ │ │ │ │ │ │ │ │
│ Loading │ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌─────────────────┐ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ │ │
│ └─────────────────┘ │ │ │ │ │ │ │ │
│ Title │ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌─────────────────┐ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ │ │
│ └─────────────────┘ │ └──────────────┘ └──────────────┘ └──────────────┘ │
│ Gameplay │ │
│ │ [Get Media] [Save] [Cancel] │
│ │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR │
└──────────────────────────────────────────────────────────────────────────────┘
Focusable: [Back] CTA only
Interactive: [Back] CTA only
Purpose: Identify the game and provide a back action
- In standard mode the title is
<Game Title> > Media > Screenshots. - In import mode the title is
Import Games > <Title> > Media > Screenshots. - See Import Candidate screen for the
<Title>derivation rule.
In standard mode, returns to the Game Management screen.
In import mode, returns to the Cover Art screen.
Focusable: Yes (one of two focus regions; see Navigation below)
Interactive: Yes
Purpose: Show the currently assigned images and indicate which slot is the current assignment target
A vertical panel on the left side of the screen, separated from the candidates by a vertical divider. Three slots are stacked top to bottom:
| Slot | Label |
|---|---|
| Loading | Loading |
| Title | Title |
| Gameplay | Gameplay |
Each slot shows the image currently saved for that slot at the same size as the candidate thumbnails. The label appears beneath each slot. If no image is assigned, the slot area is empty.
One slot is always highlighted as the current slot — the assignment target. Assigning a candidate applies it to the current slot. On first entry, the Loading slot is highlighted.
The left panel shows a preview of the current assignment for each slot. When the user assigns a candidate to the current slot (by pressing Enter in the Candidates panel), that slot's image updates immediately to show the assigned candidate. On [Save] all assignments become permanent; on [Cancel] all slot images revert to their previously saved state.
Only available on a slot image (when one is assigned). Opens a menu overlay:
┌──────────────────────────────────────────────────────────────────────────────┐
│ ┌────────────────────────────┐ │
│ │ │ │
│ │ > Delete <Slot> image │ │
│ │ │ │
│ └────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
Where <Slot> is the slot label: Loading, Title, or Gameplay — e.g. Delete Loading image.
| Action | Behaviour |
|---|---|
Delete <Slot> image |
Opens a confirmation overlay before clearing the slot assignment. |
Confirmation overlay:
┌──────────────────────────────────────────────────────────────────────────────┐
│ ┌──────────────────────────────┐ │
│ │ Delete <Slot> image? │ │
│ │ │ │
│ │ > Yes │ │
│ │ No │ │
│ └──────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
Where <Slot> is the slot label: Loading, Title, or Gameplay — e.g. Delete Loading image?.
| Option | Behaviour |
|---|---|
| Yes | Clears the assignment for the slot. The slot area becomes empty. |
| No | Closes the overlay. The slot assignment is unchanged. |
Focusable: Yes (one of two focus regions; see Navigation below)
Interactive: Yes
Purpose: Show candidate images available for assignment to the current slot
A 3-column × 2-row visible grid of thumbnail images to the right of the divider. Candidates are shared across all three slots — the same grid is used regardless of which slot is current.
Candidates are scanned from the media/screenshots/ subfolder of the game's media directory when the screen is displayed, ordered by file creation timestamp (oldest first).
Candidates fill the grid left-to-right, top-to-bottom. The grid always shows exactly 3 rows of 3 cells. Cells without a candidate image are displayed as empty placeholder boxes, indistinguishable in shape from occupied cells. There is no hard cap on the total number of candidates.
The grid scrolls vertically. When the user navigates to the bottom row and presses Down, the grid scrolls one row so the next row becomes visible. Pressing Up from the top row does not scroll — it moves focus out of the grid.
Thumbnails are displayed at the screenshot aspect ratio (1280 × 800). See Media for expected dimensions.
Regardless of the source image dimensions, LoadC64 resizes the selected image to fit the expected slot dimensions on save.
Only available on candidate thumbnails. Opens a menu overlay:
┌──────────────────────────────────────────────────────────────────────────────┐
│ ┌──────────────┐ │
│ │ │ │
│ │ > Remove │ │
│ │ │ │
│ └──────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
| Action | Behaviour |
|---|---|
| Remove | Removes the candidate from the grid. No confirmation required. Focus moves to the next candidate in the grid; if the removed candidate was the last, focus moves to the new last candidate; if the grid is now empty, focus remains in the candidates panel. |
Located in the actions row, left-aligned to the start of the candidates column. Opens a choice overlay:
┌──────────────────────────────────────────────────────────────────────────────┐
│ ┌──────────────────────────────┐ │
│ │ Get media │ │
│ │ │ │
│ │ > From catalogue │ │
│ │ From URL │ │
│ │ From file │ │
│ └──────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
| Option | Behaviour |
|---|---|
| From catalogue | Navigates to the Get from Catalogue screen in the Screenshots flow. |
| From URL | Navigates to the Get from URL screen in the Screenshots context. |
| From file | Navigates to the Get from File screen in the Screenshots context. |
Because some catalogues do not distinguish between loading, title, and gameplay screenshots, all fetched images land in the shared candidates grid. The user visually identifies each image and assigns it to the appropriate slot.
- [Save] commits all current slot assignments. Any slot that had a candidate assigned to it during this session is updated; slots that were not touched are unchanged. Returns to the previous screen.
- [Cancel] discards all assignments and candidate additions made during this session. Returns to the previous screen without changing any slot.
In import mode, [Save] navigates to the Import Controls screen.
Focusable: No
Interactive: No
Purpose: Structural consistency with other screens. No messages are shown on this screen.
Focus regions and Tab order: Slots → Candidates → Actions → TOP BAR → Slots
| Region | Entry focus |
|---|---|
| Slots | Loading (first slot) |
| Candidates | first candidate thumbnail |
| Actions | [Get Media] (leftmost button) |
| TOP BAR | leftmost CTA |
| Input | Behaviour |
|---|---|
| Up / Down | Move highlight to the previous / next slot |
| Enter | Open the context menu for the focused slot (only when the slot has an image assigned) |
| Input | Behaviour |
|---|---|
| Up / Down / Left / Right | Move focus between candidate thumbnails |
| Down (at bottom row) | Scroll the grid down one row, keeping focus on the bottom row |
| Enter | Assign the focused candidate to the current slot |
| Input | Behaviour |
|---|---|
| Left / Right | Move focus between [Get Media], [Save], [Cancel] |
| Enter | Activate the focused action |
Assigning a candidate to a slot does not automatically advance the current slot highlight. The user must move to the next slot manually via the Slots panel.