π¨ GeneralUpdate Update UI Generation β Full State Coverage
Auto-detects the developer's UI framework and generates a complete update window with real GeneralUpdate.Core event bindings.
β οΈ Targeting NuGet v10.4.6 stable.
RealDownloadService.csis an abstract bridge template requiring manual adaptation.
UI State Machine (Covered by All Templates)β
βββββββββββββββ
β Idle β β Initial state
ββββββββ¬βββββββ
β Auto/manual trigger
βΌ
βββββββββββββββ
βββββββ Checking β β "Checking for updates..."
β ββββββββ¬βββββββ
β β
β ββββββββ΄βββββββ
β βΌ βΌ
β ββββββββββ ββββββββββββ
β β Latest β β Found! β β Show version/size
β ββββββββββ ββββββ¬ββββββ
β β User clicks "Update"
β βΌ
β ββββββββββββββββ
β βββββββ Downloading β β Progress bar/speed/time
β β ββββββββ¬ββββββββ
β β β
β β ββββββββ΄βββββββ
β β βΌ βΌ
β β ββββββββββ ββββββββββββ
β β β Paused β β Error β β Show error + "Retry"
β β βββββ¬βββββ ββββββ¬ββββββ
β β β Resume β Retry
β β βΌ βΌ
β β ββββββββββββββββ
β β β Downloading β
β β ββββββββββββββββ
β β
β β ββββββββββββββββ
β βββββββ Applying β β "Installing update..."
β ββββββββ¬ββββββββ
β β
β ββββββββ΄βββββββ
β βΌ βΌ
β βββββββββββ ββββββββββββ
β β Success β β Failed β
β ββββββ¬βββββ ββββββββββββ
β β
β βΌ
β ββββββββββββ
β β Restart β β Restart app
β ββββββββββββ
β
βββ Back to Idle
Core Bridge: RealDownloadServiceβ
All UI templates share this bridge class, mapping GeneralUpdate.Core events to the IDownloadService interface.
Bridge Logic (v10.4.6 stable)β
// GeneralUpdate.Core Event β DownloadStatus State Machine Mapping:
GeneralUpdateBootstrap.AddListenerMultiDownloadStatistics
β Downloading (update ProgressPercentage/Speed/Remaining)
GeneralUpdateBootstrap.AddListenerMultiDownloadCompleted
β Processing files (extraction/verification)
GeneralUpdateBootstrap.AddListenerMultiAllDownloadCompleted
β Applying β Success
GeneralUpdateBootstrap.AddListenerMultiDownloadError
β DownloadError (after N automatic retries)
GeneralUpdateBootstrap.AddListenerException
β Failed (non-fatal exceptions don't change state)
UI Framework Template Listβ
| Template File | Framework | Features |
|---|---|---|
SemiUrsaClientView.axaml + .cs | Avalonia + SemiUrsa | Full state machine, dark toggle, animations |
SemiUrsaUpgradeView.axaml + .cs | Avalonia + SemiUrsa (Upgrade) | Waiting UI |
LayUIStyle.xaml + .cs | WPF + LayUI.Wpf | Glass effect, progress bar |
WPFDevelopersStyle.xaml + .cs | WPF + WPFDevelopers | Circular progress, breathing light animation |
AntdUIStyle.cs | WinForms + AntdUI | Dark theme, wave progress button |
MauiUpdatePage.xaml + .cs | MAUI | Dark mode, AppThemeBinding |
DownloadViewModels.cs | All frameworks shared | MVVM ViewModel |
RealDownloadService.cs | All frameworks shared | Core bridge |