# 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.5/script-reference/unityengine/uielements.md)
* **Assembly:** UnityEngine.UIElementsModule
* **Inherits from:** [EventBase\<GeometryChangedEvent>](/engine/6000.5/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.5/script-reference/unityengine/uielements/geometrychangedevent/ctor.md) | Constructor. Avoid creating new event instances. Instead, use GetPooled() to get an instance from a pool of reusable event instances. |

## Properties

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

## Methods

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

## Static Methods

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