|
@@ -24,6 +24,8 @@ using PDFSettings;
|
|
|
using PDF_Master.ViewModels.Tools.AnnotManager;
|
|
|
using Prism.Common;
|
|
|
using ComPDFKitViewer.PdfViewer;
|
|
|
+using PDF_Master.CustomControl.CompositeControl;
|
|
|
+using Microsoft.Office.Interop.Word;
|
|
|
|
|
|
namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
{
|
|
@@ -46,6 +48,7 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
public string shapeType = "";
|
|
|
public string ShapeType
|
|
|
{
|
|
@@ -69,28 +72,14 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
{
|
|
|
}
|
|
|
|
|
|
- private Brush selectColor = new SolidColorBrush(Colors.GreenYellow);
|
|
|
+ private Brush selectColor = new SolidColorBrush(Color.FromArgb(0xff, 0x26, 0x25, 0x29));
|
|
|
public Brush SelectColor
|
|
|
{
|
|
|
get { return selectColor; }
|
|
|
set
|
|
|
{
|
|
|
- SetProperty(ref selectColor, value);
|
|
|
- //if (!fillAndSignContentViewModel.isFirst)
|
|
|
- //{
|
|
|
- // fillAndSignContentViewModel.SelectColor = value;
|
|
|
- // //if (FillAndSignContentViewModel.IsEdit)
|
|
|
- // {
|
|
|
- // // PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Thickness, LineWidth * lineWidthMultiple);
|
|
|
- // PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Color, (selectColor as SolidColorBrush).Color);
|
|
|
- // }
|
|
|
- // //else
|
|
|
- // {
|
|
|
- // if (IsFillAndSign) { fillAndSignContentViewModel.SetStamp(); }
|
|
|
-
|
|
|
- // }
|
|
|
-
|
|
|
- //}
|
|
|
+ SetProperty(ref selectColor, value);
|
|
|
+ UPDataColor();
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -126,7 +115,9 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
public bool IsMultiSelected
|
|
|
{
|
|
|
get { return _isMultiSelected; }
|
|
|
- set { SetProperty(ref _isMultiSelected, value);
|
|
|
+ set
|
|
|
+ {
|
|
|
+ SetProperty(ref _isMultiSelected, value);
|
|
|
if (value) { ShapeType = "General Properties"; }
|
|
|
}
|
|
|
}
|
|
@@ -144,25 +135,73 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
get { return lineWidth; }
|
|
|
set
|
|
|
{
|
|
|
- SetProperty(ref lineWidth, value);
|
|
|
- UPDataLineWidth();
|
|
|
-
|
|
|
+ SetProperty(ref lineWidth, value);
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
- public DelegateCommand<object> SelectedThickCommand { get; set; }
|
|
|
- public DelegateCommand<object> SelectedColorCommand { get; set; }
|
|
|
-
|
|
|
-
|
|
|
- //public DelegateCommand<object> LineStyleCommand { get; set; }
|
|
|
+
|
|
|
+
|
|
|
+ private Brush _shapeColortColor = new SolidColorBrush(Color.FromArgb(0xff, 0x26, 0x25, 0x29));
|
|
|
+ public Brush ShapeColorColor
|
|
|
+ {
|
|
|
+ get { return _shapeColortColor; }
|
|
|
+ set { SetProperty(ref _shapeColortColor, value); }
|
|
|
|
|
|
+ }
|
|
|
+
|
|
|
+ List<ColorItem> shapeColorItems = new List<ColorItem>();
|
|
|
+
|
|
|
+ public List<ColorItem> ShapeColorItems
|
|
|
+ {
|
|
|
+ get { return shapeColorItems; }
|
|
|
+ set
|
|
|
+ {
|
|
|
+ SetProperty(ref shapeColorItems, value);
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ private void InitShapeColorList()
|
|
|
+ {
|
|
|
+ ShapeColorItems = new List<ColorItem>();
|
|
|
+ ColorItem colorItem = new ColorItem(Color.FromArgb(0xff, 0xfc, 0x1f, 0x1f), 0);
|
|
|
+ ShapeColorItems.Add(colorItem);
|
|
|
+ colorItem = new ColorItem(Color.FromArgb(0xff, 0x26, 0x25, 0x29), 1);
|
|
|
+ ShapeColorItems.Add(colorItem);
|
|
|
+ colorItem = new ColorItem(Color.FromArgb(0xff, 0x29, 0x53, 0x93), 2);
|
|
|
+ ShapeColorItems.Add(colorItem);
|
|
|
+ colorItem = new ColorItem(Color.FromArgb(0xff, 0x1e, 0x89, 0x56), 3);
|
|
|
+ ShapeColorItems.Add(colorItem);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private DefaultAnnotProperty GetAnnotDefault(AnnotArgsType annotArgsType, string savaKey = "")
|
|
|
+ {
|
|
|
+ var Annot = SettingHelper.GetAnnotDefaultProperty(annotArgsType, savaKey);
|
|
|
+ if (Annot == null)
|
|
|
+ {
|
|
|
+ Annot = new DefaultAnnotProperty();
|
|
|
+ Annot.AnnotToolType = annotArgsType;
|
|
|
+ }
|
|
|
+ return Annot;
|
|
|
+ }
|
|
|
+ public DelegateCommand<object> SelectedThickCommand { get; set; }
|
|
|
+ public DelegateCommand<object> SelectedColorCommand { get; set; }
|
|
|
+
|
|
|
+
|
|
|
+ //public DelegateCommand<object> LineStyleCommand { get; set; }
|
|
|
+ public DelegateCommand<object> SelectedLineWidthValueCommand { get; set; }
|
|
|
public DelegateCommand<object> SharpsTypeCommand { get; set; }
|
|
|
public DelegateCommand<object> ThicknessChangedCommand { get; set; }
|
|
|
public DelegateCommand<object> SelectedOpacityValueCommand { get; set; }
|
|
|
|
|
|
public ShapFillPropertyViewModel()
|
|
|
- {
|
|
|
+ {
|
|
|
+ InitShapeColorList();
|
|
|
SelectedThickCommand = new DelegateCommand<object>(SelectedThick_Command);
|
|
|
SelectedColorCommand = new DelegateCommand<object>(SelectedColor_Command);
|
|
|
+ SelectedLineWidthValueCommand = new DelegateCommand<object>(SelectedLineWitdh_Command);
|
|
|
//LineStyleCommand = new DelegateCommand<object>(LineStyle_Command);
|
|
|
SharpsTypeCommand = new DelegateCommand<object>(SharpsType_Command);
|
|
|
ThicknessChangedCommand = new DelegateCommand<object>(ThicknessChanged_Command);
|
|
@@ -476,7 +515,8 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- private void UPDataLineWidth(){
|
|
|
+ private void UPDataLineWidth()
|
|
|
+ {
|
|
|
|
|
|
if (!fillAndSignContentViewModel.isFirst)
|
|
|
{
|
|
@@ -484,8 +524,8 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
|
|
|
//if (FillAndSignContentViewModel.IsEdit)
|
|
|
{
|
|
|
-
|
|
|
- PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Thickness, LineWidth * lineWidthMultiple);
|
|
|
+ if (!fillAndSignContentViewModel.IsClickNull)
|
|
|
+ PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Thickness, LineWidth * lineWidthMultiple);
|
|
|
|
|
|
}
|
|
|
// else
|
|
@@ -502,18 +542,24 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
|
|
|
if (!fillAndSignContentViewModel.isFirst)
|
|
|
{
|
|
|
- fillAndSignContentViewModel.SelectColor = SelectColor;
|
|
|
- //if (FillAndSignContentViewModel.IsEdit)
|
|
|
+ var newColor = (ShapeColorColor as SolidColorBrush).Color;
|
|
|
+ var oldColor = (SelectColor as SolidColorBrush).Color;
|
|
|
+ if (newColor.A != oldColor.A || newColor.B != oldColor.B || newColor.R != oldColor.R || newColor.G != oldColor.G)
|
|
|
{
|
|
|
- // PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Thickness, LineWidth * lineWidthMultiple);
|
|
|
- PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Color, (selectColor as SolidColorBrush).Color);
|
|
|
- }
|
|
|
- //else
|
|
|
- {
|
|
|
- if (IsFillAndSign) { fillAndSignContentViewModel.SetStamp(); }
|
|
|
+ ShapeColorColor = SelectColor;
|
|
|
+ fillAndSignContentViewModel.SelectColor = SelectColor;
|
|
|
+ //if (FillAndSignContentViewModel.IsEdit)
|
|
|
+ {
|
|
|
+ // PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Thickness, LineWidth * lineWidthMultiple);
|
|
|
+ if (!fillAndSignContentViewModel.IsClickNull)
|
|
|
+ PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Color, (selectColor as SolidColorBrush).Color);
|
|
|
+ }
|
|
|
+ //else
|
|
|
+ {
|
|
|
+ if (IsFillAndSign) { fillAndSignContentViewModel.SetStamp(); }
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
private void UPDataOpacity()
|
|
@@ -524,7 +570,8 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
|
|
|
//if (FillAndSignContentViewModel.IsEdit)
|
|
|
{
|
|
|
- PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Transparency, fillOpacity);
|
|
|
+ if (!fillAndSignContentViewModel.IsClickNull)
|
|
|
+ PropertyPanel.UpdateAnnotAAttrib(AnnotAttrib.Transparency, fillOpacity);
|
|
|
}
|
|
|
|
|
|
//else
|
|
@@ -536,7 +583,7 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void SelectedColor_Command(object obj)
|
|
|
+ private void SelectedColor_Command(object obj)
|
|
|
{
|
|
|
if (obj != null)
|
|
|
{
|
|
@@ -556,8 +603,18 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
}
|
|
|
|
|
|
}
|
|
|
-
|
|
|
- private void SelectedOpacityValue(object obj)
|
|
|
+
|
|
|
+ private void SelectedLineWitdh_Command(object obj)
|
|
|
+ {
|
|
|
+ if (obj != null)
|
|
|
+ {
|
|
|
+ double colorValue = (double)obj;
|
|
|
+ UPDataLineWidth();
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void SelectedOpacityValue(object obj)
|
|
|
{
|
|
|
if (obj != null)
|
|
|
{
|
|
@@ -643,7 +700,7 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
|
|
|
if (IsMultiSelected)
|
|
|
{
|
|
|
-
|
|
|
+ ShapeColorColor = new SolidColorBrush(Colors.Transparent);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
@@ -659,22 +716,34 @@ namespace PDF_Master.ViewModels.FillAndSign.PropertyPanel
|
|
|
{
|
|
|
var annot = Annot as FreehandAnnotArgs;
|
|
|
if (annot != null)
|
|
|
- {
|
|
|
- //SelectColor = new SolidColorBrush(annot.InkColor);
|
|
|
- //FillOpacity = annot.Transparency;
|
|
|
- //LineWidth = annot.LineWidth;
|
|
|
- foreach (var point in fillAndSignContentViewModel.viewContentViewModel.FillAndSign)
|
|
|
+ {
|
|
|
+
|
|
|
+ try
|
|
|
{
|
|
|
- if (annot.PageIndex == point.PageIndex && annot.AnnotIndex == point.AnnotIndex)
|
|
|
+ foreach (var point in fillAndSignContentViewModel.viewContentViewModel.FillAndSign)
|
|
|
{
|
|
|
- lineWidthMultiple = 1;
|
|
|
- if (point.Shape == "DotShape")
|
|
|
+ if (annot.PageIndex == point.PageIndex && annot.AnnotIndex == point.AnnotIndex)
|
|
|
{
|
|
|
- lineWidthMultiple = 5;
|
|
|
+ lineWidthMultiple = 1;
|
|
|
+ if (point.Shape == "DotShape")
|
|
|
+ {
|
|
|
+ lineWidthMultiple = 5;
|
|
|
+ LineWidth = annot.LineWidth / 5;
|
|
|
+ }
|
|
|
+ else { LineWidth = annot.LineWidth; }
|
|
|
+ SelectColor = new SolidColorBrush(annot.InkColor);
|
|
|
+
|
|
|
+
|
|
|
+ FillOpacity = annot.Transparency;
|
|
|
+ InitShapesType(point.Shape);
|
|
|
+ Shape = point.Shape;
|
|
|
}
|
|
|
- InitShapesType(point.Shape);
|
|
|
- Shape = point.Shape;
|
|
|
- }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch
|
|
|
+ {
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
|