CPDFDisplaySettingsControl.xaml.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  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. }
  24. private void ViewModeUI_SplitModeChanged(object sender, CPDFViewModeUI.SplitMode e)
  25. {
  26. SplitModeChanged.Invoke(this, e);
  27. }
  28. private void ViewModeUI_CropModeChanged(object sender, bool e)
  29. {
  30. if (ViewControl != null && ViewControl.PDFViewTool != null)
  31. {
  32. ViewControl?.SetCropMode(e);
  33. }
  34. }
  35. private void DrawModeUI_DrawModeChanged(object sender, DrawModeData e)
  36. {
  37. if(ViewControl!=null && ViewControl.PDFViewTool!=null)
  38. {
  39. ViewControl.SetDrawModes(e);
  40. }
  41. }
  42. //private void ViewModeUI_SplitModeChanged(object sender, SplitMode e)
  43. //{
  44. // ViewControl?.SetSplitMode(e);
  45. //}
  46. private void ViewModeUI_ViewModeChanged(object sender, ViewMode e)
  47. {
  48. if (ViewControl != null && ViewControl.PDFViewTool != null)
  49. {
  50. CPDFViewer pdfViewer = ViewControl.FocusPDFViewTool.GetCPDFViewer();
  51. if (pdfViewer != null)
  52. {
  53. pdfViewer?.SetViewMode(e);
  54. pdfViewer?.UpDateRenderFrame();
  55. }
  56. }
  57. }
  58. public void InitWithPDFViewer(PDFViewControl viewControl)
  59. {
  60. ViewControl = viewControl;
  61. ViewControl.FocusPDFViewToolChanged -= PDFViewControl_FocusPDFViewToolChanged;
  62. ViewControl.FocusPDFViewToolChanged += PDFViewControl_FocusPDFViewToolChanged;
  63. if(ViewControl != null && ViewControl.PDFViewTool!=null)
  64. {
  65. CPDFViewer pdfViewer= viewControl.PDFViewTool.GetCPDFViewer();
  66. if(pdfViewer != null)
  67. {
  68. ViewModeUI.SetViewModeUI(pdfViewer.GetViewMode());
  69. // ViewModeUI.SetSplitModeUI(ViewControl.Mode);
  70. //ViewModeUI.SetCropUI(ViewControl.IsCropMode());
  71. }
  72. }
  73. ViewModeUI.ViewModeChanged -= ViewModeUI_ViewModeChanged;
  74. ViewModeUI.SplitModeChanged -= ViewModeUI_SplitModeChanged;
  75. ViewModeUI.CropModeChanged -= ViewModeUI_CropModeChanged;
  76. DrawModeUI.DrawModeChanged -= DrawModeUI_DrawModeChanged;
  77. ViewModeUI.ViewModeChanged += ViewModeUI_ViewModeChanged;
  78. ViewModeUI.SplitModeChanged += ViewModeUI_SplitModeChanged;
  79. ViewModeUI.CropModeChanged += ViewModeUI_CropModeChanged;
  80. DrawModeUI.DrawModeChanged += DrawModeUI_DrawModeChanged;
  81. }
  82. private void PDFViewControl_FocusPDFViewToolChanged(object sender,EventArgs e)
  83. {
  84. if (ViewControl != null && ViewControl.PDFViewTool != null)
  85. {
  86. CPDFViewer pdfViewer = ViewControl.FocusPDFViewTool.GetCPDFViewer();
  87. if (pdfViewer != null)
  88. {
  89. ViewModeUI.SetViewModeUI(pdfViewer.GetViewMode());
  90. // ViewModeUI.SetSplitModeUI(ViewControl.Mode);
  91. //ViewModeUI.SetCropUI(ViewControl.IsCropMode());
  92. }
  93. }
  94. }
  95. public void SetVisibilityWhenContentEdit(Visibility visible)
  96. {
  97. ViewModeUI?.SetSplitContainerVisibility(visible);
  98. ViewModeUI?.SetCropContainerVisibility(visible);
  99. }
  100. }
  101. }