1
0
Fork 0
mirror of https://github.com/hawkeye-stan/msfs-popout-panel-manager.git synced 2024-11-22 05:40:11 +00:00
msfs-popout-panel-manager/Shared/WorkflowStepWithMessage.cs

45 lines
1.3 KiB
C#
Raw Permalink Normal View History

2023-08-16 03:41:14 +00:00
using System;
namespace MSFSPopoutPanelManager.Shared
{
public static class WorkflowStepWithMessage
{
public static bool Execute(string message, Func<bool> function, bool isSubTask = false)
2023-08-16 03:41:14 +00:00
{
if (isSubTask)
2023-08-17 06:03:17 +00:00
message = " - " + message;
2023-08-16 03:41:14 +00:00
StatusMessageWriter.WriteMessage(message, StatusMessageType.Info);
StatusMessageWriter.WriteExecutingStatusMessage();
var result = function.Invoke();
StatusMessageWriter.RemoveLastMessage();
if (result)
{
2023-08-16 03:41:14 +00:00
StatusMessageWriter.WriteOkStatusMessage();
return true;
}
2023-08-16 03:41:14 +00:00
else
{
2023-08-16 03:41:14 +00:00
StatusMessageWriter.WriteFailureStatusMessage();
return false;
}
2023-08-16 03:41:14 +00:00
}
public static void Execute(string message, Action function, bool isSubTask = false)
{
if (isSubTask)
2023-08-17 06:03:17 +00:00
message = " - " + message;
2023-08-16 03:41:14 +00:00
StatusMessageWriter.WriteMessage(message, StatusMessageType.Info);
StatusMessageWriter.WriteExecutingStatusMessage();
function.Invoke();
StatusMessageWriter.RemoveLastMessage();
StatusMessageWriter.WriteOkStatusMessage();
}
}
}