# IGH_CanvasValidator interface

Namespace: [Grasshopper.GUI.Canvas](https://developer.rhino3d.com/api/gh1/namespace/grasshopper.gui.canvas.md) · Assembly: [Grasshopper](https://developer.rhino3d.com/api/gh1/assembly/grasshopper.md)

```cs
public interface IGH_CanvasValidator
```

'Interface used for limiting a collection of typical actions on the canvas. Do not implement this interface directly if you can help it, instead inherit from GH_CanvasValidator.

**Derived types:** [GH_CanvasValidator](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.gh-canvasvalidator.md)

## Methods

- [AddedToCanvas](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/addedtocanvas.md): This method will be called by the Canvas when this validator is added to it.
- [AppliesToDocument](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/appliestodocument.md): Test whether this validator applies to a specific document.
- [CanAcceptObject](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/canacceptobject.md): Validates whether a specific component can be accepted by the canvas at all.
- [CanCreateObject](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/cancreateobject.md): Validates whether a specific component may be inserted at a specific point.
- [CanCreateWire](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/cancreatewire.md): Validates whether a wire-operation can commence.
- [CanDeleteObject](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/candeleteobject.md): Validates whether a specific object can be deleted.
- [CanDeleteWire](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/candeletewire.md): Validates whether a wire can be deleted.
- [CanDragObject](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/candragobject.md): Validates whether some components can be dragged.
- [CanNavigateCanvas](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/cannavigatecanvas.md): Validates whether the canvas can be navigated (panning, zooming etc)
- [CanShowCanvasMenu](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/canshowcanvasmenu.md): Validates whether the canvas menus (both the radial and the old-fashioned one) are allowed to pop up at a specific point.
- [CanShowComponentSearchBox](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/canshowcomponentsearchbox.md): Validates whether the double-click-component-search-window is allowed to pop up at a specific point.
- [CanShowObjectMenu](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/canshowobjectmenu.md): Validates whether the object menu can be shown.
- [RemovedFromCanvas](https://developer.rhino3d.com/api/gh1/type/grasshopper.gui.canvas.igh-canvasvalidator/removedfromcanvas.md): This method will be called by the Canvas when this validator is removed from it.
