aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS.MFSProfiler/Infobox.cs
diff options
context:
space:
mode:
authorMichael <[email protected]>2017-06-23 20:20:38 -0400
committerMichael <[email protected]>2017-06-23 20:20:38 -0400
commit1661f9a5bd46dbd7d2586787c55bfc407c027629 (patch)
treed5ff99e5cc8f3db8a9236b247886866601b915b9 /ShiftOS.MFSProfiler/Infobox.cs
parent42a7829864cd6cf2dff2a21f9dbed208b154c6f7 (diff)
downloadshiftos_thereturn-1661f9a5bd46dbd7d2586787c55bfc407c027629.tar.gz
shiftos_thereturn-1661f9a5bd46dbd7d2586787c55bfc407c027629.tar.bz2
shiftos_thereturn-1661f9a5bd46dbd7d2586787c55bfc407c027629.zip
hacking work
Me: [squeaky] IT'S WORKING!! Phil: Michael... You just creeped me out...
Diffstat (limited to 'ShiftOS.MFSProfiler/Infobox.cs')
-rw-r--r--ShiftOS.MFSProfiler/Infobox.cs87
1 files changed, 87 insertions, 0 deletions
diff --git a/ShiftOS.MFSProfiler/Infobox.cs b/ShiftOS.MFSProfiler/Infobox.cs
new file mode 100644
index 0000000..a30ac5a
--- /dev/null
+++ b/ShiftOS.MFSProfiler/Infobox.cs
@@ -0,0 +1,87 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace ShiftOS.MFSProfiler
+{
+ public partial class Infobox : Form
+ {
+ public Infobox()
+ {
+ InitializeComponent();
+ }
+
+ public Action<string> TextCallback = null;
+ public Action<bool> YesNoCallback = null;
+
+ public string MessageText
+ {
+ get
+ {
+ return lbmessage.Text;
+ }
+ set
+ {
+ lbmessage.Text = value;
+ }
+ }
+
+ public bool ShowText
+ {
+ get { return txtinput.Visible; }
+ set { txtinput.Visible = value; }
+ }
+
+ public bool ShowYesNo
+ {
+ get { return btnyes.Parent.Visible; }
+ set { btnyes.Parent.Visible = value; }
+ }
+
+ public static void PromptYesNo(string title, string message, Action<bool> callback)
+ {
+ var inf = new Infobox();
+ inf.ShowText = false;
+ inf.ShowYesNo = true;
+ inf.Text = title;
+ inf.MessageText = message;
+ inf.YesNoCallback = callback;
+ inf.ShowDialog();
+ }
+
+ public static void PromptText(string title, string message, Action<string> callback)
+ {
+ var inf = new Infobox();
+ inf.ShowYesNo = false;
+ inf.ShowText = true;
+ inf.Text = title;
+ inf.MessageText = message;
+ inf.TextCallback = callback;
+ inf.ShowDialog();
+ }
+
+ private void btnyes_Click(object sender, EventArgs e)
+ {
+ YesNoCallback?.Invoke(true);
+ this.Close();
+ }
+
+ private void btnno_Click(object sender, EventArgs e)
+ {
+ YesNoCallback?.Invoke(false);
+ this.Close();
+ }
+
+ private void btnok_Click(object sender, EventArgs e)
+ {
+ TextCallback?.Invoke(txtinput.Text);
+ this.Close();
+ }
+ }
+}