Documentation
¶
Index ¶
- func NewSelect(options []string, onChanged func(string)) *selectWidget
- type AlbumPage
- func (a *AlbumPage) CreateRenderer() fyne.WidgetRenderer
- func (a *AlbumPage) OnSongChange(track, lastScrobbledIfAny *mediaprovider.Track)
- func (a *AlbumPage) Reload()
- func (s *AlbumPage) Restore() Page
- func (a *AlbumPage) Route() controller.Route
- func (a *AlbumPage) Save() SavedPage
- func (a *AlbumPage) SelectAll()
- func (a *AlbumPage) Tapped(*fyne.PointEvent)
- type AlbumPageHeader
- type AlbumsPage
- type ArtistPage
- func (a *ArtistPage) CreateRenderer() fyne.WidgetRenderer
- func (a *ArtistPage) OnSongChange(track, lastScrobbledIfAny *mediaprovider.Track)
- func (a *ArtistPage) Reload()
- func (s *ArtistPage) Restore() Page
- func (a *ArtistPage) Route() controller.Route
- func (a *ArtistPage) Save() SavedPage
- func (a *ArtistPage) SelectAll()
- func (a *ArtistPage) Tapped(*fyne.PointEvent)
- type ArtistPageHeader
- type ArtistsPage
- type BrowsingPane
- func (b *BrowsingPane) ActivateNavigationButton(num int)
- func (b *BrowsingPane) AddNavigationButton(icon fyne.Resource, action func())
- func (b *BrowsingPane) AddSettingsMenuItem(label string, action func())
- func (b *BrowsingPane) ClearHistory()
- func (b *BrowsingPane) CreateRenderer() fyne.WidgetRenderer
- func (b *BrowsingPane) CurrentPage() controller.Route
- func (b *BrowsingPane) DisableNavigationButtons()
- func (b *BrowsingPane) EnableNavigationButtons()
- func (b *BrowsingPane) GetSearchBarIfAny() fyne.Focusable
- func (b *BrowsingPane) GoBack()
- func (b *BrowsingPane) GoForward()
- func (b *BrowsingPane) GoHome()
- func (b *BrowsingPane) Reload()
- func (b *BrowsingPane) SelectAll()
- func (b *BrowsingPane) SetPage(p Page)
- type CanSelectAll
- type CanShowNowPlaying
- type CanShowPlayTime
- type FavoritesPage
- func (a *FavoritesPage) CreateRenderer() fyne.WidgetRenderer
- func (a *FavoritesPage) OnSearched(query string)
- func (a *FavoritesPage) OnSongChange(song, _ *mediaprovider.Track)
- func (a *FavoritesPage) Reload()
- func (a *FavoritesPage) Route() controller.Route
- func (a *FavoritesPage) Save() SavedPage
- func (a *FavoritesPage) SearchWidget() fyne.Focusable
- func (a *FavoritesPage) SelectAll()
- func (a *FavoritesPage) Tapped(*fyne.PointEvent)
- type GenreList
- type GenreListRow
- type GenrePage
- type GenresPage
- type NavigationHandler
- type NowPlayingPage
- func (a *NowPlayingPage) CreateRenderer() fyne.WidgetRenderer
- func (a *NowPlayingPage) OnPlayTimeUpdate(_, _ float64)
- func (a *NowPlayingPage) OnSongChange(song, lastScrobbledIfAny *mediaprovider.Track)
- func (a *NowPlayingPage) Reload()
- func (s *NowPlayingPage) Restore() Page
- func (a *NowPlayingPage) Route() controller.Route
- func (a *NowPlayingPage) Save() SavedPage
- func (a *NowPlayingPage) SelectAll()
- func (a *NowPlayingPage) Tapped(*fyne.PointEvent)
- type Page
- type PlaylistList
- type PlaylistListRow
- type PlaylistPage
- func (a *PlaylistPage) CreateRenderer() fyne.WidgetRenderer
- func (a *PlaylistPage) OnSongChange(song, lastScrobbledIfAny *mediaprovider.Track)
- func (a *PlaylistPage) Reload()
- func (s *PlaylistPage) Restore() Page
- func (a *PlaylistPage) Route() controller.Route
- func (a *PlaylistPage) Save() SavedPage
- func (a *PlaylistPage) SelectAll()
- func (a *PlaylistPage) Tapped(*fyne.PointEvent)
- type PlaylistPageHeader
- type PlaylistsPage
- type Router
- type SavedPage
- type Searchable
- type TracksPage
- func (t *TracksPage) CreateRenderer() fyne.WidgetRenderer
- func (t *TracksPage) OnSearched(query string)
- func (t *TracksPage) OnSongChange(track, lastScrobbledIfAny *mediaprovider.Track)
- func (t *TracksPage) Reload()
- func (s *TracksPage) Restore() Page
- func (t *TracksPage) Route() controller.Route
- func (t *TracksPage) Save() SavedPage
- func (t *TracksPage) SearchWidget() fyne.Focusable
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AlbumPage ¶
type AlbumPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewAlbumPage ¶
func NewAlbumPage( albumID string, cfg *backend.AlbumPageConfig, pool *util.WidgetPool, pm *backend.PlaybackManager, mp mediaprovider.MediaProvider, im *backend.ImageManager, contr *controller.Controller, ) *AlbumPage
func (*AlbumPage) CreateRenderer ¶
func (a *AlbumPage) CreateRenderer() fyne.WidgetRenderer
func (*AlbumPage) OnSongChange ¶
func (a *AlbumPage) OnSongChange(track, lastScrobbledIfAny *mediaprovider.Track)
func (*AlbumPage) Route ¶
func (a *AlbumPage) Route() controller.Route
type AlbumPageHeader ¶
type AlbumPageHeader struct { widget.BaseWidget // contains filtered or unexported fields }
func NewAlbumPageHeader ¶
func NewAlbumPageHeader(page *AlbumPage) *AlbumPageHeader
func (*AlbumPageHeader) Clear ¶ added in v0.5.0
func (a *AlbumPageHeader) Clear()
func (*AlbumPageHeader) CreateRenderer ¶
func (a *AlbumPageHeader) CreateRenderer() fyne.WidgetRenderer
func (*AlbumPageHeader) Update ¶
func (a *AlbumPageHeader) Update(album *mediaprovider.AlbumWithTracks, im *backend.ImageManager)
type AlbumsPage ¶
type AlbumsPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewAlbumsPage ¶
func NewAlbumsPage(cfg *backend.AlbumsPageConfig, pool *util.WidgetPool, contr *controller.Controller, pm *backend.PlaybackManager, mp mediaprovider.MediaProvider, im *backend.ImageManager) *AlbumsPage
func (*AlbumsPage) CreateRenderer ¶
func (a *AlbumsPage) CreateRenderer() fyne.WidgetRenderer
func (*AlbumsPage) OnSearched ¶
func (a *AlbumsPage) OnSearched(query string)
func (*AlbumsPage) Reload ¶
func (a *AlbumsPage) Reload()
func (*AlbumsPage) Route ¶
func (a *AlbumsPage) Route() controller.Route
func (*AlbumsPage) Save ¶
func (a *AlbumsPage) Save() SavedPage
func (*AlbumsPage) SearchWidget ¶
func (a *AlbumsPage) SearchWidget() fyne.Focusable
type ArtistPage ¶
type ArtistPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewArtistPage ¶
func NewArtistPage(artistID string, cfg *backend.ArtistPageConfig, pool *util.WidgetPool, pm *backend.PlaybackManager, mp mediaprovider.MediaProvider, im *backend.ImageManager, contr *controller.Controller) *ArtistPage
func (*ArtistPage) CreateRenderer ¶
func (a *ArtistPage) CreateRenderer() fyne.WidgetRenderer
func (*ArtistPage) OnSongChange ¶
func (a *ArtistPage) OnSongChange(track, lastScrobbledIfAny *mediaprovider.Track)
func (*ArtistPage) Reload ¶
func (a *ArtistPage) Reload()
func (*ArtistPage) Route ¶
func (a *ArtistPage) Route() controller.Route
func (*ArtistPage) Save ¶
func (a *ArtistPage) Save() SavedPage
func (*ArtistPage) SelectAll ¶
func (a *ArtistPage) SelectAll()
func (*ArtistPage) Tapped ¶
func (a *ArtistPage) Tapped(*fyne.PointEvent)
type ArtistPageHeader ¶
type ArtistPageHeader struct { widget.BaseWidget // contains filtered or unexported fields }
func NewArtistPageHeader ¶
func NewArtistPageHeader(page *ArtistPage) *ArtistPageHeader
func (*ArtistPageHeader) Clear ¶ added in v0.5.0
func (a *ArtistPageHeader) Clear()
func (*ArtistPageHeader) CreateRenderer ¶
func (a *ArtistPageHeader) CreateRenderer() fyne.WidgetRenderer
func (*ArtistPageHeader) Update ¶
func (a *ArtistPageHeader) Update(artist *mediaprovider.ArtistWithAlbums)
func (*ArtistPageHeader) UpdateInfo ¶
func (a *ArtistPageHeader) UpdateInfo(info *mediaprovider.ArtistInfo)
type ArtistsPage ¶
type ArtistsPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewArtistsPage ¶
func NewArtistsPage( contr *controller.Controller, pool *util.WidgetPool, pm *backend.PlaybackManager, mp mediaprovider.MediaProvider, im *backend.ImageManager, ) *ArtistsPage
func (*ArtistsPage) CreateRenderer ¶
func (a *ArtistsPage) CreateRenderer() fyne.WidgetRenderer
func (*ArtistsPage) Reload ¶
func (a *ArtistsPage) Reload()
func (*ArtistsPage) Route ¶
func (a *ArtistsPage) Route() controller.Route
func (*ArtistsPage) Save ¶
func (a *ArtistsPage) Save() SavedPage
type BrowsingPane ¶
type BrowsingPane struct { widget.BaseWidget // contains filtered or unexported fields }
func NewBrowsingPane ¶
func NewBrowsingPane(app *backend.App) *BrowsingPane
func (*BrowsingPane) ActivateNavigationButton ¶
func (b *BrowsingPane) ActivateNavigationButton(num int)
func (*BrowsingPane) AddNavigationButton ¶
func (b *BrowsingPane) AddNavigationButton(icon fyne.Resource, action func())
func (*BrowsingPane) AddSettingsMenuItem ¶
func (b *BrowsingPane) AddSettingsMenuItem(label string, action func())
func (*BrowsingPane) ClearHistory ¶
func (b *BrowsingPane) ClearHistory()
func (*BrowsingPane) CreateRenderer ¶
func (b *BrowsingPane) CreateRenderer() fyne.WidgetRenderer
func (*BrowsingPane) CurrentPage ¶
func (b *BrowsingPane) CurrentPage() controller.Route
func (*BrowsingPane) DisableNavigationButtons ¶
func (b *BrowsingPane) DisableNavigationButtons()
func (*BrowsingPane) EnableNavigationButtons ¶
func (b *BrowsingPane) EnableNavigationButtons()
func (*BrowsingPane) GetSearchBarIfAny ¶
func (b *BrowsingPane) GetSearchBarIfAny() fyne.Focusable
func (*BrowsingPane) GoBack ¶
func (b *BrowsingPane) GoBack()
func (*BrowsingPane) GoForward ¶
func (b *BrowsingPane) GoForward()
func (*BrowsingPane) GoHome ¶ added in v0.4.0
func (b *BrowsingPane) GoHome()
func (*BrowsingPane) Reload ¶
func (b *BrowsingPane) Reload()
func (*BrowsingPane) SelectAll ¶
func (b *BrowsingPane) SelectAll()
func (*BrowsingPane) SetPage ¶
func (b *BrowsingPane) SetPage(p Page)
type CanSelectAll ¶
type CanSelectAll interface {
SelectAll()
}
type CanShowNowPlaying ¶
type CanShowNowPlaying interface {
OnSongChange(song, lastScrobbledIfAny *mediaprovider.Track)
}
type CanShowPlayTime ¶ added in v0.4.0
type CanShowPlayTime interface {
OnPlayTimeUpdate(curTime, totalTime float64)
}
type FavoritesPage ¶
type FavoritesPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewFavoritesPage ¶
func NewFavoritesPage(cfg *backend.FavoritesPageConfig, pool *util.WidgetPool, contr *controller.Controller, mp mediaprovider.MediaProvider, pm *backend.PlaybackManager, im *backend.ImageManager) *FavoritesPage
func (*FavoritesPage) CreateRenderer ¶
func (a *FavoritesPage) CreateRenderer() fyne.WidgetRenderer
func (*FavoritesPage) OnSearched ¶
func (a *FavoritesPage) OnSearched(query string)
func (*FavoritesPage) OnSongChange ¶
func (a *FavoritesPage) OnSongChange(song, _ *mediaprovider.Track)
func (*FavoritesPage) Reload ¶
func (a *FavoritesPage) Reload()
func (*FavoritesPage) Route ¶
func (a *FavoritesPage) Route() controller.Route
func (*FavoritesPage) Save ¶
func (a *FavoritesPage) Save() SavedPage
func (*FavoritesPage) SearchWidget ¶
func (a *FavoritesPage) SearchWidget() fyne.Focusable
func (*FavoritesPage) SelectAll ¶
func (a *FavoritesPage) SelectAll()
func (*FavoritesPage) Tapped ¶
func (a *FavoritesPage) Tapped(*fyne.PointEvent)
type GenreList ¶
type GenreList struct { widget.BaseWidget Items []*mediaprovider.Genre // contains filtered or unexported fields }
func NewGenreList ¶
func NewGenreList(items []*mediaprovider.Genre) *GenreList
func (*GenreList) CreateRenderer ¶
func (a *GenreList) CreateRenderer() fyne.WidgetRenderer
type GenreListRow ¶
type GenreListRow struct { widget.BaseWidget Item *mediaprovider.Genre OnTapped func() // contains filtered or unexported fields }
func NewGenreListRow ¶
func NewGenreListRow(layout *layouts.ColumnsLayout) *GenreListRow
func (*GenreListRow) CreateRenderer ¶
func (a *GenreListRow) CreateRenderer() fyne.WidgetRenderer
func (*GenreListRow) Tapped ¶
func (a *GenreListRow) Tapped(*fyne.PointEvent)
type GenrePage ¶
type GenrePage struct { widget.BaseWidget // contains filtered or unexported fields }
TODO: there is a lot of code duplication between this and albumspage. Refactor?
func NewGenrePage ¶
func NewGenrePage(genre string, pool *util.WidgetPool, contr *controller.Controller, pm *backend.PlaybackManager, mp mediaprovider.MediaProvider, im *backend.ImageManager) *GenrePage
func (*GenrePage) CreateRenderer ¶
func (g *GenrePage) CreateRenderer() fyne.WidgetRenderer
func (*GenrePage) OnSearched ¶
func (*GenrePage) Route ¶
func (a *GenrePage) Route() controller.Route
func (*GenrePage) SearchWidget ¶
func (g *GenrePage) SearchWidget() fyne.Focusable
type GenresPage ¶
type GenresPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewGenresPage ¶
func NewGenresPage(contr *controller.Controller, mp mediaprovider.MediaProvider) *GenresPage
func (*GenresPage) CreateRenderer ¶
func (a *GenresPage) CreateRenderer() fyne.WidgetRenderer
func (*GenresPage) Reload ¶
func (a *GenresPage) Reload()
func (*GenresPage) Route ¶
func (a *GenresPage) Route() controller.Route
func (*GenresPage) Save ¶
func (a *GenresPage) Save() SavedPage
func (*GenresPage) SearchWidget ¶
func (a *GenresPage) SearchWidget() fyne.Focusable
type NavigationHandler ¶
type NavigationHandler interface {}
type NowPlayingPage ¶
type NowPlayingPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewNowPlayingPage ¶
func NewNowPlayingPage( highlightedTrackID string, contr *controller.Controller, pool *util.WidgetPool, conf *backend.NowPlayingPageConfig, pm *backend.PlaybackManager, p *player.Player, ) *NowPlayingPage
func (*NowPlayingPage) CreateRenderer ¶
func (a *NowPlayingPage) CreateRenderer() fyne.WidgetRenderer
func (*NowPlayingPage) OnPlayTimeUpdate ¶ added in v0.4.0
func (a *NowPlayingPage) OnPlayTimeUpdate(_, _ float64)
func (*NowPlayingPage) OnSongChange ¶
func (a *NowPlayingPage) OnSongChange(song, lastScrobbledIfAny *mediaprovider.Track)
func (*NowPlayingPage) Reload ¶
func (a *NowPlayingPage) Reload()
func (*NowPlayingPage) Route ¶
func (a *NowPlayingPage) Route() controller.Route
func (*NowPlayingPage) Save ¶
func (a *NowPlayingPage) Save() SavedPage
func (*NowPlayingPage) SelectAll ¶
func (a *NowPlayingPage) SelectAll()
func (*NowPlayingPage) Tapped ¶
func (a *NowPlayingPage) Tapped(*fyne.PointEvent)
type Page ¶
type Page interface { fyne.CanvasObject Save() SavedPage Reload() Route() controller.Route }
type PlaylistList ¶
type PlaylistList struct { widget.BaseWidget Playlists []*mediaprovider.Playlist // contains filtered or unexported fields }
func NewPlaylistList ¶
func NewPlaylistList() *PlaylistList
func (*PlaylistList) CreateRenderer ¶
func (p *PlaylistList) CreateRenderer() fyne.WidgetRenderer
type PlaylistListRow ¶
type PlaylistListRow struct { widget.BaseWidget ID string OnTapped func() // contains filtered or unexported fields }
func NewPlaylistListRow ¶
func NewPlaylistListRow(layout *layouts.ColumnsLayout) *PlaylistListRow
func (*PlaylistListRow) CreateRenderer ¶
func (a *PlaylistListRow) CreateRenderer() fyne.WidgetRenderer
func (*PlaylistListRow) Tapped ¶
func (a *PlaylistListRow) Tapped(*fyne.PointEvent)
type PlaylistPage ¶
type PlaylistPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewPlaylistPage ¶
func NewPlaylistPage( playlistID string, conf *backend.PlaylistPageConfig, pool *util.WidgetPool, contr *controller.Controller, sm *backend.ServerManager, pm *backend.PlaybackManager, im *backend.ImageManager, ) *PlaylistPage
func (*PlaylistPage) CreateRenderer ¶
func (a *PlaylistPage) CreateRenderer() fyne.WidgetRenderer
func (*PlaylistPage) OnSongChange ¶
func (a *PlaylistPage) OnSongChange(song, lastScrobbledIfAny *mediaprovider.Track)
func (*PlaylistPage) Reload ¶
func (a *PlaylistPage) Reload()
func (*PlaylistPage) Route ¶
func (a *PlaylistPage) Route() controller.Route
func (*PlaylistPage) Save ¶
func (a *PlaylistPage) Save() SavedPage
func (*PlaylistPage) SelectAll ¶
func (a *PlaylistPage) SelectAll()
func (*PlaylistPage) Tapped ¶
func (a *PlaylistPage) Tapped(*fyne.PointEvent)
type PlaylistPageHeader ¶
type PlaylistPageHeader struct { widget.BaseWidget // contains filtered or unexported fields }
func NewPlaylistPageHeader ¶
func NewPlaylistPageHeader(page *PlaylistPage) *PlaylistPageHeader
func (*PlaylistPageHeader) Clear ¶ added in v0.5.0
func (a *PlaylistPageHeader) Clear()
func (*PlaylistPageHeader) CreateRenderer ¶
func (a *PlaylistPageHeader) CreateRenderer() fyne.WidgetRenderer
func (*PlaylistPageHeader) Update ¶
func (a *PlaylistPageHeader) Update(playlist *mediaprovider.PlaylistWithTracks)
type PlaylistsPage ¶
type PlaylistsPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewPlaylistsPage ¶
func NewPlaylistsPage(contr *controller.Controller, pool *util.WidgetPool, cfg *backend.PlaylistsPageConfig, mp mediaprovider.MediaProvider) *PlaylistsPage
func (*PlaylistsPage) CreateRenderer ¶
func (a *PlaylistsPage) CreateRenderer() fyne.WidgetRenderer
func (*PlaylistsPage) Reload ¶
func (a *PlaylistsPage) Reload()
func (*PlaylistsPage) Route ¶
func (a *PlaylistsPage) Route() controller.Route
func (*PlaylistsPage) Save ¶
func (a *PlaylistsPage) Save() SavedPage
func (*PlaylistsPage) SearchWidget ¶
func (a *PlaylistsPage) SearchWidget() fyne.Focusable
type Router ¶
type Router struct { App *backend.App Controller *controller.Controller // contains filtered or unexported fields }
func NewRouter ¶
func NewRouter(app *backend.App, controller *controller.Controller, nav NavigationHandler) Router
func (Router) CreatePage ¶
func (r Router) CreatePage(rte controller.Route) Page
func (Router) NavigateTo ¶
func (r Router) NavigateTo(rte controller.Route)
type Searchable ¶
type Searchable interface {
SearchWidget() fyne.Focusable
}
Searchable pages should implement this interface so their search bar can be focused by keyboard shortcut.
type TracksPage ¶
type TracksPage struct { widget.BaseWidget // contains filtered or unexported fields }
func NewTracksPage ¶
func NewTracksPage(contr *controller.Controller, conf *backend.TracksPageConfig, pool *util.WidgetPool, mp mediaprovider.MediaProvider) *TracksPage
func (*TracksPage) CreateRenderer ¶
func (t *TracksPage) CreateRenderer() fyne.WidgetRenderer
func (*TracksPage) OnSearched ¶
func (t *TracksPage) OnSearched(query string)
func (*TracksPage) OnSongChange ¶
func (t *TracksPage) OnSongChange(track, lastScrobbledIfAny *mediaprovider.Track)
func (*TracksPage) Reload ¶
func (t *TracksPage) Reload()
func (*TracksPage) Route ¶
func (t *TracksPage) Route() controller.Route
func (*TracksPage) Save ¶
func (t *TracksPage) Save() SavedPage
func (*TracksPage) SearchWidget ¶
func (t *TracksPage) SearchWidget() fyne.Focusable
Click to show internal directories.
Click to hide internal directories.