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