In this part, we’re going to cover Hyperlinks which go a little more in depth to methods we can pass into our FNotificationInfo. We will also cover some cool styling things we can do with icons on our notification and briefly touch on Styling slate if you would like to add your own custom icons.
If you haven’t followed the first tutorial, please give it a look, it has a lot of what we’ve already set up as foundation for this second tutorial and we will be continuing from that point.
Let’s continue then! …
In this tutorial, we’re going to cover creating notifications in Unreal Engine, similar to the “Lighting Build Completed” dialog boxes, or whenever Unreal asks something in the bottom right corner.
Here’s an example of what we’re going to be writing over the course of three parts, the top notification style is what we will be creating today, while the second will cover Hyperlinks and the third will require a bit more work to add buttons (restart/cancel).
If you’re here just for the code, know how it works but are forgetful like I am, a link to the Github repository that…
So! For the sake of future tutorials I plan to write on Medium, I thought it be best to do a quick write up on creating a widget for Slate in C++ with Unreal Engine. I will link back to this then from other tutorials for the sake of time.
To start with this tutorial, let’s create a C++ class deriving from UObject as SCompoundWidget, the class we really want to inherit from doesn’t appear in the Choose Parent Class list in editor.
In Unreal Engine, we can create our own Custom Details panels relatively easily by using the FPropertyEditorModule and passing it a custom class with listed UProperties instead of having to draw and generate our own Slate to display them.
For this project, we are going to use UE4.24 as any version higher does not come with the default template we would like to use. Let’s go ahead and create a new plugin, and we will use the “Editor Standalone Window” plugin template.
Once you have reloaded the Visual Studio Project, open the editor again and create a new default UObject…