TTileSize class

Defines tile-specific size metrics and typography configurations, extending TSize.

Predefined presets are modeled after heading levels (TTileSize.h1 to TTileSize.h7) and product/image dimensions (TTileSize.sm, TTileSize.md, TTileSize.lg).

Inheritance
Available extensions

Constructors

TTileSize({double minW = 0, double minH = 0, double hPad = 0, double vPad = 0, double font = 14, double icon = 20, double radius = 6, double spacing = 4, double? subtitleFont, double? subtitleGap, double? descFont, double? descGap})
const

Properties

borderRadius → BorderRadius
no setterinherited
descFont → double?
Font size for the description. If null, falls back to switch/formula resolution.
final
descGap → double?
Gap between top row (or subtitle) and description. If null, falls back to switch/formula resolution.
final
font → double
Font size for text.
finalinherited
fontSize → double
no setterinherited
hashCode → int
The hash code for this object.
no setteroverride
height → double
no setterinherited
hPad → double
Horizontal padding.
finalinherited
icon → double
Primary icon size.
finalinherited
iconSize → double
no setterinherited
minH → double
Minimum height of the element.
finalinherited
minimumSizeState → WidgetStateProperty<Size>
no setterinherited
minW → double
Minimum width of the element.
finalinherited
padding → EdgeInsets
no setterinherited
paddingState → WidgetStateProperty<EdgeInsets>
no setterinherited
radius → double
Corner border radius.
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
spacing → double
Horizontal or vertical spacing between elements.
finalinherited
subtitleFont → double?
Font size for the subtitle. If null, falls back to switch/formula resolution.
final
subtitleGap → double?
Gap between title and subtitle. If null, falls back to switch/formula resolution.
final
tilePaddingState → WidgetStateProperty<EdgeInsets>
no setterinherited
vPad → double
Vertical padding.
finalinherited
width → double
no setterinherited

Methods

copyWith({double? minW, double? minH, double? hPad, double? vPad, double? font, double? icon, double? radius, double? spacing, double? subtitleFont, double? subtitleGap, double? descFont, double? descGap}) → TTileSize
Creates a copy with updated metrics.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
resolveDescFontSize() → double

Available on TSize, provided by the TTileSizeExtension extension

Resolves the description font size.
resolveDescGap() → double

Available on TSize, provided by the TTileSizeExtension extension

Resolves the gap between top row and description.
resolveSubtitleFontSize() → double

Available on TSize, provided by the TTileSizeExtension extension

Resolves the subtitle font size.
resolveSubtitleGap() → double

Available on TSize, provided by the TTileSizeExtension extension

Resolves the gap between title and subtitle.
scale(double factor) → TSize
Scales all metrics by the given factor.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator *(double factor) → TSize
Multiplies all size metrics by factor.
inherited
operator ==(Object other) → bool
The equality operator.
override

Constants

h1 → const TTileSize
Heading 1: Extra-large tile for hero headers and main dashboards. (font: 24.0, icon: 32.0, radius: 16.0, hPad/vPad: 12.0, spacing: 16.0, subtitle: 15.0, subGap: 4.0, desc: 14.0, descGap: 8.0).
h2 → const TTileSize
Heading 2: Large tile for major section headers and modal titles. (font: 20.0, icon: 28.0, radius: 14.0, hPad/vPad: 10.0, spacing: 14.0, subtitle: 14.0, subGap: 3.5, desc: 13.0, descGap: 7.0).
h3 → const TTileSize
Heading 3: Medium-large tile for secondary sections and large card headers. (font: 18.0, icon: 24.0, radius: 12.0, hPad: 9.0, vPad: 9.0, spacing: 13.0, subtitle: 13.0, subGap: 3.0, desc: 12.5, descGap: 6.0).
h4 → const TTileSize
Heading 4: Standard prominent tile for regular cards and dialog sections. (font: 16.0, icon: 22.0, radius: 12.0, hPad/vPad: 8.0, spacing: 12.0, subtitle: 12.5, subGap: 2.5, desc: 12.0, descGap: 5.0).
h5 → const TTileSize
Heading 5: Standard default tile for lists, accordions, and table cells. (font: 14.0, icon: 20.0, radius: 12.0, hPad/vPad: 8.0, spacing: 12.0, subtitle: 12.0, subGap: 2.0, desc: 11.5, descGap: 4.0).
h6 → const TTileSize
Heading 6: Compact/dense tile for tight lists, sidebars, and dense table rows. (font: 12.5, icon: 16.0, radius: 8.0, hPad/vPad: 6.0, spacing: 10.0, subtitle: 11.0, subGap: 1.5, desc: 10.5, descGap: 4.0).
h7 → const TTileSize
Heading 7: Extra-compact tile for nested rows (e.g. batch lines under an accordion). (font: 11.5, icon: 14.0, radius: 6.0, hPad/vPad: 4.0, spacing: 8.0, subtitle: 10.0, subGap: 1.0, desc: 9.5, descGap: 3.0).
lg → const TTileSize
Large product/image tile focusing on image dimensions (100px) with balanced typography. (font: 18.0, icon: 100.0, radius: 12.0, hPad/vPad: 8.0, spacing: 16.0, subtitle: 14.0, subGap: 3.0, desc: 13.0, descGap: 6.0).
md → const TTileSize
Medium product/image tile focusing on image dimensions (75px) with balanced typography. (font: 16.0, icon: 75.0, radius: 10.0, hPad/vPad: 8.0, spacing: 14.0, subtitle: 13.0, subGap: 2.5, desc: 12.0, descGap: 5.0).
sm → const TTileSize
Small product/image tile focusing on image dimensions (50px) with balanced typography. (font: 14.0, icon: 50.0, radius: 8.0, hPad/vPad: 8.0, spacing: 12.0, subtitle: 12.0, subGap: 2.0, desc: 11.5, descGap: 4.0).