# RuntimeContainer

## Overview

The `RuntimeContainer` class is designed to manage the styling of a container in a dynamic environment. One of its primary functions is to modify the visual appearance of the container by adding or removing style classes. This functionality allows for flexibility in managing the container’s style dynamically during runtime.

Additionally, the class provides methods to check for specific set of style classes in the container. This can be particularly useful for making conditional styling decisions based on the container's current style state.

For more granular control over the container's appearance, the `setCSSStyle()` and `removeCSSStyle()` methods may be used.

## Methods Summarized

| Type                                                                           | Name                                                       | Summary                                                                     |
| ------------------------------------------------------------------------------ | ---------------------------------------------------------- | --------------------------------------------------------------------------- |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [addStyleClasses(classes)](#addstyleclasses-classes)       | Adds one or more style classes to this container.                           |
| [Array](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/array)     | [getStyleClasses()](#getstyleclasses)                      | Returns all the style classes that are currently applied to this container. |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [hasStyleClasses(classes)](#hasstyleclasses-classes)       | returns true if this container has all the classes give.                    |
| void                                                                           | [removeCSSStyle(key)](#removecssstyle-key)                 | Removes a css style that was previously added.                              |
| [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) | [removeStyleClasses(classes)](#removestyleclasses-classes) | Removes one or more style classes to this container.                        |
| void                                                                           | [setCSSStyle(key, value)](#setcssstyle-key-value)          | Sets a css style to the container.                                          |

## Methods Detailed

### addStyleClasses(classes)

Adds one or more style classes to this container.

**Parameters**

* [Array](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/array) **classes** one or more class names

**Returns:** [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) true if the style classes were successfully added.

### getStyleClasses()

Returns all the style classes that are currently applied to this container.

**Returns:** [Array](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/array) an array of style class names.

### hasStyleClasses(classes)

returns true if this container has all the classes give.

**Parameters**

* [Array](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/array) **classes** one or more class names

**Returns:** [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) true if this container has all the specified classes.

### removeCSSStyle(key)

Removes a css style that was previously added.

**Parameters**

* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **key** css key to remove

**Returns:** void

### removeStyleClasses(classes)

Removes one or more style classes to this container.

**Parameters**

* [Array](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/array) **classes** one or more class names

**Returns:** [Boolean](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/boolean) true if the style classes were successfully removed.

### setCSSStyle(key, value)

Sets a css style to the container.

**Parameters**

* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **key** css key to add
* [String](https://docs.servoy.com/reference/servoycore/dev-api/js-lib/string) **value** css value to add

**Returns:** void

***
