using ComPDFKit.PDFDocument;
using ComPDFKitViewer;
using ComPDFKitViewer.AnnotEvent;
using PDF_Office.CustomControl.CompositeControl;
using PDF_Office.Helper;
using Prism.Mvvm;
using Prism.Regions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
namespace PDF_Office.ViewModels.Tools
{
//文件说明:与布局相关的代码逻辑:菜单、属性面板
public sealed partial class AnnotToolContentViewModel : BindableBase, INavigationAware
{
#region 属性面板
///
/// 导航到同一个注释xaml时,需要区分某个注释;比如高亮、删除线、下划线
///
/// 对应的注释面板
/// 导航到同一个注释xaml时,需要区分某个注释;比如高亮、删除线、下划线
/// 注释
/// 更改注释属性的键值对,更改值后会自动记录undoRedo容器里
private void AddToPropertyPanel(string viewContent, string toolTag = null, List annots = null, AnnotAttribEvent annotAttribEvent = null)
{
if (annots != null)
{
propertyPanel.annotlists = annots;
propertyPanel.annot = annots[0];
}
else
{
propertyPanel.annotlists = null;
propertyPanel.annot = null;
}
if (annots.Count > 1)
{
if (propertyPanel.AnnotEvents == null)
propertyPanel.AnnotEvents = new List();
propertyPanel.AnnotEvents.Clear();
foreach (var itemAnnot in annots)
{
var eventitem = AnnotAttribEvent.GetAnnotAttribEvent(itemAnnot, itemAnnot.GetAnnotAttrib());
propertyPanel.AnnotEvents.Add(eventitem);
}
}
propertyPanel.SetIsTextFill(false);
propertyPanel.AnnotEvent = AnnotAttribEvent.GetAnnotAttribEvent(annots[0], annots[0].GetAnnotAttrib());
if (annots[0] is LinkAnnotArgs && annotAttribEvent != null)
{
propertyPanel.AnnotEvent = annotAttribEvent;
}
if (string.IsNullOrEmpty(viewContent) == false)
{
viewContentViewModel.SelectedPrpoertyPanel(viewContent, propertyPanel);
}
}
///
/// 展开显示属性面板
///
private void ShowPropertyPanel(bool show = true)
{
viewContentViewModel.IsPropertyOpen = show;
}
#endregion 属性面板
#region 阅读页 - 右键菜单
private ContextMenu ViewerContextMenu(object sender)
{
ContextMenu contextMenu = App.Current.FindResource("ViewerContextMenu") as ContextMenu;
//contextMenu.Loaded += ContextMenu_Loaded;
ViewerContextMenu_Loaded(contextMenu, sender);
return contextMenu;
}
private void ViewerContextMenu_Loaded(object sender, object e)
{
ContextMenu contextMenu = sender as ContextMenu;
if (contextMenu.Items.Count > 0)
{
int index = PDFViewer.CurrentIndex;
//检测是否已存在相同数据
CPDFBookmark list = PDFViewer.Document.GetBookmarkList().FirstOrDefault(q => q.PageIndex == index);
if (list != null)
{
isAddBookMark = false;
}
else
{
isAddBookMark = true;
}
foreach (var item in contextMenu.Items)
{
if (item is MenuItem menuItem1)
{
//if (menuItem1.Tag.ToString() == "DisplayAnnot" || menuItem1.Tag.ToString() == "HiddenAnnot")
//{
// SetMenuItemVisibility(menuItem1, "DisplayAnnot", "HiddenAnnot", isHiddenAnnot);
//}
switch (menuItem1.Tag.ToString())
{
case "Paste":
//粘贴
//if (!ApplicationCommands.Paste.CanExecute(null, (UIElement)sender))
//{
// menuItem1.IsEnabled = false;
// menuItem1.Opacity = 0.5;
//}
//else
//{
// menuItem1.IsEnabled = true;
// menuItem1.Opacity = 1;
//}
menuItem1.CommandTarget = (UIElement)e;
menuItem1.Command = ApplicationCommands.Paste;
break;
case "AddAnnotation":
if (menuItem1.Items.Count > 0)
{
SetAddAnnotation(menuItem1.Items);
}
break;
case "HiddenAnnot":
menuItem1.Click -= HiddenAnnot_Click;
menuItem1.Click += HiddenAnnot_Click;
SetMenuItemVisibility(menuItem1, "DisplayAnnot", "HiddenAnnot", isHiddenAnnot);
break;
case "DisplayAnnot":
menuItem1.Click -= DisplayAnnot_Click;
menuItem1.Click += DisplayAnnot_Click;
SetMenuItemVisibility(menuItem1, "DisplayAnnot", "HiddenAnnot", isHiddenAnnot);
break;
case "AddBookMark":
//menuItem1.Click -= AddBookMark_Click;
//menuItem1.Click += AddBookMark_Click;
menuItem1.Command = AddBookMarkCommand;
SetMenuItemVisibility(menuItem1, "DelBookMark", "AddBookMark", isAddBookMark);
break;
case "DelBookMark":
menuItem1.Click -= DelBookMark_Click;
menuItem1.Click += DelBookMark_Click;
SetMenuItemVisibility(menuItem1, "DelBookMark", "AddBookMark", isAddBookMark);
break;
case "ToolMode":
if (menuItem1.Items.Count > 0)
{
SetToolMode(menuItem1.Items);
}
break;
case "ReadModel":
SetMenuItemVisibility(menuItem1, "ReadModel", "UnReadModel", App.IsBookMode);
menuItem1.Click -= ReadModel_Click;
menuItem1.Click += ReadModel_Click;
break;
case "UnReadModel":
SetMenuItemVisibility(menuItem1, "ReadModel", "UnReadModel", App.IsBookMode);
menuItem1.Click -= UnReadModel_Click;
menuItem1.Click += UnReadModel_Click;
break;
case "ViewZoom":
if (menuItem1.Items.Count > 0)
{
ViewZoom(menuItem1.Items);
}
break;
case "PageDisplay":
if (menuItem1.Items.Count > 0)
{
PageDisplay(menuItem1.Items);
}
break;
case "Select":
menuItem1.Click -= Select_Click;
menuItem1.Click += Select_Click;
break;
case "Print":
menuItem1.Command = viewContentViewModel.PrintCommand;
break;
}
}
}
}
}
private void SetMenuItemVisibility(MenuItem menuItem1, string right, string deny, bool flag)
{
if (menuItem1.Tag.ToString() == right && flag)
{
menuItem1.Visibility = Visibility.Collapsed;
}
if (menuItem1.Tag.ToString() == right && flag == false)
{
menuItem1.Visibility = Visibility.Visible;
}
if (menuItem1.Tag.ToString() == deny && flag == false)
{
menuItem1.Visibility = Visibility.Collapsed;
}
if (menuItem1.Tag.ToString() == deny && flag)
{
menuItem1.Visibility = Visibility.Visible;
}
}
private ContextMenu NoneSelectAnnotContextMenu(object sender, AnnotCommandArgs annotCommand)
{
ContextMenu popMenu = new ContextMenu();
popMenu.FontSize = 14;
MenuItem menuItem = new MenuItem();
menuItem = new MenuItem();
menuItem.CommandTarget = (UIElement)sender;
menuItem.Command = ApplicationCommands.Copy;
popMenu.Items.Add(menuItem);
menuItem = new MenuItem();
menuItem.CommandTarget = (UIElement)sender;
menuItem.Command = ApplicationCommands.Paste;
popMenu.Items.Add(menuItem);
Separator separator = null;
if (annotCommand.CommandTarget == TargetType.ImageSelection)
{
separator = SetSeparator();
popMenu.Items.Add(separator);
SetSelectTextOrImageMenuItem("导出图片...", "ExportPicture", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
}
else if (annotCommand.CommandTarget == TargetType.Annot)
{
separator = SetSeparator();
popMenu.Items.Add(separator);
SetSelectTextOrImageMenuItem("高亮", "HighLight", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
SetSelectTextOrImageMenuItem("下划线", "UnderLine", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
SetSelectTextOrImageMenuItem("删除线", "Strikeout", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
}
separator = SetSeparator();
popMenu.Items.Add(separator);
SetSelectTextOrImageMenuItem("文本", "Freetext", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
SetSelectTextOrImageMenuItem("便签", "StickyNote", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
separator = SetSeparator();
popMenu.Items.Add(separator);
SetSelectTextOrImageMenuItem("矩形", "Rect", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
SetSelectTextOrImageMenuItem("椭圆形", "Circle", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
SetSelectTextOrImageMenuItem("直线", "Line", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
separator = SetSeparator();
popMenu.Items.Add(separator);
SetSelectTextOrImageMenuItem("添加链接", "Link", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
SetSelectTextOrImageMenuItem("添加大纲", "OutLine", annotCommand, out menuItem);
popMenu.Items.Add(menuItem);
return popMenu;
}
private void SetSelectTextOrImageMenuItem(string header, string tag, AnnotCommandArgs annotCommand, out MenuItem menuItem)
{
menuItem = new MenuItem();
menuItem.Header = header;
menuItem.Tag = tag;
menuItem.Click -= AnnotToolMenu_Click;
menuItem.Click += AnnotToolMenu_Click;
menuItem.CommandParameter = annotCommand;
}
private Separator SetSeparator()
{
Separator separator = new Separator
{
Height = 1,
BorderBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#33000000")),
BorderThickness = new Thickness(1),
Style = (Style)App.Current.FindResource(System.Windows.Controls.ToolBar.SeparatorStyleKey)
};
return separator;
}
#endregion 阅读页 - 右键菜单
#region 注释-右键菜单
///
/// 高亮注释,右键菜单
///
private void InitSelectHightAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
ColorContent colorContent = new ColorContent();
colorContent.Name = "hightcolor";
colorContent.SelectedColorHandler -= colorContent_SelectedColorHandler;
colorContent.SelectedColorHandler += colorContent_SelectedColorHandler;
colorContent.VerticalAlignment = VerticalAlignment.Top;
colorContent.Height = 60;
var menuItem = new MenuItem();
menuItem.Name = "hightColor";
menuItem.Height = colorContent.Height;
menuItem.Header = colorContent;
var hightColorStyle = App.Current.FindResource("UIElementMenuItem") as Style;
if (hightColorStyle != null)
menuItem.Style = hightColorStyle;
pop.AddItem(menuItem);
pop.AddItem(GetSeparator());
menuItem = new MenuItem();
menuItem.Name = "hightCopyText";
menuItem.Header = "复制文本";
pop.BindingEvent(pop.AddItem(menuItem), HightAnnotCopyText_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "hightdelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
pop.AddItem(GetSeparator());
menuItem = new MenuItem();
menuItem.Name = "hightAddNote";
menuItem.Header = "添加笔记";
pop.BindingEvent(pop.AddItem(menuItem), AnnotAddNoteText_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "hightdefault";
menuItem.Header = "设置当前属性为默认值";
pop.BindingEvent(pop.AddItem(menuItem), AnnotDefaultValue_MenuCommand);
HightAnnotPopMenu = pop;
}
private Separator GetSeparator()
{
Separator separator = new Separator();
separator.Height = 1;
separator.BorderBrush = new SolidColorBrush(Color.FromArgb(0x33, 0x00, 0x00, 0x00));
separator.BorderThickness = new Thickness(1);
return separator;
}
private void colorContent_SelectedColorHandler(object sender, Color e)
{
if (e == null) return;
var annot = (sender as FrameworkElement).DataContext as AnnotHandlerEventArgs;
if (annot != null)
{
var test = annot as TextHighlightAnnotArgs;
if (test != null)
{
var anvent = AnnotAttribEvent.GetAnnotAttribEvent(test, test.GetAnnotAttrib());
anvent.UpdateAttrib(AnnotAttrib.Color, e);
anvent.UpdateAnnot();
}
}
}
///
/// 手绘
///
private void InitSelectFreeHandAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
var menuItem = new MenuItem();
menuItem.Name = "FreeHandCopy";
menuItem.Header = "复制";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Copy);
menuItem = new MenuItem();
menuItem.Name = "FreeHandCut";
menuItem.Header = "剪切";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Cut);
menuItem = new MenuItem();
menuItem.Name = "FreeHandPaste";
menuItem.Header = "粘贴";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Paste);
menuItem = new MenuItem();
menuItem.Name = "FreeHandDelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
pop.AddItem(GetSeparator());
menuItem = new MenuItem();
menuItem.Name = "FreeHandColor";
menuItem.Header = "颜色...";
pop.BindingEvent(pop.AddItem(menuItem), AnnotColorPalette_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeHandLineStyle";
menuItem.Header = "线段样式";
pop.AddItem(menuItem);
RadioButton radioButton = new RadioButton();
radioButton.Name = "FreeHandSolid";
radioButton.Content = "实线";
radioButton.GroupName = "LineStyle";
radioButton.Tag = "Solid";
pop.BindingEvent(pop.AddChild("FreeHandLineStyle", radioButton), FreeHandLineStyle_MenuCommand);
radioButton = new RadioButton();
radioButton.Name = "FreeHandDash";
radioButton.Content = "虚线";
radioButton.GroupName = "LineStyle";
radioButton.Tag = "Dash";
pop.BindingEvent(pop.AddChild("FreeHandLineStyle", radioButton), FreeHandLineStyle_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeHandAddNote";
menuItem.Header = "添加笔记";
pop.BindingEvent(pop.AddItem(menuItem), AnnotAddNoteText_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeHandDefault";
menuItem.Header = "设置当前属性为默认值";
pop.BindingEvent(pop.AddItem(menuItem), AnnotDefaultValue_MenuCommand);
FreeHandAnnotPopMenu = pop;
}
///
/// 文本
///
private void InitSelectFreeTextAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
var menuItem = new MenuItem();
menuItem.Name = "FreeTextCopy";
menuItem.Header = "复制";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Copy);
menuItem = new MenuItem();
menuItem.Name = "FreeTextCut";
menuItem.Header = "剪切";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Cut);
menuItem = new MenuItem();
menuItem.Name = "FreeTextPaste";
menuItem.Header = "粘贴";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Paste);
menuItem = new MenuItem();
menuItem.Name = "FreeTextDelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
pop.AddItem(GetSeparator());
menuItem = new MenuItem();
menuItem.Name = "FreeTextColor";
menuItem.Header = "颜色...";
pop.BindingEvent(pop.AddItem(menuItem), AnnotColorPalette_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeTextFontFamily";
menuItem.Header = "字体";
pop.AddItem(menuItem);
menuItem = new MenuItem();
menuItem.Name = "FreeTextArial";
menuItem.Header = "楷体";
menuItem.Tag = "Arial";
pop.BindingEvent(pop.AddChild("FreeTextFontFamily", menuItem), FreeTextFontFamily_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeTextCourier";
menuItem.Header = "Courier";
menuItem.Tag = "Courier";
pop.BindingEvent(pop.AddChild("FreeTextFontFamily", menuItem), FreeTextFontFamily_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeTextTimesRoman";
menuItem.Header = "Times New Roman";
menuItem.Tag = /*"Times New Roman"*/"Times";
pop.BindingEvent(pop.AddChild("FreeTextFontFamily", menuItem), FreeTextFontFamily_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeTextAglin";
menuItem.Header = "文本对齐";
pop.AddItem(menuItem);
menuItem = new MenuItem();
menuItem.Name = "FreeTextAglinLeft";
menuItem.Header = "左对齐";
menuItem.Tag = "Left";
pop.BindingEvent(pop.AddChild("FreeTextAglin", menuItem), FreeTextAglin_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeTextAglinCenter";
menuItem.Header = "居中对齐";
menuItem.Tag = "Center";
pop.BindingEvent(pop.AddChild("FreeTextAglin", menuItem), FreeTextAglin_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeTextAglinRight";
menuItem.Header = "右对齐";
menuItem.Tag = "Right";
pop.BindingEvent(pop.AddChild("FreeTextAglin", menuItem), FreeTextAglin_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "FreeHandDefault";
menuItem.Header = "设置当前属性为默认值";
pop.BindingEvent(pop.AddItem(menuItem), AnnotDefaultValue_MenuCommand);
FreeTextAnnotPopMenu = pop;
}
///
/// 便签
///
private void InitSelectStrickNoteAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
var menuItem = new MenuItem();
menuItem.Name = "StrickNoteCopy";
menuItem.Header = "复制";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Copy);
menuItem = new MenuItem();
menuItem.Name = "StrickNoteCut";
menuItem.Header = "剪切";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Cut);
menuItem = new MenuItem();
menuItem.Name = "StrickNotePaste";
menuItem.Header = "粘贴";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Paste);
menuItem = new MenuItem();
menuItem.Name = "StrickNoteDelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
pop.AddItem(GetSeparator());
menuItem = new MenuItem();
menuItem.Name = "StrickNoteColor";
menuItem.Header = "颜色...";
pop.BindingEvent(pop.AddItem(menuItem), AnnotColorPalette_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "StrickNoteEdit";
menuItem.Header = "编辑便签";
pop.BindingEvent(pop.AddItem(menuItem), StrikeNoteEditStrike_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "StrickNoteDefault";
menuItem.Header = "设置当前属性为默认值";
pop.BindingEvent(pop.AddItem(menuItem), AnnotDefaultValue_MenuCommand);
StrickNoteAnnotPopMenu = pop;
}
///
/// 形状
///
private void InitSelectShapeAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
var menuItem = new MenuItem();
menuItem.Name = "ShapeCopy";
menuItem.Header = "复制";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Copy);
menuItem = new MenuItem();
menuItem.Name = "ShapeCut";
menuItem.Header = "剪切";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Cut);
menuItem = new MenuItem();
menuItem.Name = "ShapePaste";
menuItem.Header = "粘贴";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Paste);
menuItem = new MenuItem();
menuItem.Name = "ShapeDelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
pop.AddItem(GetSeparator());
menuItem = new MenuItem();
menuItem.Name = "ShapeColor";
menuItem.Header = "颜色...";
pop.BindingEvent(pop.AddItem(menuItem), AnnotColorPalette_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "ShapeLineStyle";
menuItem.Header = "线段样式";
pop.AddItem(menuItem);
RadioButton radioButton = new RadioButton();
radioButton.Name = "ShapeSolid";
radioButton.Content = "实线";
radioButton.GroupName = "LineStyle";
radioButton.Tag = "Solid";
pop.BindingEvent(pop.AddChild("ShapeLineStyle", radioButton), ShapeLineStyle_MenuCommand);
radioButton = new RadioButton();
radioButton.Name = "ShapeDash";
radioButton.Content = "虚线";
radioButton.GroupName = "LineStyle";
radioButton.Tag = "Dash";
pop.BindingEvent(pop.AddChild("ShapeLineStyle", radioButton), ShapeLineStyle_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "ShapeDirect";
menuItem.Header = "线段方向";
pop.AddItem(menuItem);
menuItem = new MenuItem();
menuItem.Name = "ShapeVer";
menuItem.Header = "垂直";
menuItem.Tag = "Ver";
pop.BindingEvent(pop.AddChild("ShapeDirect", menuItem), ShapeLineDirect_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "ShapeHor";
menuItem.Header = "横向";
menuItem.Tag = "Hor";
pop.BindingEvent(pop.AddChild("ShapeDirect", menuItem), ShapeLineDirect_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "ShapeNoteText";
menuItem.Header = "添加笔记";
pop.BindingEvent(pop.AddItem(menuItem), AnnotAddNoteText_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "ShapeDefault";
menuItem.Header = "设置当前属性为默认值";
pop.BindingEvent(pop.AddItem(menuItem), AnnotDefaultValue_MenuCommand);
ShapeAnnotPopMenu = pop;
}
///
/// 链接
///
private void InitSelectLinkAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
var menuItem = new MenuItem();
menuItem.Name = "LinkCopy";
menuItem.Header = "复制";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Copy);
menuItem = new MenuItem();
menuItem.Name = "LinkCut";
menuItem.Header = "剪切";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Cut);
menuItem = new MenuItem();
menuItem.Name = "LinkPaste";
menuItem.Header = "粘贴";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Paste);
menuItem = new MenuItem();
menuItem.Name = "LinkDelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
LinkAnnotPopMenu = pop;
}
///
/// 图章、签名
///
private void InitSelectStampAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
var menuItem = new MenuItem();
menuItem.Name = "StampCopy";
menuItem.Header = "复制";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Copy);
menuItem = new MenuItem();
menuItem.Name = "StampCut";
menuItem.Header = "剪切";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Cut);
menuItem = new MenuItem();
menuItem.Name = "StampPaste";
menuItem.Header = "粘贴";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Paste);
menuItem = new MenuItem();
menuItem.Name = "StampDelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
pop.AddItem(GetSeparator());
menuItem = new MenuItem();
menuItem.Name = "StampExportPicture";
menuItem.Header = "导出";
pop.AddItem(menuItem);
menuItem = new MenuItem();
menuItem.Name = "StampExportPNG";
menuItem.Header = "PNG";
menuItem.Tag = "PNG";
pop.BindingEvent(pop.AddChild("StampExportPicture", menuItem), StampExportPicture_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "StampExportPNG";
menuItem.Header = "JPG";
menuItem.Tag = "JPG";
pop.BindingEvent(pop.AddChild("StampExportPicture", menuItem), StampExportPicture_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "StampExportPNG";
menuItem.Header = "PDF";
menuItem.Tag = "PDF";
pop.BindingEvent(pop.AddChild("StampExportPicture", menuItem), StampExportPicture_MenuCommand);
menuItem = new MenuItem();
menuItem.Name = "StampAddNote";
menuItem.Header = "添加笔记";
pop.BindingEvent(pop.AddItem(menuItem), AnnotAddNoteText_MenuCommand);
StampAnnotPopMenu = pop;
}
///
/// 多选注释
///
private void InitSelectMultiAnnotMenu()
{
var popMenu = new ContextMenu();
PopMenu pop = new PopMenu(popMenu);
var menuItem = new MenuItem();
menuItem.Name = "MultiCopy";
menuItem.Header = "复制";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Copy);
menuItem = new MenuItem();
menuItem.Name = "MultiCut";
menuItem.Header = "剪切";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Cut);
menuItem = new MenuItem();
menuItem.Name = "MultiDelete";
menuItem.Header = "删除";
pop.BindingEvent(pop.AddItem(menuItem), ApplicationCommands.Delete);
MultiAnnotPopMenu = pop;
}
#endregion 注释-右键菜单
}
}