Example #1
0
        private void LoadPreviews(string[] pathes)
        {
            foreach (var path in pathes)
            {
                var original = new BitmapImage();
                original.BeginInit();
                original.UriSource = new Uri(path);
                original.EndInit();

                double ratio          = Constants.PreviewWidth / original.Width;
                var    reducedPreview = new BitmapImage();
                reducedPreview.BeginInit();
                reducedPreview.UriSource         = new Uri(path);
                reducedPreview.DecodePixelWidth  = Constants.PreviewWidth;
                reducedPreview.DecodePixelHeight = (int)(original.Height * ratio);
                reducedPreview.EndInit();

                var im = new Image
                {
                    Source = reducedPreview,
                    Height = Constants.PreviewHeight,
                    HorizontalAlignment = HorizontalAlignment.Center
                };
                ImagesPreview.Add(im);
            }
        }
Example #2
0
 private void RemoveImageFromView()
 {
     OpenedImage.Remove();
     if (CurrentIndex != -1)
     {
         ImagesPreview.RemoveAt(CurrentIndex);
     }
     OnPropertyChanged();
     Console.WriteLine(OpenedImage.CurrentIndex);
 }
Example #3
0
        private void AddPreviewIcon(ImageSource icon)
        {
            Image im = new Image()
            {
                Source = icon,
                Height = Constants.PreviewHeight,
                HorizontalAlignment = HorizontalAlignment.Center
            };

            ImagesPreview.Add(im);
        }
Example #4
0
        private void SafeSwitchToEditMode()
        {
            StoreSelectedIndex();
            if (IsView)
            {
                editor.loadImage(OpenedImage.CurrentPath);
                var v = CurrentView;
                ImagesPreview.Clear();
                AddPreviewIcon(v);
            }

            ViewModelState = ProgrammState.Edit;
        }
Example #5
0
        private void DiscardChanges()
        {
            MessageBoxResult confirm = MessageBox.Show("Are you sure to discard all changes?", "Discarding all changes...", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.DefaultDesktopOnly);

            if (confirm == MessageBoxResult.Yes)
            {
                ImagesPreview.Clear();
                LoadPreviews(OpenedImage.GetAllPathes());
                ViewModelState = ProgrammState.View;
                CurrentIndex   = 0;
                RestoreSelectedIndex();
            }
        }
Example #6
0
        private void RevertChanges(int selectedIndex)
        {
            if (selectedIndex < ImagesPreview.Count - 1)
            {
                var confirm = MessageBox.Show("Are you sure to restore image?", "Restoring...", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes, MessageBoxOptions.DefaultDesktopOnly) ==
                              MessageBoxResult.Yes;
                if (confirm)
                {
                    ViewModelState = ProgrammState.Revert;
                    editor.restore(selectedIndex);
                    CurrentView = ConvertBitmapToImageSource(editor.getSource());
                    for (int i = ImagesPreview.Count - 1; i > selectedIndex; i--)
                    {
                        ImagesPreview.RemoveAt(i);
                    }

                    ViewModelState = ProgrammState.Edit;
                }
            }
        }