mirror of
https://github.com/vodemn/m3_lightmeter.git
synced 2024-11-22 15:30:59 +00:00
26 lines
544 B
Dart
26 lines
544 B
Dart
import 'package:flutter/material.dart';
|
|
|
|
class MapModel<T> extends InheritedModel<T> {
|
|
final Map<T, bool> data;
|
|
|
|
const MapModel({
|
|
required this.data,
|
|
required super.child,
|
|
});
|
|
|
|
@override
|
|
bool updateShouldNotify(MapModel oldWidget) => oldWidget.data != data;
|
|
|
|
@override
|
|
bool updateShouldNotifyDependent(
|
|
MapModel<T> oldWidget,
|
|
Set<T> dependencies,
|
|
) {
|
|
for (final dependecy in dependencies) {
|
|
if (oldWidget.data[dependecy] != data[dependecy]) {
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
}
|