Files
gif-resizer/GifResizer/Views/MainWindow.xaml.cs
2026-02-17 00:05:24 +01:00

60 lines
1.5 KiB
C#

using System.Windows;
using GifResizer.ViewModels;
using Microsoft.Win32;
namespace GifResizer.Views;
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
private readonly MainViewModel _mainViewModel;
public MainWindow(MainViewModel viewModel)
{
InitializeComponent();
_mainViewModel = viewModel;
DataContext = _mainViewModel;
}
private void BrowseButton_Click(object sender, RoutedEventArgs e)
{
try
{
OpenFileDialog fileDialog = new OpenFileDialog
{
Title = "Select a GIF file",
Filter = "GIF files (*.gif)|*.gif|All files (*.*)|*.*"
};
if (fileDialog.ShowDialog() == true)
{
_mainViewModel.FilePath = fileDialog.FileName;
}
}
catch (Exception ex)
{
DisplayErrorMessage("An error occured while selecting the GIF file: " + ex.Message);
}
}
private void ResizeButton_Click(object sender, RoutedEventArgs e)
{
try
{
_mainViewModel.ResizeGif(128,128);
}
catch (Exception ex)
{
DisplayErrorMessage("An error occured while resizing the GIF: " + ex.Message);
}
}
private void DisplayErrorMessage(string message)
{
MessageBox.Show(message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
}
}