---
title: "ItemHandler | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/ItemHandler/"
---

# ItemHandler

> - [`BaseRectangleItemHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseRectangleItemHandler.md#baserectangleitemhandler)

## Classes

### ItemHandler

#### Extended by

#### Constructors

##### Constructor

```ts
new ItemHandler(item?): ItemHandler;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `item?` | `Item` |

###### Returns

[`ItemHandler`](#itemhandler)

#### Properties

##### ENABLED

```ts
readonly static ENABLED: true = true;
```

##### LEVEL

```ts
readonly static LEVEL: 0.8 = 0.8;
```

##### typeName

```ts
readonly static typeName: string = "ItemHandler";
```

#### Accessors

##### blendMode

###### Get Signature

```ts
get blendMode(): any;
```

###### Returns

`any`

##### bounds

###### Get Signature

```ts
get bounds(): RectangleF;
```

###### Returns

`RectangleF`

##### canvas

###### Get Signature

```ts
get canvas(): ICanvas;
```

###### Returns

[`ICanvas`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/ICanvas.md#icanvas)

###### Set Signature

```ts
set canvas(value): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `value` | [`ICanvas`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/ICanvas.md#icanvas) |

###### Returns

`void`

##### changeItemOnUpdate

###### Get Signature

```ts
get changeItemOnUpdate(): boolean;
```

###### Returns

`boolean`

###### Set Signature

```ts
set changeItemOnUpdate(value): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `value` | `boolean` |

###### Returns

`void`

##### controlPoints

###### Get Signature

```ts
get controlPoints(): PointF[];
```

###### Returns

`PointF`[]

###### Set Signature

```ts
set controlPoints(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | `PointF`[] |

###### Returns

`void`

##### hasLayoutAncestor

###### Get Signature

```ts
get hasLayoutAncestor(): boolean;
```

###### Returns

`boolean`

##### index

###### Get Signature

```ts
get index(): number;
```

###### Returns

`number`

##### isLoadingImage

###### Get Signature

```ts
get isLoadingImage(): boolean;
```

###### Returns

`boolean`

###### Set Signature

```ts
set isLoadingImage(value): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `value` | `boolean` |

###### Returns

`void`

##### isNormalRenderingType

###### Get Signature

```ts
get isNormalRenderingType(): boolean;
```

###### Returns

`boolean`

##### isUpdating

###### Get Signature

```ts
get isUpdating(): boolean;
```

###### Returns

`boolean`

##### item

###### Get Signature

```ts
get item(): Item;
```

###### Returns

`Item`

###### Set Signature

```ts
set item(item): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `item` | `Item` |

###### Returns

`void`

##### layer

###### Get Signature

```ts
get layer(): Layer;
```

###### Returns

[`Layer`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/Layer.md#layer)

###### Set Signature

```ts
set layer(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | [`Layer`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/Layer.md#layer) |

###### Returns

`void`

##### locked

###### Get Signature

```ts
get locked(): boolean;
```

###### Returns

`boolean`

###### Set Signature

```ts
set locked(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | `boolean` |

###### Returns

`void`

##### name

###### Get Signature

```ts
get name(): string;
```

###### Returns

`string`

###### Set Signature

```ts
set name(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | `string` |

###### Returns

`void`

##### parentGroupItemHandler

###### Get Signature

```ts
get parentGroupItemHandler(): GroupItemHandler;
```

###### Returns

[`GroupItemHandler`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/GroupItemHandler.md#groupitemhandler)

##### ready

###### Get Signature

```ts
get ready(): boolean;
```

###### Returns

`boolean`

##### renderState

###### Get Signature

```ts
get renderState(): RenderState;
```

###### Returns

[`RenderState`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/RenderState.md#renderstate)

###### Set Signature

```ts
set renderState(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | [`RenderState`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/RenderState.md#renderstate) |

###### Returns

`void`

##### tag

###### Get Signature

```ts
get tag(): any;
```

###### Returns

`any`

###### Set Signature

```ts
set tag(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | `any` |

###### Returns

`void`

##### uniqueId

###### Get Signature

```ts
get uniqueId(): string;
```

###### Returns

`string`

###### Set Signature

```ts
set uniqueId(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | `string` |

###### Returns

`void`

##### visible

###### Get Signature

```ts
get visible(): boolean;
```

###### Returns

`boolean`

###### Set Signature

```ts
set visible(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | `boolean` |

###### Returns

`void`

#### Methods

##### addChanged()

```ts
addChanged(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`) => `any` |

###### Returns

`void`

##### addChanging()

```ts
addChanging(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`) => `any` |

###### Returns

`void`

##### addItemPropertyChanged()

```ts
addItemPropertyChanged(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`, `propertyName`) => `any` |

###### Returns

`void`

##### addReady()

```ts
addReady(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`) => `any` |

###### Returns

`void`

##### beginUpdate()

```ts
beginUpdate(): void;
```

###### Returns

`void`

##### dispose()

```ts
dispose(): void;
```

###### Returns

`void`

##### draw()

```ts
draw(
   itemHandlerCtx, 
   clippingPath, 
   textureCanvas, 
   textureCanvasCtx, 
   memoryCanvas, 
   memoryCanvasCtx, 
   canvasRenderer, 
   isMasked): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `itemHandlerCtx` | `CanvasRenderingContext2D` |
| `clippingPath` | `Path` |
| `textureCanvas` | `HTMLCanvasElement` |
| `textureCanvasCtx` | `CanvasRenderingContext2D` |
| `memoryCanvas` | `HTMLCanvasElement` |
| `memoryCanvasCtx` | `CanvasRenderingContext2D` |
| `canvasRenderer` | [`ICanvasRenderer`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/ICanvasRenderer.md#icanvasrenderer) |
| `isMasked` | `boolean` |

###### Returns

`void`

##### drawItemHandler()

```ts
drawItemHandler(itemHandlerCtx, originalCtx?): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `itemHandlerCtx` | `CanvasRenderingContext2D` |
| `originalCtx?` | `CanvasRenderingContext2D` |

###### Returns

`void`

##### endTransform()

```ts
endTransform(
   changed, 
   resized, 
   supressOnChanged?): void;
```

###### Parameters

| Parameter | Type | Default value |
| ------ | ------ | ------ |
| `changed` | `boolean` | `undefined` |
| `resized` | `boolean` | `undefined` |
| `supressOnChanged` | `boolean` | `false` |

###### Returns

`void`

##### endUpdate()

```ts
endUpdate(): void;
```

###### Returns

`void`

##### getChangedEvent()

```ts
getChangedEvent(): any;
```

###### Returns

`any`

##### getChangingEvent()

```ts
getChangingEvent(): any;
```

###### Returns

`any`

##### getColors()

```ts
getColors(): Color[];
```

###### Returns

`Color`[]

##### getData()

###### Call Signature

```ts
getData(type): ItemHandlerData;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `type` | `"asObject"` |

###### Returns

[`ItemHandlerData`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/ItemHandlerData.md#itemhandlerdata)

###### Call Signature

```ts
getData(): string;
```

###### Returns

`string`

##### getPermissions()

```ts
getPermissions(): Permission;
```

###### Returns

[`Permission`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/Permission.md#permission)

##### getTypeName()

```ts
getTypeName(): string;
```

###### Returns

`string`

##### hasBlendMode()

```ts
hasBlendMode(): boolean;
```

###### Returns

`boolean`

##### hitTest()

```ts
hitTest(point): IHitTestResult;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `point` | `PointF` |

###### Returns

[`IHitTestResult`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/IHitTestResult.md#ihittestresult)

##### initialize()

```ts
initialize(): void;
```

###### Returns

`void`

##### isEmpty()

```ts
isEmpty(): boolean;
```

###### Returns

`boolean`

##### isHighlightNeeded()

```ts
isHighlightNeeded(): boolean;
```

###### Returns

`boolean`

##### isLocked()

```ts
isLocked(): boolean;
```

###### Returns

`boolean`

##### isVisible()

```ts
isVisible(): boolean;
```

###### Returns

`boolean`

##### onErrorResponse()

```ts
onErrorResponse(error, activeCall?): void;
```

###### Parameters

| Parameter | Type | Default value |
| ------ | ------ | ------ |
| `error` | `any` | `undefined` |
| `activeCall` | [`WebServiceCallType`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/Common.md#webservicecalltype) | `WebServiceCallType.Item` |

###### Returns

`void`

##### onSuccessResponse()

```ts
onSuccessResponse(activeCall?): void;
```

###### Parameters

| Parameter | Type | Default value |
| ------ | ------ | ------ |
| `activeCall` | [`WebServiceCallType`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/Common.md#webservicecalltype) | `WebServiceCallType.Item` |

###### Returns

`void`

##### processEvent()

```ts
processEvent(e): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `e` | `any` |

###### Returns

`void`

##### quickUpdate()

```ts
quickUpdate(): void;
```

###### Returns

`void`

##### raiseChanged()

```ts
raiseChanged(): void;
```

###### Returns

`void`

##### raiseChanging()

```ts
raiseChanging(param?): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `param?` | `Item` |

###### Returns

`void`

##### removeChanged()

```ts
removeChanged(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`) => `any` |

###### Returns

`void`

##### removeChanging()

```ts
removeChanging(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`) => `any` |

###### Returns

`void`

##### removeItemPropertyChanged()

```ts
removeItemPropertyChanged(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`, `propertyName`) => `any` |

###### Returns

`void`

##### removeReady()

```ts
removeReady(handler): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `handler` | (`sender`) => `any` |

###### Returns

`void`

##### resetPermissions()

```ts
resetPermissions(): void;
```

###### Returns

`void`

##### setData()

```ts
setData(v): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `v` | `any` |

###### Returns

`void`

##### startTransform()

```ts
startTransform(): void;
```

###### Returns

`void`

##### update()

```ts
update(beforeUpdate?, afterUpdate?): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `beforeUpdate?` | `Function` |
| `afterUpdate?` | `Function` |

###### Returns

`void`

##### updateActiveColorWebServiceCall()

```ts
updateActiveColorWebServiceCall(callPromise, updateForAll): Promise<void>;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `callPromise` | [`ICancelablePromise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/Common.Namespace.Utils.md#icancelablepromise)\<`any`\> |
| `updateForAll` | `boolean` |

###### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`void`\>

##### updateAsync()

```ts
updateAsync(beforeUpdate?, afterUpdate?): Promise<void>;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `beforeUpdate?` | `Function` |
| `afterUpdate?` | `Function` |

###### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`void`\>

##### updated()

```ts
updated(): void;
```

###### Returns

`void`

##### updateForExternalCanvas()

```ts
updateForExternalCanvas(canvas): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `canvas` | [`ICanvas`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/ICanvas.md#icanvas) |

###### Returns

`void`

##### updateItem()

```ts
updateItem(item): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `item` | `Item` |

###### Returns

`void`

##### validateActiveColorWebServiceCall()

```ts
validateActiveColorWebServiceCall(): void;
```

###### Returns

`void`

##### waitUpdate()

```ts
waitUpdate(): Promise<void>;
```

###### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`void`\>

##### isGroupHandler()

```ts
static isGroupHandler(itemHandler): itemHandler is IGroupHandler;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `itemHandler` | `any` |

###### Returns

`itemHandler is IGroupHandler`

## Interfaces

### IGroupHandler

#### Methods

##### isChildVisible()

```ts
isChildVisible(childItemHandler): any;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `childItemHandler` | [`ItemHandler`](#itemhandler) |

###### Returns

`any`
