|
@@ -36,10 +36,12 @@ namespace Compdfkit_Tools.PDFControl
|
|
public CPDFViewerTool FocusPDFViewTool { get;private set; }
|
|
public CPDFViewerTool FocusPDFViewTool { get;private set; }
|
|
|
|
|
|
//public event EventHandler SplitPDFViewToolCreated;
|
|
//public event EventHandler SplitPDFViewToolCreated;
|
|
- public event EventHandler SelectedPDFViewToolChanged;
|
|
|
|
|
|
+ public event EventHandler FocusPDFViewToolChanged;
|
|
public event EventHandler<MouseEventObject> MouseLeftButtonDownHandler;
|
|
public event EventHandler<MouseEventObject> MouseLeftButtonDownHandler;
|
|
public event EventHandler<MouseEventObject> MouseLeftButtonUpHandler;
|
|
public event EventHandler<MouseEventObject> MouseLeftButtonUpHandler;
|
|
public event EventHandler<MouseEventObject> MouseMoveHandler;
|
|
public event EventHandler<MouseEventObject> MouseMoveHandler;
|
|
|
|
+ public event EventHandler<ComPDFKitViewer.MouseWheelZoomArgs> MouseWheelZoomHandler;
|
|
|
|
+ public event EventHandler DrawChanged;
|
|
|
|
|
|
#region Properties
|
|
#region Properties
|
|
|
|
|
|
@@ -65,29 +67,38 @@ namespace Compdfkit_Tools.PDFControl
|
|
|
|
|
|
PDFViewTool.SizeChanged -= PDFViewTool_SizeChanged;
|
|
PDFViewTool.SizeChanged -= PDFViewTool_SizeChanged;
|
|
PDFViewTool.GetCPDFViewer().MouseWheelZoomHandler -= PDFViewControl_MouseWheelZoomHandler;
|
|
PDFViewTool.GetCPDFViewer().MouseWheelZoomHandler -= PDFViewControl_MouseWheelZoomHandler;
|
|
|
|
+ PDFViewTool.DrawChanged -= PDFViewTool_DrawChanged;
|
|
PDFToolManager.MouseLeftButtonDownHandler -= PDFToolManager_MouseLeftButtonDownHandler;
|
|
PDFToolManager.MouseLeftButtonDownHandler -= PDFToolManager_MouseLeftButtonDownHandler;
|
|
PDFToolManager.MouseLeftButtonUpHandler -= PDFToolManager_MouseLeftButtonUpHandler;
|
|
PDFToolManager.MouseLeftButtonUpHandler -= PDFToolManager_MouseLeftButtonUpHandler;
|
|
PDFToolManager.MouseMoveHandler -= PDFToolManager_MouseMoveHandler;
|
|
PDFToolManager.MouseMoveHandler -= PDFToolManager_MouseMoveHandler;
|
|
|
|
|
|
PDFViewTool.SizeChanged += PDFViewTool_SizeChanged;
|
|
PDFViewTool.SizeChanged += PDFViewTool_SizeChanged;
|
|
PDFViewTool.GetCPDFViewer().MouseWheelZoomHandler += PDFViewControl_MouseWheelZoomHandler;
|
|
PDFViewTool.GetCPDFViewer().MouseWheelZoomHandler += PDFViewControl_MouseWheelZoomHandler;
|
|
|
|
+ PDFViewTool.DrawChanged += PDFViewTool_DrawChanged;
|
|
PDFToolManager.MouseLeftButtonDownHandler += PDFToolManager_MouseLeftButtonDownHandler;
|
|
PDFToolManager.MouseLeftButtonDownHandler += PDFToolManager_MouseLeftButtonDownHandler;
|
|
PDFToolManager.MouseLeftButtonUpHandler += PDFToolManager_MouseLeftButtonUpHandler;
|
|
PDFToolManager.MouseLeftButtonUpHandler += PDFToolManager_MouseLeftButtonUpHandler;
|
|
PDFToolManager.MouseMoveHandler += PDFToolManager_MouseMoveHandler;
|
|
PDFToolManager.MouseMoveHandler += PDFToolManager_MouseMoveHandler;
|
|
|
|
|
|
splitViewerTool.SizeChanged -= SplitViewerTool_SizeChanged;
|
|
splitViewerTool.SizeChanged -= SplitViewerTool_SizeChanged;
|
|
splitViewerTool.GetCPDFViewer().MouseWheelZoomHandler -= SplitPDFViewControl_MouseWheelZoomHandler;
|
|
splitViewerTool.GetCPDFViewer().MouseWheelZoomHandler -= SplitPDFViewControl_MouseWheelZoomHandler;
|
|
|
|
+ splitViewerTool.DrawChanged -= PDFViewTool_DrawChanged;
|
|
splitToolManager.MouseLeftButtonDownHandler -= PDFToolManager_MouseLeftButtonDownHandler;
|
|
splitToolManager.MouseLeftButtonDownHandler -= PDFToolManager_MouseLeftButtonDownHandler;
|
|
splitToolManager.MouseLeftButtonUpHandler -= PDFToolManager_MouseLeftButtonUpHandler;
|
|
splitToolManager.MouseLeftButtonUpHandler -= PDFToolManager_MouseLeftButtonUpHandler;
|
|
splitToolManager.MouseMoveHandler -= PDFToolManager_MouseMoveHandler;
|
|
splitToolManager.MouseMoveHandler -= PDFToolManager_MouseMoveHandler;
|
|
|
|
|
|
splitViewerTool.SizeChanged += SplitViewerTool_SizeChanged;
|
|
splitViewerTool.SizeChanged += SplitViewerTool_SizeChanged;
|
|
splitViewerTool.GetCPDFViewer().MouseWheelZoomHandler += SplitPDFViewControl_MouseWheelZoomHandler;
|
|
splitViewerTool.GetCPDFViewer().MouseWheelZoomHandler += SplitPDFViewControl_MouseWheelZoomHandler;
|
|
|
|
+ splitViewerTool.DrawChanged += PDFViewTool_DrawChanged;
|
|
splitToolManager.MouseLeftButtonDownHandler += PDFToolManager_MouseLeftButtonDownHandler;
|
|
splitToolManager.MouseLeftButtonDownHandler += PDFToolManager_MouseLeftButtonDownHandler;
|
|
splitToolManager.MouseLeftButtonUpHandler += PDFToolManager_MouseLeftButtonUpHandler;
|
|
splitToolManager.MouseLeftButtonUpHandler += PDFToolManager_MouseLeftButtonUpHandler;
|
|
splitToolManager.MouseMoveHandler += PDFToolManager_MouseMoveHandler;
|
|
splitToolManager.MouseMoveHandler += PDFToolManager_MouseMoveHandler;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private void PDFViewTool_DrawChanged(object sender, EventArgs e)
|
|
|
|
+ {
|
|
|
|
+ DrawChanged?.Invoke(sender,e);
|
|
|
|
+ }
|
|
|
|
+
|
|
private void PDFToolManager_MouseMoveHandler(object sender, MouseEventObject e)
|
|
private void PDFToolManager_MouseMoveHandler(object sender, MouseEventObject e)
|
|
{
|
|
{
|
|
MouseMoveHandler?.Invoke(this, e);
|
|
MouseMoveHandler?.Invoke(this, e);
|
|
@@ -105,12 +116,12 @@ namespace Compdfkit_Tools.PDFControl
|
|
|
|
|
|
private void PDFViewTool_SizeChanged(object sender, SizeChangedEventArgs e)
|
|
private void PDFViewTool_SizeChanged(object sender, SizeChangedEventArgs e)
|
|
{
|
|
{
|
|
- PDFViewTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
|
|
|
|
+ PDFViewTool.GetCPDFViewer().UpDateRenderFrame();
|
|
}
|
|
}
|
|
|
|
|
|
private void SplitViewerTool_SizeChanged(object sender, SizeChangedEventArgs e)
|
|
private void SplitViewerTool_SizeChanged(object sender, SizeChangedEventArgs e)
|
|
{
|
|
{
|
|
- splitViewerTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
|
|
|
|
+ splitViewerTool.GetCPDFViewer().UpDateRenderFrame();
|
|
}
|
|
}
|
|
|
|
|
|
public void InitDocument(string Path)
|
|
public void InitDocument(string Path)
|
|
@@ -132,6 +143,8 @@ namespace Compdfkit_Tools.PDFControl
|
|
|
|
|
|
private void PDFViewControl_MouseWheelZoomHandler(object sender, ComPDFKitViewer.MouseWheelZoomArgs e)
|
|
private void PDFViewControl_MouseWheelZoomHandler(object sender, ComPDFKitViewer.MouseWheelZoomArgs e)
|
|
{
|
|
{
|
|
|
|
+ FocusPDFViewTool = PDFViewTool;
|
|
|
|
+ FocusPDFViewToolChanged?.Invoke(this, EventArgs.Empty);
|
|
if (Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl))
|
|
if (Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl))
|
|
{
|
|
{
|
|
e.IsZoom = true;
|
|
e.IsZoom = true;
|
|
@@ -140,10 +153,13 @@ namespace Compdfkit_Tools.PDFControl
|
|
PDFViewTool.GetCPDFViewer().SetZoom(CheckZoomLevel(zoom, Convert.ToBoolean(e.WheelBehavior)));
|
|
PDFViewTool.GetCPDFViewer().SetZoom(CheckZoomLevel(zoom, Convert.ToBoolean(e.WheelBehavior)));
|
|
PDFViewTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
PDFViewTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
}
|
|
}
|
|
|
|
+ MouseWheelZoomHandler?.Invoke(this, e);
|
|
}
|
|
}
|
|
|
|
|
|
private void SplitPDFViewControl_MouseWheelZoomHandler(object sender, ComPDFKitViewer.MouseWheelZoomArgs e)
|
|
private void SplitPDFViewControl_MouseWheelZoomHandler(object sender, ComPDFKitViewer.MouseWheelZoomArgs e)
|
|
{
|
|
{
|
|
|
|
+ FocusPDFViewTool = splitViewerTool;
|
|
|
|
+ FocusPDFViewToolChanged?.Invoke(this, EventArgs.Empty);
|
|
if (Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl))
|
|
if (Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl))
|
|
{
|
|
{
|
|
e.IsZoom = true;
|
|
e.IsZoom = true;
|
|
@@ -152,6 +168,7 @@ namespace Compdfkit_Tools.PDFControl
|
|
splitViewerTool.GetCPDFViewer().SetZoom(CheckZoomLevel(zoom, Convert.ToBoolean(e.WheelBehavior)));
|
|
splitViewerTool.GetCPDFViewer().SetZoom(CheckZoomLevel(zoom, Convert.ToBoolean(e.WheelBehavior)));
|
|
splitViewerTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
splitViewerTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
}
|
|
}
|
|
|
|
+ MouseWheelZoomHandler?.Invoke(this, e);
|
|
}
|
|
}
|
|
|
|
|
|
public void SetSplitViewMode(SplitMode splitMode)
|
|
public void SetSplitViewMode(SplitMode splitMode)
|
|
@@ -185,11 +202,11 @@ namespace Compdfkit_Tools.PDFControl
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
- UpdateFrame();
|
|
|
|
|
|
+ UpdateRenderFrame();
|
|
UpdateAnnotFrame();
|
|
UpdateAnnotFrame();
|
|
}
|
|
}
|
|
|
|
|
|
- public void UpdateFrame()
|
|
|
|
|
|
+ public void UpdateRenderFrame()
|
|
{
|
|
{
|
|
viewerTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
viewerTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
splitViewerTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
splitViewerTool?.GetCPDFViewer()?.UpDateRenderFrame();
|
|
@@ -237,7 +254,12 @@ namespace Compdfkit_Tools.PDFControl
|
|
{
|
|
{
|
|
viewerTool?.GetCPDFViewer()?.SetDrawModes(drawMode.DrawMode);
|
|
viewerTool?.GetCPDFViewer()?.SetDrawModes(drawMode.DrawMode);
|
|
splitViewerTool?.GetCPDFViewer()?.SetDrawModes(drawMode.DrawMode);
|
|
splitViewerTool?.GetCPDFViewer()?.SetDrawModes(drawMode.DrawMode);
|
|
- UpdateFrame();
|
|
|
|
|
|
+ if (drawMode.DrawMode == DrawModes.Custom)
|
|
|
|
+ {
|
|
|
|
+ viewerTool?.GetCPDFViewer().SetPDFBackground(drawMode.CustomColor);
|
|
|
|
+ splitViewerTool?.GetCPDFViewer().SetPDFBackground(drawMode.CustomColor);
|
|
|
|
+ }
|
|
|
|
+ UpdateRenderFrame();
|
|
}
|
|
}
|
|
|
|
|
|
public void SetStampMouseImage(byte[] imageArray,int imageWidth,int imageHeight)
|
|
public void SetStampMouseImage(byte[] imageArray,int imageWidth,int imageHeight)
|
|
@@ -278,7 +300,7 @@ namespace Compdfkit_Tools.PDFControl
|
|
|
|
|
|
private void RemoveSplitViewerTool()
|
|
private void RemoveSplitViewerTool()
|
|
{
|
|
{
|
|
- UpdateFrame();
|
|
|
|
|
|
+ UpdateRenderFrame();
|
|
VerticalSplitter.Visibility = Visibility.Collapsed;
|
|
VerticalSplitter.Visibility = Visibility.Collapsed;
|
|
HorizontalSplitter.Visibility = Visibility.Collapsed;
|
|
HorizontalSplitter.Visibility = Visibility.Collapsed;
|
|
VerticalView.Visibility = Visibility.Collapsed;
|
|
VerticalView.Visibility = Visibility.Collapsed;
|
|
@@ -302,7 +324,7 @@ namespace Compdfkit_Tools.PDFControl
|
|
FocusPDFViewTool = splitViewerTool;
|
|
FocusPDFViewTool = splitViewerTool;
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
- SelectedPDFViewToolChanged?.Invoke(this,EventArgs.Empty);
|
|
|
|
|
|
+ FocusPDFViewToolChanged?.Invoke(this,EventArgs.Empty);
|
|
}
|
|
}
|
|
|
|
|
|
#region Private Command Methods
|
|
#region Private Command Methods
|