public bool OnHotkey(Keys keyData) { if (!keyData.HasFlag(Keys.Control)) { return(false); } var key = keyData & ~Keys.Control; switch (key) { case Keys.N: ClearAllPixelsButton.PerformClick(); return(true); case Keys.I: InverseButton.PerformClick(); return(true); case Keys.R: ResizeButton.PerformClick(); return(true); case Keys.C: CopyButton.PerformClick(); return(true); case Keys.V: PasteButton.PerformClick(); return(true); case Keys.A: ImageListBox.BeginUpdate(); ImageListBox.SelectedIndices.Clear(); ImageListBox.SelectedIndices.AddRange(Enumerable.Range(0, ImageListBox.Items.Count)); ImageListBox.EndUpdate(); return(true); case Keys.Up: ShiftUpButton.PerformClick(); return(true); case Keys.Down: ShiftDownButton.PerformClick(); return(true); case Keys.Left: ShiftLeftButton.PerformClick(); return(true); case Keys.Right: ShiftRightButton.PerformClick(); return(true); } return(false); }
public MainWindow() { InitializeComponent(); SizeToContent = System.Windows.SizeToContent.Manual; MaxHeight = SystemParameters.WorkArea.Height; LayersWidgets = new ObservableCollection <LayerWidget>(); widgetsCanvas.DataContext = this; #region Button&Mouse Events // MainCanvas mouse events mainCanvas.MouseMove += new MouseEventHandler(MainCanvas_MouseMove); mainCanvas.MouseWheel += new MouseWheelEventHandler(MainCanvas_MouseWheel); // System buttons MinimizeButton_Black.AddHandler(MouseLeftButtonUpEvent, new MouseButtonEventHandler(MinimizeButtonUp), true); CloseButton_Black.AddHandler(MouseLeftButtonUpEvent, new MouseButtonEventHandler(CloseButtonUp), true); MaximizeButton_Black.AddHandler(MouseLeftButtonUpEvent, new MouseButtonEventHandler(MaximizeButtonUp), true); //MaximizeButtonOFF.AddHandler(MouseLeftButtonUpEvent, new MouseButtonEventHandler(MaximizeButtonUp), true); // Navigator buttons AddPhotoButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(ButtonOpenPhoto_Click), true); ArrowButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Arrow_Selected), true); ResizeButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Resize_Selected), true); RotateButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Rotate_Click), true); FillButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Fill_Selected), true); EraseButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Erase_Selected), true); BrushButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Brush_Selected), true); // Layers LayerUpButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(MoveLayerUp), true); LayerDownButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(MoveLayerDown), true); AddLayerButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(NewLayer_Click), true); DeleteLayerButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(DeleteLayer_Click), true); // Effects GrayscaleButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Grayscale_Click), true); NegativeButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(Negative_Click), true); GaussianBlurButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(GaussianBlur_Click), true); SobelEffectButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(SobelFilter_Click), true); SobelEffectGrayScaleButton.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(SobelFilterGrayscale_Click), true); #endregion Hide(); Start StartWindow = new Start(); StartWindow.Show(); KeyDown += OnKeyDownHandler; KeyUp += OnKeyUpHandler; }