Complete changes for manual mapper
This commit is contained in:
parent
91d35a592e
commit
03552ed411
519
RecodeItGUI/GUI/Main.Designer.cs
generated
519
RecodeItGUI/GUI/Main.Designer.cs
generated
@ -31,8 +31,17 @@ partial class ReCodeItForm
|
|||||||
TabPageRemapper = new TabPage();
|
TabPageRemapper = new TabPage();
|
||||||
RemapTreeView = new TreeView();
|
RemapTreeView = new TreeView();
|
||||||
groupBox1 = new GroupBox();
|
groupBox1 = new GroupBox();
|
||||||
|
RemapperUseForceRename = new CheckBox();
|
||||||
|
RemapperUnseal = new CheckBox();
|
||||||
|
RemapperPublicicize = new CheckBox();
|
||||||
|
RemapperOutputDirectoryPath = new TextBox();
|
||||||
|
TargetAssemblyPath = new TextBox();
|
||||||
|
RenamePropertiesCheckbox = new CheckBox();
|
||||||
|
OutputDirectoryButton = new Button();
|
||||||
EditRemapButton = new Button();
|
EditRemapButton = new Button();
|
||||||
|
PickAssemblyPathButton = new Button();
|
||||||
ConstuctorCountUpDown = new NumericUpDown();
|
ConstuctorCountUpDown = new NumericUpDown();
|
||||||
|
RenameFieldsCheckbox = new CheckBox();
|
||||||
ConstructorCountEnabled = new CheckBox();
|
ConstructorCountEnabled = new CheckBox();
|
||||||
LoadMappingFileButton = new Button();
|
LoadMappingFileButton = new Button();
|
||||||
SaveMappingFileButton = new Button();
|
SaveMappingFileButton = new Button();
|
||||||
@ -123,31 +132,23 @@ partial class ReCodeItForm
|
|||||||
AutoMapperExcludeTypesAddButton = new Button();
|
AutoMapperExcludeTypesAddButton = new Button();
|
||||||
AutoMapperTypesExcludeBox = new ListBox();
|
AutoMapperTypesExcludeBox = new ListBox();
|
||||||
tabPage5 = new TabPage();
|
tabPage5 = new TabPage();
|
||||||
|
groupBox4 = new GroupBox();
|
||||||
|
CrossPatcherUnsealEnabled = new CheckBox();
|
||||||
|
CrossPatchingPublicizeEnabled = new CheckBox();
|
||||||
|
groupBox3 = new GroupBox();
|
||||||
|
CrossPatchingRunButton = new Button();
|
||||||
|
textBox4 = new TextBox();
|
||||||
|
CrossPatchingBuildDirButton = new Button();
|
||||||
|
textBox3 = new TextBox();
|
||||||
|
textBox1 = new TextBox();
|
||||||
|
textBox2 = new TextBox();
|
||||||
|
CrossPatchingMappingChooseButton = new Button();
|
||||||
|
CrossPatchingOrigAssemblyButton = new Button();
|
||||||
|
CrossMappingOutputChooseButton = new Button();
|
||||||
SettingsTab = new TabPage();
|
SettingsTab = new TabPage();
|
||||||
groupBox2 = new GroupBox();
|
groupBox2 = new GroupBox();
|
||||||
SilentModeCheckbox = new CheckBox();
|
SilentModeCheckbox = new CheckBox();
|
||||||
DebugLoggingCheckbox = new CheckBox();
|
DebugLoggingCheckbox = new CheckBox();
|
||||||
CrossPatchingBuildDirButton = new Button();
|
|
||||||
textBox1 = new TextBox();
|
|
||||||
CrossPatchingMappingChooseButton = new Button();
|
|
||||||
CrossMappingOutputChooseButton = new Button();
|
|
||||||
CrossPatchingOrigAssemblyButton = new Button();
|
|
||||||
textBox2 = new TextBox();
|
|
||||||
textBox3 = new TextBox();
|
|
||||||
textBox4 = new TextBox();
|
|
||||||
groupBox3 = new GroupBox();
|
|
||||||
groupBox4 = new GroupBox();
|
|
||||||
CrossPatcherUnsealEnabled = new CheckBox();
|
|
||||||
CrossPatchingPublicizeEnabled = new CheckBox();
|
|
||||||
CrossPatchingRunButton = new Button();
|
|
||||||
this.RemapperUnsealCheckbox = new CheckBox();
|
|
||||||
RenamePropertiesCheckbox = new CheckBox();
|
|
||||||
this.RemapperPublicizeCheckbox = new CheckBox();
|
|
||||||
OutputDirectoryButton = new Button();
|
|
||||||
RenameFieldsCheckbox = new CheckBox();
|
|
||||||
PickAssemblyPathButton = new Button();
|
|
||||||
this.RemapperOutputPathTextBox = new TextBox();
|
|
||||||
this.RemapperAssemblyPathTextBox = new TextBox();
|
|
||||||
TabPageRemapper.SuspendLayout();
|
TabPageRemapper.SuspendLayout();
|
||||||
groupBox1.SuspendLayout();
|
groupBox1.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)ConstuctorCountUpDown).BeginInit();
|
((System.ComponentModel.ISupportInitialize)ConstuctorCountUpDown).BeginInit();
|
||||||
@ -165,10 +166,10 @@ partial class ReCodeItForm
|
|||||||
((System.ComponentModel.ISupportInitialize)AutoMapperMinLengthUpDown).BeginInit();
|
((System.ComponentModel.ISupportInitialize)AutoMapperMinLengthUpDown).BeginInit();
|
||||||
((System.ComponentModel.ISupportInitialize)AutoMapperRequiredMatchesUpDown).BeginInit();
|
((System.ComponentModel.ISupportInitialize)AutoMapperRequiredMatchesUpDown).BeginInit();
|
||||||
tabPage5.SuspendLayout();
|
tabPage5.SuspendLayout();
|
||||||
|
groupBox4.SuspendLayout();
|
||||||
|
groupBox3.SuspendLayout();
|
||||||
SettingsTab.SuspendLayout();
|
SettingsTab.SuspendLayout();
|
||||||
groupBox2.SuspendLayout();
|
groupBox2.SuspendLayout();
|
||||||
groupBox3.SuspendLayout();
|
|
||||||
groupBox4.SuspendLayout();
|
|
||||||
SuspendLayout();
|
SuspendLayout();
|
||||||
//
|
//
|
||||||
// TabPageRemapper
|
// TabPageRemapper
|
||||||
@ -193,14 +194,15 @@ partial class ReCodeItForm
|
|||||||
//
|
//
|
||||||
// groupBox1
|
// groupBox1
|
||||||
//
|
//
|
||||||
groupBox1.Controls.Add(this.RemapperUnsealCheckbox);
|
groupBox1.Controls.Add(RemapperUseForceRename);
|
||||||
groupBox1.Controls.Add(this.RemapperOutputPathTextBox);
|
groupBox1.Controls.Add(RemapperUnseal);
|
||||||
|
groupBox1.Controls.Add(RemapperPublicicize);
|
||||||
|
groupBox1.Controls.Add(RemapperOutputDirectoryPath);
|
||||||
|
groupBox1.Controls.Add(TargetAssemblyPath);
|
||||||
groupBox1.Controls.Add(RenamePropertiesCheckbox);
|
groupBox1.Controls.Add(RenamePropertiesCheckbox);
|
||||||
groupBox1.Controls.Add(OutputDirectoryButton);
|
groupBox1.Controls.Add(OutputDirectoryButton);
|
||||||
groupBox1.Controls.Add(EditRemapButton);
|
groupBox1.Controls.Add(EditRemapButton);
|
||||||
groupBox1.Controls.Add(PickAssemblyPathButton);
|
groupBox1.Controls.Add(PickAssemblyPathButton);
|
||||||
groupBox1.Controls.Add(this.RemapperPublicizeCheckbox);
|
|
||||||
groupBox1.Controls.Add(this.RemapperAssemblyPathTextBox);
|
|
||||||
groupBox1.Controls.Add(ConstuctorCountUpDown);
|
groupBox1.Controls.Add(ConstuctorCountUpDown);
|
||||||
groupBox1.Controls.Add(RenameFieldsCheckbox);
|
groupBox1.Controls.Add(RenameFieldsCheckbox);
|
||||||
groupBox1.Controls.Add(ConstructorCountEnabled);
|
groupBox1.Controls.Add(ConstructorCountEnabled);
|
||||||
@ -239,6 +241,82 @@ partial class ReCodeItForm
|
|||||||
groupBox1.TabStop = false;
|
groupBox1.TabStop = false;
|
||||||
groupBox1.Text = "Remap Editor";
|
groupBox1.Text = "Remap Editor";
|
||||||
//
|
//
|
||||||
|
// RemapperUseForceRename
|
||||||
|
//
|
||||||
|
RemapperUseForceRename.AutoSize = true;
|
||||||
|
RemapperUseForceRename.Checked = true;
|
||||||
|
RemapperUseForceRename.CheckState = CheckState.Checked;
|
||||||
|
RemapperUseForceRename.Location = new Point(580, 194);
|
||||||
|
RemapperUseForceRename.Name = "RemapperUseForceRename";
|
||||||
|
RemapperUseForceRename.Size = new Size(149, 29);
|
||||||
|
RemapperUseForceRename.TabIndex = 37;
|
||||||
|
RemapperUseForceRename.Text = "Force Rename";
|
||||||
|
RemapperUseForceRename.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// RemapperUnseal
|
||||||
|
//
|
||||||
|
RemapperUnseal.AutoSize = true;
|
||||||
|
RemapperUnseal.Checked = true;
|
||||||
|
RemapperUnseal.CheckState = CheckState.Checked;
|
||||||
|
RemapperUnseal.Location = new Point(580, 334);
|
||||||
|
RemapperUnseal.Name = "RemapperUnseal";
|
||||||
|
RemapperUnseal.Size = new Size(90, 29);
|
||||||
|
RemapperUnseal.TabIndex = 36;
|
||||||
|
RemapperUnseal.Text = "Unseal";
|
||||||
|
RemapperUnseal.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// RemapperPublicicize
|
||||||
|
//
|
||||||
|
RemapperPublicicize.AutoSize = true;
|
||||||
|
RemapperPublicicize.Checked = true;
|
||||||
|
RemapperPublicicize.CheckState = CheckState.Checked;
|
||||||
|
RemapperPublicicize.Location = new Point(580, 299);
|
||||||
|
RemapperPublicicize.Name = "RemapperPublicicize";
|
||||||
|
RemapperPublicicize.Size = new Size(106, 29);
|
||||||
|
RemapperPublicicize.TabIndex = 35;
|
||||||
|
RemapperPublicicize.Text = "Publicize";
|
||||||
|
RemapperPublicicize.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// RemapperOutputDirectoryPath
|
||||||
|
//
|
||||||
|
RemapperOutputDirectoryPath.BackColor = SystemColors.ScrollBar;
|
||||||
|
RemapperOutputDirectoryPath.Location = new Point(10, 106);
|
||||||
|
RemapperOutputDirectoryPath.Name = "RemapperOutputDirectoryPath";
|
||||||
|
RemapperOutputDirectoryPath.PlaceholderText = "Output Directory";
|
||||||
|
RemapperOutputDirectoryPath.Size = new Size(297, 31);
|
||||||
|
RemapperOutputDirectoryPath.TabIndex = 34;
|
||||||
|
//
|
||||||
|
// TargetAssemblyPath
|
||||||
|
//
|
||||||
|
TargetAssemblyPath.BackColor = SystemColors.ScrollBar;
|
||||||
|
TargetAssemblyPath.Location = new Point(10, 69);
|
||||||
|
TargetAssemblyPath.Name = "TargetAssemblyPath";
|
||||||
|
TargetAssemblyPath.PlaceholderText = "Target Assembly";
|
||||||
|
TargetAssemblyPath.Size = new Size(297, 31);
|
||||||
|
TargetAssemblyPath.TabIndex = 33;
|
||||||
|
//
|
||||||
|
// RenamePropertiesCheckbox
|
||||||
|
//
|
||||||
|
RenamePropertiesCheckbox.AutoSize = true;
|
||||||
|
RenamePropertiesCheckbox.Checked = true;
|
||||||
|
RenamePropertiesCheckbox.CheckState = CheckState.Checked;
|
||||||
|
RenamePropertiesCheckbox.Location = new Point(580, 264);
|
||||||
|
RenamePropertiesCheckbox.Name = "RenamePropertiesCheckbox";
|
||||||
|
RenamePropertiesCheckbox.Size = new Size(186, 29);
|
||||||
|
RenamePropertiesCheckbox.TabIndex = 28;
|
||||||
|
RenamePropertiesCheckbox.Text = "Rename Properties";
|
||||||
|
RenamePropertiesCheckbox.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// OutputDirectoryButton
|
||||||
|
//
|
||||||
|
OutputDirectoryButton.Location = new Point(312, 104);
|
||||||
|
OutputDirectoryButton.Name = "OutputDirectoryButton";
|
||||||
|
OutputDirectoryButton.Size = new Size(112, 34);
|
||||||
|
OutputDirectoryButton.TabIndex = 32;
|
||||||
|
OutputDirectoryButton.Text = "Choose";
|
||||||
|
OutputDirectoryButton.UseVisualStyleBackColor = true;
|
||||||
|
OutputDirectoryButton.Click += OutputDirectoryButton_Click_1;
|
||||||
|
//
|
||||||
// EditRemapButton
|
// EditRemapButton
|
||||||
//
|
//
|
||||||
EditRemapButton.BackColor = SystemColors.ButtonShadow;
|
EditRemapButton.BackColor = SystemColors.ButtonShadow;
|
||||||
@ -250,6 +328,16 @@ partial class ReCodeItForm
|
|||||||
EditRemapButton.UseVisualStyleBackColor = false;
|
EditRemapButton.UseVisualStyleBackColor = false;
|
||||||
EditRemapButton.Click += EditRemapButton_Click;
|
EditRemapButton.Click += EditRemapButton_Click;
|
||||||
//
|
//
|
||||||
|
// PickAssemblyPathButton
|
||||||
|
//
|
||||||
|
PickAssemblyPathButton.Location = new Point(313, 66);
|
||||||
|
PickAssemblyPathButton.Name = "PickAssemblyPathButton";
|
||||||
|
PickAssemblyPathButton.Size = new Size(112, 34);
|
||||||
|
PickAssemblyPathButton.TabIndex = 31;
|
||||||
|
PickAssemblyPathButton.Text = "Choose";
|
||||||
|
PickAssemblyPathButton.UseVisualStyleBackColor = true;
|
||||||
|
PickAssemblyPathButton.Click += PickAssemblyPathButton_Click_1;
|
||||||
|
//
|
||||||
// ConstuctorCountUpDown
|
// ConstuctorCountUpDown
|
||||||
//
|
//
|
||||||
ConstuctorCountUpDown.BackColor = SystemColors.ScrollBar;
|
ConstuctorCountUpDown.BackColor = SystemColors.ScrollBar;
|
||||||
@ -258,6 +346,18 @@ partial class ReCodeItForm
|
|||||||
ConstuctorCountUpDown.Size = new Size(55, 31);
|
ConstuctorCountUpDown.Size = new Size(55, 31);
|
||||||
ConstuctorCountUpDown.TabIndex = 19;
|
ConstuctorCountUpDown.TabIndex = 19;
|
||||||
//
|
//
|
||||||
|
// RenameFieldsCheckbox
|
||||||
|
//
|
||||||
|
RenameFieldsCheckbox.AutoSize = true;
|
||||||
|
RenameFieldsCheckbox.Checked = true;
|
||||||
|
RenameFieldsCheckbox.CheckState = CheckState.Checked;
|
||||||
|
RenameFieldsCheckbox.Location = new Point(580, 229);
|
||||||
|
RenameFieldsCheckbox.Name = "RenameFieldsCheckbox";
|
||||||
|
RenameFieldsCheckbox.Size = new Size(151, 29);
|
||||||
|
RenameFieldsCheckbox.TabIndex = 26;
|
||||||
|
RenameFieldsCheckbox.Text = "Rename Fields";
|
||||||
|
RenameFieldsCheckbox.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
// ConstructorCountEnabled
|
// ConstructorCountEnabled
|
||||||
//
|
//
|
||||||
ConstructorCountEnabled.AutoSize = true;
|
ConstructorCountEnabled.AutoSize = true;
|
||||||
@ -1206,6 +1306,140 @@ partial class ReCodeItForm
|
|||||||
tabPage5.TabIndex = 4;
|
tabPage5.TabIndex = 4;
|
||||||
tabPage5.Text = "Cross Patching";
|
tabPage5.Text = "Cross Patching";
|
||||||
//
|
//
|
||||||
|
// groupBox4
|
||||||
|
//
|
||||||
|
groupBox4.Controls.Add(CrossPatcherUnsealEnabled);
|
||||||
|
groupBox4.Controls.Add(CrossPatchingPublicizeEnabled);
|
||||||
|
groupBox4.Location = new Point(490, 6);
|
||||||
|
groupBox4.Name = "groupBox4";
|
||||||
|
groupBox4.Size = new Size(445, 350);
|
||||||
|
groupBox4.TabIndex = 22;
|
||||||
|
groupBox4.TabStop = false;
|
||||||
|
groupBox4.Text = "Patch Settings";
|
||||||
|
//
|
||||||
|
// CrossPatcherUnsealEnabled
|
||||||
|
//
|
||||||
|
CrossPatcherUnsealEnabled.AutoSize = true;
|
||||||
|
CrossPatcherUnsealEnabled.Checked = true;
|
||||||
|
CrossPatcherUnsealEnabled.CheckState = CheckState.Checked;
|
||||||
|
CrossPatcherUnsealEnabled.Location = new Point(6, 65);
|
||||||
|
CrossPatcherUnsealEnabled.Name = "CrossPatcherUnsealEnabled";
|
||||||
|
CrossPatcherUnsealEnabled.Size = new Size(90, 29);
|
||||||
|
CrossPatcherUnsealEnabled.TabIndex = 12;
|
||||||
|
CrossPatcherUnsealEnabled.Text = "Unseal";
|
||||||
|
CrossPatcherUnsealEnabled.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// CrossPatchingPublicizeEnabled
|
||||||
|
//
|
||||||
|
CrossPatchingPublicizeEnabled.AutoSize = true;
|
||||||
|
CrossPatchingPublicizeEnabled.Checked = true;
|
||||||
|
CrossPatchingPublicizeEnabled.CheckState = CheckState.Checked;
|
||||||
|
CrossPatchingPublicizeEnabled.Location = new Point(6, 30);
|
||||||
|
CrossPatchingPublicizeEnabled.Name = "CrossPatchingPublicizeEnabled";
|
||||||
|
CrossPatchingPublicizeEnabled.Size = new Size(106, 29);
|
||||||
|
CrossPatchingPublicizeEnabled.TabIndex = 11;
|
||||||
|
CrossPatchingPublicizeEnabled.Text = "Publicize";
|
||||||
|
CrossPatchingPublicizeEnabled.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// groupBox3
|
||||||
|
//
|
||||||
|
groupBox3.Controls.Add(CrossPatchingRunButton);
|
||||||
|
groupBox3.Controls.Add(textBox4);
|
||||||
|
groupBox3.Controls.Add(CrossPatchingBuildDirButton);
|
||||||
|
groupBox3.Controls.Add(textBox3);
|
||||||
|
groupBox3.Controls.Add(textBox1);
|
||||||
|
groupBox3.Controls.Add(textBox2);
|
||||||
|
groupBox3.Controls.Add(CrossPatchingMappingChooseButton);
|
||||||
|
groupBox3.Controls.Add(CrossPatchingOrigAssemblyButton);
|
||||||
|
groupBox3.Controls.Add(CrossMappingOutputChooseButton);
|
||||||
|
groupBox3.Location = new Point(13, 6);
|
||||||
|
groupBox3.Name = "groupBox3";
|
||||||
|
groupBox3.Size = new Size(445, 350);
|
||||||
|
groupBox3.TabIndex = 21;
|
||||||
|
groupBox3.TabStop = false;
|
||||||
|
groupBox3.Text = "General";
|
||||||
|
//
|
||||||
|
// CrossPatchingRunButton
|
||||||
|
//
|
||||||
|
CrossPatchingRunButton.Location = new Point(308, 310);
|
||||||
|
CrossPatchingRunButton.Name = "CrossPatchingRunButton";
|
||||||
|
CrossPatchingRunButton.Size = new Size(112, 34);
|
||||||
|
CrossPatchingRunButton.TabIndex = 21;
|
||||||
|
CrossPatchingRunButton.Text = "Run";
|
||||||
|
CrossPatchingRunButton.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// textBox4
|
||||||
|
//
|
||||||
|
textBox4.Location = new Point(6, 39);
|
||||||
|
textBox4.Name = "textBox4";
|
||||||
|
textBox4.PlaceholderText = "Original Assembly";
|
||||||
|
textBox4.ReadOnly = true;
|
||||||
|
textBox4.Size = new Size(296, 31);
|
||||||
|
textBox4.TabIndex = 13;
|
||||||
|
//
|
||||||
|
// CrossPatchingBuildDirButton
|
||||||
|
//
|
||||||
|
CrossPatchingBuildDirButton.Location = new Point(308, 73);
|
||||||
|
CrossPatchingBuildDirButton.Name = "CrossPatchingBuildDirButton";
|
||||||
|
CrossPatchingBuildDirButton.Size = new Size(112, 34);
|
||||||
|
CrossPatchingBuildDirButton.TabIndex = 20;
|
||||||
|
CrossPatchingBuildDirButton.Text = "Choose";
|
||||||
|
CrossPatchingBuildDirButton.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// textBox3
|
||||||
|
//
|
||||||
|
textBox3.Location = new Point(6, 113);
|
||||||
|
textBox3.Name = "textBox3";
|
||||||
|
textBox3.PlaceholderText = "Output Directory";
|
||||||
|
textBox3.ReadOnly = true;
|
||||||
|
textBox3.Size = new Size(296, 31);
|
||||||
|
textBox3.TabIndex = 14;
|
||||||
|
//
|
||||||
|
// textBox1
|
||||||
|
//
|
||||||
|
textBox1.Location = new Point(6, 76);
|
||||||
|
textBox1.Name = "textBox1";
|
||||||
|
textBox1.PlaceholderText = "VS build path including file name";
|
||||||
|
textBox1.ReadOnly = true;
|
||||||
|
textBox1.Size = new Size(296, 31);
|
||||||
|
textBox1.TabIndex = 19;
|
||||||
|
//
|
||||||
|
// textBox2
|
||||||
|
//
|
||||||
|
textBox2.Location = new Point(6, 150);
|
||||||
|
textBox2.Name = "textBox2";
|
||||||
|
textBox2.PlaceholderText = "Mapping.json path";
|
||||||
|
textBox2.ReadOnly = true;
|
||||||
|
textBox2.Size = new Size(296, 31);
|
||||||
|
textBox2.TabIndex = 15;
|
||||||
|
//
|
||||||
|
// CrossPatchingMappingChooseButton
|
||||||
|
//
|
||||||
|
CrossPatchingMappingChooseButton.Location = new Point(308, 147);
|
||||||
|
CrossPatchingMappingChooseButton.Name = "CrossPatchingMappingChooseButton";
|
||||||
|
CrossPatchingMappingChooseButton.Size = new Size(112, 34);
|
||||||
|
CrossPatchingMappingChooseButton.TabIndex = 18;
|
||||||
|
CrossPatchingMappingChooseButton.Text = "Choose";
|
||||||
|
CrossPatchingMappingChooseButton.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// CrossPatchingOrigAssemblyButton
|
||||||
|
//
|
||||||
|
CrossPatchingOrigAssemblyButton.Location = new Point(308, 39);
|
||||||
|
CrossPatchingOrigAssemblyButton.Name = "CrossPatchingOrigAssemblyButton";
|
||||||
|
CrossPatchingOrigAssemblyButton.Size = new Size(112, 34);
|
||||||
|
CrossPatchingOrigAssemblyButton.TabIndex = 16;
|
||||||
|
CrossPatchingOrigAssemblyButton.Text = "Choose";
|
||||||
|
CrossPatchingOrigAssemblyButton.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// CrossMappingOutputChooseButton
|
||||||
|
//
|
||||||
|
CrossMappingOutputChooseButton.Location = new Point(308, 110);
|
||||||
|
CrossMappingOutputChooseButton.Name = "CrossMappingOutputChooseButton";
|
||||||
|
CrossMappingOutputChooseButton.Size = new Size(112, 34);
|
||||||
|
CrossMappingOutputChooseButton.TabIndex = 17;
|
||||||
|
CrossMappingOutputChooseButton.Text = "Choose";
|
||||||
|
CrossMappingOutputChooseButton.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
// SettingsTab
|
// SettingsTab
|
||||||
//
|
//
|
||||||
SettingsTab.BackColor = SystemColors.ControlDarkDark;
|
SettingsTab.BackColor = SystemColors.ControlDarkDark;
|
||||||
@ -1250,224 +1484,6 @@ partial class ReCodeItForm
|
|||||||
DebugLoggingCheckbox.UseVisualStyleBackColor = true;
|
DebugLoggingCheckbox.UseVisualStyleBackColor = true;
|
||||||
DebugLoggingCheckbox.CheckedChanged += DebugLoggingCheckbox_CheckedChanged;
|
DebugLoggingCheckbox.CheckedChanged += DebugLoggingCheckbox_CheckedChanged;
|
||||||
//
|
//
|
||||||
// CrossPatchingBuildDirButton
|
|
||||||
//
|
|
||||||
CrossPatchingBuildDirButton.Location = new Point(308, 73);
|
|
||||||
CrossPatchingBuildDirButton.Name = "CrossPatchingBuildDirButton";
|
|
||||||
CrossPatchingBuildDirButton.Size = new Size(112, 34);
|
|
||||||
CrossPatchingBuildDirButton.TabIndex = 20;
|
|
||||||
CrossPatchingBuildDirButton.Text = "Choose";
|
|
||||||
CrossPatchingBuildDirButton.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// textBox1
|
|
||||||
//
|
|
||||||
textBox1.Location = new Point(6, 76);
|
|
||||||
textBox1.Name = "textBox1";
|
|
||||||
textBox1.PlaceholderText = "VS build path including file name";
|
|
||||||
textBox1.ReadOnly = true;
|
|
||||||
textBox1.Size = new Size(296, 31);
|
|
||||||
textBox1.TabIndex = 19;
|
|
||||||
//
|
|
||||||
// CrossPatchingMappingChooseButton
|
|
||||||
//
|
|
||||||
CrossPatchingMappingChooseButton.Location = new Point(308, 147);
|
|
||||||
CrossPatchingMappingChooseButton.Name = "CrossPatchingMappingChooseButton";
|
|
||||||
CrossPatchingMappingChooseButton.Size = new Size(112, 34);
|
|
||||||
CrossPatchingMappingChooseButton.TabIndex = 18;
|
|
||||||
CrossPatchingMappingChooseButton.Text = "Choose";
|
|
||||||
CrossPatchingMappingChooseButton.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// CrossMappingOutputChooseButton
|
|
||||||
//
|
|
||||||
CrossMappingOutputChooseButton.Location = new Point(308, 110);
|
|
||||||
CrossMappingOutputChooseButton.Name = "CrossMappingOutputChooseButton";
|
|
||||||
CrossMappingOutputChooseButton.Size = new Size(112, 34);
|
|
||||||
CrossMappingOutputChooseButton.TabIndex = 17;
|
|
||||||
CrossMappingOutputChooseButton.Text = "Choose";
|
|
||||||
CrossMappingOutputChooseButton.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// CrossPatchingOrigAssemblyButton
|
|
||||||
//
|
|
||||||
CrossPatchingOrigAssemblyButton.Location = new Point(308, 39);
|
|
||||||
CrossPatchingOrigAssemblyButton.Name = "CrossPatchingOrigAssemblyButton";
|
|
||||||
CrossPatchingOrigAssemblyButton.Size = new Size(112, 34);
|
|
||||||
CrossPatchingOrigAssemblyButton.TabIndex = 16;
|
|
||||||
CrossPatchingOrigAssemblyButton.Text = "Choose";
|
|
||||||
CrossPatchingOrigAssemblyButton.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// textBox2
|
|
||||||
//
|
|
||||||
textBox2.Location = new Point(6, 150);
|
|
||||||
textBox2.Name = "textBox2";
|
|
||||||
textBox2.PlaceholderText = "Mapping.json path";
|
|
||||||
textBox2.ReadOnly = true;
|
|
||||||
textBox2.Size = new Size(296, 31);
|
|
||||||
textBox2.TabIndex = 15;
|
|
||||||
//
|
|
||||||
// textBox3
|
|
||||||
//
|
|
||||||
textBox3.Location = new Point(6, 113);
|
|
||||||
textBox3.Name = "textBox3";
|
|
||||||
textBox3.PlaceholderText = "Output Directory";
|
|
||||||
textBox3.ReadOnly = true;
|
|
||||||
textBox3.Size = new Size(296, 31);
|
|
||||||
textBox3.TabIndex = 14;
|
|
||||||
//
|
|
||||||
// textBox4
|
|
||||||
//
|
|
||||||
textBox4.Location = new Point(6, 39);
|
|
||||||
textBox4.Name = "textBox4";
|
|
||||||
textBox4.PlaceholderText = "Original Assembly";
|
|
||||||
textBox4.ReadOnly = true;
|
|
||||||
textBox4.Size = new Size(296, 31);
|
|
||||||
textBox4.TabIndex = 13;
|
|
||||||
//
|
|
||||||
// groupBox3
|
|
||||||
//
|
|
||||||
groupBox3.Controls.Add(CrossPatchingRunButton);
|
|
||||||
groupBox3.Controls.Add(textBox4);
|
|
||||||
groupBox3.Controls.Add(CrossPatchingBuildDirButton);
|
|
||||||
groupBox3.Controls.Add(textBox3);
|
|
||||||
groupBox3.Controls.Add(textBox1);
|
|
||||||
groupBox3.Controls.Add(textBox2);
|
|
||||||
groupBox3.Controls.Add(CrossPatchingMappingChooseButton);
|
|
||||||
groupBox3.Controls.Add(CrossPatchingOrigAssemblyButton);
|
|
||||||
groupBox3.Controls.Add(CrossMappingOutputChooseButton);
|
|
||||||
groupBox3.Location = new Point(13, 6);
|
|
||||||
groupBox3.Name = "groupBox3";
|
|
||||||
groupBox3.Size = new Size(445, 350);
|
|
||||||
groupBox3.TabIndex = 21;
|
|
||||||
groupBox3.TabStop = false;
|
|
||||||
groupBox3.Text = "General";
|
|
||||||
//
|
|
||||||
// groupBox4
|
|
||||||
//
|
|
||||||
groupBox4.Controls.Add(CrossPatcherUnsealEnabled);
|
|
||||||
groupBox4.Controls.Add(CrossPatchingPublicizeEnabled);
|
|
||||||
groupBox4.Location = new Point(490, 6);
|
|
||||||
groupBox4.Name = "groupBox4";
|
|
||||||
groupBox4.Size = new Size(445, 350);
|
|
||||||
groupBox4.TabIndex = 22;
|
|
||||||
groupBox4.TabStop = false;
|
|
||||||
groupBox4.Text = "Patch Settings";
|
|
||||||
//
|
|
||||||
// CrossPatcherUnsealEnabled
|
|
||||||
//
|
|
||||||
CrossPatcherUnsealEnabled.AutoSize = true;
|
|
||||||
CrossPatcherUnsealEnabled.Checked = true;
|
|
||||||
CrossPatcherUnsealEnabled.CheckState = CheckState.Checked;
|
|
||||||
CrossPatcherUnsealEnabled.Location = new Point(6, 65);
|
|
||||||
CrossPatcherUnsealEnabled.Name = "CrossPatcherUnsealEnabled";
|
|
||||||
CrossPatcherUnsealEnabled.Size = new Size(90, 29);
|
|
||||||
CrossPatcherUnsealEnabled.TabIndex = 12;
|
|
||||||
CrossPatcherUnsealEnabled.Text = "Unseal";
|
|
||||||
CrossPatcherUnsealEnabled.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// CrossPatchingPublicizeEnabled
|
|
||||||
//
|
|
||||||
CrossPatchingPublicizeEnabled.AutoSize = true;
|
|
||||||
CrossPatchingPublicizeEnabled.Checked = true;
|
|
||||||
CrossPatchingPublicizeEnabled.CheckState = CheckState.Checked;
|
|
||||||
CrossPatchingPublicizeEnabled.Location = new Point(6, 30);
|
|
||||||
CrossPatchingPublicizeEnabled.Name = "CrossPatchingPublicizeEnabled";
|
|
||||||
CrossPatchingPublicizeEnabled.Size = new Size(106, 29);
|
|
||||||
CrossPatchingPublicizeEnabled.TabIndex = 11;
|
|
||||||
CrossPatchingPublicizeEnabled.Text = "Publicize";
|
|
||||||
CrossPatchingPublicizeEnabled.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// CrossPatchingRunButton
|
|
||||||
//
|
|
||||||
CrossPatchingRunButton.Location = new Point(308, 310);
|
|
||||||
CrossPatchingRunButton.Name = "CrossPatchingRunButton";
|
|
||||||
CrossPatchingRunButton.Size = new Size(112, 34);
|
|
||||||
CrossPatchingRunButton.TabIndex = 21;
|
|
||||||
CrossPatchingRunButton.Text = "Run";
|
|
||||||
CrossPatchingRunButton.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// RemapperUnsealCheckbox
|
|
||||||
//
|
|
||||||
this.RemapperUnsealCheckbox.AutoSize = true;
|
|
||||||
this.RemapperUnsealCheckbox.Checked = true;
|
|
||||||
this.RemapperUnsealCheckbox.CheckState = CheckState.Checked;
|
|
||||||
this.RemapperUnsealCheckbox.Location = new Point(581, 305);
|
|
||||||
this.RemapperUnsealCheckbox.Name = "RemapperUnsealCheckbox";
|
|
||||||
this.RemapperUnsealCheckbox.Size = new Size(90, 29);
|
|
||||||
this.RemapperUnsealCheckbox.TabIndex = 25;
|
|
||||||
this.RemapperUnsealCheckbox.Text = "Unseal";
|
|
||||||
this.RemapperUnsealCheckbox.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// RenamePropertiesCheckbox
|
|
||||||
//
|
|
||||||
RenamePropertiesCheckbox.AutoSize = true;
|
|
||||||
RenamePropertiesCheckbox.Checked = true;
|
|
||||||
RenamePropertiesCheckbox.CheckState = CheckState.Checked;
|
|
||||||
RenamePropertiesCheckbox.Location = new Point(581, 235);
|
|
||||||
RenamePropertiesCheckbox.Name = "RenamePropertiesCheckbox";
|
|
||||||
RenamePropertiesCheckbox.Size = new Size(186, 29);
|
|
||||||
RenamePropertiesCheckbox.TabIndex = 28;
|
|
||||||
RenamePropertiesCheckbox.Text = "Rename Properties";
|
|
||||||
RenamePropertiesCheckbox.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// RemapperPublicizeCheckbox
|
|
||||||
//
|
|
||||||
this.RemapperPublicizeCheckbox.AutoSize = true;
|
|
||||||
this.RemapperPublicizeCheckbox.Checked = true;
|
|
||||||
this.RemapperPublicizeCheckbox.CheckState = CheckState.Checked;
|
|
||||||
this.RemapperPublicizeCheckbox.Location = new Point(581, 270);
|
|
||||||
this.RemapperPublicizeCheckbox.Name = "RemapperPublicizeCheckbox";
|
|
||||||
this.RemapperPublicizeCheckbox.Size = new Size(106, 29);
|
|
||||||
this.RemapperPublicizeCheckbox.TabIndex = 24;
|
|
||||||
this.RemapperPublicizeCheckbox.Text = "Publicize";
|
|
||||||
this.RemapperPublicizeCheckbox.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// OutputDirectoryButton
|
|
||||||
//
|
|
||||||
OutputDirectoryButton.Location = new Point(312, 104);
|
|
||||||
OutputDirectoryButton.Name = "OutputDirectoryButton";
|
|
||||||
OutputDirectoryButton.Size = new Size(112, 34);
|
|
||||||
OutputDirectoryButton.TabIndex = 32;
|
|
||||||
OutputDirectoryButton.Text = "Choose";
|
|
||||||
OutputDirectoryButton.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// RenameFieldsCheckbox
|
|
||||||
//
|
|
||||||
RenameFieldsCheckbox.AutoSize = true;
|
|
||||||
RenameFieldsCheckbox.Checked = true;
|
|
||||||
RenameFieldsCheckbox.CheckState = CheckState.Checked;
|
|
||||||
RenameFieldsCheckbox.Location = new Point(581, 200);
|
|
||||||
RenameFieldsCheckbox.Name = "RenameFieldsCheckbox";
|
|
||||||
RenameFieldsCheckbox.Size = new Size(151, 29);
|
|
||||||
RenameFieldsCheckbox.TabIndex = 26;
|
|
||||||
RenameFieldsCheckbox.Text = "Rename Fields";
|
|
||||||
RenameFieldsCheckbox.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// PickAssemblyPathButton
|
|
||||||
//
|
|
||||||
PickAssemblyPathButton.Location = new Point(313, 66);
|
|
||||||
PickAssemblyPathButton.Name = "PickAssemblyPathButton";
|
|
||||||
PickAssemblyPathButton.Size = new Size(112, 34);
|
|
||||||
PickAssemblyPathButton.TabIndex = 31;
|
|
||||||
PickAssemblyPathButton.Text = "Choose";
|
|
||||||
PickAssemblyPathButton.UseVisualStyleBackColor = true;
|
|
||||||
//
|
|
||||||
// RemapperOutputPathTextBox
|
|
||||||
//
|
|
||||||
this.RemapperOutputPathTextBox.Location = new Point(10, 106);
|
|
||||||
this.RemapperOutputPathTextBox.Name = "RemapperOutputPathTextBox";
|
|
||||||
this.RemapperOutputPathTextBox.PlaceholderText = "Output Directory";
|
|
||||||
this.RemapperOutputPathTextBox.ReadOnly = true;
|
|
||||||
this.RemapperOutputPathTextBox.Size = new Size(296, 31);
|
|
||||||
this.RemapperOutputPathTextBox.TabIndex = 29;
|
|
||||||
//
|
|
||||||
// RemapperAssemblyPathTextBox
|
|
||||||
//
|
|
||||||
this.RemapperAssemblyPathTextBox.Location = new Point(9, 69);
|
|
||||||
this.RemapperAssemblyPathTextBox.Name = "RemapperAssemblyPathTextBox";
|
|
||||||
this.RemapperAssemblyPathTextBox.PlaceholderText = "Assembly Path (Including file name)";
|
|
||||||
this.RemapperAssemblyPathTextBox.ReadOnly = true;
|
|
||||||
this.RemapperAssemblyPathTextBox.Size = new Size(296, 31);
|
|
||||||
this.RemapperAssemblyPathTextBox.TabIndex = 27;
|
|
||||||
//
|
|
||||||
// ReCodeItForm
|
// ReCodeItForm
|
||||||
//
|
//
|
||||||
AutoScaleDimensions = new SizeF(10F, 25F);
|
AutoScaleDimensions = new SizeF(10F, 25F);
|
||||||
@ -1501,13 +1517,13 @@ partial class ReCodeItForm
|
|||||||
((System.ComponentModel.ISupportInitialize)AutoMapperMinLengthUpDown).EndInit();
|
((System.ComponentModel.ISupportInitialize)AutoMapperMinLengthUpDown).EndInit();
|
||||||
((System.ComponentModel.ISupportInitialize)AutoMapperRequiredMatchesUpDown).EndInit();
|
((System.ComponentModel.ISupportInitialize)AutoMapperRequiredMatchesUpDown).EndInit();
|
||||||
tabPage5.ResumeLayout(false);
|
tabPage5.ResumeLayout(false);
|
||||||
|
groupBox4.ResumeLayout(false);
|
||||||
|
groupBox4.PerformLayout();
|
||||||
|
groupBox3.ResumeLayout(false);
|
||||||
|
groupBox3.PerformLayout();
|
||||||
SettingsTab.ResumeLayout(false);
|
SettingsTab.ResumeLayout(false);
|
||||||
groupBox2.ResumeLayout(false);
|
groupBox2.ResumeLayout(false);
|
||||||
groupBox2.PerformLayout();
|
groupBox2.PerformLayout();
|
||||||
groupBox3.ResumeLayout(false);
|
|
||||||
groupBox3.PerformLayout();
|
|
||||||
groupBox4.ResumeLayout(false);
|
|
||||||
groupBox4.PerformLayout();
|
|
||||||
ResumeLayout(false);
|
ResumeLayout(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1637,4 +1653,9 @@ partial class ReCodeItForm
|
|||||||
private Button OutputDirectoryButton;
|
private Button OutputDirectoryButton;
|
||||||
private TextBox MappingPathTextBox;
|
private TextBox MappingPathTextBox;
|
||||||
private Button PickAssemblyPathButton;
|
private Button PickAssemblyPathButton;
|
||||||
|
private CheckBox RemapperUseForceRename;
|
||||||
|
private CheckBox RemapperUnseal;
|
||||||
|
private CheckBox RemapperPublicicize;
|
||||||
|
private TextBox RemapperOutputDirectoryPath;
|
||||||
|
private TextBox TargetAssemblyPath;
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,7 @@ public partial class ReCodeItForm : Form
|
|||||||
public ReCodeItForm()
|
public ReCodeItForm()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
DataProvider.LoadMappingFile(DataProvider.Settings.Remapper.MappingPath);
|
||||||
PopulateDomainUpDowns();
|
PopulateDomainUpDowns();
|
||||||
RefreshSettingsPage();
|
RefreshSettingsPage();
|
||||||
RefreshAutoMapperPage();
|
RefreshAutoMapperPage();
|
||||||
@ -27,6 +28,8 @@ public partial class ReCodeItForm : Form
|
|||||||
ReloadTreeView(this, EventArgs.Empty);
|
ReloadTreeView(this, EventArgs.Empty);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region MANUAL_REMAPPER
|
||||||
|
|
||||||
#region BUTTONS
|
#region BUTTONS
|
||||||
|
|
||||||
#region MAIN_BUTTONS
|
#region MAIN_BUTTONS
|
||||||
@ -50,7 +53,7 @@ public partial class ReCodeItForm : Form
|
|||||||
FailureReason = EFailureReason.None,
|
FailureReason = EFailureReason.None,
|
||||||
NewTypeName = NewTypeName.Text,
|
NewTypeName = NewTypeName.Text,
|
||||||
OriginalTypeName = OriginalTypeName.Text == string.Empty ? null : OriginalTypeName.Text,
|
OriginalTypeName = OriginalTypeName.Text == string.Empty ? null : OriginalTypeName.Text,
|
||||||
UseForceRename = ForceRenameCheckbox.Checked,
|
UseForceRename = RemapperUseForceRename.Checked,
|
||||||
SearchParams = new SearchParams
|
SearchParams = new SearchParams
|
||||||
{
|
{
|
||||||
IsPublic = IsPublicUpDown.GetEnabled(),
|
IsPublic = IsPublicUpDown.GetEnabled(),
|
||||||
@ -135,9 +138,9 @@ public partial class ReCodeItForm : Form
|
|||||||
{
|
{
|
||||||
if (ReCodeItRemapper.IsRunning) { return; }
|
if (ReCodeItRemapper.IsRunning) { return; }
|
||||||
|
|
||||||
if (string.IsNullOrEmpty(DataProvider.Settings.AppSettings.AssemblyPath))
|
if (string.IsNullOrEmpty(DataProvider.Settings.Remapper.AssemblyPath))
|
||||||
{
|
{
|
||||||
MessageBox.Show("Please go to the settings tab and load an assembly and select and output location", "Assembly not loaded");
|
MessageBox.Show("Please select an assembly path", "Assembly not loaded");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -155,7 +158,7 @@ public partial class ReCodeItForm : Form
|
|||||||
MessageBoxIcon.Exclamation,
|
MessageBoxIcon.Exclamation,
|
||||||
MessageBoxDefaultButton.Button2) == DialogResult.Yes)
|
MessageBoxDefaultButton.Button2) == DialogResult.Yes)
|
||||||
{
|
{
|
||||||
DataProvider.SaveMapping();
|
DataProvider.SaveMapping(DataProvider.Settings.Remapper.MappingPath);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -181,6 +184,37 @@ public partial class ReCodeItForm : Form
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void PickAssemblyPathButton_Click_1(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
OpenFileDialog fDialog = new()
|
||||||
|
{
|
||||||
|
Title = "Select a DLL file",
|
||||||
|
Filter = "DLL Files (*.dll)|*.dll|All Files (*.*)|*.*",
|
||||||
|
Multiselect = false
|
||||||
|
};
|
||||||
|
|
||||||
|
if (fDialog.ShowDialog() == DialogResult.OK)
|
||||||
|
{
|
||||||
|
DataProvider.Settings.Remapper.AssemblyPath = fDialog.FileName;
|
||||||
|
DataProvider.LoadAssemblyDefinition(fDialog.FileName);
|
||||||
|
TargetAssemblyPath.Text = fDialog.FileName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OutputDirectoryButton_Click_1(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
using FolderBrowserDialog fDialog = new();
|
||||||
|
|
||||||
|
fDialog.Description = "Select a directory";
|
||||||
|
fDialog.ShowNewFolderButton = true;
|
||||||
|
|
||||||
|
if (fDialog.ShowDialog() == DialogResult.OK)
|
||||||
|
{
|
||||||
|
DataProvider.Settings.Remapper.OutputPath = fDialog.SelectedPath;
|
||||||
|
RemapperOutputDirectoryPath.Text = fDialog.SelectedPath;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void RunAutoMapButton_Click(object sender, EventArgs e)
|
private void RunAutoMapButton_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
AutoMapper.InitializeAutoMapping();
|
AutoMapper.InitializeAutoMapping();
|
||||||
@ -341,7 +375,7 @@ public partial class ReCodeItForm : Form
|
|||||||
|
|
||||||
private void RunAutoRemapButton_Click(object sender, EventArgs e)
|
private void RunAutoRemapButton_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrEmpty(DataProvider.Settings.AppSettings.AssemblyPath))
|
if (string.IsNullOrEmpty(DataProvider.Settings.AutoMapper.AssemblyPath))
|
||||||
{
|
{
|
||||||
MessageBox.Show("Please go to the settings tab and load an assembly and select and output location", "Assembly not loaded");
|
MessageBox.Show("Please go to the settings tab and load an assembly and select and output location", "Assembly not loaded");
|
||||||
return;
|
return;
|
||||||
@ -354,21 +388,23 @@ public partial class ReCodeItForm : Form
|
|||||||
|
|
||||||
#endregion BUTTONS
|
#endregion BUTTONS
|
||||||
|
|
||||||
|
#endregion MANUAL_REMAPPER
|
||||||
|
|
||||||
#region SETTINGS_TAB
|
#region SETTINGS_TAB
|
||||||
|
|
||||||
public void RefreshSettingsPage()
|
public void RefreshSettingsPage()
|
||||||
{
|
{
|
||||||
AssemblyPathTextBox.Text = DataProvider.Settings.AppSettings.AssemblyPath;
|
// Settings page
|
||||||
OutputPathTextBox.Text = DataProvider.Settings.AppSettings.OutputPath;
|
|
||||||
MappingPathTextBox.Text = DataProvider.Settings.AppSettings.MappingPath;
|
|
||||||
AssemblyPathTextBox.Text = DataProvider.Settings.AppSettings.NameMangledPath;
|
|
||||||
|
|
||||||
DebugLoggingCheckbox.Checked = DataProvider.Settings.AppSettings.Debug;
|
DebugLoggingCheckbox.Checked = DataProvider.Settings.AppSettings.Debug;
|
||||||
SilentModeCheckbox.Checked = DataProvider.Settings.AppSettings.SilentMode;
|
SilentModeCheckbox.Checked = DataProvider.Settings.AppSettings.SilentMode;
|
||||||
RenameFieldsCheckbox.Checked = DataProvider.Settings.AppSettings.RenameFields;
|
|
||||||
RenamePropertiesCheckbox.Checked = DataProvider.Settings.AppSettings.RenameProperties;
|
// Remapper page
|
||||||
PublicizeCheckbox.Checked = DataProvider.Settings.AppSettings.Publicize;
|
TargetAssemblyPath.Text = DataProvider.Settings.Remapper.AssemblyPath;
|
||||||
UnsealCheckbox.Checked = DataProvider.Settings.AppSettings.Unseal;
|
RemapperOutputDirectoryPath.Text = DataProvider.Settings.Remapper.OutputPath;
|
||||||
|
RenameFieldsCheckbox.Checked = DataProvider.Settings.Remapper.RenameFields;
|
||||||
|
RenamePropertiesCheckbox.Checked = DataProvider.Settings.Remapper.RenameProperties;
|
||||||
|
RemapperPublicicize.Checked = DataProvider.Settings.Remapper.Publicize;
|
||||||
|
RemapperUnseal.Checked = DataProvider.Settings.Remapper.Unseal;
|
||||||
|
|
||||||
AutoMapperTypesExcludeBox.Items.Clear();
|
AutoMapperTypesExcludeBox.Items.Clear();
|
||||||
foreach (var method in DataProvider.Settings.AutoMapper.TypesToIgnore)
|
foreach (var method in DataProvider.Settings.AutoMapper.TypesToIgnore)
|
||||||
@ -376,44 +412,12 @@ public partial class ReCodeItForm : Form
|
|||||||
AutoMapperTypesExcludeBox.Items.Add(method);
|
AutoMapperTypesExcludeBox.Items.Add(method);
|
||||||
}
|
}
|
||||||
|
|
||||||
MaxMatchCountUpDown.Value = DataProvider.Settings.Remapper.MaxMatchCount;
|
|
||||||
AutoMapperRequiredMatchesUpDown.Value = DataProvider.Settings.AutoMapper.RequiredMatches;
|
AutoMapperRequiredMatchesUpDown.Value = DataProvider.Settings.AutoMapper.RequiredMatches;
|
||||||
AutoMapperMinLengthUpDown.Value = DataProvider.Settings.AutoMapper.MinLengthToMatch;
|
AutoMapperMinLengthUpDown.Value = DataProvider.Settings.AutoMapper.MinLengthToMatch;
|
||||||
}
|
}
|
||||||
|
|
||||||
#region SETTINGS_BUTTONS
|
#region SETTINGS_BUTTONS
|
||||||
|
|
||||||
private void PickAssemblyPathButton_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
OpenFileDialog fDialog = new()
|
|
||||||
{
|
|
||||||
Title = "Select a DLL file",
|
|
||||||
Filter = "DLL Files (*.dll)|*.dll|All Files (*.*)|*.*",
|
|
||||||
Multiselect = false
|
|
||||||
};
|
|
||||||
|
|
||||||
if (fDialog.ShowDialog() == DialogResult.OK)
|
|
||||||
{
|
|
||||||
DataProvider.Settings.AppSettings.AssemblyPath = fDialog.FileName;
|
|
||||||
DataProvider.LoadAssemblyDefinition();
|
|
||||||
AssemblyPathTextBox.Text = fDialog.FileName;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OutputDirectoryButton_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
using FolderBrowserDialog fDialog = new();
|
|
||||||
|
|
||||||
fDialog.Description = "Select a directory";
|
|
||||||
fDialog.ShowNewFolderButton = true;
|
|
||||||
|
|
||||||
if (fDialog.ShowDialog() == DialogResult.OK)
|
|
||||||
{
|
|
||||||
DataProvider.Settings.AppSettings.OutputPath = fDialog.SelectedPath;
|
|
||||||
OutputPathTextBox.Text = fDialog.SelectedPath;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void MappingChooseButton_Click(object sender, EventArgs e)
|
private void MappingChooseButton_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
var fDialog = new OpenFileDialog
|
var fDialog = new OpenFileDialog
|
||||||
@ -430,23 +434,6 @@ public partial class ReCodeItForm : Form
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void PickNameMangledPathButton_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
OpenFileDialog fDialog = new()
|
|
||||||
{
|
|
||||||
Title = "Select a DLL file",
|
|
||||||
Filter = "DLL Files (*.dll)|*.dll|All Files (*.*)|*.*",
|
|
||||||
Multiselect = false
|
|
||||||
};
|
|
||||||
|
|
||||||
if (fDialog.ShowDialog() == DialogResult.OK)
|
|
||||||
{
|
|
||||||
DataProvider.Settings.AppSettings.NameMangledPath = fDialog.FileName;
|
|
||||||
DataProvider.LoadAssemblyDefinition(true);
|
|
||||||
AssemblyPathTextBox.Text = fDialog.FileName;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion SETTINGS_BUTTONS
|
#endregion SETTINGS_BUTTONS
|
||||||
|
|
||||||
#region CHECKBOXES
|
#region CHECKBOXES
|
||||||
@ -477,13 +464,13 @@ public partial class ReCodeItForm : Form
|
|||||||
|
|
||||||
private void PublicizeCheckbox_CheckedChanged(object sender, EventArgs e)
|
private void PublicizeCheckbox_CheckedChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
DataProvider.Settings.AppSettings.Publicize = PublicizeCheckbox.Checked;
|
DataProvider.Settings.Remapper.Publicize = PublicizeCheckbox.Checked;
|
||||||
DataProvider.SaveAppSettings();
|
DataProvider.SaveAppSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void UnsealCheckbox_CheckedChanged(object sender, EventArgs e)
|
private void UnsealCheckbox_CheckedChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
DataProvider.Settings.AppSettings.Unseal = UnsealCheckbox.Checked;
|
DataProvider.Settings.Remapper.Unseal = UnsealCheckbox.Checked;
|
||||||
DataProvider.SaveAppSettings();
|
DataProvider.SaveAppSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -491,12 +478,6 @@ public partial class ReCodeItForm : Form
|
|||||||
|
|
||||||
#region UPDOWNS
|
#region UPDOWNS
|
||||||
|
|
||||||
private void MaxMatchCountUpDown_ValueChanged(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
DataProvider.Settings.Remapper.MaxMatchCount = (int)MaxMatchCountUpDown.Value;
|
|
||||||
DataProvider.SaveAppSettings();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void AutoMapperRequiredMatchesUpDown_ValueChanged(object sender, EventArgs e)
|
private void AutoMapperRequiredMatchesUpDown_ValueChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
DataProvider.Settings.AutoMapper.RequiredMatches = (int)AutoMapperRequiredMatchesUpDown.Value;
|
DataProvider.Settings.AutoMapper.RequiredMatches = (int)AutoMapperRequiredMatchesUpDown.Value;
|
||||||
@ -515,7 +496,6 @@ public partial class ReCodeItForm : Form
|
|||||||
AutoMapperTokensBox.Items.Clear();
|
AutoMapperTokensBox.Items.Clear();
|
||||||
AutoMapperFPBox.Items.Clear();
|
AutoMapperFPBox.Items.Clear();
|
||||||
|
|
||||||
MaxMatchCountUpDown.Value = DataProvider.Settings.Remapper.MaxMatchCount;
|
|
||||||
AutoMapperRequiredMatchesUpDown.Value = DataProvider.Settings.AutoMapper.RequiredMatches;
|
AutoMapperRequiredMatchesUpDown.Value = DataProvider.Settings.AutoMapper.RequiredMatches;
|
||||||
AutoMapperSearchMethodsCheckBox.Checked = DataProvider.Settings.AutoMapper.SearchMethods;
|
AutoMapperSearchMethodsCheckBox.Checked = DataProvider.Settings.AutoMapper.SearchMethods;
|
||||||
|
|
||||||
@ -657,7 +637,7 @@ public partial class ReCodeItForm : Form
|
|||||||
|
|
||||||
// Check boxes
|
// Check boxes
|
||||||
|
|
||||||
ForceRenameCheckbox.Checked = false;
|
RemapperUseForceRename.Checked = false;
|
||||||
ConstructorCountEnabled.Checked = false;
|
ConstructorCountEnabled.Checked = false;
|
||||||
MethodCountEnabled.Checked = false;
|
MethodCountEnabled.Checked = false;
|
||||||
FieldCountEnabled.Checked = false;
|
FieldCountEnabled.Checked = false;
|
||||||
@ -691,7 +671,7 @@ public partial class ReCodeItForm : Form
|
|||||||
|
|
||||||
NewTypeName.Text = remap.NewTypeName;
|
NewTypeName.Text = remap.NewTypeName;
|
||||||
OriginalTypeName.Text = remap.OriginalTypeName;
|
OriginalTypeName.Text = remap.OriginalTypeName;
|
||||||
ForceRenameCheckbox.Checked = remap.UseForceRename;
|
RemapperUseForceRename.Checked = remap.UseForceRename;
|
||||||
|
|
||||||
BaseClassIncludeTextFIeld.Text = remap.SearchParams.MatchBaseClass;
|
BaseClassIncludeTextFIeld.Text = remap.SearchParams.MatchBaseClass;
|
||||||
BaseClassExcludeTextField.Text = remap.SearchParams.IgnoreBaseClass;
|
BaseClassExcludeTextField.Text = remap.SearchParams.IgnoreBaseClass;
|
||||||
@ -788,9 +768,4 @@ public partial class ReCodeItForm : Form
|
|||||||
RemapTreeView.Nodes.Add(GUIHelpers.GenerateTreeNode(remap, this));
|
RemapTreeView.Nodes.Add(GUIHelpers.GenerateTreeNode(remap, this));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ForceRenameCheckbox_CheckedChanged(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -12,7 +12,6 @@ internal static class Program
|
|||||||
private static void Main()
|
private static void Main()
|
||||||
{
|
{
|
||||||
DataProvider.LoadAppSettings();
|
DataProvider.LoadAppSettings();
|
||||||
DataProvider.LoadMappingFile();
|
|
||||||
|
|
||||||
// To customize application configuration such as set high DPI settings or default font, see https://aka.ms/applicationconfiguration.
|
// To customize application configuration such as set high DPI settings or default font, see https://aka.ms/applicationconfiguration.
|
||||||
ApplicationConfiguration.Initialize();
|
ApplicationConfiguration.Initialize();
|
||||||
|
@ -39,7 +39,7 @@ public class ReCodeItAutoMapper
|
|||||||
AllTypes = [];
|
AllTypes = [];
|
||||||
AlreadyChangedNames = [];
|
AlreadyChangedNames = [];
|
||||||
|
|
||||||
DataProvider.LoadAssemblyDefinition();
|
DataProvider.LoadAssemblyDefinition(Settings.AssemblyPath);
|
||||||
|
|
||||||
Error = false;
|
Error = false;
|
||||||
FailureCount = 0;
|
FailureCount = 0;
|
||||||
@ -524,7 +524,7 @@ public class ReCodeItAutoMapper
|
|||||||
|
|
||||||
private void WriteChanges()
|
private void WriteChanges()
|
||||||
{
|
{
|
||||||
var path = DataProvider.WriteAssemblyDefinition();
|
var path = DataProvider.WriteAssemblyDefinition(Settings.OutputPath);
|
||||||
|
|
||||||
var fieldCountMatchResult = MappingPairs.Where(x => x.AutoMappingResult == AutoMappingResult.Match_From_Property).Count();
|
var fieldCountMatchResult = MappingPairs.Where(x => x.AutoMappingResult == AutoMappingResult.Match_From_Property).Count();
|
||||||
var propertyCountMatchResult = MappingPairs.Where(x => x.AutoMappingResult == AutoMappingResult.Match_From_Property).Count();
|
var propertyCountMatchResult = MappingPairs.Where(x => x.AutoMappingResult == AutoMappingResult.Match_From_Property).Count();
|
||||||
|
@ -7,7 +7,6 @@ public class Settings
|
|||||||
{
|
{
|
||||||
public AppSettings AppSettings { get; set; }
|
public AppSettings AppSettings { get; set; }
|
||||||
public RemapperSettings Remapper { get; set; }
|
public RemapperSettings Remapper { get; set; }
|
||||||
|
|
||||||
public AutoMapperSettings AutoMapper { get; set; }
|
public AutoMapperSettings AutoMapper { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -15,28 +14,32 @@ public class AppSettings
|
|||||||
{
|
{
|
||||||
public bool Debug { get; set; }
|
public bool Debug { get; set; }
|
||||||
public bool SilentMode { get; set; }
|
public bool SilentMode { get; set; }
|
||||||
|
|
||||||
|
public bool RenameFields { get; set; }
|
||||||
|
public bool RenameProperties { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class RemapperSettings
|
||||||
|
{
|
||||||
public string AssemblyPath { get; set; }
|
public string AssemblyPath { get; set; }
|
||||||
public string NameMangledPath { get; set; }
|
|
||||||
public string OutputPath { get; set; }
|
public string OutputPath { get; set; }
|
||||||
public string MappingPath { get; set; }
|
public string MappingPath { get; set; }
|
||||||
|
|
||||||
public bool RenameFields { get; set; }
|
public bool RenameFields { get; set; }
|
||||||
public bool RenameProperties { get; set; }
|
public bool RenameProperties { get; set; }
|
||||||
public bool Publicize { get; set; }
|
public bool Publicize { get; set; }
|
||||||
public bool Unseal { get; set; }
|
public bool Unseal { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class RemapperSettings
|
|
||||||
{
|
|
||||||
public int MaxMatchCount { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public class AutoMapperSettings
|
public class AutoMapperSettings
|
||||||
{
|
{
|
||||||
|
public string AssemblyPath { get; set; }
|
||||||
|
public string OutputPath { get; set; }
|
||||||
public int RequiredMatches { get; set; }
|
public int RequiredMatches { get; set; }
|
||||||
|
|
||||||
public int MinLengthToMatch { get; set; }
|
public int MinLengthToMatch { get; set; }
|
||||||
|
|
||||||
public bool SearchMethods { get; set; }
|
public bool SearchMethods { get; set; }
|
||||||
|
public bool Publicize { get; set; }
|
||||||
|
public bool Unseal { get; set; }
|
||||||
|
|
||||||
public List<string> TypesToIgnore { get; set; }
|
public List<string> TypesToIgnore { get; set; }
|
||||||
|
|
||||||
|
@ -17,12 +17,14 @@ public class ReCodeItRemapper
|
|||||||
|
|
||||||
private static readonly Stopwatch Stopwatch = new();
|
private static readonly Stopwatch Stopwatch = new();
|
||||||
|
|
||||||
|
private RemapperSettings Settings => DataProvider.Settings.Remapper;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Start the remapping process
|
/// Start the remapping process
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void InitializeRemap()
|
public void InitializeRemap()
|
||||||
{
|
{
|
||||||
DataProvider.LoadAssemblyDefinition();
|
DataProvider.LoadAssemblyDefinition(Settings.AssemblyPath);
|
||||||
|
|
||||||
IsRunning = true;
|
IsRunning = true;
|
||||||
DisplayBasicModuleInformation();
|
DisplayBasicModuleInformation();
|
||||||
@ -39,12 +41,12 @@ public class ReCodeItRemapper
|
|||||||
ChooseBestMatches();
|
ChooseBestMatches();
|
||||||
|
|
||||||
// Dont publicize and unseal until after the remapping so we can use those as search parameters
|
// Dont publicize and unseal until after the remapping so we can use those as search parameters
|
||||||
if (!DataProvider.Settings.AppSettings.Publicize)
|
if (!Settings.Publicize)
|
||||||
{
|
{
|
||||||
Publicizer.Publicize();
|
Publicizer.Publicize();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!DataProvider.Settings.AppSettings.Unseal)
|
if (!Settings.Unseal)
|
||||||
{
|
{
|
||||||
Publicizer.Unseal();
|
Publicizer.Unseal();
|
||||||
}
|
}
|
||||||
@ -61,8 +63,8 @@ public class ReCodeItRemapper
|
|||||||
Logger.Log("-----------------------------------------------", ConsoleColor.Yellow);
|
Logger.Log("-----------------------------------------------", ConsoleColor.Yellow);
|
||||||
Logger.Log($"Starting remap...", ConsoleColor.Yellow);
|
Logger.Log($"Starting remap...", ConsoleColor.Yellow);
|
||||||
Logger.Log($"Module contains {DataProvider.ModuleDefinition.Types.Count} Types", ConsoleColor.Yellow);
|
Logger.Log($"Module contains {DataProvider.ModuleDefinition.Types.Count} Types", ConsoleColor.Yellow);
|
||||||
Logger.Log($"Publicize: {DataProvider.Settings.AppSettings.Publicize}", ConsoleColor.Yellow);
|
Logger.Log($"Publicize: {Settings.Publicize}", ConsoleColor.Yellow);
|
||||||
Logger.Log($"Unseal: {DataProvider.Settings.AppSettings.Unseal}", ConsoleColor.Yellow);
|
Logger.Log($"Unseal: {Settings.Unseal}", ConsoleColor.Yellow);
|
||||||
Logger.Log("-----------------------------------------------", ConsoleColor.Yellow);
|
Logger.Log("-----------------------------------------------", ConsoleColor.Yellow);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -203,8 +205,7 @@ public class ReCodeItRemapper
|
|||||||
if (scores.Count == 0) { return; }
|
if (scores.Count == 0) { return; }
|
||||||
|
|
||||||
var filteredScores = scores
|
var filteredScores = scores
|
||||||
.OrderByDescending(score => score.Score)
|
.OrderByDescending(score => score.Score);
|
||||||
.Take(DataProvider.Settings.Remapper.MaxMatchCount);
|
|
||||||
|
|
||||||
var highestScore = filteredScores.FirstOrDefault();
|
var highestScore = filteredScores.FirstOrDefault();
|
||||||
|
|
||||||
@ -238,7 +239,7 @@ public class ReCodeItRemapper
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void WriteAssembly()
|
private void WriteAssembly()
|
||||||
{
|
{
|
||||||
var path = DataProvider.WriteAssemblyDefinition(true);
|
var path = DataProvider.WriteAssemblyDefinition(Settings.OutputPath);
|
||||||
|
|
||||||
Logger.Log("-----------------------------------------------", ConsoleColor.Green);
|
Logger.Log("-----------------------------------------------", ConsoleColor.Green);
|
||||||
Logger.Log($"Complete: Assembly written to `{path}`", ConsoleColor.Green);
|
Logger.Log($"Complete: Assembly written to `{path}`", ConsoleColor.Green);
|
||||||
@ -257,7 +258,7 @@ public class ReCodeItRemapper
|
|||||||
Logger.Log("Reloading assembly definitions", ConsoleColor.Yellow);
|
Logger.Log("Reloading assembly definitions", ConsoleColor.Yellow);
|
||||||
Logger.Log("-----------------------------------------------", ConsoleColor.Yellow);
|
Logger.Log("-----------------------------------------------", ConsoleColor.Yellow);
|
||||||
|
|
||||||
DataProvider.LoadAssemblyDefinition();
|
DataProvider.LoadAssemblyDefinition(Settings.AssemblyPath);
|
||||||
DataProvider.ScoringModels = [];
|
DataProvider.ScoringModels = [];
|
||||||
|
|
||||||
Stopwatch.Reset();
|
Stopwatch.Reset();
|
||||||
|
@ -64,18 +64,14 @@ public static class DataProvider
|
|||||||
File.WriteAllText(settingsPath, jsonText);
|
File.WriteAllText(settingsPath, jsonText);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void LoadMappingFile(string path = "")
|
public static void LoadMappingFile(string path)
|
||||||
{
|
{
|
||||||
if (!File.Exists(Settings.AppSettings.MappingPath))
|
if (!File.Exists(path))
|
||||||
{
|
{
|
||||||
throw new InvalidOperationException($"path `{Settings.AppSettings.MappingPath}` does not exist...");
|
Logger.Log($"Error loading mapping.json from `{path}`, First time running? Please select a mapping path");
|
||||||
}
|
}
|
||||||
|
|
||||||
var fpath = path == string.Empty
|
var jsonText = File.ReadAllText(path);
|
||||||
? Settings.AppSettings.MappingPath
|
|
||||||
: path;
|
|
||||||
|
|
||||||
var jsonText = File.ReadAllText(fpath);
|
|
||||||
|
|
||||||
Remaps = [];
|
Remaps = [];
|
||||||
ScoringModels = [];
|
ScoringModels = [];
|
||||||
@ -95,10 +91,10 @@ public static class DataProvider
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Logger.Log($"Mapping file loaded from '{Settings.AppSettings.MappingPath}'");
|
Logger.Log($"Mapping file loaded from '{path}' containing {Remaps.Count} remaps");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void SaveMapping()
|
public static void SaveMapping(string path)
|
||||||
{
|
{
|
||||||
JsonSerializerSettings settings = new()
|
JsonSerializerSettings settings = new()
|
||||||
{
|
{
|
||||||
@ -108,14 +104,14 @@ public static class DataProvider
|
|||||||
|
|
||||||
var jsonText = JsonConvert.SerializeObject(Remaps, settings);
|
var jsonText = JsonConvert.SerializeObject(Remaps, settings);
|
||||||
|
|
||||||
File.WriteAllText(Settings.AppSettings.MappingPath, jsonText);
|
File.WriteAllText(path, jsonText);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UpdateMapping()
|
public static void UpdateMapping(string path)
|
||||||
{
|
{
|
||||||
if (!File.Exists(Settings.AppSettings.MappingPath))
|
if (!File.Exists(path))
|
||||||
{
|
{
|
||||||
throw new FileNotFoundException($"path `{Settings.AppSettings.MappingPath}` does not exist...");
|
throw new FileNotFoundException($"path `{path}` does not exist...");
|
||||||
}
|
}
|
||||||
|
|
||||||
JsonSerializerSettings settings = new()
|
JsonSerializerSettings settings = new()
|
||||||
@ -143,20 +139,18 @@ public static class DataProvider
|
|||||||
|
|
||||||
var jsonText = JsonConvert.SerializeObject(Remaps, settings);
|
var jsonText = JsonConvert.SerializeObject(Remaps, settings);
|
||||||
|
|
||||||
File.WriteAllText(Settings.AppSettings.MappingPath, jsonText);
|
File.WriteAllText(path, jsonText);
|
||||||
|
|
||||||
Logger.Log($"Mapping file saved to {Settings.AppSettings.MappingPath}");
|
Logger.Log($"Mapping file saved to {path}");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void LoadAssemblyDefinition(bool nameMangled = false)
|
public static void LoadAssemblyDefinition(string path)
|
||||||
{
|
{
|
||||||
AssemblyDefinition = null;
|
AssemblyDefinition = null;
|
||||||
ModuleDefinition = null;
|
ModuleDefinition = null;
|
||||||
|
|
||||||
DefaultAssemblyResolver resolver = new();
|
DefaultAssemblyResolver resolver = new();
|
||||||
|
|
||||||
var path = nameMangled == false ? Settings.AppSettings.AssemblyPath : Settings.AppSettings.NameMangledPath;
|
|
||||||
|
|
||||||
resolver.AddSearchDirectory(Path.GetDirectoryName(path)); // Replace with the correct path : (6/14) I have no idea what I met by that
|
resolver.AddSearchDirectory(Path.GetDirectoryName(path)); // Replace with the correct path : (6/14) I have no idea what I met by that
|
||||||
ReaderParameters parameters = new() { AssemblyResolver = resolver };
|
ReaderParameters parameters = new() { AssemblyResolver = resolver };
|
||||||
|
|
||||||
@ -169,36 +163,26 @@ public static class DataProvider
|
|||||||
throw new NullReferenceException("AssemblyDefinition was null...");
|
throw new NullReferenceException("AssemblyDefinition was null...");
|
||||||
}
|
}
|
||||||
|
|
||||||
var fileName = Path.GetFileName(Settings.AppSettings.AssemblyPath);
|
var fileName = Path.GetFileName(path);
|
||||||
|
|
||||||
foreach (var module in assemblyDefinition.Modules.ToArray())
|
foreach (var module in assemblyDefinition.Modules.ToArray())
|
||||||
{
|
{
|
||||||
if (module.Name == fileName)
|
if (module.Name == fileName)
|
||||||
{
|
{
|
||||||
Logger.Log($"Module definition {module.Name} found'");
|
Logger.Log($"Module definition {module.Name} found");
|
||||||
|
|
||||||
if (nameMangled)
|
|
||||||
{
|
|
||||||
NameMangledAssemblyDefinition = assemblyDefinition;
|
|
||||||
NameMangledModuleDefinition = module;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
AssemblyDefinition = assemblyDefinition;
|
AssemblyDefinition = assemblyDefinition;
|
||||||
ModuleDefinition = module;
|
ModuleDefinition = module;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nameMangled)
|
Logger.Log($"Module {fileName} not found in assembly {fileName}");
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
Logger.Log($"Module `{fileName}` not found in assembly {fileName}");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static string WriteAssemblyDefinition(bool updateMapping = false)
|
public static string WriteAssemblyDefinition(string path)
|
||||||
{
|
{
|
||||||
var filename = Path.GetFileNameWithoutExtension(Settings.AppSettings.AssemblyPath);
|
var filename = Path.GetFileNameWithoutExtension(path);
|
||||||
var strippedPath = Path.GetDirectoryName(filename);
|
var strippedPath = Path.GetDirectoryName(filename);
|
||||||
|
|
||||||
filename = $"{filename}-Remapped.dll";
|
filename = $"{filename}-Remapped.dll";
|
||||||
@ -207,11 +191,6 @@ public static class DataProvider
|
|||||||
|
|
||||||
AssemblyDefinition.Write(remappedPath);
|
AssemblyDefinition.Write(remappedPath);
|
||||||
|
|
||||||
if (updateMapping)
|
|
||||||
{
|
|
||||||
UpdateMapping();
|
|
||||||
}
|
|
||||||
|
|
||||||
return remappedPath;
|
return remappedPath;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,26 +1,25 @@
|
|||||||
{
|
{
|
||||||
"AppSettings": {
|
"AppSettings": {
|
||||||
"Debug": false, // Enables extra debug logging, slows down the program by alot
|
"Debug": false, // Enables extra debug logging, slows down the program by alot
|
||||||
"SilentMode": true, // The tool will stop and prompt you to continue on every remapping if disable
|
"SilentMode": true // The tool will stop and prompt you to continue on every remapping if disable
|
||||||
"RenameFields": true, // Names of fields of the matched type will be renamed to the type name with approproiate convention
|
|
||||||
"RenameProperties": true, // Names of properties of the matched type will be renamed to the type name with approproiate convention
|
|
||||||
|
|
||||||
},
|
},
|
||||||
"Remapper": {
|
"Remapper": {
|
||||||
"AssemblyPath": "./Data/Managed/Assembly-CSharp.dll", // Path to the assembly we want to remap
|
"AssemblyPath": "./Data/Managed/Assembly-CSharp.dll", // Path to the assembly we want to remap
|
||||||
"OutputPath": "./Data/Assembly-CSharp-Remapped.dll", // Path including the filename and extension we want to write the changes to
|
"OutputPath": "./Data/Assembly-CSharp-Remapped.dll", // Path including the filename and extension we want to write the changes to
|
||||||
"MappingPath": "./Data/Mappings.jsonc", // Path to the mapping file
|
"MappingPath": "./Data/Mappings.jsonc", // Path to the mapping file
|
||||||
"MaxMatchCount": 5, // Max matches the remapper will return
|
"RenameFields": true, // Names of fields of the matched type will be renamed to the type name with approproiate convention
|
||||||
|
"RenameProperties": true, // Names of properties of the matched type will be renamed to the type name with approproiate convention
|
||||||
"Publicize": true, // Publicize all types, methods, and properties : NOTE: Not run until after the remap has completed
|
"Publicize": true, // Publicize all types, methods, and properties : NOTE: Not run until after the remap has completed
|
||||||
"Unseal": true // Unseal all types : NOTE: Not run until after the remap has completed
|
"Unseal": true // Unseal all types : NOTE: Not run until after the remap has completed
|
||||||
},
|
},
|
||||||
"AutoMapper": {
|
"AutoMapper": {
|
||||||
"AssemblyPath": "./Data/Managed/Assembly-CSharp.dll", // Path to the assembly we want to remap
|
"AssemblyPath": "./Data/Managed/Assembly-CSharp.dll", // Path to the assembly we want to remap
|
||||||
"OutputPath": "./Data/Assembly-CSharp-Remapped.dll", // Path including the filename and extension we want to write the changes to
|
"OutputPath": "./Data/Assembly-CSharp-Remapped.dll", // Path including the filename and extension we want to write the changes to
|
||||||
"MappingPath": "./Data/Mappings.jsonc", // Path to the mapping file
|
|
||||||
"RequiredMatches": 5, // Minimum number of times a member must have this name in the assembly before considering it for remapping
|
"RequiredMatches": 5, // Minimum number of times a member must have this name in the assembly before considering it for remapping
|
||||||
"MinLengthToMatch": 7, // Minimum length of the field/property name in code before it will be considered for a rename
|
"MinLengthToMatch": 7, // Minimum length of the field/property name in code before it will be considered for a rename
|
||||||
"SearchMethods": true, // Will attempt to map types from method meta data and parameters
|
"SearchMethods": true, // Will attempt to map types from method meta data and parameters
|
||||||
|
"RenameFields": true, // Names of fields of the matched type will be renamed to the type name with approproiate convention
|
||||||
|
"RenameProperties": true, // Names of properties of the matched type will be renamed to the type name with approproiate convention
|
||||||
"Publicize": true, // Publicize all types, methods, and properties : NOTE: Not run until after the remap has completed
|
"Publicize": true, // Publicize all types, methods, and properties : NOTE: Not run until after the remap has completed
|
||||||
"Unseal": true, // Unseal all types : NOTE: Not run until after the remap has completed
|
"Unseal": true, // Unseal all types : NOTE: Not run until after the remap has completed
|
||||||
"TypesToIgnore": [ // Any member name you want to ignore while iterating through the assembly
|
"TypesToIgnore": [ // Any member name you want to ignore while iterating through the assembly
|
||||||
|
Loading…
x
Reference in New Issue
Block a user