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 Logger As Logger
Private ReadOnly Form As Form 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) Public Sub New(pLogConfig As LogConfig, pForm As Form)
LogConfig = pLogConfig LogConfig = pLogConfig
Logger = pLogConfig.GetLogger() Logger = pLogConfig.GetLogger()
Form = pForm Form = pForm
End Sub 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) Logger.Info(pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Info, pOptions)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Info)
End Function 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) Logger.Error(pException)
Dim oMethodName = GetMethodName() Dim oMethodName = GetMethodName()
@@ -31,28 +39,31 @@ Public Class FormHelper
oMessage &= vbNewLine & pException.StackTrace oMessage &= vbNewLine & pException.StackTrace
End If End If
Return ShowMessage(oMessage, pTitle, frmDialog.DialogType.Error) Return ShowMessage(oMessage, pTitle, frmDialog.DialogType.Error, pOptions)
End Function 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) Logger.Info(pTitle & " - " & pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Warning) Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Question, pOptions)
End Function 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) Logger.Info(pTitle & " - " & pMessage)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Question) Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Success, pOptions)
End Function End Function
Public Function ShowSuccessMessage(pMessage As String, pTitle As String) As DialogResult Private Function ShowMessage(pMessage As String, pTitle As String, pType As frmDialog.DialogType, pOptions As MessageOptions) As DialogResult
Logger.Info(pTitle & " - " & pMessage) Dim oOptions As MessageOptions = IIf(pOptions Is Nothing, New MessageOptions, pOptions)
Return ShowMessage(pMessage, pTitle, frmDialog.DialogType.Success) Dim oForm As New frmDialog(pMessage, pTitle, pType, oOptions.ShowCancel)
End Function
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.BringToFront()
oForm.TopMost = True oForm.TopMost = True
Return oForm.ShowDialog() Return oForm.ShowDialog()
End Function End Function