
# Interface: IDesignEditorDefinitionSetPrintArea

Provides properties to set up a print area.

For details, you can refer to the [SetPrintArea command](https://customerscanvas.com/dev/editors/ui-framework/widgets/design-editor-commands/set-print-area.html).
```
{
  "type": "design-editor",
  "name": "editor",
  "params": {
    "initial": { ... },
    "setPrintArea": {
      "options": {
        "preserveUserChanges": true,
        "updateRevertData": false
      },
      "data": {
        "designFile": "{{vars.designRoot + '/' + $['card-size']._.title}}"
      }
    }
  }
}
```

## Hierarchy

* [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md)

  ↳ **IDesignEditorDefinitionSetPrintArea**

## Index

### Properties

* [after](idesigneditordefinitionsetprintarea.md#optional-after)
* [autoCompile](idesigneditordefinitionsetprintarea.md#optional-autocompile)
* [data](idesigneditordefinitionsetprintarea.md#data)
* [executeOnce](idesigneditordefinitionsetprintarea.md#optional-executeonce)
* [executeOnlyAfter](idesigneditordefinitionsetprintarea.md#optional-executeonlyafter)
* [lock](idesigneditordefinitionsetprintarea.md#optional-lock)
* [message](idesigneditordefinitionsetprintarea.md#optional-message)
* [onExecuted](idesigneditordefinitionsetprintarea.md#optional-onexecuted)
* [options](idesigneditordefinitionsetprintarea.md#options)
* [showPreloader](idesigneditordefinitionsetprintarea.md#optional-showpreloader)
* [surfaceIndex](idesigneditordefinitionsetprintarea.md#optional-surfaceindex)
* [timeout](idesigneditordefinitionsetprintarea.md#optional-timeout)

## Properties

### `Optional` after

• **after**? : *string | string[]*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[after](idesigneditorcommanddefinition.md#optional-after)*

The next commands to be executed after this command completes.

___

### `Optional` autoCompile

• **autoCompile**? : *boolean*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[autoCompile](idesigneditorcommanddefinition.md#optional-autocompile)*

If `false`, action will never execute automatically.

___

###  data

• **data**: *CustomersCanvas.IframeApi.ObjectModel.IPrintAreaTemplate | CustomersCanvas.IframeApi.ObjectModel.IPrintAreaDefinition*

The print area [definition](https://customerscanvas.com/dev/editors/iframe-api/howto/update-surfaces.html).

___

### `Optional` executeOnce

• **executeOnce**? : *boolean*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[executeOnce](idesigneditorcommanddefinition.md#optional-executeonce)*

If `true`, this command will be executed only once.
You can use it for `initial` command.
For example, we need to change surface depending on the option value.
We write for `initial` and for `updateSurfaces` the same productDefinition with $['option]._
And set `executeOnce = true` for `initial`. And initial will be executed only once.

___

### `Optional` executeOnlyAfter

• **executeOnlyAfter**? : *string[]*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[executeOnlyAfter](idesigneditorcommanddefinition.md#optional-executeonlyafter)*

Current command will be executed in a next update only after all commands executed in this param.
The same example from `executeOnce` param.
We need to execute `updateSurface` on all next updates, exclude the first one.
And we set `executeOnlyAfter = ['initial']` for `updateSurface` command.

___

### `Optional` lock

• **lock**? : *string[]*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[lock](idesigneditorcommanddefinition.md#optional-lock)*

Name of widgets that show preloader when command executed.

___

### `Optional` message

• **message**? : *string | string[]*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[message](idesigneditorcommanddefinition.md#optional-message)*

The message for preloader.

___

### `Optional` onExecuted

• **onExecuted**? : *Function | Function[]*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[onExecuted](idesigneditorcommanddefinition.md#optional-onexecuted)*

Functions that executed after command

___

###  options

• **options**: *[ISetPrintAreaOptions](isetprintareaoptions.md)*

Additional configuration parameters. For details, see the [reference](https://customerscanvas.com/dev/editors/iframe-api/howto/update-surfaces.html).

___

### `Optional` showPreloader

• **showPreloader**? : *boolean*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[showPreloader](idesigneditorcommanddefinition.md#optional-showpreloader)*

If `true`, displays the preloader while executing this command.

___

### `Optional` surfaceIndex

• **surfaceIndex**? : *number*

The index of a surface that should be modified (the current surface if omitted).

___

### `Optional` timeout

• **timeout**? : *number*

*Inherited from [IDesignEditorCommandDefinition](idesigneditorcommanddefinition.md).[timeout](idesigneditorcommanddefinition.md#optional-timeout)*

The timeout for switching preloader messages.
