ThemeManager class
Manages the active theme at runtime, supports custom themes, and converts Neomage themes to Flutter ThemeData.
Constructors
- ThemeManager.withTheme(NeomageTheme theme)
-
Allow construction for testing with a specific initial theme.
factory
Properties
- currentTheme → NeomageTheme
-
The currently active theme.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
themeStream
→ Stream<
NeomageTheme> -
Stream that emits whenever the theme changes.
no setter
Methods
-
customTheme(
{required String name, required NeomageColorScheme colors, NeomageTextTheme? text, NeomageComponentTheme? components, SyntaxTheme? syntax}) → void - Register and activate a user-defined theme.
-
dispose(
) → void - Release resources. Call when the application shuts down.
-
exportTheme(
) → Map< String, dynamic> - Serialise the current theme to a map suitable for JSON encoding.
-
getAvailableThemes(
) → List< ThemeInfo> - Returns metadata for every available theme (built-in + custom).
-
importTheme(
Map< String, dynamic> map) → void - Import a theme from a previously exported map and activate it.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
setTheme(
String name) → void - Switch to a named built-in or custom theme.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- instance → ThemeManager
-
Singleton instance.
final
Static Methods
-
applyComponentOverrides(
ThemeData base, NeomageComponentTheme comp) → ThemeData - Apply NeomageComponentTheme overrides to an existing ThemeData.
-
toMaterialTheme(
NeomageColorScheme colors) → ThemeData - Convert a NeomageColorScheme to a Flutter ThemeData.