AdaptiveMetricsLab<T> constructor
const
AdaptiveMetricsLab<T> ({
- Key? key,
- required List<
T> queries, - required Widget itemBuilder(
- BuildContext context,
- T query,
- bool selected,
- VoidCallback onTap,
- required Widget focusBuilder(
- BuildContext context,
- T query
- required Widget annotationsBuilder(
- BuildContext context,
- T query
- required Widget historyBuilder(
- BuildContext context,
- T query
- required String queryTitle,
- required String annotationsTitle,
- required String historyTitle,
- Widget? header,
- Widget? emptyState,
- String? queryDescription,
- Widget? queryLeading,
- String? annotationsDescription,
- Widget? annotationsLeading,
- String? historyDescription,
- Widget? historyLeading,
- String modalQueryLabel = 'Open queries',
- Widget modalQueryIcon = const Icon(Icons.query_stats_outlined),
- String modalAnnotationsLabel = 'Open annotations',
- Widget modalAnnotationsIcon = const Icon(Icons.draw_outlined),
- String modalHistoryLabel = 'Open history',
- Widget modalHistoryIcon = const Icon(Icons.history_outlined),
- AdaptiveSize queryDockedAt = AdaptiveSize.medium,
- AdaptiveSize annotationsDockedAt = AdaptiveSize.expanded,
- AdaptiveSize historyDockedAt = AdaptiveSize.expanded,
- AdaptiveHeight minimumQueryDockedHeight = AdaptiveHeight.compact,
- AdaptiveHeight minimumAnnotationsDockedHeight = AdaptiveHeight.medium,
- AdaptiveHeight minimumHistoryDockedHeight = AdaptiveHeight.expanded,
- bool useContainerConstraints = true,
- bool considerOrientation = false,
- int? selectedIndex,
- int initialIndex = 0,
- ValueChanged<
int> ? onSelectedIndexChanged, - double spacing = 16,
- double itemSpacing = 12,
- int queryFlex = 2,
- int focusFlex = 4,
- int annotationsFlex = 2,
- int focusPaneFlex = 3,
- int historyFlex = 2,
- EdgeInsetsGeometry queryPadding = const EdgeInsets.all(16),
- EdgeInsetsGeometry focusPadding = const EdgeInsets.all(16),
- EdgeInsetsGeometry annotationsPadding = const EdgeInsets.all(16),
- EdgeInsetsGeometry historyPadding = const EdgeInsets.all(16),
- double modalHeightFactor = 0.72,
- bool showModalDragHandle = true,
- bool animateSize = true,
- Duration animationDuration = const Duration(milliseconds: 250),
- Curve animationCurve = Curves.easeInOutCubic,
Creates an adaptive metrics lab.
Implementation
const AdaptiveMetricsLab({
super.key,
required this.queries,
required this.itemBuilder,
required this.focusBuilder,
required this.annotationsBuilder,
required this.historyBuilder,
required this.queryTitle,
required this.annotationsTitle,
required this.historyTitle,
this.header,
this.emptyState,
this.queryDescription,
this.queryLeading,
this.annotationsDescription,
this.annotationsLeading,
this.historyDescription,
this.historyLeading,
this.modalQueryLabel = 'Open queries',
this.modalQueryIcon = const Icon(Icons.query_stats_outlined),
this.modalAnnotationsLabel = 'Open annotations',
this.modalAnnotationsIcon = const Icon(Icons.draw_outlined),
this.modalHistoryLabel = 'Open history',
this.modalHistoryIcon = const Icon(Icons.history_outlined),
this.queryDockedAt = AdaptiveSize.medium,
this.annotationsDockedAt = AdaptiveSize.expanded,
this.historyDockedAt = AdaptiveSize.expanded,
this.minimumQueryDockedHeight = AdaptiveHeight.compact,
this.minimumAnnotationsDockedHeight = AdaptiveHeight.medium,
this.minimumHistoryDockedHeight = AdaptiveHeight.expanded,
this.useContainerConstraints = true,
this.considerOrientation = false,
this.selectedIndex,
this.initialIndex = 0,
this.onSelectedIndexChanged,
this.spacing = 16,
this.itemSpacing = 12,
this.queryFlex = 2,
this.focusFlex = 4,
this.annotationsFlex = 2,
this.focusPaneFlex = 3,
this.historyFlex = 2,
this.queryPadding = const EdgeInsets.all(16),
this.focusPadding = const EdgeInsets.all(16),
this.annotationsPadding = const EdgeInsets.all(16),
this.historyPadding = const EdgeInsets.all(16),
this.modalHeightFactor = 0.72,
this.showModalDragHandle = true,
this.animateSize = true,
this.animationDuration = const Duration(milliseconds: 250),
this.animationCurve = Curves.easeInOutCubic,
});