Common/FormHelper: Add ShowErrorMessage variant

This commit is contained in:
Jonathan Jenne 2022-09-14 14:20:56 +02:00
parent 8be0180716
commit e85110996a

View File

@ -6,19 +6,27 @@ Public Class FormHelper
Private ReadOnly Logger As Logger
Private ReadOnly Form As Form
Public Class MessageOptions
Public Property ShowCancel As Boolean = False
End Class
Public Sub New(pLogConfig As LogConfig, pForm As Form)
LogConfig = pLogConfig
Logger = pLogConfig.GetLogger()
Form = pForm
End Sub
Public Function ShowInfoMessage(pMessage As String, pTitle As String) As DialogResult
Public Function ShowInfoMessage(pMessage As String, pTitle As String, Optional pOptions As MessageOptions = Nothing) As DialogResult
Logger.Info(pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Info)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Info, pOptions)
End Function
Public Function ShowErrorMessage(pException As Exception, pTitle As String) As DialogResult
Public Function ShowErrorMessage(pMessage As String, pTitle As String, Optional pOptions As MessageOptions = Nothing) As DialogResult
Logger.Error(pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Error, pOptions)
End Function
Public Function ShowErrorMessage(pException As Exception, pTitle As String, Optional pOptions As MessageOptions = Nothing) As DialogResult
Logger.Error(pException)
Dim oMethodName = GetMethodName()
@ -31,28 +39,31 @@ Public Class FormHelper
oMessage &= vbNewLine & pException.StackTrace
End If
Return ShowMessage(oMessage, pTitle, frmDialog.DialogType.Error)
Return ShowMessage(oMessage, pTitle, frmDialog.DialogType.Error, pOptions)
End Function
Public Function ShowWarningMessage(pMessage As String, pTitle As String) As DialogResult
Public Function ShowWarningMessage(pMessage As String, pTitle As String, Optional pOptions As MessageOptions = Nothing) As DialogResult
Logger.Warn(pTitle & " - " & pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Warning, pOptions)
End Function
Public Function ShowQuestionMessage(pMessage As String, pTitle As String, Optional pOptions As MessageOptions = Nothing) As DialogResult
Logger.Info(pTitle & " - " & pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Warning)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Question, pOptions)
End Function
Public Function ShowQuestionMessage(pMessage As String, pTitle As String) As DialogResult
Public Function ShowSuccessMessage(pMessage As String, pTitle As String, Optional pOptions As MessageOptions = Nothing) As DialogResult
Logger.Info(pTitle & " - " & pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Question)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Success, pOptions)
End Function
Public Function ShowSuccessMessage(pMessage As String, pTitle As String) As DialogResult
Logger.Info(pTitle & " - " & pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Success)
End Function
Private Function ShowMessage(pMessage As String, pTitle As String, pType As frmDialog.DialogType, pOptions As MessageOptions) As DialogResult
Dim oOptions As MessageOptions = IIf(pOptions Is Nothing, New MessageOptions, pOptions)
Dim oForm As New frmDialog(pMessage, pTitle, pType, oOptions.ShowCancel)
Private Function ShowMessage(pMessage As String, pTitle As String, pType As frmDialog.DialogType) As DialogResult
Dim oForm As New frmDialog(pMessage, pTitle, pType)
oForm.BringToFront()
oForm.TopMost = True
Return oForm.ShowDialog()
End Function