- scrollViewCurrentImage.ScrollToHorizontalOffset(deltaX + scrollStartOffsetX)
- scrollViewCurrentImage.ScrollToVerticalOffset(deltaY + scrollStartOffsetY)
-
- args.Handled <- true)
-
- borderCurrentImage.PreviewMouseLeftButtonUp.AddHandler(fun obj args ->
- if borderCurrentImage.IsMouseCaptured
- then
- borderCurrentImage.Cursor <- Input.Cursors.Arrow
- borderCurrentImage.ReleaseMouseCapture()
- args.Handled <- true)
+ win.scrollViewCurrentImage.ScrollToHorizontalOffset(deltaX + scrollStartOffsetX)
+ win.scrollViewCurrentImage.ScrollToVerticalOffset(deltaY + scrollStartOffsetY)
+
+ args.Handled <- true
+ )
+
+ win.borderCurrentImage.PreviewMouseLeftButtonUp.AddHandler(fun obj args ->
+ if win.borderCurrentImage.IsMouseCaptured then
+ win.borderCurrentImage.Cursor <- Input.Cursors.Arrow
+ win.borderCurrentImage.ReleaseMouseCapture()
+ args.Handled <- true
+ )
+
+ // Shortcuts.
+ // Save.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand((fun obj -> saveCurrentDocument ()), (fun obj -> true)),
+ Input.KeyGesture(Input.Key.S, Input.ModifierKeys.Control)
+ )
+ ) |> ignore
+
+ // Save as.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand((fun obj -> saveCurrentDocumentAsNewFile ()), (fun obj -> true)),
+ Input.KeyGesture(Input.Key.S, Input.ModifierKeys.Control ||| Input.ModifierKeys.Shift)
+ )
+ ) |> ignore
+
+ // Open.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand((fun obj -> askLoadFile ()), (fun obj -> true)),
+ Input.KeyGesture(Input.Key.O, Input.ModifierKeys.Control)
+ )
+ ) |> ignore
+
+ // New file.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand((fun obj -> newFile ()), (fun obj -> true)),
+ Input.KeyGesture(Input.Key.N, Input.ModifierKeys.Control)
+ )
+ ) |> ignore
+
+ // Export results.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand((fun obj -> exportResults ()), (fun obj -> true)),
+ Input.KeyGesture(Input.Key.E, Input.ModifierKeys.Control)
+ )
+ ) |> ignore
+
+ // Import an image.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand((fun obj -> importImage ()), (fun obj -> true)),
+ Input.KeyGesture(Input.Key.A, Input.ModifierKeys.Control)
+ )
+ ) |> ignore
+
+ // Show analysis dialog.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand((fun obj -> showAnalysisWindow ()), (fun obj -> state.SourceImages.Count() > 0)),
+ Input.KeyGesture(Input.Key.Y, Input.ModifierKeys.Control)
+ )
+ ) |> ignore
+
+ // Toggle RBC highlight.
+ win.InputBindings.Add(
+ Input.KeyBinding(
+ ViewModule.FunCommand(
+ (
+ fun obj ->
+ win.menuHightlightRBC.IsChecked <- not win.menuHightlightRBC.IsChecked
+ setHighlightRBC win.menuHightlightRBC.IsChecked
+ ),
+ (fun obj -> true)
+ ),
+ Input.KeyGesture(Input.Key.H, Input.ModifierKeys.Control)
+ )
+ ) |> ignore