# events

> Window events: ready, open, close, size, loadError.

Source: https://docs.tryyoursize.com/reference/flutter/events/

*Property* · `tryyoursize (Dart)`

Window events: ready, open, close, size, loadError.

Event classes: `WindowReady`, `WindowOpened`, `WindowClosed`, `SizeSelected` (preselect `selection.size`) and `LoadError`.

```dart
Stream<TryYourSizeEvent> get events
```

## Example

**Flutter**

```dart
tys.events.listen((e) {
  if (e is SizeSelected) setState(() => size = e.selection.size);
  if (e is LoadError) debugPrint(e.error.code);
});
```

**Swift**

```swift
let sub = tys.on { event in
    switch event {
    case .size(let selection): selectedSize = selection.size   // "Use this size"
    case .loadError(let error): print(error.code)
    default: break
    }
}
```

**Kotlin**

```kotlin
val sub = tys.on { event ->
    when (event) {
        is TryYourSize.Event.Size -> selected = event.selection.size
        is TryYourSize.Event.LoadError -> Log.w("tys", event.error.code.wire)
        else -> Unit
    }
}
```

**React Native**

```tsx
const sub = addEventListener((e) => {
  if (e.type === "size") setSize(e.selection.size);
  if (e.type === "loaderror") console.warn(e.code);
});
```
