bevy_ninepatch 0.9.1

Displays 9-Patch UI elements in Bevy
Documentation
# Examples

## Source PNGs

The PNGs used as sources for the different examples are:

![panel](../assets/glassPanel_corners.png)
![button](../assets/blue_button02.png)
![corner panel](../assets/metalPanel_yellowCorner.png)

All assets are created by [Kenney](https://www.kenney.nl).

## As a plugin

### [plugin.rs]https://github.com/vleue/bevy_ninepatch/blob/main/examples/plugin.rs

Adding a simple 9-Patch UI element by using the `NinePatchBundle` component bundle.

![example with plugin](./plugin.png)

### [change_size.rs]https://github.com/vleue/bevy_ninepatch/blob/main/examples/change_size.rs

Changing the size of a 9-Patch UI element by modifying the `Style.size` component.

![changing size of component](./change_size.gif)

### [multi_content_with_content_map.rs]https://github.com/vleue/bevy_ninepatch/blob/main/examples/multi_content_with_content_map.rs

To set the content of a 9-Patch UI element, you can specify an `Entity` when setting the `NinePatchData` component. This `Entity` will be set as a children of the 9-Patch UI element.

![setting several contents](./multi_content.png)

### [multi_content_with_system.rs]https://github.com/vleue/bevy_ninepatch/blob/main/examples/multi_content_with_content_map.rs

When more flexibility is needed to set the content, it can be done by creating a system with a query on the `NinePatchContent` component.

### [full.rs]https://github.com/vleue/bevy_ninepatch/blob/main/examples/full.rs

Complete example with:
* a complex 9-Patch UI element with two different content zones and a top bar that has two different parts that can grow
* 9-Patch UI elements inside a 9-Patch UI element inside a 9-Patch UI element
* Some 9-Patch UI elements change size during time

![full example](./full.gif)