Controller Family List Screen - cressie176/Load64 GitHub Wiki

Primary Purpose

Manage controller family templates used as a seed configuration for physical devices.

Secondary Purpose

  • Navigate to a family to manage its control mappings
  • Rename or delete a family

The Controller Families screen is reached from the Admin Hub.

Main Screen Design

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  Controller Families                                          [Add]  [Back]  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  LIST                                                                        │
│  ┌────────────────────────────────────────────────────────────────────────┐  │
│  │ > Logitech                                                             │  │
│  │   Microsoft Xbox                                                       │  │
│  │   Sony DualShock                                                       │  │
│  └────────────────────────────────────────────────────────────────────────┘  │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘

If no families exist:

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  Controller Families                                          [Add]  [Back]  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  Select Add to create a controller family.                                   │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘

TOP BAR

Focusable: [Add] and [Back] CTAs only
Interactive: [Add] and [Back] CTAs only
Purpose: Identify the current screen and provide access to create families

[Add] CTA

Navigates to the Controller Family Edit screen with an empty input.

[Back] CTA

Returns to the previous screen.

LIST

Type: Single-selection vertical list
Focusable: Yes (primary focus region)
Interactive: Yes
Order: Alphabetically by family name
Purpose: Browse and select controller families for editing

Selecting a family navigates to the Control List screen for that family.

Context Menu

Action Behaviour
Rename Navigates to the Controller Family Edit screen pre-populated with the current name
Delete Opens the Delete confirmation overlay

BOTTOM BAR

Focusable: No
Interactive: No
Purpose: Display confirmation messages after creating, renaming, or deleting a controller family

After creating a family:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <Family Name> created                                                       │
└──────────────────────────────────────────────────────────────────────────────┘

After renaming a family:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <Old Family Name> renamed to <New Family Name>                              │
└──────────────────────────────────────────────────────────────────────────────┘

After deleting a family:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <Family Name> deleted                                                       │
└──────────────────────────────────────────────────────────────────────────────┘

Delete Confirmation

Opens when Delete is selected from the context menu for the focused family.

┌──────────────────────────────────────────────────────────────────────────────┐
│                    ┌──────────────────────────────┐                          │
│                    │ Delete <Family Name>?        │                          │
│                    │                              │                          │
│                    │   > Yes                      │                          │
│                    │     No                       │                          │
│                    └──────────────────────────────┘                          │
└──────────────────────────────────────────────────────────────────────────────┘

If the family is referenced by one or more controllers, a warning is shown:

<Family Name> is used by <n> controller(s). Deleting it will remove this association from those controllers.
Option Behaviour
Yes Delete the family and return focus to the nearest remaining family
No Close the overlay and return focus to the list

Deleting a family also permanently deletes all of its control mappings and environment variables.

⚠️ **GitHub.com Fallback** ⚠️