embed plugin loader directly into the launcher
This commit is contained in:
65
PluginLoader/GUI/ConfirmationDialog.cs
Normal file
65
PluginLoader/GUI/ConfirmationDialog.cs
Normal file
@@ -0,0 +1,65 @@
|
||||
using System.Text;
|
||||
using Sandbox;
|
||||
using Sandbox.Graphics.GUI;
|
||||
using VRage.Utils;
|
||||
using VRageMath;
|
||||
|
||||
namespace PluginLoader.GUI;
|
||||
|
||||
public static class ConfirmationDialog
|
||||
{
|
||||
public static MyGuiScreenMessageBox CreateMessageBox(
|
||||
MyMessageBoxStyleEnum styleEnum = MyMessageBoxStyleEnum.Error,
|
||||
MyMessageBoxButtonsType buttonType = MyMessageBoxButtonsType.OK,
|
||||
StringBuilder messageText = null,
|
||||
StringBuilder messageCaption = null,
|
||||
MyStringId? okButtonText = null,
|
||||
MyStringId? cancelButtonText = null,
|
||||
MyStringId? yesButtonText = null,
|
||||
MyStringId? noButtonText = null,
|
||||
Action<MyGuiScreenMessageBox.ResultEnum> callback = null,
|
||||
int timeoutInMiliseconds = 0,
|
||||
MyGuiScreenMessageBox.ResultEnum focusedResult = MyGuiScreenMessageBox.ResultEnum.YES,
|
||||
bool canHideOthers = true,
|
||||
Vector2? size = null,
|
||||
bool useOpacity = true,
|
||||
Vector2? position = null,
|
||||
bool focusable = true,
|
||||
bool canBeHidden = false,
|
||||
Action onClosing = null)
|
||||
{
|
||||
var num1 = (int)styleEnum;
|
||||
var num2 = (int)buttonType;
|
||||
var messageText1 = messageText;
|
||||
var messageCaption1 = messageCaption;
|
||||
var nullable = okButtonText;
|
||||
var okButtonText1 = nullable ?? MyCommonTexts.Ok;
|
||||
nullable = cancelButtonText;
|
||||
var cancelButtonText1 = nullable ?? MyCommonTexts.Cancel;
|
||||
nullable = yesButtonText;
|
||||
var yesButtonText1 = nullable ?? MyCommonTexts.Yes;
|
||||
nullable = noButtonText;
|
||||
var noButtonText1 = nullable ?? MyCommonTexts.No;
|
||||
var callback1 = callback;
|
||||
var timeoutInMiliseconds1 = timeoutInMiliseconds;
|
||||
var num3 = (int)focusedResult;
|
||||
var num4 = canHideOthers ? 1 : 0;
|
||||
var size1 = size;
|
||||
var num5 = useOpacity ? MySandboxGame.Config.UIBkOpacity : 1.0;
|
||||
var num6 = useOpacity ? MySandboxGame.Config.UIOpacity : 1.0;
|
||||
var position1 = position;
|
||||
var num7 = focusable ? 1 : 0;
|
||||
var num8 = canBeHidden ? 1 : 0;
|
||||
var onClosing1 = onClosing;
|
||||
var dlg = new MyGuiScreenMessageBox((MyMessageBoxStyleEnum)num1, (MyMessageBoxButtonsType)num2, messageText1,
|
||||
messageCaption1, okButtonText1, cancelButtonText1, yesButtonText1,
|
||||
noButtonText1, callback1, timeoutInMiliseconds1,
|
||||
(MyGuiScreenMessageBox.ResultEnum)num3, num4 != 0, size1, (float)num5,
|
||||
(float)num6, position1, num7 != 0, num8 != 0, onClosing1);
|
||||
|
||||
if (dlg.Controls.GetControlByName("MyGuiControlMultilineText") is MyGuiControlMultilineText text)
|
||||
text.TextAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_CENTER;
|
||||
|
||||
return dlg;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user