> For the complete documentation index, see [llms.txt](https://brixxbox.gitbook.io/brixxbox-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://brixxbox.gitbook.io/brixxbox-documentation/client-api-reference/functions/setenable.md).

# setEnable

Enables or disables a specific control.

### Parameters

1. controlId - id of the brixxbox control as a string
2. enable - (optional, default = true) bool value if the control should be enabled or not
3. subControl (optional) Some controls have sub Controls, that can be enabled or disabled. **Important: setEnable for subcontrols cannot be used in onAppStart, because some controls are not fully created at that time, use onAppInitialized instead**. Here is a list of possible subControls:
   * grids
     * inline - enables or disables the inline editing of a grid (Cell Editing)
     * buttons - enables or disables the buttons of a grid
     * buttonNew - enables or disables the new buttons of a grid
     * buttonDelete - enables or disables the delete buttons of a grid
     * buttonCopy - enables or disables the copy buttons of a grid

### Example Usages

1\. Simple

```javascript
   brixxApi.setEnable("myControlId"); //enables the control
   brixxApi.setEnable("myControlId", true); //enables the control
   brixxApi.setEnable("myControlId", false); //disables the control
```

2\. Disable the Grid inline edit feature

```javascript
   brixxApi.setEnable("myGridControl", false, "inline");
```

3\. Disable all data manipulating grid Toolbar Buttons

```javascript
   brixxApi.setEnable("myGridControl", false, "buttons");
```

4\. Disable a single grid Toolbar Buttons

```javascript
   brixxApi.setEnable("myGridControl", false, "buttonNew"); 
   brixxApi.setEnable("myGridControl", false, "buttonDelete"); 
   brixxApi.setEnable("myGridControl", false, "buttonCopy");
```
