AggiuntaModificaController class

Controller per la gestione dell'aggiunta e modifica manuale dei libri. Gestisce la logica per aggiungere un nuovo libro o modificare un libro esistente nella libreria. Fornisce metodi per la selezione della copertina, il recupero dei dati dai campi e la validazione.

Inheritance

Constructors

AggiuntaModificaController.new(Libreria _libreria, [Libro? libroDaModificare])
Costruttore con parametro opzionale per modificare un libro esistente. Se il parametro è presente, inizializza i campi con i valori del libro da modificare. Il controller gestisce quindi la modifica del libro.

Properties

autori ↔ List<String>?
Lista degli autori del libro.
getter/setter pairinherited
autoriController → TextEditingController
Controller per il campo autori.
final
copertina ↔ String
Percorso della copertina del libro.
getter/setter pairinherited
dataPubblicazione ↔ DateTime?
Data di pubblicazione del libro.
getter/setter pairinherited
dataPubblicazioneController → TextEditingController
Controller per il campo data pubblicazione.
final
genere ↔ GenereLibro?
Genere del libro.
getter/setter pairinherited
genereSelezionato ↔ GenereLibro?
Genere selezionato per il libro.
getter/setter pairinherited
generi → List<GenereLibro>
Lista dei generi disponibili.
final
hashCode → int
The hash code for this object.
no setterinherited
isbn ↔ String
Codice ISBN del libro.
getter/setter pairinherited
isbnController → TextEditingController
Controller per il campo ISBN.
final
isbnValidator → Isbn
Validatore per codici ISBN.
finalinherited
isPreferito ↔ bool
Indica se il libro è segnato come preferito. Impostato a false di default.
getter/setter pairinherited
lingua ↔ String?
Lingua del libro.
getter/setter pairinherited
linguaController → TextEditingController
Controller per il campo lingua.
final
note ↔ String?
Note aggiuntive sul libro.
getter/setter pairinherited
noteController → TextEditingController
Controller per il campo note.
final
numeroPagine ↔ int?
Numero di pagine del libro.
getter/setter pairinherited
numeroPagineController → TextEditingController
Controller per il campo numero pagine.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
stati → List<StatoLibro>
Lista degli stati disponibili.
final
stato ↔ StatoLibro?
Stato del libro (letto, da leggere, ecc.).
getter/setter pairinherited
statoSelezionato ↔ StatoLibro?
Stato selezionato per il libro.
getter/setter pairinherited
titolo ↔ String
Titolo del libro.
getter/setter pairinherited
titoloController → TextEditingController
Controller per il campo titolo.
final
trama ↔ String?
Trama del libro.
getter/setter pairinherited
tramaController → TextEditingController
Controller per il campo trama.
final
voto ↔ double?
Voto assegnato al libro.
getter/setter pairinherited
votoController → TextEditingController
Controller per il campo voto.
final

Methods

controllaCampiFacoltativi() → String?
Controlla i campi facoltativi del libro e restituisce un messaggio di avviso se necessario, altrimenti null.
inherited
controllaCampiObbligatori() → bool
Controlla la validità dei campi del libro prima di aggiungerlo o modificarlo. Verifica che non esista già un libro con lo stesso ISBN in libreria. Restituisce true se i campi sono validi, altrimenti lancia un'eccezione.
override
dispose() → void
Rllascia le risorse allocate dal controller
handleAggiungiLibro() → String?
Gestisce il click del pulsante "Aggiungi" nella schermata di aggiunta manuale dei libri. Consente l'aggiunta di nuovi libri o la modifica di libri esistenti.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
selezionaCopertina() → Future<void>
Metodo per la selezione e salvataggio della copertina dalla galleria. Assegna il percorso locale del file salvato all'attributo 'copertina'.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited