MedicationCardState class
State management for Medication Card component Category 3: Complex/Composite States: Rest, Disabled ONLY (NO Hover or Pressed)
Extends BaseComponentState which provides:
- Neumorphic shadows (distance, blur, intensities, borderRadius)
- Animated border (showAnimatedBorder, borderColor, borderWidth)
- Shadow color helpers (getLightShadowColor, getDarkShadowColor)
Note: Contains interactive buttons ("Taken" and "Snooze") that have their own states.
- Inheritance
-
- Object
- ChangeNotifier
- BaseComponentState
- MedicationCardState
Constructors
Properties
- blur ↔ double
-
getter/setter pairinherited
- borderColor ↔ Color
-
getter/setter pairinherited
- borderRadius ↔ double
-
getter/setter pairinherited
- borderWidth ↔ double
-
getter/setter pairinherited
-
getter/setter pair
- componentNameGetter → String
-
Component identifier for theme color resolution.
Each component should have a unique name like 'button', 'toggle', 'card'.
Named
componentNameGetterto avoid conflict with staticcomponentNamethat some subclasses expose for external access.no setteroverride - darkIntensity ↔ double
-
getter/setter pairinherited
- disabledBaseColorDark ↔ Color
-
getter/setter pairinherited
- disabledBaseColorLight ↔ Color
-
getter/setter pairinherited
- disabledBlurOverride ↔ double?
-
getter/setter pairinherited
- disabledButtonBgDark ↔ Color
-
getter/setter pair
- disabledButtonBgLight ↔ Color
-
getter/setter pair
- disabledButtonTextDark ↔ Color
-
getter/setter pair
- disabledButtonTextLight ↔ Color
-
getter/setter pair
- disabledDarkIntensityOverride ↔ double?
-
getter/setter pairinherited
- disabledDistanceOverride ↔ double?
-
getter/setter pairinherited
- disabledDosageColorDark ↔ Color
-
getter/setter pair
- disabledDosageColorLight ↔ Color
-
getter/setter pair
- disabledIconColorDark ↔ Color
-
getter/setter pairinherited
- disabledIconColorLight ↔ Color
-
getter/setter pairinherited
- disabledInstructionsBgColorDark ↔ Color
-
getter/setter pair
- disabledInstructionsBgColorLight ↔ Color
-
getter/setter pair
- disabledInstructionsColorDark ↔ Color
-
getter/setter pair
- disabledInstructionsColorLight ↔ Color
-
getter/setter pair
- disabledInstructionsIconColorDark ↔ Color
-
getter/setter pair
- disabledInstructionsIconColorLight ↔ Color
-
getter/setter pair
- disabledLightIntensityOverride ↔ double?
-
getter/setter pairinherited
- disabledNameColorDark ↔ Color
-
getter/setter pair
- disabledNameColorLight ↔ Color
-
getter/setter pair
- disabledOverrideEnabled ↔ bool
-
getter/setter pairinherited
- disabledTextColorDark ↔ Color
-
getter/setter pairinherited
- disabledTextColorLight ↔ Color
-
getter/setter pairinherited
- disabledTimerColorDark ↔ Color
-
getter/setter pair
- disabledTimerColorLight ↔ Color
-
getter/setter pair
- disabledTimerLabelColorDark ↔ Color
-
getter/setter pair
- disabledTimerLabelColorLight ↔ Color
-
getter/setter pair
- disabledVoiceHintColorDark ↔ Color
-
getter/setter pair
- disabledVoiceHintColorLight ↔ Color
-
getter/setter pair
- distance ↔ double
-
getter/setter pairinherited
- dosage ↔ String
-
getter/setter pair
- dosageFontSize ↔ double
-
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasListeners → bool
-
Whether any listeners are currently registered.
no setterinherited
- height ↔ double
-
getter/setter pairinherited
- hoverBaseColorDark ↔ Color
-
getter/setter pairinherited
- hoverBaseColorLight ↔ Color
-
getter/setter pairinherited
- hoverBlurOverride ↔ double?
-
getter/setter pairinherited
- hoverDarkIntensityOverride ↔ double?
-
getter/setter pairinherited
- hoverDistanceOverride ↔ double?
-
getter/setter pairinherited
- hoverIconColorDark ↔ Color
-
getter/setter pairinherited
- hoverIconColorLight ↔ Color
-
getter/setter pairinherited
- hoverLightIntensityOverride ↔ double?
-
getter/setter pairinherited
- hoverOverrideEnabled ↔ bool
-
getter/setter pairinherited
- hoverTextColorDark ↔ Color
-
getter/setter pairinherited
- hoverTextColorLight ↔ Color
-
getter/setter pairinherited
- iconSize ↔ double
-
Icon Styling
getter/setter pair
- instructions ↔ String
-
getter/setter pair
- instructionsFontSize ↔ double
-
getter/setter pair
- lightIntensity ↔ double
-
getter/setter pairinherited
- medicationName ↔ String
-
Content Properties
getter/setter pair
- nameFontSize ↔ double
-
Font Sizes
getter/setter pair
- nextDoseTime ↔ DateTime
-
getter/setter pair
- paddingAll ↔ double
-
Padding around content
getter/setter pair
- paddingH ↔ double
-
getter/setter pairinherited
- paddingV ↔ double
-
getter/setter pairinherited
- palette → GeneratedPalette?
-
Get the stored palette, if any.
no setterinherited
- pressedBaseColorDark ↔ Color
-
getter/setter pairinherited
- pressedBaseColorLight ↔ Color
-
getter/setter pairinherited
- pressedBlurOverride ↔ double?
-
getter/setter pairinherited
- pressedDarkIntensityOverride ↔ double?
-
getter/setter pairinherited
- pressedDistanceOverride ↔ double?
-
getter/setter pairinherited
- pressedIconColorDark ↔ Color
-
getter/setter pairinherited
- pressedIconColorLight ↔ Color
-
getter/setter pairinherited
- pressedLightIntensityOverride ↔ double?
-
getter/setter pairinherited
- pressedOverrideEnabled ↔ bool
-
getter/setter pairinherited
- pressedTextColorDark ↔ Color
-
getter/setter pairinherited
- pressedTextColorLight ↔ Color
-
getter/setter pairinherited
- restBaseColorDark ↔ Color
-
getter/setter pairinherited
- restBaseColorLight ↔ Color
-
getter/setter pairinherited
- restBlurOverride ↔ double?
-
getter/setter pairinherited
- restButtonSnoozeBgDark ↔ Color
-
getter/setter pair
- restButtonSnoozeBgLight ↔ Color
-
getter/setter pair
- restButtonTakenBgDark ↔ Color
-
getter/setter pair
- restButtonTakenBgLight ↔ Color
-
getter/setter pair
- restButtonTextDark ↔ Color
-
getter/setter pair
- restButtonTextLight ↔ Color
-
getter/setter pair
- restDarkIntensityOverride ↔ double?
-
getter/setter pairinherited
- restDistanceOverride ↔ double?
-
getter/setter pairinherited
- restDosageColorDark ↔ Color
-
getter/setter pair
- restDosageColorLight ↔ Color
-
getter/setter pair
- restIconColorDark ↔ Color
-
getter/setter pairinherited
- restIconColorLight ↔ Color
-
getter/setter pairinherited
- restInstructionsBgColorDark ↔ Color
-
getter/setter pair
- restInstructionsBgColorLight ↔ Color
-
getter/setter pair
- restInstructionsColorDark ↔ Color
-
getter/setter pair
- restInstructionsColorLight ↔ Color
-
getter/setter pair
- restInstructionsIconColorDark ↔ Color
-
getter/setter pair
- restInstructionsIconColorLight ↔ Color
-
getter/setter pair
- restLightIntensityOverride ↔ double?
-
getter/setter pairinherited
- restNameColorDark ↔ Color
-
getter/setter pair
- restNameColorLight ↔ Color
-
getter/setter pair
- restOverrideEnabled ↔ bool
-
getter/setter pairinherited
- restTextColorDark ↔ Color
-
getter/setter pairinherited
- restTextColorLight ↔ Color
-
getter/setter pairinherited
- restTimerLabelColorDark ↔ Color
-
getter/setter pair
- restTimerLabelColorLight ↔ Color
-
getter/setter pair
- restTimerNormalColorDark ↔ Color
-
getter/setter pair
- restTimerNormalColorLight ↔ Color
-
getter/setter pair
- restTimerOverdueColorDark ↔ Color
-
getter/setter pair
- restTimerOverdueColorLight ↔ Color
-
getter/setter pair
- restTimerWarningColorDark ↔ Color
-
getter/setter pair
- restTimerWarningColorLight ↔ Color
-
getter/setter pair
- restVoiceHintColorDark ↔ Color
-
getter/setter pair
- restVoiceHintColorLight ↔ Color
-
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- showAnimatedBorder ↔ bool
-
getter/setter pairinherited
- snoozeDurationMinutes ↔ int
-
getter/setter pair
- timerLabelFontSize ↔ double
-
getter/setter pair
- timerValueFontSize ↔ double
-
getter/setter pair
- voiceHintFontSize ↔ double
-
getter/setter pair
- width ↔ double
-
getter/setter pairinherited
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be called when the object changes.
inherited
-
applyTheme(
GeneratedPalette palette) → void -
Apply colors from a GeneratedPalette to this component's state.
override
-
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
-
getBaseColor(
BuildContext context, bool isDisabled) → Color - Get base color based on disabled state
-
getButtonSnoozeBgColor(
BuildContext context, bool isDisabled) → Color - Get "Snooze" button background color based on disabled state
-
getButtonTakenBgColor(
BuildContext context, bool isDisabled) → Color - Get "Taken" button background color based on disabled state
-
getButtonTextColor(
BuildContext context, bool isDisabled) → Color - Get button text color based on disabled state
-
getComponentSpecificModifiedProperties(
) → Set< String> -
Get set of component-specific modified properties.
Called by getModifiedProperties() to include custom property tracking.
override
-
getDarkShadowColor(
bool isDarkMode) → Color -
Get the dark shadow color for neumorphic effects.
Uses palette colors when available, falls back to defaults otherwise.
inherited
-
getDefaultDimensions(
) → ({double height, double paddingH, double paddingV, double width}) -
Get component-specific default dimensions.
Returns a record with (width, height, paddingH, paddingV).
override
-
getDosageColor(
BuildContext context, bool isDisabled) → Color - Get dosage color based on disabled state
-
getEffectiveBlur(
dynamic state) → double -
Get effective blur for a given state (applies overrides if enabled).
Accepts either String ('rest', 'hover', 'pressed', 'disabled') or ComponentState enum.
inherited
-
getEffectiveBlurForDisabled(
bool isDisabled) → double - Get effective blur for rest/disabled state
-
getEffectiveBorderColor(
dynamic state) → Color -
Get effective border color for a given state.
Returns the animated border color.
Override in subclasses for state-specific border colors.
Accepts ComponentState enum or component-specific enum types.
inherited
-
getEffectiveBorderRadius(
dynamic state) → double -
Get effective border radius for a given state.
Most components use the same border radius for all states.
Override in subclasses for state-specific border radius.
Accepts ComponentState enum or component-specific enum types.
inherited
-
getEffectiveBorderWidth(
dynamic state) → double -
Get effective border width for a given state.
Returns the animated border width.
Override in subclasses for state-specific border widths.
Accepts ComponentState enum or component-specific enum types.
inherited
-
getEffectiveDarkIntensity(
dynamic state, [bool isDarkMode = false]) → double -
Get effective dark intensity for a given state.
Single argument version - assumes light mode for backward compatibility.
Accepts either String ('rest', 'hover', 'pressed', 'disabled') or ComponentState enum.
inherited
-
getEffectiveDarkIntensityForDisabled(
bool isDisabled, bool isDarkMode) → double - Get effective dark intensity for rest/disabled state
-
getEffectiveDistance(
dynamic state) → double -
Get effective distance for a given state (applies overrides if enabled).
Accepts either String ('rest', 'hover', 'pressed', 'disabled') or ComponentState enum.
inherited
-
getEffectiveDistanceForDisabled(
bool isDisabled) → double - Get effective distance for rest/disabled state
-
getEffectiveHeight(
dynamic state) → double -
Get effective height for a given state.
Most components use the same height for all states, so this defaults to
height. Override in subclasses for state-specific sizing. Accepts ComponentState enum or component-specific enum types.inherited -
getEffectiveLightIntensity(
dynamic state, [bool isDarkMode = false]) → double -
Get effective light intensity for a given state.
Single argument version - assumes light mode for backward compatibility.
Accepts either String ('rest', 'hover', 'pressed', 'disabled') or ComponentState enum.
inherited
-
getEffectiveLightIntensityForDisabled(
bool isDisabled, bool isDarkMode) → double - Get effective light intensity for rest/disabled state
-
getEffectiveWidth(
dynamic state) → double -
Get effective width for a given state.
Most components use the same width for all states, so this defaults to
width. Override in subclasses for state-specific sizing. Accepts ComponentState enum or component-specific enum types.inherited -
getIconColor(
BuildContext context, bool isDisabled) → Color - Get icon color based on disabled state
-
getInstructionsBgColor(
BuildContext context, bool isDisabled) → Color - Get instructions background color based on disabled state
-
getInstructionsColor(
BuildContext context, bool isDisabled) → Color - Get instructions text color based on disabled state
-
getInstructionsIconColor(
BuildContext context, bool isDisabled) → Color - Get instructions icon color based on disabled state
-
getLightShadowColor(
bool isDarkMode) → Color -
Get the light shadow color for neumorphic effects.
Uses palette colors when available, falls back to defaults otherwise.
inherited
-
getModifiedProperties(
) → Set< String> -
Get the set of property names that have been modified from defaults.
inherited
-
getNameColor(
BuildContext context, bool isDisabled) → Color - Get name color based on disabled state
-
getTimerColor(
BuildContext context, Duration timeUntilDose, bool isDisabled) → Color - Get timer color based on time until dose and disabled state
-
getTimerLabelColor(
BuildContext context, bool isDisabled) → Color - Get timer label color based on disabled state
-
getVoiceHintColor(
BuildContext context, bool isDisabled) → Color - Get voice hint color based on disabled state
-
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
-
resetComponentSpecificProperties(
) → void -
Reset component-specific properties to defaults.
Called by resetToDefaults() after resetting common properties.
override
-
resetToDefaults(
) → void -
Reset all properties to their default values.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- componentName → const String
- Component identifier for theme overrides and external access.