Documentation
¶
Index ¶
- Variables
- type AboutSection
- type AppearanceSection
- type AudioSection
- type CoreSection
- type InputSection
- func (s *InputSection) Build(focus types.FocusManager) *widget.Container
- func (s *InputSection) FirstNavZone() string
- func (s *InputSection) HandleBack() bool
- func (s *InputSection) IsCapturing() bool
- func (s *InputSection) NavZones() []string
- func (s *InputSection) SetConfig(config *storage.Config)
- func (s *InputSection) SystemInfo() coreif.SystemInfo
- func (s *InputSection) Update()
- type LibrarySection
- type RetroAchievementsSection
- type RewindSection
- type VideoSection
Constants ¶
This section is empty.
Variables ¶
var ( KeyToNameFunc func(ebiten.Key) (string, bool) PadToNameFunc func(ebiten.StandardGamepadButton) (string, bool) IsReservedFunc func(ebiten.Key) bool ResolveKeyFunc func(string, string, map[string]string) string ResolvePadFunc func(string, string, map[string]string) string )
keyToNameFunc and related are injected from the standalone package to avoid import cycles. They must be set before InputSection is used.
Functions ¶
This section is empty.
Types ¶
type AboutSection ¶ added in v0.4.3
type AboutSection struct {
// contains filtered or unexported fields
}
AboutSection displays the application icon, name, and version.
func NewAboutSection ¶ added in v0.4.3
func NewAboutSection(name, version string, iconPNG []byte) *AboutSection
NewAboutSection creates the About section. iconPNG may be nil, in which case only the name and version are shown.
func (*AboutSection) Build ¶ added in v0.4.3
func (a *AboutSection) Build(focus types.FocusManager) *widget.Container
Build creates the About section UI. The focus manager is unused because the section has no interactive widgets.
type AppearanceSection ¶
type AppearanceSection struct {
// contains filtered or unexported fields
}
AppearanceSection manages theme settings
func NewAppearanceSection ¶
func NewAppearanceSection(callback types.ScreenCallback, config *storage.Config) *AppearanceSection
NewAppearanceSection creates a new appearance section
func (*AppearanceSection) Build ¶
func (a *AppearanceSection) Build(focus types.FocusManager) *widget.Container
Build creates the appearance section UI
func (*AppearanceSection) SetConfig ¶
func (a *AppearanceSection) SetConfig(config *storage.Config)
SetConfig updates the config reference
type AudioSection ¶
type AudioSection struct {
// contains filtered or unexported fields
}
AudioSection manages audio settings
func NewAudioSection ¶
func NewAudioSection(callback types.ScreenCallback, config *storage.Config, systemInfo coreif.SystemInfo) *AudioSection
NewAudioSection creates a new audio section
func (*AudioSection) Build ¶
func (a *AudioSection) Build(focus types.FocusManager) *widget.Container
Build creates the audio section UI
func (*AudioSection) SetConfig ¶
func (a *AudioSection) SetConfig(config *storage.Config)
SetConfig updates the config reference
func (*AudioSection) SystemInfo ¶
func (a *AudioSection) SystemInfo() coreif.SystemInfo
SystemInfo returns the system info for navigation setup
type CoreSection ¶
type CoreSection struct {
// contains filtered or unexported fields
}
CoreSection manages core-category option settings
func NewCoreSection ¶
func NewCoreSection(callback types.ScreenCallback, config *storage.Config, systemInfo coreif.SystemInfo) *CoreSection
NewCoreSection creates a new core options section
func (*CoreSection) Build ¶
func (c *CoreSection) Build(focus types.FocusManager) *widget.Container
Build creates the core options section UI
func (*CoreSection) HasBIOS ¶
func (c *CoreSection) HasBIOS() bool
HasBIOS returns true if any BIOS options exist
func (*CoreSection) HasCoreOpts ¶
func (c *CoreSection) HasCoreOpts() bool
HasCoreOpts returns true if any core-category options exist
func (*CoreSection) SetConfig ¶
func (c *CoreSection) SetConfig(config *storage.Config)
SetConfig updates the config reference
type InputSection ¶
type InputSection struct {
// contains filtered or unexported fields
}
InputSection manages input binding settings
func NewInputSection ¶
func NewInputSection(callback types.ScreenCallback, config *storage.Config, systemInfo coreif.SystemInfo) *InputSection
NewInputSection creates a new input section
func (*InputSection) Build ¶
func (s *InputSection) Build(focus types.FocusManager) *widget.Container
Build creates the input section UI for the current view
func (*InputSection) FirstNavZone ¶ added in v0.5.0
func (s *InputSection) FirstNavZone() string
FirstNavZone returns the first content zone for sidebar navigation in the current view.
func (*InputSection) HandleBack ¶ added in v0.5.0
func (s *InputSection) HandleBack() bool
HandleBack handles back navigation within the section. Returns true when the back action was consumed (capture cancelled or sub-view exited).
func (*InputSection) IsCapturing ¶
func (s *InputSection) IsCapturing() bool
IsCapturing returns true when the section is waiting for a key/button press
func (*InputSection) NavZones ¶ added in v0.5.0
func (s *InputSection) NavZones() []string
NavZones returns all content zones for the current view, for wiring left-exit transitions to the sidebar.
func (*InputSection) SetConfig ¶
func (s *InputSection) SetConfig(config *storage.Config)
SetConfig updates the config reference
func (*InputSection) SystemInfo ¶
func (s *InputSection) SystemInfo() coreif.SystemInfo
SystemInfo returns the system info for navigation setup
func (*InputSection) Update ¶
func (s *InputSection) Update()
Update handles per-frame input capture and text input shortcuts
type LibrarySection ¶
type LibrarySection struct {
// contains filtered or unexported fields
}
LibrarySection manages ROM folder settings
func NewLibrarySection ¶
func NewLibrarySection(callback types.ScreenCallback, library *storage.Library) *LibrarySection
NewLibrarySection creates a new library section
func (*LibrarySection) Build ¶
func (l *LibrarySection) Build(focus types.FocusManager) *widget.Container
Build creates the library section UI
func (*LibrarySection) ClearPendingScan ¶
func (l *LibrarySection) ClearPendingScan()
ClearPendingScan clears the pending scan flag
func (*LibrarySection) HasPendingScan ¶
func (l *LibrarySection) HasPendingScan() bool
HasPendingScan returns true if a scan should be triggered
func (*LibrarySection) SetLibrary ¶
func (l *LibrarySection) SetLibrary(library *storage.Library)
SetLibrary updates the library reference
type RetroAchievementsSection ¶
type RetroAchievementsSection struct {
// contains filtered or unexported fields
}
RetroAchievementsSection manages RetroAchievements settings
func NewRetroAchievementsSection ¶
func NewRetroAchievementsSection( callback types.ScreenCallback, config *storage.Config, achievementMgr *achievements.Manager, ) *RetroAchievementsSection
NewRetroAchievementsSection creates a new RetroAchievements section
func (*RetroAchievementsSection) Build ¶
func (r *RetroAchievementsSection) Build(focus types.FocusManager) *widget.Container
Build creates the RetroAchievements section UI
func (*RetroAchievementsSection) SetAchievements ¶
func (r *RetroAchievementsSection) SetAchievements(mgr *achievements.Manager)
SetAchievements updates the achievement manager reference
func (*RetroAchievementsSection) SetConfig ¶
func (r *RetroAchievementsSection) SetConfig(config *storage.Config)
SetConfig updates the config reference
func (*RetroAchievementsSection) Update ¶
func (r *RetroAchievementsSection) Update()
Update handles keyboard shortcuts for text inputs (Ctrl+A, Ctrl+V, Ctrl+C)
type RewindSection ¶
type RewindSection struct {
// contains filtered or unexported fields
}
RewindSection manages rewind settings
func NewRewindSection ¶
func NewRewindSection(callback types.ScreenCallback, config *storage.Config, serializeSize int) *RewindSection
NewRewindSection creates a new rewind section. serializeSize is the bytes per save state from SystemInfo.SerializeSize.
func (*RewindSection) Build ¶
func (r *RewindSection) Build(focus types.FocusManager) *widget.Container
Build creates the rewind section UI
func (*RewindSection) SetConfig ¶
func (r *RewindSection) SetConfig(config *storage.Config)
SetConfig updates the config reference
type VideoSection ¶
type VideoSection struct {
// contains filtered or unexported fields
}
VideoSection manages video settings including shaders
func NewVideoSection ¶
func NewVideoSection(callback types.ScreenCallback, config *storage.Config, systemInfo coreif.SystemInfo) *VideoSection
NewVideoSection creates a new video section
func (*VideoSection) Build ¶
func (v *VideoSection) Build(focus types.FocusManager) *widget.Container
Build creates the video section UI
func (*VideoSection) SetConfig ¶
func (v *VideoSection) SetConfig(config *storage.Config)
SetConfig updates the config reference
func (*VideoSection) SystemInfo ¶
func (v *VideoSection) SystemInfo() coreif.SystemInfo
SystemInfo returns the system info for navigation setup