private void NewProjectForm_Load(object sender, EventArgs e) { PatcherForm owner = Owner as PatcherForm; PatcherFormSettings settings = owner.CurrentSettings; selectdirectorydialog.SelectedPath = settings.LastTargetDirectory; directorytextbox.Text = settings.LastTargetDirectory; //selectfilenamedialog.FileName = settings.LastProjectDirectory; }
private void selectdirectorybutton_Click(object sender, EventArgs e) { DialogResult result = selectdirectorydialog.ShowDialog(this); if (result == DialogResult.OK) { if (!Directory.EnumerateFiles(selectdirectorydialog.SelectedPath).Any((x) => Path.GetExtension(x) == ".dll")) { if (MessageBox.Show(this, "The specified directory does not contain any dll files. Continue anyway?", "Oxide Patcher", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No) { return; } } PatcherForm owner = Owner as PatcherForm; PatcherFormSettings settings = owner.CurrentSettings; settings.LastTargetDirectory = selectdirectorydialog.SelectedPath; settings.Save(); directorytextbox.Text = selectdirectorydialog.SelectedPath; } }
protected override void OnLoad(EventArgs e) { base.OnLoad(e); // Load oxide string oxidefilename = Path.Combine(Application.StartupPath, "Oxide.Core.dll"); if (!File.Exists(oxidefilename)) { MessageBox.Show("Failed to locate Oxide.dll!", "Oxide Patcher", MessageBoxButtons.OK, MessageBoxIcon.Error); Environment.Exit(0); return; } OxideAssembly = AssemblyDefinition.ReadAssembly(oxidefilename); // Load settings CurrentSettings = PatcherFormSettings.Load(); Location = CurrentSettings.FormPosition; Size = CurrentSettings.FormSize; WindowState = CurrentSettings.WindowState; assemblydict = new Dictionary <string, AssemblyDefinition>(); }