Notification
A Notification instance can be used to inform the user about various events. For a Notification instance to be displayed in Rhino, it must be added to the <b>NotificationCenter</b> . When added, it will be displayed in the Notifications panel in Rhino. A Notification contains 1 to 3 buttons that are automatically wired to its <b>ButtonClicked</b> Action if it is not null. The buttons are displayed when the Notification is shown modally by either the user clicking on a particular notification in the Notifications panel, or by programatically showing it using <b>ShowModal</b> . Currently, only process-wide notifications are supported; document specific notifications are not possible. Notification instances contain metadata that can be added, modified, or removed during its life. The metadata is important for LINQ queries and other patterns. For example, a particular action may require that multiple notifications be modified. Thus, a LINQ query can be performed on the <b>NotificationCenter</b> using metadata to retrieve related Notification objects and modify them as a batch. Notification objects implement <b>IAssemblyRestrictedObject</b> . By default, a Notification can be editedby any assembly, but explicitly specifing allowed assemblies in the constructor changes this behavior. Notification objects are not thread-safe and should only be manipulated in UI thread.