render method
Renders this display object with the given renderState
.
The display object is rendered without its filters.
Implementation
@override
void render(RenderState renderState) {
_refreshTextLineMetrics();
if (renderState.renderContext is RenderContextWebGL || _cacheAsBitmap) {
_refreshCache(renderState.globalMatrix);
renderState.renderTextureQuad(_renderTextureQuad!);
} else if (renderState.renderContext is RenderContextCanvas) {
final renderContextCanvas =
renderState.renderContext as RenderContextCanvas;
renderContextCanvas.setTransform(renderState.globalMatrix);
renderContextCanvas.setAlpha(renderState.globalAlpha);
_renderText(renderContextCanvas.rawContext);
}
// draw cursor for INPUT text fields
_caretTime += renderState.deltaTime;
if (_type == TextFieldType.INPUT) {
final stage = this.stage;
if (stage != null &&
stage.focus == this &&
_caretTime.remainder(0.8) < 0.4) {
final x1 = _caretX;
final y1 = _caretY;
final x3 = _caretX + _caretWidth;
final y3 = _caretY + _caretHeight;
final color = _defaultTextFormat.color;
renderState.renderTriangle(x1, y1, x3, y1, x3, y3, color);
renderState.renderTriangle(x1, y1, x3, y3, x1, y3, color);
}
}
}