From 9376b15fcd2ee0a5150981ff52542918058f0906 Mon Sep 17 00:00:00 2001 From: Katy Coe Date: Fri, 7 Feb 2020 04:13:30 +0100 Subject: [PATCH] GUI: Load binary file and back buttons --- Il2CppInspector.GUI/MainWindow.xaml | 6 ++-- Il2CppInspector.GUI/MainWindow.xaml.cs | 42 ++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/Il2CppInspector.GUI/MainWindow.xaml b/Il2CppInspector.GUI/MainWindow.xaml index a711b86..5341763 100644 --- a/Il2CppInspector.GUI/MainWindow.xaml +++ b/Il2CppInspector.GUI/MainWindow.xaml @@ -39,7 +39,7 @@ - + @@ -90,6 +90,8 @@ - + + + diff --git a/Il2CppInspector.GUI/MainWindow.xaml.cs b/Il2CppInspector.GUI/MainWindow.xaml.cs index bd8686c..e78a7fa 100644 --- a/Il2CppInspector.GUI/MainWindow.xaml.cs +++ b/Il2CppInspector.GUI/MainWindow.xaml.cs @@ -46,12 +46,54 @@ namespace Il2CppInspectorGUI if (await app.LoadMetadataAsync(openFileDialog.FileName)) { // Metadata loaded successfully lblMetadataVersion.DataContext = app.CurrentMetadata; + btnSelectBinaryFile.Visibility = Visibility.Visible; + btnBack.Visibility = Visibility.Visible; } else { MessageBox.Show(this, app.LastException.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); btnSelectMetadataFile.Visibility = Visibility.Visible; } } + else { + btnSelectMetadataFile.Visibility = Visibility.Visible; + } + } + + /// + /// Select binary file + /// + private async void BtnSelectBinaryFile_OnClick(object sender, RoutedEventArgs e) { + var app = (App) Application.Current; + + var openFileDialog = new OpenFileDialog { + Filter = "Binary executable file (*.exe;*.dll;*.so)|*.exe;*.dll;*.so|All files (*.*)|*.*", + CheckFileExists = true + }; + + btnSelectBinaryFile.Visibility = Visibility.Hidden; + btnBack.IsEnabled = false; + + if (openFileDialog.ShowDialog() == true) { + // Load the binary file + } + else { + btnSelectBinaryFile.Visibility = Visibility.Visible; + btnBack.IsEnabled = true; + } + } + + /// + /// Reset binary and metadata files and start again + /// + /// + /// + private void BtnBack_OnClick(object sender, RoutedEventArgs e) { + var app = (App) Application.Current; + + lblMetadataVersion.DataContext = null; + btnSelectBinaryFile.Visibility = Visibility.Hidden; + btnBack.Visibility = Visibility.Hidden; + btnSelectMetadataFile.Visibility = Visibility.Visible; } } }