public SymbolWindow(SymbolViewModel viewModel, IMouseHook mouseHook, IKeyboardHook keyboardHook) { InitializeComponent(); _viewModel = viewModel; DataContext = _viewModel; _mouseHook = mouseHook; _mouseHook.MouseMove += mouseHook_MouseMove; _mouseHook.MouseDown += mouseHook_MouseDown; _keyboardHook = keyboardHook; _keyboardHook.KeyPress += keyboardHook_KeyPress; }
private void OpenSymbolWindow(object sender, RoutedEventArgs e) { var viewModel = new SymbolViewModel(_elvenar.Symbols); var symbolWindow = new SymbolWindow(viewModel, new MouseHook(), new KeyboardHook()); if (symbolWindow.ShowDialog() != true) { return; } _elvenar.Symbols = viewModel.Symbols.ToArray(); var service = new MacroService(_elvenar.Symbols, _elvenar.Macros, LeftClick, GetMousePosition, KeyPress); foreach (var replace in viewModel.ReplaceSymbolNames) { service.ReplaceSymbolName(Macros, replace.Key, replace.Value); } SetModified(true); }