X-Git-Url: http://git.euphorik.ch/?p=master-thesis.git;a=blobdiff_plain;f=Parasitemia%2FParasitemiaUI%2FGUI.fs;fp=Parasitemia%2FParasitemiaUI%2FGUI.fs;h=77281d3aaaf3e697f78aa7b912a5bcdd7da7ad65;hp=0b0d6dd44f5b73e0427002c8ffad06faef44392c;hb=9343c4deb0bf88c58d9c92d465d8e99f64656875;hpb=154264f33619b78e17182082b483cba97e128698 diff --git a/Parasitemia/ParasitemiaUI/GUI.fs b/Parasitemia/ParasitemiaUI/GUI.fs index 0b0d6dd..77281d3 100644 --- a/Parasitemia/ParasitemiaUI/GUI.fs +++ b/Parasitemia/ParasitemiaUI/GUI.fs @@ -427,16 +427,7 @@ let run (defaultConfig: Config) (fileToOpen: string option) = Log.Error(ex.ToString()) MessageBox.Show(sprintf "The results cannot be exported in \"%s\"" state.FilePath, "Error exporting the files", MessageBoxButton.OK, MessageBoxImage.Error) |> ignore - win.txtPatient.TextChanged.AddHandler(fun obj args -> state.PatientID <- win.txtPatient.Text) - - win.menuExit.Click.AddHandler(fun obj args -> win.Root.Close()) - win.menuSave.Click.AddHandler(fun obj args -> saveCurrentDocument ()) - win.menuSaveAs.Click.AddHandler(fun obj args -> saveCurrentDocumentAsNewFile ()) - win.menuOpen.Click.AddHandler(fun obj args -> askLoadFile ()) - win.menuNew.Click.AddHandler(fun obj args -> newFile ()) - win.menuExportResults.Click.AddHandler(fun obj args -> exportResults ()) - - win.menuAddSourceImage.Click.AddHandler(fun obj args -> + let importImage () = let dialog = OpenFileDialog(Filter = "Image Files|*.png;*.jpg;*.tif;*.tiff", Multiselect = true) let res = dialog.ShowDialog() if res.HasValue && res.Value @@ -456,7 +447,18 @@ let run (defaultConfig: Config) (fileToOpen: string option) = if noSourceImage then - updateCurrentImage ()) + updateCurrentImage () + + win.txtPatient.TextChanged.AddHandler(fun obj args -> state.PatientID <- win.txtPatient.Text) + + win.menuExit.Click.AddHandler(fun obj args -> win.Root.Close()) + win.menuSave.Click.AddHandler(fun obj args -> saveCurrentDocument ()) + win.menuSaveAs.Click.AddHandler(fun obj args -> saveCurrentDocumentAsNewFile ()) + win.menuOpen.Click.AddHandler(fun obj args -> askLoadFile ()) + win.menuNew.Click.AddHandler(fun obj args -> newFile ()) + win.menuExportResults.Click.AddHandler(fun obj args -> exportResults ()) + + win.menuAddSourceImage.Click.AddHandler(fun obj args -> importImage ()) win.menuAnalysis.SubmenuOpened.AddHandler(fun obj args -> win.menuStartAnalysis.IsEnabled <- state.SourceImages.Count() > 0) @@ -588,6 +590,12 @@ let run (defaultConfig: Config) (fileToOpen: string option) = FSharp.ViewModule.FunCommand((fun obj -> exportResults ()), (fun obj -> true)), Input.KeyGesture(Input.Key.E, Input.ModifierKeys.Control))) |> ignore + // Import an image. + win.Root.InputBindings.Add( + Input.KeyBinding( + FSharp.ViewModule.FunCommand((fun obj -> importImage ()), (fun obj -> true)), + Input.KeyGesture(Input.Key.A, Input.ModifierKeys.Control))) |> ignore + // Viewport preview. win.scrollViewCurrentImage.ScrollChanged.AddHandler(fun obj args -> updateViewportPreview ())