private void OnMainWindowDrop(object sender, DragEventArgs e) { if (!e.Data.GetDataPresent(DataFormats.FileDrop) && !e.Data.GetDataPresent(DataFormats.UnicodeText)) { return; } Focus(); var inputFile = e.GetInputFiles().FirstOrDefault(x => x.EndsWith(@".csv", StringComparison.OrdinalIgnoreCase) || x.EndsWith(@".lut", StringComparison.OrdinalIgnoreCase) || string.Equals(Path.GetFileName(x), @"LUTLibrary.dll", StringComparison.OrdinalIgnoreCase)); if (inputFile != null) { e.Handled = true; if (!string.Equals(Path.GetFileName(inputFile), @"LUTLibrary.dll", StringComparison.OrdinalIgnoreCase)) { Model.Import(inputFile); } else { LutLibraryWrapper.Install(inputFile); } } }
public AcSettingsControls_Wheel_ForceFeedback() { try { _wrapper = LutLibraryWrapper.Initialize(); } catch (Exception) { // ignored } var mainWindow = Application.Current.MainWindow; if (mainWindow != null) { mainWindow.Drop += OnMainWindowDrop; } DataContext = new ViewModel(_wrapper); InitializeComponent(); if (_wrapper == null) { ImportCsvButton.Visibility = Visibility.Collapsed; } else { LutLibraryMessage.Visibility = Visibility.Collapsed; } this.OnActualUnload(() => { if (mainWindow != null) { mainWindow.Drop -= OnMainWindowDrop; } }); this.AddWidthCondition(900).Add(v => Grid.Columns = v ? 2 : 1); }
public AcSettingsControls_Wheel_ForceFeedback() { try { _wrapper = LutLibraryWrapper.Initialize(); } catch (Exception) { // ignored } var mainWindow = Application.Current.MainWindow; if (mainWindow != null) { mainWindow.Drop += OnMainWindowDrop; } DataContext = new ViewModel(_wrapper); InitializeComponent(); if (_wrapper == null) { ImportCsvButton.Visibility = Visibility.Collapsed; } else { LutLibraryMessage.Visibility = Visibility.Collapsed; } this.OnActualUnload(() => { Logging.Here(); DisposeHelper.Dispose(ref _wrapper); if (mainWindow != null) { mainWindow.Drop -= OnMainWindowDrop; } }); }
internal ViewModel(LutLibraryWrapper wrapper) { _wrapper = wrapper; }