view

package
v0.0.0-...-4a1dbe4 Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2023 License: GPL-3.0, OFL-1.1 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const FILE_VIEW_TEMPLATE string = `**%s**

>*%s*`

Variables

This section is empty.

Functions

func NewCommandsManager

func NewCommandsManager(

	model DataModel,
	main_win fyne.Window,

) fyne.CanvasObject

func NewEditEntryCover

func NewEditEntryCover(

	e Entry,
	model DataModel,
	dv *DetailsViewer,
	main_win fyne.Window,

) fyne.CanvasObject

func NewEditEntryFiles

func NewEditEntryFiles(

	e Entry,
	model DataModel,
	list_win *List,
	dv *DetailsViewer,
	statusbar *StatusBar,
	main_win fyne.Window,

) fyne.CanvasObject

func NewEditEntryLabels

func NewEditEntryLabels(

	e Entry,
	model DataModel,
	dv *DetailsViewer,
	main_win fyne.Window,

) fyne.CanvasObject

func NewEditEntryName

func NewEditEntryName(

	e Entry,
	list_win *List,
	dv *DetailsViewer,
	main_win fyne.Window,

) fyne.CanvasObject

func NewLabelsManager

func NewLabelsManager(

	model DataModel,
	dv *DetailsViewer,
	main_win fyne.Window,

) fyne.CanvasObject

func NewPlatformsManager

func NewPlatformsManager(

	model DataModel,
	list_win *List,
	dv *DetailsViewer,
	main_win fyne.Window,

) fyne.CanvasObject

func Run

func Run(model DataModel) error

func RunConfigWin

func RunConfigWin(

	model DataModel,
	list *List,
	dv *DetailsViewer,
	main_win fyne.Window,

)

func RunEditEntryWin

func RunEditEntryWin(

	e Entry,
	model DataModel,
	list *List,
	dv *DetailsViewer,
	statusbar *StatusBar,
	main_win fyne.Window,

)

func ShowNewEntryDialog

func ShowNewEntryDialog(

	model DataModel,
	list *List,
	statusbar *StatusBar,
	main_win fyne.Window,

)

Types

type DataModel

type DataModel interface {

	// Torna la llista dels identificadors (long) de tots els objectes del
	// model.
	RootEntries() []int64

	// Torna una entrada del model
	GetEntry(id int64) Entry

	// Torna els identificadors de les plataformes
	GetPlatformIDs() []int

	// Torna la plataforma.
	GetPlatform(id int) Platform

	// Torna el fitxer indicat
	GetFile(id int64) File

	// Torna els identificadors de les etiquetes
	GetLabelIDs() []int

	// Torna l'etiqueta
	GetLabel(id int) Label

	// Obté estadístiques
	GetStats() Stats

	// Obté els identificadors dels tipus de fitxer
	GetFileTypeIDs() []int

	// Obté el nom d'un tipus
	GetFileTypeName(id int) string

	// Obté el comandament per un tipus de fitxer. Si no en té,
	// aleshores cadena buida.
	GetFileTypeCommand(id int) string

	// Fixa comandament per a un tipus de fitxer. Cadena buida elimina
	// el comandament.
	SetFileTypeCommand(id int, command string)

	// Afegeix una nova plataforma
	AddPlatform(short_name string, name string, c color.Color) error

	// Afegeix una nova etiqueta
	AddLabel(name string, c color.Color) error

	// Afegeix una nova entrada
	AddEntry(name string, platform_id int) error

	// Elimina una plataforma
	RemovePlatform(id int) error

	// Elimina una entrada
	RemoveEntry(id int64) error

	// Elimina una etiqueta
	RemoveLabel(id int) error

	// Filtra les entrades d'acord a la consulta. Una cadena buida
	// implica no filtrar.
	FilterEntries(query string)
}

type DetailsViewer

type DetailsViewer struct {
	// contains filtered or unexported fields
}

func NewDetailsViewer

func NewDetailsViewer(

	model DataModel,
	statusbar *StatusBar,
	main_win fyne.Window,

) *DetailsViewer

func (*DetailsViewer) Clean

func (self *DetailsViewer) Clean()

func (*DetailsViewer) GetCanvas

func (self *DetailsViewer) GetCanvas() fyne.CanvasObject

func (*DetailsViewer) Update

func (self *DetailsViewer) Update()

func (*DetailsViewer) ViewEntry

func (self *DetailsViewer) ViewEntry(e_id int64, list *List)

func (*DetailsViewer) ViewFile

func (self *DetailsViewer) ViewFile(f_id int64)

type Entry

type Entry interface {

	// Torna el nom que es mostrarà en la interfície
	GetName() string

	// Torna identificador de la plataforma
	GetPlatformID() int

	// Torna els identificadors dels fitxers d'aquesta entrada. Són
	// globals, però diferents als de les entrades.
	GetFileIDs() []int64

	// Torna els identificadors dels fitxers d'aquesta entrada que poden
	// ser tractats com a imatges.
	GetImageFileIDs() []int64

	// Torna la imatge de la portada. Pot tornar nil. S'indica
	// l'amplària i altura màxima.
	GetCover(max_wh int) image.Image

	// Torna els identificadors de les etiquetes que té aquesta entrada.
	GetLabelIDs() []int

	// Torna els identificadors de les etiquetes no emprades per aquesta
	// entrada.
	GetUnusedLabelIDs() []int

	// Afegeix (i crea) un nou fitxer.
	// path -> Path fitxer
	// name -> Nom amb el que volem registrar el fitxer
	// file_type -> Identificador tipus fitxer
	// create_pb -> Funció que crea i mostra una barra de progrés
	AddFile(path string, name string, file_type int,
		create_pb func() ProgressBar) error

	// Afegeix una nova etiqueta
	AddLabel(id int) error

	// Elimina el fitxer de l'entrada
	RemoveFile(id int64) error

	// Elimina una etiqueta de l'entrada
	RemoveLabel(id int) error

	// Fixa l'identificador del fitxer que serà la portada. -1 indica
	// que no té portada.
	SetCoverFileID(id int64) error

	// Actualitza el nom de l'entrada.
	UpdateName(name string) error

	// Actualitza el nom d'un fitxer
	UpdateFileName(id int64, name string) error
}

type File

type File interface {

	// Torna la imatge que representa el fitxer, o nil si no en té (o no
	// es pot carregar). S'indica l'ample i alt màxims.
	GetImage(max_wh int) image.Image

	// Torna el nom del fitxer
	GetName() string

	// Torna l'identificador del tipus
	GetTypeID() int

	// Torna metadades associades a aquest fitxer
	GetMetadata() []StringPair

	// "Executa" el fitxer.
	Run() error
}

type ImgtekaTheme

type ImgtekaTheme struct {
}

func (*ImgtekaTheme) Color

func (self *ImgtekaTheme) Color(

	name fyne.ThemeColorName,
	variant fyne.ThemeVariant,

) color.Color

func (*ImgtekaTheme) Font

func (self *ImgtekaTheme) Font(style fyne.TextStyle) fyne.Resource

func (*ImgtekaTheme) Icon

func (self *ImgtekaTheme) Icon(name fyne.ThemeIconName) fyne.Resource

func (*ImgtekaTheme) Size

func (self *ImgtekaTheme) Size(name fyne.ThemeSizeName) float32

type Label

type Label interface {

	// Torna el nom
	GetName() string

	// Torna el color de l'etiqueta
	GetColor() color.Color

	// Torna el nombre d'entrades
	GetNumEntries() int64

	// Actualitza els atributs bàsics d'una etiqueta.
	Update(name string, c color.Color) error
}

type List

type List struct {
	widget.Tree
	// contains filtered or unexported fields
}

func NewList

func NewList(model DataModel, dv *DetailsViewer) *List

func (*List) Update

func (self *List) Update()

Reseteja caches locals i fa un Refresh. És útil per exemple si hem modificat el color de les etiquetes. Si no ho hem fet, és més òptim fer un Refresh.

type Platform

type Platform interface {

	// Torna el nom
	GetName() string

	// Torna el nom curt (màxim 3 lletres)
	GetShortName() string

	// Torna el color assignat a la plataforma
	GetColor() color.Color

	// Torna el nombre d'entrades
	GetNumEntries() int64

	// Actualitza els atributs bàsics d'una plataforma. (No es pot
	// modificar el nom curt)
	Update(name string, c color.Color) error
}

type ProgressBar

type ProgressBar interface {
	Close()

	// Fixa un missatge i una fracció de completesa [0..1].
	Set(message string, fraction float32)
}

type Stats

type Stats interface {

	// Torna el nombre d'entrades
	GetNumEntries() int64

	// Torna el nombre de fitxers
	GetNumFiles() int64
}

type StatusBar

type StatusBar struct {
	// contains filtered or unexported fields
}

func NewStatusBar

func NewStatusBar(model DataModel) *StatusBar

func (*StatusBar) GetCanvas

func (self *StatusBar) GetCanvas() fyne.CanvasObject

func (*StatusBar) Update

func (self *StatusBar) Update()

type StringPair

type StringPair interface {
	GetKey() string

	GetValue() string
}

type Toolbar

type Toolbar struct {
	// contains filtered or unexported fields
}

func NewToolbar

func NewToolbar(

	model DataModel,
	main_win fyne.Window,
	list *List,
	dv *DetailsViewer,
	status_bar *StatusBar,

) *Toolbar

func (*Toolbar) GetCanvas

func (self *Toolbar) GetCanvas() fyne.CanvasObject

Jump to

Keyboard shortcuts

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