# GeometryChangedEvent

> This event is sent after layout calculations, when the position or the dimension of an element changes.

## Definition

* **Type:** Class
* **Namespace:** [UnityEngine.UIElements](/engine/6000.0/script-reference/unityengine/uielements.md)
* **Assembly:** UnityEngine.UIElementsModule
* **Inherits from:** [EventBase\<GeometryChangedEvent>](/engine/6000.0/script-reference/unityengine/uielements/eventbase1.md)
* **Implements:** [IDisposable](https://learn.microsoft.com/dotnet/api/system.idisposable)

```csharp
public class GeometryChangedEvent : EventBase<GeometryChangedEvent>, IDisposable
```

## Remarks

This event does not trickle down or bubble up. It cannot be cancelled.

## Constructors

| Constructor                                                                                                   | Description  |
| ------------------------------------------------------------------------------------------------------------- | ------------ |
| [GeometryChangedEvent()](/engine/6000.0/script-reference/unityengine/uielements/geometrychangedevent/ctor.md) | Constructor. |

## Properties

| Property                                                                                          | Description                         |
| ------------------------------------------------------------------------------------------------- | ----------------------------------- |
| [newRect](/engine/6000.0/script-reference/unityengine/uielements/geometrychangedevent/newrect.md) | Gets the elements's new dimensions. |
| [oldRect](/engine/6000.0/script-reference/unityengine/uielements/geometrychangedevent/oldrect.md) | Gets the element's old dimensions.  |

## Methods

| Method                                                                                      | Description                                      |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------ |
| [Init](/engine/6000.0/script-reference/unityengine/uielements/geometrychangedevent/init.md) | Resets the event values to their initial values. |

## Static Methods

| Method                                                                                                | Description                                                                                                                                                                                |
| ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [GetPooled](/engine/6000.0/script-reference/unityengine/uielements/geometrychangedevent/getpooled.md) | Gets an event from the event pool, and initializes it with the specified values. Use this method instead of instancing new events. Use Dispose() to release events back to the event pool. |

## Inheritance

**Inherited Members:**

* [EventBase\<GeometryChangedEvent>.TypeId()](/engine/6000.0/script-reference/unityengine/uielements/eventbase1/typeid.md)
* [EventBase\<GeometryChangedEvent>.GetPooled()](/engine/6000.0/script-reference/unityengine/uielements/eventbase1/getpooled.md)
* [EventBase\<GeometryChangedEvent>.Dispose()](/engine/6000.0/script-reference/unityengine/uielements/eventbase1/dispose.md)
* [EventBase\<GeometryChangedEvent>.eventTypeId](/engine/6000.0/script-reference/unityengine/uielements/eventbase1/eventtypeid.md)
* [EventBase.RegisterEventType()](/engine/6000.0/script-reference/unityengine/uielements/eventbase/registereventtype.md)
* [EventBase.PreDispatch(IPanel)](/engine/6000.0/script-reference/unityengine/uielements/eventbase/predispatch.md#predispatch\(ipanel\))
* [EventBase.PostDispatch(IPanel)](/engine/6000.0/script-reference/unityengine/uielements/eventbase/postdispatch.md#postdispatch\(ipanel\))
* [EventBase.StopPropagation()](/engine/6000.0/script-reference/unityengine/uielements/eventbase/stoppropagation.md)
* [EventBase.StopImmediatePropagation()](/engine/6000.0/script-reference/unityengine/uielements/eventbase/stopimmediatepropagation.md)
* [EventBase.timestamp](/engine/6000.0/script-reference/unityengine/uielements/eventbase/timestamp.md)
* [EventBase.bubbles](/engine/6000.0/script-reference/unityengine/uielements/eventbase/bubbles.md)
* [EventBase.tricklesDown](/engine/6000.0/script-reference/unityengine/uielements/eventbase/tricklesdown.md)
* [EventBase.target](/engine/6000.0/script-reference/unityengine/uielements/eventbase/target.md)
* [EventBase.isPropagationStopped](/engine/6000.0/script-reference/unityengine/uielements/eventbase/ispropagationstopped.md)
* [EventBase.isImmediatePropagationStopped](/engine/6000.0/script-reference/unityengine/uielements/eventbase/isimmediatepropagationstopped.md)
* [EventBase.propagationPhase](/engine/6000.0/script-reference/unityengine/uielements/eventbase/propagationphase.md)
* [EventBase.currentTarget](/engine/6000.0/script-reference/unityengine/uielements/eventbase/currenttarget.md)
* [EventBase.dispatch](/engine/6000.0/script-reference/unityengine/uielements/eventbase/dispatch.md)
* [EventBase.imguiEvent](/engine/6000.0/script-reference/unityengine/uielements/eventbase/imguievent.md)
* [EventBase.originalMousePosition](/engine/6000.0/script-reference/unityengine/uielements/eventbase/originalmouseposition.md)
* [EventBase.pooled](/engine/6000.0/script-reference/unityengine/uielements/eventbase/pooled.md)
