# `GlyphsToolDraw`

*Protocol*

## Declaration

```swift
@MainActor protocol GlyphsToolDraw : GlyphsToolAuxiliaryDrawing
```

```objc
@protocol GlyphsToolDraw <GlyphsToolAuxiliaryDrawing>
```

```python
GlyphsToolDraw
```

## Topics

### Instance Properties

- [`GlyphsToolDraw.interfaceVersion`](/Core/GlyphsApp/GlyphsToolDraw/interfaceVersion) — The interface version.
- [`GlyphsToolDraw.title`](/Core/GlyphsApp/GlyphsToolDraw/title) — The title of the plugin.

### Instance Methods

- [`GlyphsToolDraw drawLayer:atPoint:asActive:attributes:`](/Core/GlyphsApp/GlyphsToolDraw/drawLayer:atPoint:asActive:attributes:) — Draws the foreground for the Layer.
- [`GlyphsToolDraw drawBackgroundForLayer:atPoint:asActive:`](/Core/GlyphsApp/GlyphsToolDraw/drawBackgroundForLayer:atPoint:asActive:) — Draws the background for the Layer.
- [`GlyphsToolDraw drawBackgroundForLayer:options:`](/Core/GlyphsApp/GlyphsToolDraw/drawBackgroundForLayer:options:) — Draws the background for the active layer.
- [`GlyphsToolDraw drawBackgroundForInactiveLayer:options:`](/Core/GlyphsApp/GlyphsToolDraw/drawBackgroundForInactiveLayer:options:) — is called for each not active layer to draws the background for it
- [`GlyphsToolDraw drawForegroundForLayer:options:`](/Core/GlyphsApp/GlyphsToolDraw/drawForegroundForLayer:options:) — Draws the foreground for the Layer.
- [`GlyphsToolDraw drawMetricsForLayer:atPoint:asActive:`](/Core/GlyphsApp/GlyphsToolDraw/drawMetricsForLayer:atPoint:asActive:)
- [`GlyphsToolDraw drawPreview:`](/Core/GlyphsApp/GlyphsToolDraw/drawPreview:) — Draw something is the preview
- [`GlyphsToolDraw inspectorViewControllers`](/Core/GlyphsApp/GlyphsToolDraw/inspectorViewControllers) — Return a list of NSViewControllers to place in the inspector box.
- [`GlyphsToolDraw modifierChanged:`](/Core/GlyphsApp/GlyphsToolDraw/modifierChanged:)
- [`GlyphsToolDraw viewWillDraw`](/Core/GlyphsApp/GlyphsToolDraw/viewWillDraw) — to prepare drawing outside of the redraw cycle
- [`GlyphsToolDraw viewWillDraw:`](/Core/GlyphsApp/GlyphsToolDraw/viewWillDraw:) — Called before the drawing of the view is refreshed.
- [`GlyphsToolDraw willActivate`](/Core/GlyphsApp/GlyphsToolDraw/willActivate) — Is called when the tool becomes active
- [`GlyphsToolDraw willDeactivate`](/Core/GlyphsApp/GlyphsToolDraw/willDeactivate) — Is called when the tool is deactivated
- [`GlyphsToolDraw willSelectTempTool:`](/Core/GlyphsApp/GlyphsToolDraw/willSelectTempTool:) — delegate method to prevent the selection of a temporary tool.

## Relationships

### Inherits From

- [`GlyphsToolAuxiliaryDrawing`](/Core/GlyphsApp/GlyphsToolAuxiliaryDrawing)

### Conforming Types

- [`GlyphsPathPlugin`](/Core/GlyphsApp/GlyphsPathPlugin)

