Skip to main content
Version: 15.x (API 15) [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​