DiseaseInfoViewModel class

Manages the state and business logic for displaying disease information.

This view model handles:

  • Loading disease data from the repository
  • Filtering diseases by search query
  • Managing disease-related UI state
  • Error handling for data loading

It extends ChangeNotifier to provide reactive state updates to the UI.

Inheritance

Constructors

DiseaseInfoViewModel({required MosquitoRepository repository})

Properties

diseases List<Disease>
List of all loaded diseases
no setter
errorMessage String?
Error message if loading diseases failed
no setter
filteredDiseases List<Disease>
Gets the list of diseases filtered by the current search query
no setter
hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
isLoading bool
Whether disease data is currently being loaded
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
searchQuery String
Current search query for filtering diseases
no setter
state DiseaseInfoState
Current state of the view model
no setter

Methods

addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
dispose() → void
Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener will throw after the object is disposed).
inherited
getDiseaseById(String id, AppLocalizations localizations) Future<Disease?>
Gets a disease by its ID
getDiseasesByVector(String speciesName, AppLocalizations localizations) Future<List<Disease>>
Gets all diseases associated with a specific mosquito vector
loadDiseases(AppLocalizations localizations) Future<void>
Loads all diseases from the repository
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
toString() String
A string representation of this object.
inherited
updateSearchQuery(String query) → void
Updates the current search query and notifies listeners

Operators

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