Skip to main content
Version: 14.x (API 14) [Current]

Class Notification

Represents a blueprint for a notification.

Assembly: Dalamud.dll
Declaration
public sealed record Notification : INotification, IEquatable<Notification>

Implements:
Dalamud.Interface.ImGuiNotification.INotification, System.IEquatable<Dalamud.Interface.ImGuiNotification.Notification>

Properties

DefaultDuration

Gets the default value for Dalamud.Interface.ImGuiNotification.Notification.InitialDuration and Dalamud.Interface.ImGuiNotification.Notification.ExtensionDurationSinceLastInterest.

Declaration
public static TimeSpan DefaultDuration { get; }

Content

Gets or sets the content body of the notification.

Declaration
public string Content { get; set; }

Title

Gets or sets the title of the notification.

Declaration
public string? Title { get; set; }

MinimizedText

Gets or sets the text to display when the notification is minimized.

Declaration
public string? MinimizedText { get; set; }

Type

Gets or sets the type of the notification.

Declaration
public NotificationType Type { get; set; }

Icon

Gets or sets the icon source, in case Dalamud.Interface.ImGuiNotification.INotification.IconTexture is not set.

Declaration
public INotificationIcon? Icon { get; set; }

IconTexture

Gets or sets a texture that will be used in place of Dalamud.Interface.ImGuiNotification.INotification.Icon if set.

Declaration
public ISharedImmediateTexture? IconTexture { get; set; }

HardExpiry

Gets or sets the hard expiry.

Declaration
public DateTime HardExpiry { get; set; }
Remarks

Setting this value will override Dalamud.Interface.ImGuiNotification.INotification.InitialDuration and Dalamud.Interface.ImGuiNotification.INotification.ExtensionDurationSinceLastInterest, in that the notification will be dismissed when this expiry expires.

Set to System.DateTime.MaxValue to make only Dalamud.Interface.ImGuiNotification.INotification.InitialDuration take effect.

If both Dalamud.Interface.ImGuiNotification.INotification.HardExpiry and Dalamud.Interface.ImGuiNotification.INotification.InitialDuration are MaxValue, then the notification will not expire after a set time. It must be explicitly dismissed by the user or via calling Dalamud.Interface.ImGuiNotification.IActiveNotification.DismissNow().

Updating this value will reset the dismiss timer.

InitialDuration

Gets or sets the initial duration.

Declaration
public TimeSpan InitialDuration { get; set; }
Remarks

Set to System.TimeSpan.MaxValue to make only Dalamud.Interface.ImGuiNotification.INotification.HardExpiry take effect.

ExtensionDurationSinceLastInterest

Gets or sets the new duration for this notification once the mouse cursor leaves the window and the window is no longer focused.

Declaration
public TimeSpan ExtensionDurationSinceLastInterest { get; set; }
Remarks

If set to System.TimeSpan.Zero or less, then this feature is turned off, and hovering the mouse on the notification or focusing on it will not make the notification stay.

Updating this value will reset the dismiss timer.

ShowIndeterminateIfNoExpiry

Gets or sets a value indicating whether to show an indeterminate expiration animation if Dalamud.Interface.ImGuiNotification.INotification.HardExpiry is set to System.DateTime.MaxValue.

Declaration
public bool ShowIndeterminateIfNoExpiry { get; set; }

RespectUiHidden

Gets or sets a value indicating whether to respect the current UI visibility state.

Declaration
public bool RespectUiHidden { get; set; }

Minimized

Gets or sets a value indicating whether the notification has been minimized.

Declaration
public bool Minimized { get; set; }

UserDismissable

Gets or sets a value indicating whether the user can dismiss the notification by themselves.

Declaration
public bool UserDismissable { get; set; }
Remarks

Consider adding a cancel button to Dalamud.Interface.ImGuiNotification.IActiveNotification.DrawActions.

Progress

Gets or sets the progress for the background progress bar of the notification.

Declaration
public float Progress { get; set; }
Remarks

The progress should be in the range between 0 and 1.

Methods

ToString()

Declaration
public override string ToString()
Returns

System.String

GetHashCode()

Declaration
public override int GetHashCode()
Returns

System.Int32

Equals(object?)

Declaration
public override bool Equals(object? obj)
Returns

System.Boolean

Parameters
TypeName
System.Objectobj

Equals(Notification?)

Declaration
public bool Equals(Notification? other)
Returns

System.Boolean

Parameters
TypeName
Dalamud.Interface.ImGuiNotification.Notificationother

Implements