Kaynağa Gözat

Merge branch 'dev' of http://git.kdan.cc:8865/Windows/PDFOffice_Windows_exe into dev

ZhouJieSheng 2 yıl önce
ebeveyn
işleme
0fe63d3ce3

+ 41 - 24
PDF Office/ViewModels/Tools/ToolsBarContentViewModel.cs

@@ -35,7 +35,7 @@ namespace PDF_Office.ViewModels.Tools
         public CropPageUndoManager UndoManager=new CropPageUndoManager();
         public IEventAggregator eventAggregator;
         List<int> cropCurrentPageList = new List<int>();
-        List<int> cropPagesList = new List<int>();
+        
        
         private CPDFDocument.GetPageIndexDelegate indexDelegate = null;
 
@@ -225,36 +225,53 @@ namespace PDF_Office.ViewModels.Tools
             }
         }
 
-        private void CropCurrentPageWM()
+        private async void CropCurrentPageWM()
         {
-            if (PDFViewer.CurrentIndex > 0)
-            {
-                UndoManager.cropPageList.Add(PDFViewer.CurrentIndex);
-            }
-            UndoManager.ADDCropCurrentPageWM();
-            PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
-            PDFViewer.UndoManager.AddHistory(UndoManager);
-            PDFViewer.UndoManager.CanSave = true;
+            viewContentViewModel.IsLoading = Visibility.Visible;
+           await WaitCropCurrentPageWM();
+            viewContentViewModel.IsLoading = Visibility.Collapsed;
         }
-        private void CropAllPagesWM()
+        private async void  CropAllPagesWM()
         {
-            
-            for (int i = 0; i < PDFViewer.Document.PageCount; i++)
-            {
-                cropPagesList.Add(i);
-            }
-            
-            UndoManager.cropPageList.AddRange(cropPagesList);
-            UndoManager.ADDCropAllPagesWM();
-            PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
-            PDFViewer.UndoManager.AddHistory(UndoManager);
-            PDFViewer.UndoManager.CanSave = true;
-            
+            viewContentViewModel.IsLoading = Visibility.Visible;
+            await WaitCropAllPagesWM();
+            viewContentViewModel.IsLoading = Visibility.Collapsed;
+
             //PDFViewer.UndoManager.AddHistory();
         }
 
-        
+        private async Task WaitCropCurrentPageWM() {
+            await Task.Run(() => {
+                if (PDFViewer.CurrentIndex > 0)
+                {
+                    UndoManager.cropPageList.Add(PDFViewer.CurrentIndex);
+                }
+                UndoManager.ADDCropCurrentPageWM();
+                PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
+                PDFViewer.UndoManager.AddHistory(UndoManager);
+                PDFViewer.UndoManager.CanSave = true;
+            });
             
+        }
+
+        private async Task WaitCropAllPagesWM() {
+            await Task.Run(() => {
+                List<int> cropPagesList = new List<int>();
+                for (int i = 0; i < PDFViewer.Document.PageCount; i++)
+                {
+                    cropPagesList.Add(i);
+                }
+
+                UndoManager.cropPageList.AddRange(cropPagesList);
+                UndoManager.ADDCropAllPagesWM();
+                PDFViewer?.SetCropMode(true, UndoManager.cropPageList);
+                PDFViewer.UndoManager.AddHistory(UndoManager);
+                PDFViewer.UndoManager.CanSave = true;
+            });
+        }
+
+
+
         public bool IsNavigationTarget(NavigationContext navigationContext)
         {
             return true;

Dosya farkı çok büyük olduğundan ihmal edildi
+ 17 - 1
PDF Office/Views/Dialog/HomePageToolsDialogs/HomePagePictureToPDFDialog.xaml