Namespace McServerLauncher.Views
Namespaces
Classes
- AboutView
The About screen: version, updates, repository links, credits and the legal notices.
- ColorChooser
A colour setting, edited by code or by eye: a swatch that opens the palette and the spectrum, and the
#RRGGBBbox beside it.
- DeleteServerDialog
Asks what "delete" means for this server: only the entry on the list, its files on disk as well, and whether to take its Playit tunnel with it.
- LogBatcher
Buffered progress logger for dialog TextBoxes (EFI-6): the Forge installer prints thousands of lines, and appending each one directly (Text += line) froze the UI. Lines are buffered and flushed a few times per second, keeping only the most recent McServerLauncher.Views.LogBatcher.MaxLines. Extracted from the old create dialog and the old loader dialog, which kept two identical copies of this logic. A view that comes and goes stops it while it is off screen and starts it again when it is back.
- MainWindow
The main window: the server list, the selected server's console, its stats and its players.
- MessageBox
Small cross-platform message box helper (Avalonia has no built-in one). Provides an information/warning dialog and a yes/no confirmation, both modal and localized.
- MissingDependenciesDialog
Shown before starting a server whose mods or plugins are waiting on something that is not there.
- MissingDependencyRow
One missing thing, shaped for the list in the dialog.
- ModDetailsView
The details page of a store item, bound to ModDetailsViewModel.
- NewServerResult
What the new-server panel produced: the server, and what to do with it next.
- NewServerView
Makes a server from nothing — type, version, port and RAM in, a running server out — or takes over a folder that already holds one, inside the window instead of a dialog.
- PerformanceSolutionsView
The page that replaces a server's tabs with ways to make it run lighter. See PerformanceSolutionsViewModel.
- PlayerDetailsView
A player's profile in the Players tab, bound to PlayerDetailsViewModel.
- PlayersTabView
The Players tab: who is connected, everyone the server has ever seen, and the op, whitelist and ban lists. A player's profile replaces all of it while it is open.
- PlayitApiKeyDialog
Connects the user's Playit account. Primary path (partner configured): the third-party setup-code flow — the user gets a setup code from playit.gg (opened only on a click), pastes it, and the dialog exchanges it for a per-user self-managed agent (secret key + id) via PlayitPartnerService. Fallback (partner NOT configured, e.g. dev builds): the legacy behavior of pasting a Playit write key. Which one ran is signalled by IsSetupResult.
- PlayitConnection
Shared "connect your Playit account" flow, used both from the per-server tunnel actions and from the Settings dialog. Encapsulates the setup-code dialog, persisting the resulting agent secret (encrypted) and wiring PlayitApiService, so the user never touches keys or files.
- PlayitConnection.Source
One credential that might open the account, and where it came from.
- ServerBackupsView
The backups panel of a server, bound to ServerBackupsViewModel.
- ServerCardView
The server as the game's server list draws it: icon, name, loader badge and version, the MOTD in colour, the player count and the signal bars.
- ServerModsView
The Mods (or Plugins) tab of a server, bound to ServerModsViewModel: the store on one side, what is installed on the other.
- ServerSettingsView
A server's settings, in the window: every page of them behind one index, saved together from a bar that only shows while something is unsaved.
- ServerTypePicker
Picking the server type as a grid of cards rather than a drop-down of bare names.
- SettingsView
The settings screen. Everything it does is in SettingsViewModel.
- ToastService
Small toast notifications drawn as borderless always-on-top windows in the bottom-right corner of the screen (pure Avalonia, no external dependencies, works even while the main window is hidden in the tray). They never steal focus, close by themselves after a few seconds — a bar along the bottom shows how many are left, and the pointer resting on a card stops the clock — and clicking one restores the main window. Used for "player joined" / "server crashed" style events.
- TunnelsView
The tunnels screen. Markup only: everything it does is in TunnelsViewModel.
- WhatsNewDialog
Shows what's-new notes after an update, accumulating every version the user skipped.
- WholeNumberBoxes
What every Avalonia.Controls.NumericUpDown in the app is: a box for a whole number, typed in any language, that never ends up empty or showing something it did not save.
Enums
- MissingDependenciesChoice
What the user decided about a server whose content is missing something.
- PlayitConnection.SourceKind
Where a way of reaching the account came from.