public MainWindow() { logger = LoggerFactory.Create(GetType()); InitializeComponent(); AddingResultTab.Visibility = Visibility.Collapsed; RemovingResultTab.Visibility = Visibility.Collapsed; AdvancedRemovingResultTab.Visibility = Visibility.Collapsed; StartLogConsole(); originalImage = new UpdatableImage(OriginalImageControl); watermarkImage = new UpdatableImage(WatermarkImageControl); watermarkedImage = new UpdatableImage(WatermarkedImageControl); removingOriginalImage = new UpdatableImage(RemovingOriginalImageControl); advancedWatermarkedImage = new UpdatableImage(AdvancedWatermarkedImageControl); advancedOriginalImage = new UpdatableImage(AdvancedOriginalImageControl); addingWatermarkAlgorithmControls = new AlgorithmControls(Algorithms.common.AlgorithmMode.AddWatermark, AddingParametersGrid, AddingProcess, OriginalImageControl, WatermarkImageControl, null, UseImageToRemoveWatermarkAsWatermarked, Tabs, AddingResultTab, ADDING_RESULT_TAB_INDEX, AddingResultGrid, AddingResultScrollViewer, CloseAddingResult, CancelButton); removingWatermarkAlgorithmControls = new AlgorithmControls(Algorithms.common.AlgorithmMode.RemoveWatermark, RemovingParametersGrid, RemovingProcess, RemovingOriginalImageControl, null, WatermarkedImageControl, UseImageToRemoveWatermarkAsWatermarked, Tabs, RemovingResultTab, REMOVING_RESULT_TAB_INDEX, RemovingResultGrid, RemovingResultScrollViewer, CloseRemovingResult, CancelButton); advancedRemovingWatermarkAlgorithmControls = new AlgorithmControls(Algorithms.common.AlgorithmMode.RemoveWatermark, AdvancedRemovingParametersGrid, AdvancedRemovingProcess, AdvancedOriginalImageControl, null, AdvancedWatermarkedImageControl, UseImageToRemoveWatermarkAsWatermarked, Tabs, AdvancedRemovingResultTab, ADVANCED_REMOVING_RESULT_TAB_INDEX, AdvancedRemovingResultGrid, AdvancedRemovingResultScrollViewer, AdvancedCloseRemovingResult, CancelButton); SetUpInputImagesViewModels(); addingAlgorithmSelectionViewModel = new AlgorithmSelectionViewModel(ViewModelType.Basic, AddingAlgorithmBox, addingWatermarkAlgorithmControls, this, AddingErrorMessage); addingAlgorithmSelectionViewModel.SetUp(); removingAlgorithmSelectionViewModel = new AlgorithmSelectionViewModel(ViewModelType.Basic, RemovingAlgorithmBox, removingWatermarkAlgorithmControls, this, RemovingErrorMessage); removingAlgorithmSelectionViewModel.SetUp(); advancedRemovingAlgorithmSelectionViewModel = new AlgorithmSelectionViewModel(ViewModelType.Advanced, AdvancedRemovingAlgorithmBox, advancedRemovingWatermarkAlgorithmControls, this, AdvancedRemovingErrorMessage); advancedRemovingAlgorithmSelectionViewModel.SetUp(); originalGeneratorViewModel = new InternetImageGeneratorViewModel(new GeneratorControls(GenerateOriginalButton, originalImage), AddingErrorMessage); originalGeneratorViewModel.SetUp(); watermarkGeneratorViewModel = new TextImageGeneratorViewModel(new GeneratorControls(GenerateWatermarkButton, watermarkImage), AddingErrorMessage); watermarkGeneratorViewModel.SetUp(); watermarkedGeneratorViewModel = new InternetImageGeneratorViewModel(new GeneratorControls(GenerateWatermarkedButton, watermarkedImage), RemovingErrorMessage); watermarkedGeneratorViewModel.SetUp(); removingOriginalGeneratorViewModel = new InternetImageGeneratorViewModel(new GeneratorControls(GenerateRemovingOriginalButton, removingOriginalImage), RemovingErrorMessage); removingOriginalGeneratorViewModel.SetUp(); advancedWatermarkedGeneratorViewModel = new InternetImageGeneratorViewModel(new GeneratorControls(AdvancedGenerateWatermarkedButton, advancedWatermarkedImage), AdvancedRemovingErrorMessage); advancedWatermarkedGeneratorViewModel.SetUp(); advancedOriginalGeneratorViewModel = new InternetImageGeneratorViewModel(new GeneratorControls(GenerateAdvancedOriginalButton, advancedOriginalImage), AdvancedRemovingErrorMessage); advancedOriginalGeneratorViewModel.SetUp(); logger.LogDebug("Created MainWindow"); }
public static void SetImageFromDrive(UpdatableImage imageContainer) { var path = GetFilePathFromDialog(); if (path != null) { imageContainer.SetSource(new Uri(path, UriKind.Absolute)); } }
public GeneratorControls(Button generateButton, UpdatableImage imageContainer) { this.GenerateButton = generateButton; this.ImageContainer = imageContainer; }