getEffectiveDistance method

double getEffectiveDistance(
  1. dynamic state
)

Get effective distance for a given state (applies overrides if enabled). Accepts either String ('rest', 'hover', 'pressed', 'disabled') or ComponentState enum.

Implementation

double getEffectiveDistance(dynamic state) {
  final stateStr = _normalizeState(state);
  switch (stateStr) {
    case 'rest':
      return restOverrideEnabled && restDistanceOverride != null
          ? restDistanceOverride!
          : distance;
    case 'hover':
      return hoverOverrideEnabled && hoverDistanceOverride != null
          ? hoverDistanceOverride!
          : distance;
    case 'pressed':
      return pressedOverrideEnabled && pressedDistanceOverride != null
          ? pressedDistanceOverride!
          : 2.0; // Pressed default from Theme Creator
    case 'disabled':
      return disabledOverrideEnabled && disabledDistanceOverride != null
          ? disabledDistanceOverride!
          : 2.0; // Disabled default from Theme Creator
    default:
      return distance;
  }
}