45 lines
1.7 KiB
Dart
45 lines
1.7 KiB
Dart
import 'package:flutter/material.dart';
|
|
|
|
extension ContextExtension on BuildContext {
|
|
MediaQueryData get mediaQuery => MediaQuery.of(this);
|
|
}
|
|
|
|
extension MediaQueryExtension on BuildContext {
|
|
double get getHeight => mediaQuery.size.height;
|
|
double get getWidth => mediaQuery.size.width;
|
|
|
|
double get lowHeightValue => getHeight * 0.01;
|
|
double get mediumHeightValue => getHeight * 0.05;
|
|
double get highHeightValue => getHeight * 0.08;
|
|
|
|
double get lowWidthValue => getWidth * 0.01;
|
|
double get mediumWidthValue => getWidth * 0.05;
|
|
double get highWidthValue => getWidth * 0.08;
|
|
}
|
|
|
|
extension ThemeExtension on BuildContext {
|
|
ThemeData get theme => Theme.of(this);
|
|
TextTheme get textTheme => theme.textTheme;
|
|
ColorScheme get colors => theme.colorScheme;
|
|
}
|
|
|
|
extension PaddingExtension on BuildContext {
|
|
EdgeInsets get paddingHeightLow => EdgeInsets.all(lowHeightValue);
|
|
EdgeInsets get paddingHeightMedium => EdgeInsets.all(mediumHeightValue);
|
|
EdgeInsets get paddingHeightHigh => EdgeInsets.all(highHeightValue);
|
|
|
|
EdgeInsets get paddingWidthLow => EdgeInsets.all(lowWidthValue);
|
|
EdgeInsets get paddingWidthMedium => EdgeInsets.all(mediumWidthValue);
|
|
EdgeInsets get paddingWidthHigh => EdgeInsets.all(highWidthValue);
|
|
}
|
|
|
|
extension MarginExtension on BuildContext {
|
|
EdgeInsets get marginHeightLow => EdgeInsets.all(lowHeightValue);
|
|
EdgeInsets get marginHeightMedium => EdgeInsets.all(mediumHeightValue);
|
|
EdgeInsets get marginHeightHigh => EdgeInsets.all(highHeightValue);
|
|
|
|
EdgeInsets get marginWidthLow => EdgeInsets.all(lowWidthValue);
|
|
EdgeInsets get marginWidthMedium => EdgeInsets.all(mediumWidthValue);
|
|
EdgeInsets get marginWidthHigh => EdgeInsets.all(highWidthValue);
|
|
}
|