Skip to main content

Class: Renderer

Defined in: packages/blockly/core/renderers/common/renderer.ts:25

The base class for a block renderer.

Extended by​

Implements​

Properties index​

PropertyDescription
constants_The renderer's constant provider.
name-
overridesRendering constant overrides, passed in through options.

Methods index​

MethodDescription
getClassNameGets the class name that identifies this renderer.
initInitialize the renderer.
refreshDomRefresh the renderer after a theme change.
disposeDispose of this renderer. Delete all DOM elements that this renderer and its constants created.
makeConstants_Create a new instance of the renderer's constant provider.
makeRenderInfo_Create a new instance of the renderer's render info object.
makeDrawer_Create a new instance of the renderer's drawer.
makePathObjectCreate a new instance of a renderer path object.
getConstantsGet the current renderer's constant provider. We assume that when this is called, the renderer has already been initialized.
shouldHighlightConnectionDetermine whether or not to highlight a connection.
orphanCanConnectAtEndChecks if an orphaned block can connect to the "end" of the topBlock's block-clump. If the clump is a row the end is the last input. If the clump is a stack, the end is the last next connection. If the clump is neither, then this returns false.

Constructors​

Constructor​

new Renderer(name): Renderer;

Defined in: packages/blockly/core/renderers/common/renderer.ts:39

Parameters​

ParameterTypeDescription
namestringThe renderer name.

Returns​

Renderer

Properties​

constants_​

protected constants_: ConstantProvider;

Defined in: packages/blockly/core/renderers/common/renderer.ts:27

The renderer's constant provider.


name​

protected name: string;

Defined in: packages/blockly/core/renderers/common/renderer.ts:29


overrides​

protected overrides: object | null = null;

Defined in: packages/blockly/core/renderers/common/renderer.ts:34

Rendering constant overrides, passed in through options.

Methods​

getClassName()​

getClassName(): string;

Defined in: packages/blockly/core/renderers/common/renderer.ts:48

Gets the class name that identifies this renderer.

Returns​

string

The CSS class name.


init()​

init(theme, opt_rendererOverrides?): void;

Defined in: packages/blockly/core/renderers/common/renderer.ts:58

Initialize the renderer.

Parameters​

ParameterTypeDescription
themeThemeThe workspace theme object.
opt_rendererOverrides?{ [rendererConstant: string]: any; }Rendering constant overrides.

Returns​

void


refreshDom()​

refreshDom(
svg,
theme,
injectionDivIfIsParent?
): void;

Defined in: packages/blockly/core/renderers/common/renderer.ts:108

Refresh the renderer after a theme change.

Parameters​

ParameterTypeDescription
svgSVGElementThe root of the workspace's SVG.
themeThemeThe workspace theme object.
injectionDivIfIsParent?HTMLElementThe div containing the parent workspace and all related workspaces and block containers, if this renderer is for the parent workspace. CSS variables representing SVG patterns will be scoped to this container. Child workspaces should not override the CSS variables created by the parent and thus do not need access to the injection div.

Returns​

void


dispose()​

dispose(): void;

Defined in: packages/blockly/core/renderers/common/renderer.ts:130

Dispose of this renderer. Delete all DOM elements that this renderer and its constants created.

Returns​

void


makeConstants_()​

protected makeConstants_(): ConstantProvider;

Defined in: packages/blockly/core/renderers/common/renderer.ts:141

Create a new instance of the renderer's constant provider.

Returns​

ConstantProvider

The constant provider.


makeRenderInfo_()​

protected makeRenderInfo_(block): RenderInfo;

Defined in: packages/blockly/core/renderers/common/renderer.ts:151

Create a new instance of the renderer's render info object.

Parameters​

ParameterTypeDescription
blockBlockSvgThe block to measure.

Returns​

RenderInfo

The render info object.


makeDrawer_()​

protected makeDrawer_(block, info): Drawer;

Defined in: packages/blockly/core/renderers/common/renderer.ts:163

Create a new instance of the renderer's drawer.

Parameters​

ParameterTypeDescription
blockBlockSvgThe block to render.
infoRenderInfoAn object containing all information needed to render this block.

Returns​

Drawer

The drawer.


makePathObject()​

makePathObject(root, style): IPathObject;

Defined in: packages/blockly/core/renderers/common/renderer.ts:174

Create a new instance of a renderer path object.

Parameters​

ParameterTypeDescription
rootSVGElementThe root SVG element.
styleBlockStyleThe style object to use for colouring.

Returns​

IPathObject

The renderer path object.


getConstants()​

getConstants(): ConstantProvider;

Defined in: packages/blockly/core/renderers/common/renderer.ts:184

Get the current renderer's constant provider. We assume that when this is called, the renderer has already been initialized.

Returns​

ConstantProvider

The constant provider.


shouldHighlightConnection()​

shouldHighlightConnection(connection): boolean;

Defined in: packages/blockly/core/renderers/common/renderer.ts:194

Determine whether or not to highlight a connection.

Parameters​

ParameterTypeDescription
connectionRenderedConnectionThe connection to determine whether or not to highlight.

Returns​

boolean

True if we should highlight the connection.


orphanCanConnectAtEnd()​

protected orphanCanConnectAtEnd(
topBlock,
orphanBlock,
localType
): boolean;

Defined in: packages/blockly/core/renderers/common/renderer.ts:210

Checks if an orphaned block can connect to the "end" of the topBlock's block-clump. If the clump is a row the end is the last input. If the clump is a stack, the end is the last next connection. If the clump is neither, then this returns false.

Parameters​

ParameterTypeDescription
topBlockBlockSvgThe top block of the block clump we want to try and connect to.
orphanBlockBlockSvgThe orphan block that wants to find a home.
localTypenumberThe type of the connection being dragged.

Returns​

boolean

Whether there is a home for the orphan or not.