import 'package:flutter/material.dart'; class ModeButton extends StatelessWidget { final String label; final bool isSelected; final VoidCallback onTap; const ModeButton({ required this.label, required this.isSelected, required this.onTap, }); @override Widget build(BuildContext context) { final theme = Theme.of(context); return Material( color: isSelected ? theme.colorScheme.primary : theme.colorScheme.onSecondary, borderRadius: BorderRadius.circular(8), child: InkWell( borderRadius: BorderRadius.circular(8), onTap: onTap, child: Padding( padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 5), child: Text( label, maxLines: 1, overflow: TextOverflow.ellipsis, style: theme.textTheme.labelSmall?.copyWith( fontWeight: FontWeight.w500, color: isSelected ? theme.colorScheme.onSecondary : theme.colorScheme.primary, ), ), ), ), ); } }