DartCodeViewerThemeData class

Holds the color, size, and text styles for a dart code viewer theme.

Use this class to configure a DartCodeViewerThemeData widget.

To obtain the current ambient dart code viewer theme, use DartCodeViewerTheme.of.

The parts of the dart code viewer are:

  • The 'data, which is the String that is supposed to be transformed into dart highlighted code.
  • The 'highlightedTextStyle' which the different type of highlighted code that can be highlighted differently.

The simplest way to create a DartCodeThemeData is to use the copyWith on the one you get from DartCodeViewerTheme.of, or create an entirely new one with DartCodeViewerThemeData.

{@tool dartpad --template=stateless_widget_scaffold}

Here is an example of a small string that shows up as Dart code in a flutter application. With DartCodeViewerThemeData applied

@override
Widget build(BuildContext context) {
  return DartCodeViewerTheme(
    data: DartCodeViewerThemeData(
      backgroundColor: Colors.pink,
      child: DartCodeViewer(r'class DartCodeViewer extends StatelessWidget {}'),
    );
  );
}

{@end-tool}

See also:

  • DartCodeViewerThemeData, which describes the actual configuration of a DartCodeViewerTheme
  • Code viewer online tool is a useful tool that lets you choose the color for each different style. On the left side you put your example code and on the right you can choose the colors you want the code viewer to display. background => backgroundColor plain text => baseStyle Punctuation => punctuationStyle String, values => stringStyle Keywords, tags => keywordStyle Comments => commentStyle Types => classStyle Numbers => numberStyle Declarations => constantStyle
Mixed in types
Annotations

Constructors

DartCodeViewerThemeData({TextStyle baseStyle, TextStyle classStyle, TextStyle commentStyle, TextStyle constantStyle, TextStyle keywordStyle, TextStyle numberStyle, TextStyle punctuationStyle, TextStyle stringStyle, Color backgroundColor, Text copyButtonText, bool showCopyButton, double height, double width})
const

Properties

backgroundColor Color
The background Color of the code. By default it is Theme.of(context).colorScheme.background.
final
baseStyle TextStyle
The text style for the plain text in code.
final
classStyle TextStyle
The text style for the code types in the code. [...]
final
commentStyle TextStyle
The text style for the commented out code.
final
constantStyle TextStyle
The text style for the constant style code.
final
copyButtonText Text
The text shown in the copy button by default it is 'COPY ALL'.
final
hashCode int
The hash code for this object. [...]
read-only, override
height double
The height of the DartCodeViewer by default it uses the MediaQuery.of(context).size.height
final
keywordStyle TextStyle
The text style for keywords. For example: [...]
final
numberStyle TextStyle
The text style for numbers within the code.
final
punctuationStyle TextStyle
The text style for punctuation code like periods and commas.
final
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
showCopyButton bool
Shows copy button that lets user copy all the code as a raw string. By default the button is showing.
final
stringStyle TextStyle
The text style for Strings. For example the data when using the Text widget.
final
width double
The width of the DartCodeViewer by default it uses the MediaQuery.of(context).size.width
final

Methods

copyWith({TextStyle baseStyle, TextStyle classStyle, TextStyle commentStyle, TextStyle constantStyle, TextStyle keywordStyle, TextStyle numberStyle, TextStyle punctuationStyle, TextStyle stringStyle, Color backgroundColor, Text copyButtonText, bool showCopyButton, double height, double width}) DartCodeViewerThemeData
Creates a copy of this object but with the given fields replaced with the new values.
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node. [...]
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toDiagnosticsNode({String name, DiagnosticsTreeStyle style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep. [...]
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object. [...]
inherited
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode. [...]
inherited

Operators

operator ==(Object other) bool
The equality operator. [...]
override

Static Methods

lerp(DartCodeViewerThemeData a, DartCodeViewerThemeData b, double t) DartCodeViewerThemeData
Linearly interpolate between two dart code viewer themes. [...]