browsing

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 15, 2023 License: GPL-3.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewSelect

func NewSelect(options []string, onChanged func(string)) *selectWidget

Types

type AlbumPage

type AlbumPage struct {
	widget.BaseWidget
	// contains filtered or unexported fields
}

func (*AlbumPage) CreateRenderer

func (a *AlbumPage) CreateRenderer() fyne.WidgetRenderer

func (*AlbumPage) OnSongChange

func (a *AlbumPage) OnSongChange(track, lastScrobbledIfAny *mediaprovider.Track)

func (*AlbumPage) Reload

func (a *AlbumPage) Reload()

func (*AlbumPage) Restore

func (s *AlbumPage) Restore() Page

func (*AlbumPage) Route

func (a *AlbumPage) Route() controller.Route

func (*AlbumPage) Save

func (a *AlbumPage) Save() SavedPage

func (*AlbumPage) SelectAll

func (a *AlbumPage) SelectAll()

func (*AlbumPage) Tapped

func (a *AlbumPage) Tapped(*fyne.PointEvent)

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

type AlbumsPage

type AlbumsPage struct {
	widget.BaseWidget
	// contains filtered or unexported fields
}

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 (*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) Restore

func (s *ArtistPage) Restore() Page

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 (*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 (*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
	OnNavTo func(string)
	// 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 (*GenrePage) CreateRenderer

func (g *GenrePage) CreateRenderer() fyne.WidgetRenderer

func (*GenrePage) OnSearched

func (g *GenrePage) OnSearched(query string)

func (*GenrePage) Reload

func (g *GenrePage) Reload()

func (*GenrePage) Route

func (a *GenrePage) Route() controller.Route

func (*GenrePage) Save

func (g *GenrePage) Save() SavedPage

func (*GenrePage) SearchWidget

func (g *GenrePage) SearchWidget() fyne.Focusable

type GenresPage

type GenresPage struct {
	widget.BaseWidget
	// contains filtered or unexported fields
}

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 interface {
	SetPage(Page)
	CurrentPage() controller.Route
}

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) Restore

func (s *NowPlayingPage) Restore() Page

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
	OnNavTo   func(string)
	// 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 (*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) Restore

func (s *PlaylistPage) Restore() Page

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

type PlaylistsPage

type PlaylistsPage struct {
	widget.BaseWidget
	// contains filtered or unexported fields
}

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
	Nav        NavigationHandler
	// 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 SavedPage

type SavedPage interface {
	Restore() Page
}

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 (*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) Restore

func (s *TracksPage) Restore() Page

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL