From ab13655f7a4efd20a1f1f8c84842450d9ab7dbc0 Mon Sep 17 00:00:00 2001 From: WilloPortable Date: Thu, 12 Dec 2024 17:42:53 +0100 Subject: [PATCH] Add project files. --- orchestrator-ui.sln | 25 ++++ orchestrator-ui/MainUI.Designer.cs | 162 +++++++++++++++++++++++++ orchestrator-ui/MainUI.cs | 66 ++++++++++ orchestrator-ui/MainUI.resx | 120 ++++++++++++++++++ orchestrator-ui/Program.cs | 17 +++ orchestrator-ui/orchestrator-ui.csproj | 12 ++ 6 files changed, 402 insertions(+) create mode 100644 orchestrator-ui.sln create mode 100644 orchestrator-ui/MainUI.Designer.cs create mode 100644 orchestrator-ui/MainUI.cs create mode 100644 orchestrator-ui/MainUI.resx create mode 100644 orchestrator-ui/Program.cs create mode 100644 orchestrator-ui/orchestrator-ui.csproj diff --git a/orchestrator-ui.sln b/orchestrator-ui.sln new file mode 100644 index 0000000..2eafe02 --- /dev/null +++ b/orchestrator-ui.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.10.35027.167 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "orchestrator-ui", "orchestrator-ui\orchestrator-ui.csproj", "{FD7C4C9C-B075-43CE-8146-D030633F649F}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {FD7C4C9C-B075-43CE-8146-D030633F649F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FD7C4C9C-B075-43CE-8146-D030633F649F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FD7C4C9C-B075-43CE-8146-D030633F649F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FD7C4C9C-B075-43CE-8146-D030633F649F}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {2C99DD72-6D41-462B-A0B7-A6F7AFCDF3CE} + EndGlobalSection +EndGlobal diff --git a/orchestrator-ui/MainUI.Designer.cs b/orchestrator-ui/MainUI.Designer.cs new file mode 100644 index 0000000..1fe7a1c --- /dev/null +++ b/orchestrator-ui/MainUI.Designer.cs @@ -0,0 +1,162 @@ +namespace orchestrator_ui +{ + partial class MainUI + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + sourceBox = new ComboBox(); + modeBox = new ComboBox(); + destinationBox = new ComboBox(); + extraBox = new TextBox(); + entryName = new TextBox(); + button1 = new Button(); + literalBox = new CheckBox(); + saveButton = new Button(); + listView1 = new ListView(); + SuspendLayout(); + // + // sourceBox + // + sourceBox.FormattingEnabled = true; + sourceBox.Items.AddRange(new object[] { "BASE_DIR" }); + sourceBox.Location = new Point(354, 12); + sourceBox.Name = "sourceBox"; + sourceBox.Size = new Size(119, 28); + sourceBox.TabIndex = 1; + sourceBox.Text = "BASE_DIR"; + // + // modeBox + // + modeBox.FormattingEnabled = true; + modeBox.Items.AddRange(new object[] { "COPY", "COPY_DIR" }); + modeBox.Location = new Point(476, 12); + modeBox.Name = "modeBox"; + modeBox.Size = new Size(119, 28); + modeBox.TabIndex = 2; + modeBox.Text = "COPY"; + // + // destinationBox + // + destinationBox.FormattingEnabled = true; + destinationBox.Items.AddRange(new object[] { "PLUGINS" }); + destinationBox.Location = new Point(232, 12); + destinationBox.Name = "destinationBox"; + destinationBox.Size = new Size(119, 28); + destinationBox.TabIndex = 3; + destinationBox.Text = "PLUGINS"; + // + // extraBox + // + extraBox.Location = new Point(599, 13); + extraBox.Name = "extraBox"; + extraBox.PlaceholderText = "Extra"; + extraBox.Size = new Size(125, 27); + extraBox.TabIndex = 4; + // + // entryName + // + entryName.Location = new Point(104, 13); + entryName.Name = "entryName"; + entryName.PlaceholderText = "Entry Name"; + entryName.Size = new Size(125, 27); + entryName.TabIndex = 5; + // + // button1 + // + button1.Location = new Point(731, 13); + button1.Name = "button1"; + button1.Size = new Size(26, 29); + button1.TabIndex = 6; + button1.Text = "+"; + button1.UseVisualStyleBackColor = true; + button1.Click += button1_Click; + // + // literalBox + // + literalBox.AutoSize = true; + literalBox.Location = new Point(12, 15); + literalBox.Name = "literalBox"; + literalBox.Size = new Size(72, 24); + literalBox.TabIndex = 7; + literalBox.Text = "Literal"; + literalBox.UseVisualStyleBackColor = true; + // + // saveButton + // + saveButton.Location = new Point(762, 13); + saveButton.Name = "saveButton"; + saveButton.Size = new Size(26, 29); + saveButton.TabIndex = 8; + saveButton.Text = "S"; + saveButton.UseVisualStyleBackColor = true; + saveButton.Click += saveButton_Click; + // + // listView1 + // + listView1.AutoArrange = false; + listView1.GridLines = true; + listView1.LabelEdit = true; + listView1.LabelWrap = false; + listView1.Location = new Point(12, 45); + listView1.Name = "listView1"; + listView1.Size = new Size(776, 393); + listView1.TabIndex = 9; + listView1.UseCompatibleStateImageBehavior = false; + listView1.View = View.List; + // + // MainUI + // + AutoScaleDimensions = new SizeF(8F, 20F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(800, 450); + Controls.Add(listView1); + Controls.Add(saveButton); + Controls.Add(literalBox); + Controls.Add(button1); + Controls.Add(entryName); + Controls.Add(extraBox); + Controls.Add(destinationBox); + Controls.Add(modeBox); + Controls.Add(sourceBox); + Name = "MainUI"; + Text = "Orchestrator UI"; + ResumeLayout(false); + PerformLayout(); + } + + #endregion + private ComboBox sourceBox; + private ComboBox modeBox; + private ComboBox destinationBox; + private TextBox extraBox; + private TextBox entryName; + private Button button1; + private CheckBox literalBox; + private Button saveButton; + private ListView listView1; + } +} diff --git a/orchestrator-ui/MainUI.cs b/orchestrator-ui/MainUI.cs new file mode 100644 index 0000000..b0df19e --- /dev/null +++ b/orchestrator-ui/MainUI.cs @@ -0,0 +1,66 @@ +using System.Text; + +namespace orchestrator_ui +{ + public partial class MainUI : Form + { + + private string FileName; + + public MainUI() + { + OpenFileDialog openFileDialog = new OpenFileDialog(); + openFileDialog.ShowDialog(); + FileName = openFileDialog.FileName; + if (!FileName.EndsWith(".settings")) + { + MessageBox.Show("Error! Only .settings file can be loaded"); + Application.Exit(); + return; + } + + string[] lines = File.ReadAllLines(FileName); + + InitializeComponent(); + + foreach (string line in lines) + { + listView1.Items.Add(line); + } + } + + private void button1_Click(object sender, EventArgs e) + { + bool isLiteral = literalBox.Checked; + String entry = entryName.Text; + String destination = destinationBox.Text; + String source = sourceBox.Text; + String mode = modeBox.Text; + String extra = extraBox.Text; + + StringBuilder stringBuilder = new StringBuilder(); + if (isLiteral) + { + stringBuilder.Append("LITERAL "); + } + + stringBuilder.Append(entry).Append(",").Append(destination).Append(",").Append(source).Append(",").Append(mode); + + if (extra.Trim().Length > 0) + { + stringBuilder.Append(" ").Append(extra); + } + + listView1.Items.Add(stringBuilder.ToString()); + } + + private void saveButton_Click(object sender, EventArgs e) + { + List list = new List(); + foreach (ListViewItem item in listView1.Items) { + list.Add(item.Text); + } + File.WriteAllLines(FileName, list.ToArray()); + } + } +} diff --git a/orchestrator-ui/MainUI.resx b/orchestrator-ui/MainUI.resx new file mode 100644 index 0000000..af32865 --- /dev/null +++ b/orchestrator-ui/MainUI.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/orchestrator-ui/Program.cs b/orchestrator-ui/Program.cs new file mode 100644 index 0000000..aabf01f --- /dev/null +++ b/orchestrator-ui/Program.cs @@ -0,0 +1,17 @@ +namespace orchestrator_ui +{ + internal static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + // To customize application configuration such as set high DPI settings or default font, + // see https://aka.ms/applicationconfiguration. + ApplicationConfiguration.Initialize(); + Application.Run(new MainUI()); + } + } +} \ No newline at end of file diff --git a/orchestrator-ui/orchestrator-ui.csproj b/orchestrator-ui/orchestrator-ui.csproj new file mode 100644 index 0000000..b7ee157 --- /dev/null +++ b/orchestrator-ui/orchestrator-ui.csproj @@ -0,0 +1,12 @@ + + + + WinExe + net8.0-windows + orchestrator_ui + enable + true + enable + + + \ No newline at end of file