CPDFDisplaySettingsControl.xaml.cs 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. using Compdfkit_Tools.PDFControlUI;
  2. using ComPDFKitViewer;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Windows;
  6. using System.Windows.Controls;
  7. namespace Compdfkit_Tools.PDFControl
  8. {
  9. public partial class CPDFDisplaySettingsControl : UserControl
  10. {
  11. /// <summary>
  12. /// PDFViewer
  13. /// </summary>
  14. private PDFViewControl ViewControl;
  15. public event EventHandler<CPDFViewModeUI.SplitMode> SplitModeChanged;
  16. public CPDFDisplaySettingsControl()
  17. {
  18. InitializeComponent();
  19. Loaded += CPDFDisplaySettingsControl_Loaded;
  20. }
  21. private void CPDFDisplaySettingsControl_Loaded(object sender, RoutedEventArgs e)
  22. {
  23. ViewModeUI.ViewModeChanged += ViewModeUI_ViewModeChanged;
  24. ViewModeUI.SplitModeChanged += ViewModeUI_SplitModeChanged;
  25. ViewModeUI.CropModeChanged += ViewModeUI_CropModeChanged;
  26. DrawModeUI.DrawModeChanged += DrawModeUI_DrawModeChanged;
  27. }
  28. private void ViewModeUI_SplitModeChanged(object sender, CPDFViewModeUI.SplitMode e)
  29. {
  30. SplitModeChanged.Invoke(this, e);
  31. }
  32. private void ViewModeUI_CropModeChanged(object sender, bool e)
  33. {
  34. //ViewControl?.SetCropMode(e);
  35. }
  36. private void DrawModeUI_DrawModeChanged(object sender, DrawModeData e)
  37. {
  38. if(ViewControl!=null && ViewControl.PDFViewTool!=null)
  39. {
  40. ViewControl.SetDrawModes(e);
  41. }
  42. }
  43. //private void ViewModeUI_SplitModeChanged(object sender, SplitMode e)
  44. //{
  45. // ViewControl?.SetSplitMode(e);
  46. //}
  47. private void ViewModeUI_ViewModeChanged(object sender, ViewModes e)
  48. {
  49. if (ViewControl != null && ViewControl.PDFViewTool != null)
  50. {
  51. CPDFViewer pdfViewer = ViewControl.FocusPDFViewTool.GetCPDFViewer();
  52. if (pdfViewer != null)
  53. {
  54. pdfViewer?.SetViewMode(e);
  55. pdfViewer?.UpDateRenderFrame();
  56. }
  57. }
  58. }
  59. public void InitWithPDFViewer(PDFViewControl viewControl)
  60. {
  61. ViewControl = viewControl;
  62. ViewControl.SelectedPDFViewToolChanged -= PDFViewControl_SelectedPDFViewToolChanged;
  63. ViewControl.SelectedPDFViewToolChanged += PDFViewControl_SelectedPDFViewToolChanged;
  64. if(ViewControl != null && ViewControl.PDFViewTool!=null)
  65. {
  66. CPDFViewer pdfViewer= viewControl.PDFViewTool.GetCPDFViewer();
  67. if(pdfViewer != null)
  68. {
  69. ViewModeUI.SetViewModeUI(pdfViewer.GetViewMode());
  70. // ViewModeUI.SetSplitModeUI(ViewControl.Mode);
  71. //ViewModeUI.SetCropUI(ViewControl.IsCropMode());
  72. }
  73. }
  74. }
  75. private void PDFViewControl_SelectedPDFViewToolChanged(object sender,EventArgs e)
  76. {
  77. if (ViewControl != null && ViewControl.PDFViewTool != null)
  78. {
  79. CPDFViewer pdfViewer = ViewControl.FocusPDFViewTool.GetCPDFViewer();
  80. if (pdfViewer != null)
  81. {
  82. ViewModeUI.SetViewModeUI(pdfViewer.GetViewMode());
  83. // ViewModeUI.SetSplitModeUI(ViewControl.Mode);
  84. //ViewModeUI.SetCropUI(ViewControl.IsCropMode());
  85. }
  86. }
  87. }
  88. public void SetVisibilityWhenContentEdit(Visibility visible)
  89. {
  90. ViewModeUI?.SetSplitContainerVisibility(visible);
  91. ViewModeUI?.SetCropContainerVisibility(visible);
  92. }
  93. }
  94. }