KMPDFMenuConfig.swift 96 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247
  1. //
  2. // KMPDFMenuConfig.swift
  3. // PDF Reader Pro
  4. //
  5. // Created by Niehaoyu on 2024/10/23.
  6. //
  7. import Foundation
  8. import KMComponentLibrary
  9. let PDFViewMenuIdentifier_Space = "PDFViewMenuIdentifier_Space"
  10. //MARK: -PageEdit
  11. let ThumbnailMenuIdentifier_Copy = "ThumbnailMenuIdentifier_Copy"
  12. let ThumbnailMenuIdentifier_Cut = "ThumbnailMenuIdentifier_Cut"
  13. let ThumbnailMenuIdentifier_Paste = "ThumbnailMenuIdentifier_Paste"
  14. let ThumbnailMenuIdentifier_Delete = "ThumbnailMenuIdentifier_Delete"
  15. let ThumbnailMenuIdentifier_RotateRight = "ThumbnailMenuIdentifier_RotateRight"
  16. let ThumbnailMenuIdentifier_RotateLeft = "ThumbnailMenuIdentifier_RotateLeft"
  17. let ThumbnailMenuIdentifier_InsertFile = "ThumbnailMenuIdentifier_InsertFile"
  18. let ThumbnailMenuIdentifier_InsertBlank = "ThumbnailMenuIdentifier_InsertBlank"
  19. let ThumbnailMenuIdentifier_Replace = "ThumbnailMenuIdentifier_Replace"
  20. let ThumbnailMenuIdentifier_Share = "ThumbnailMenuIdentifier_Share"
  21. let ThumbnailMenuIdentifier_Export = "ThumbnailMenuIdentifier_Export"
  22. let ThumbnailMenuIdentifier_PastNull = "ThumbnailMenuIdentifier_PastNull"
  23. let ThumbnailMenuIdentifier_FileShowSize = "ThumbnailMenuIdentifier_FileShowSize"
  24. //MARK: - 幻灯片
  25. let PDFViewMenuIdentifier_PageNext = "PDFViewMenuIdentifier_PageNext"
  26. let PDFViewMenuIdentifier_PagePrevious = "PDFViewMenuIdentifier_PagePrevious"
  27. let PDFViewMenuIdentifier_PageFirst = "PDFViewMenuIdentifier_PageFirst"
  28. let PDFViewMenuIdentifier_PageLast = "PDFViewMenuIdentifier_PageLast"
  29. let PDFViewMenuIdentifier_Presentation_LaserPoint = "PDFViewMenuIdentifier_Presentation_LaserPoint"
  30. let PDFViewMenuIdentifier_Presentation_Brush = "PDFViewMenuIdentifier_Presentation_Brush"
  31. let PDFViewMenuIdentifier_Presentation_Exit = "PDFViewMenuIdentifier_Presentation_Exit"
  32. //MARK: - 常规模式
  33. let PDFViewMenuIdentifier_Normal_AITool = "PDFViewMenuIdentifier_Normal_AITool"
  34. let PDFViewMenuIdentifier_Normal_AIRewrite = "PDFViewMenuIdentifier_Normal_AIRewrite"
  35. let PDFViewMenuIdentifier_Normal_AIProofread = "PDFViewMenuIdentifier_Normal_AIProofread"
  36. let PDFViewMenuIdentifier_Normal_AITranslate = "PDFViewMenuIdentifier_Normal_AITranslate"
  37. let PDFViewMenuIdentifier_Normal_Past = "PDFViewMenuIdentifier_Normal_Past"
  38. let PDFViewMenuIdentifier_Normal_SelectAllText = "PDFViewMenuIdentifier_Normal_SelectAllText"
  39. let PDFViewMenuIdentifier_Normal_AddBook = "PDFViewMenuIdentifier_Normal_AddBook"
  40. let PDFViewMenuIdentifier_Normal_ViewTools = "PDFViewMenuIdentifier_Normal_ViewTools"
  41. let PDFViewMenuIdentifier_Normal_TextTool = "PDFViewMenuIdentifier_Normal_TextTool"
  42. let PDFViewMenuIdentifier_Normal_MoveTool = "PDFViewMenuIdentifier_Normal_MoveTool"
  43. let PDFViewMenuIdentifier_Normal_SelectTool = "PDFViewMenuIdentifier_Normal_SelectTool"
  44. let PDFViewMenuIdentifier_Normal_MagnifyTool = "PDFViewMenuIdentifier_Normal_MagnifyTool"
  45. let PDFViewMenuIdentifier_Normal_SelectZoomTool = "PDFViewMenuIdentifier_Normal_SelectZoomTool"
  46. let PDFViewMenuIdentifier_Normal_PageView = "PDFViewMenuIdentifier_Normal_PageView"
  47. let PDFViewMenuIdentifier_Normal_Single = "PDFViewMenuIdentifier_Normal_Single"
  48. let PDFViewMenuIdentifier_Normal_SingleContinuous = "PDFViewMenuIdentifier_Normal_SingleContinuous"
  49. let PDFViewMenuIdentifier_Normal_TwoPages = "PDFViewMenuIdentifier_Normal_TwoPages"
  50. let PDFViewMenuIdentifier_Normal_TwoPagesContinuous = "PDFViewMenuIdentifier_Normal_TwoPagesContinuous"
  51. let PDFViewMenuIdentifier_Normal_BookMode = "PDFViewMenuIdentifier_Normal_BookMode"
  52. let PDFViewMenuIdentifier_Normal_ReadMode = "PDFViewMenuIdentifier_Normal_ReadMode"
  53. let PDFViewMenuIdentifier_Normal_Scale = "PDFViewMenuIdentifier_Normal_Scale"
  54. let PDFViewMenuIdentifier_Normal_ScaleWidth = "PDFViewMenuIdentifier_Normal_ScaleWidth"
  55. let PDFViewMenuIdentifier_Normal_ScalePage = "PDFViewMenuIdentifier_Normal_ScalePage"
  56. let PDFViewMenuIdentifier_Normal_ScaleOrg = "PDFViewMenuIdentifier_Normal_ScaleOrg"
  57. let PDFViewMenuIdentifier_Normal_ScaleZoomIn = "PDFViewMenuIdentifier_Normal_ScaleZoomIn"
  58. let PDFViewMenuIdentifier_Normal_ScaleZoomOut = "PDFViewMenuIdentifier_Normal_ScaleZoomOut"
  59. let PDFViewMenuIdentifier_Normal_PageRotate = "PDFViewMenuIdentifier_Normal_PageRotate"
  60. let PDFViewMenuIdentifier_Normal_RotateLeft = "PDFViewMenuIdentifier_Normal_RotateLeft"
  61. let PDFViewMenuIdentifier_Normal_RotateRight = "PDFViewMenuIdentifier_Normal_RotateRight"
  62. let PDFViewMenuIdentifier_Normal_PageNum = "PDFViewMenuIdentifier_Normal_PageNum"
  63. let PDFViewMenuIdentifier_Normal_EnterPageNum = "PDFViewMenuIdentifier_Normal_EnterPageNum"
  64. let PDFViewMenuIdentifier_Normal_PageBack = "PDFViewMenuIdentifier_Normal_PageBack"
  65. let PDFViewMenuIdentifier_Normal_PageForward = "PDFViewMenuIdentifier_Normal_PageForward"
  66. let PDFViewMenuIdentifier_Normal_AutoScroll = "PDFViewMenuIdentifier_Normal_AutoScroll"
  67. let PDFViewMenuIdentifier_Normal_HightForm = "PDFViewMenuIdentifier_Normal_HightForm"
  68. let PDFViewMenuIdentifier_Normal_HightLink = "PDFViewMenuIdentifier_Normal_HightLink"
  69. let PDFViewMenuIdentifier_Normal_RestForm = "PDFViewMenuIdentifier_Normal_RestForm"
  70. let PDFViewMenuIdentifier_Normal_Search = "PDFViewMenuIdentifier_Normal_Search"
  71. let PDFViewMenuIdentifier_Normal_Print = "PDFViewMenuIdentifier_Normal_Print"
  72. let PDFViewMenuIdentifier_Normal_Properties = "PDFViewMenuIdentifier_Normal_Properties"
  73. let PDFViewMenuIdentifier_Normal_Copy = "PDFViewMenuIdentifier_Normal_Copy"
  74. let PDFViewMenuIdentifier_Normal_Hight = "PDFViewMenuIdentifier_Normal_Hight"
  75. let PDFViewMenuIdentifier_Normal_Underline = "PDFViewMenuIdentifier_Normal_Underline"
  76. let PDFViewMenuIdentifier_Normal_Squiggly = "PDFViewMenuIdentifier_Normal_Squiggly"
  77. let PDFViewMenuIdentifier_Normal_StrikeOut = "PDFViewMenuIdentifier_Normal_StrikeOut"
  78. let PDFViewMenuIdentifier_Normal_Square = "PDFViewMenuIdentifier_Normal_Square"
  79. let PDFViewMenuIdentifier_Normal_Circle = "PDFViewMenuIdentifier_Normal_Circle"
  80. let PDFViewMenuIdentifier_Normal_AddOutLine = "PDFViewMenuIdentifier_Normal_AddOutLine"
  81. let PDFViewMenuIdentifier_Normal_TTS = "PDFViewMenuIdentifier_Normal_TTS"
  82. let PDFViewMenuIdentifier_Normal_SearchText = "PDFViewMenuIdentifier_Normal_SearchText"
  83. let PDFViewMenuIdentifier_Normal_SelectAllForm = "PDFViewMenuIdentifier_Normal_SelectAllForm"
  84. let PDFViewMenuIdentifier_Normal_ShowFormName = "PDFViewMenuIdentifier_Normal_ShowFormName"
  85. let PDFViewMenuIdentifier_Normal_SelectAllAnnotation = "PDFViewMenuIdentifier_Normal_SelectAllAnnotation"
  86. let PDFViewMenuIdentifier_Normal_ShowAnnotation = "PDFViewMenuIdentifier_Normal_ShowAnnotation"
  87. let PDFViewMenuIdentifier_Normal_CopyText = "PDFViewMenuIdentifier_Normal_CopyText"
  88. let PDFViewMenuIdentifier_Normal_Cut = "PDFViewMenuIdentifier_Normal_Cut"
  89. let PDFViewMenuIdentifier_Normal_Delete = "PDFViewMenuIdentifier_Normal_Delete"
  90. let PDFViewMenuIdentifier_Normal_ShowPopUI = "PDFViewMenuIdentifier_Normal_ShowPopUI"
  91. let PDFViewMenuIdentifier_Normal_LinkReade = "PDFViewMenuIdentifier_Normal_LinkReade"
  92. let PDFViewMenuIdentifier_Normal_SortAnnotation = "PDFViewMenuIdentifier_Normal_SortAnnotation"
  93. let PDFViewMenuIdentifier_Normal_SortFirstAnnotation = "PDFViewMenuIdentifier_Normal_SortFirstAnnotation"
  94. let PDFViewMenuIdentifier_Normal_SortTopAnnotation = "PDFViewMenuIdentifier_Normal_SortTopAnnotation"
  95. let PDFViewMenuIdentifier_Normal_SortBottomAnnotation = "PDFViewMenuIdentifier_Normal_SortBottomAnnotation"
  96. let PDFViewMenuIdentifier_Normal_SortLastAnnotation = "PDFViewMenuIdentifier_Normal_SortLastAnnotation"
  97. let PDFViewMenuIdentifier_Normal_Content = "PDFViewMenuIdentifier_Normal_Content"
  98. let PDFViewMenuIdentifier_Redact_Apply = "PDFViewMenuIdentifier_Redact_Apply"
  99. let PDFViewMenuIdentifier_Redact_Multipage = "PDFViewMenuIdentifier_Redact_Multipage"
  100. let PDFViewMenuIdentifier_Redact_Default = "PDFViewMenuIdentifier_Redact_Default"
  101. let PDFViewMenuIdentifier_Split_ViewMode = "PDFViewMenuIdentifier_Split_ViewMode"
  102. let PDFViewMenuIdentifier_Split_ViewSingleMode = "PDFViewMenuIdentifier_Split_ViewSingleMode"
  103. let PDFViewMenuIdentifier_Split_ViewVerticalMode = "PDFViewMenuIdentifier_Split_ViewVerticalMode"
  104. let PDFViewMenuIdentifier_Split_ViewHorizontalMode = "PDFViewMenuIdentifier_Split_ViewHorizontalMode"
  105. let PDFViewMenuIdentifier_Split_Sync = "PDFViewMenuIdentifier_Split_Sync"
  106. let PDFViewMenuIdentifier_Split_ShowBar = "PDFViewMenuIdentifier_Split_ShowBar"
  107. let PDFViewMenuIdentifier_Normal_Aligning = "PDFViewMenuIdentifier_Normal_Aligning"
  108. let PDFViewMenuIdentifier_Normal_LeftAlight = "PDFViewMenuIdentifier_Normal_LeftAlight"
  109. let PDFViewMenuIdentifier_Normal_VerticallyAlight = "PDFViewMenuIdentifier_Normal_VerticallyAlight"
  110. let PDFViewMenuIdentifier_Normal_RightAlight = "PDFViewMenuIdentifier_Normal_RightAlight"
  111. let PDFViewMenuIdentifier_Normal_TopAlight = "PDFViewMenuIdentifier_Normal_TopAlight"
  112. let PDFViewMenuIdentifier_Normal_HorizontallyAlight = "PDFViewMenuIdentifier_Normal_HorizontallyAlight"
  113. let PDFViewMenuIdentifier_Normal_BottomAlight = "PDFViewMenuIdentifier_Normal_BottomAlight"
  114. let PDFViewMenuIdentifier_Normal_DistributeHorizontally = "PDFViewMenuIdentifier_Normal_DistributeHorizontally"
  115. let PDFViewMenuIdentifier_Normal_DistributeVertically = "PDFViewMenuIdentifier_Normal_DistributeVertically"
  116. let PDFViewMenuIdentifier_Normal_Export = "PDFViewMenuIdentifier_Normal_Export"
  117. let PDFViewMenuIdentifier_Normal_ExportJPG = "PDFViewMenuIdentifier_Normal_ExportJPG"
  118. let PDFViewMenuIdentifier_Normal_ExportPNG = "PDFViewMenuIdentifier_Normal_ExportPNG"
  119. let PDFViewMenuIdentifier_Normal_ExportPDF = "PDFViewMenuIdentifier_Normal_ExportPDF"
  120. let PDFViewMenuIdentifier_Normal_RedactProperties = "PDFViewMenuIdentifier_Normal_RedactProperties"
  121. let PDFViewMenuIdentifier_Edit_Paste = "PDFViewMenuIdentifier_Edit_Paste"
  122. let PDFViewMenuIdentifier_Edit_NoStylePaste = "PDFViewMenuIdentifier_Edit_NoStylePaste"
  123. let PDFViewMenuIdentifier_Edit_SelectAll = "PDFViewMenuIdentifier_Edit_SelectAll"
  124. let PDFViewMenuIdentifier_Edit_AddLink = "PDFViewMenuIdentifier_Edit_AddLink"
  125. let PDFViewMenuIdentifier_Edit_AddText = "PDFViewMenuIdentifier_Edit_AddText"
  126. let PDFViewMenuIdentifier_Edit_AddImage = "PDFViewMenuIdentifier_Edit_AddImage"
  127. let PDFViewMenuIdentifier_Edit_Font = "PDFViewMenuIdentifier_Edit_Font"
  128. let PDFViewMenuIdentifier_Edit_FontBold = "PDFViewMenuIdentifier_Edit_FontBold"
  129. let PDFViewMenuIdentifier_Edit_FontItalic = "PDFViewMenuIdentifier_Edit_FontItalic"
  130. let PDFViewMenuIdentifier_Edit_FontUnderline = "PDFViewMenuIdentifier_Edit_FontUnderline"
  131. let PDFViewMenuIdentifier_Edit_FontStrikeout = "PDFViewMenuIdentifier_Edit_FontStrikeout"
  132. let PDFViewMenuIdentifier_Edit_FontZoomIn = "PDFViewMenuIdentifier_Edit_FontZoomIn"
  133. let PDFViewMenuIdentifier_Edit_FontZoomOut = "PDFViewMenuIdentifier_Edit_FontZoomOut"
  134. let PDFViewMenuIdentifier_Edit_FontColor = "PDFViewMenuIdentifier_Edit_FontColor"
  135. let PDFViewMenuIdentifier_Edit_FontName = "PDFViewMenuIdentifier_Edit_FontName"
  136. let PDFViewMenuIdentifier_Edit_FontH1Name = "PDFViewMenuIdentifier_Edit_FontH1Name"
  137. let PDFViewMenuIdentifier_Edit_FontH2Name = "PDFViewMenuIdentifier_Edit_FontH2Name"
  138. let PDFViewMenuIdentifier_Edit_FontH3Name = "PDFViewMenuIdentifier_Edit_FontH3Name"
  139. let PDFViewMenuIdentifier_Edit_FontB1Name = "PDFViewMenuIdentifier_Edit_FontB1Name"
  140. let PDFViewMenuIdentifier_Edit_FontB2Name = "PDFViewMenuIdentifier_Edit_FontB2Name"
  141. let PDFViewMenuIdentifier_Edit_FontB3Name = "PDFViewMenuIdentifier_Edit_FontB3Name"
  142. let PDFViewMenuIdentifier_Edit_FontAlight = "PDFViewMenuIdentifier_Edit_FontAlight"
  143. let PDFViewMenuIdentifier_Edit_FontLeftAlight = "PDFViewMenuIdentifier_Edit_FontLeftAlight"
  144. let PDFViewMenuIdentifier_Edit_FontCenterAlight = "PDFViewMenuIdentifier_Edit_FontCenterAlight"
  145. let PDFViewMenuIdentifier_Edit_FontRightAlight = "PDFViewMenuIdentifier_Edit_FontRightAlight"
  146. let PDFViewMenuIdentifier_Edit_FontJustAlight = "PDFViewMenuIdentifier_Edit_FontJustAlight"
  147. let PDFViewMenuIdentifier_Edit_RotateLeft = "PDFViewMenuIdentifier_Edit_RotateLeft"
  148. let PDFViewMenuIdentifier_Edit_RotateRight = "PDFViewMenuIdentifier_Edit_RotateRight"
  149. let PDFViewMenuIdentifier_Edit_HorizontalMirror = "PDFViewMenuIdentifier_Edit_HorizontalMirror"
  150. let PDFViewMenuIdentifier_Edit_VerticalMirror = "PDFViewMenuIdentifier_Edit_VerticalMirror"
  151. let PDFViewMenuIdentifier_Edit_Crop = "PDFViewMenuIdentifier_Edit_Crop"
  152. let PDFViewMenuIdentifier_Edit_Replace = "PDFViewMenuIdentifier_Edit_Replace"
  153. let BOTAMenuIdentifier_Annotation_Expand = "BOTAMenuIdentifier_Annotation_Expand"
  154. let BOTAMenuIdentifier_Annotation_Sort = "BOTAMenuIdentifier_Annotation_Sort"
  155. let BOTAMenuIdentifier_Annotation_SortPage = "BOTAMenuIdentifier_Annotation_SortPage"
  156. let BOTAMenuIdentifier_Annotation_SortAscTime = "BOTAMenuIdentifier_Annotation_SortAscTime"
  157. let BOTAMenuIdentifier_Annotation_SortDesTime = "BOTAMenuIdentifier_Annotation_SortDesTime"
  158. let BOTAMenuIdentifier_Annotation_Improt = "BOTAMenuIdentifier_Annotation_Improt"
  159. let BOTAMenuIdentifier_Annotation_Export = "BOTAMenuIdentifier_Annotation_Export"
  160. let BOTAMenuIdentifier_Annotation_RemoveAll = "BOTAMenuIdentifier_Annotation_RemoveAll"
  161. let BOTAMenuIdentifier_Annotation_DeleteRep = "BOTAMenuIdentifier_Annotation_DeleteRep"
  162. @objcMembers class KMPDFMenuConfig: NSString {
  163. class func aiMenuItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  164. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  165. itemSelected: false,
  166. isDisabled: false,
  167. keyEquivalent: nil,
  168. text: KMLocalizedString("AI Tools"),
  169. identifier: PDFViewMenuIdentifier_Normal_AITool)
  170. var subMenuItemArr: [ComponentMenuitemProperty] = []
  171. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  172. itemSelected: false,
  173. isDisabled: false,
  174. keyEquivalent: nil,
  175. text: KMLocalizedString("AI Rewrite"),identifier: PDFViewMenuIdentifier_Normal_AIRewrite)
  176. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  177. itemSelected: false,
  178. isDisabled: false,
  179. keyEquivalent: nil,
  180. text: KMLocalizedString("AI Proofread"),identifier: PDFViewMenuIdentifier_Normal_AIProofread)
  181. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  182. itemSelected: false,
  183. isDisabled: false,
  184. keyEquivalent: nil,
  185. text: KMLocalizedString("AI Translate"),identifier: PDFViewMenuIdentifier_Normal_AITranslate)
  186. subMenuItemArr.append(subItem0Property)
  187. subMenuItemArr.append(subItem1Property)
  188. subMenuItemArr.append(subItem2Property)
  189. properties_Menuitem.subPropertys = subMenuItemArr
  190. return properties_Menuitem
  191. }
  192. class func viewModeMenuItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  193. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  194. itemSelected: false,
  195. isDisabled: false,
  196. keyEquivalent: nil,
  197. text: KMLocalizedString("Tool Mode"),
  198. identifier: PDFViewMenuIdentifier_Normal_ViewTools)
  199. var subMenuItemArr: [ComponentMenuitemProperty] = []
  200. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  201. itemSelected: false,
  202. isDisabled: false,
  203. keyEquivalent: "⇧1",
  204. text: KMLocalizedString("Text"),identifier: PDFViewMenuIdentifier_Normal_TextTool)
  205. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  206. itemSelected: false,
  207. isDisabled: false,
  208. keyEquivalent: "⇧2",
  209. text: KMLocalizedString("Scroll"),identifier: PDFViewMenuIdentifier_Normal_MoveTool)
  210. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  211. itemSelected: false,
  212. isDisabled: false,
  213. keyEquivalent: "⇧3",
  214. text: KMLocalizedString("Magnify"),identifier: PDFViewMenuIdentifier_Normal_MagnifyTool)
  215. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  216. itemSelected: false,
  217. isDisabled: false,
  218. keyEquivalent: "⇧4",
  219. text: KMLocalizedString("Select"),identifier: PDFViewMenuIdentifier_Normal_SelectTool)
  220. let subItem4Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  221. itemSelected: false,
  222. isDisabled: false,
  223. keyEquivalent: "⇧5",
  224. text: KMLocalizedString("Area Zoom"),identifier: PDFViewMenuIdentifier_Normal_SelectZoomTool)
  225. subMenuItemArr.append(subItem0Property)
  226. subMenuItemArr.append(subItem1Property)
  227. subMenuItemArr.append(subItem2Property)
  228. subMenuItemArr.append(subItem3Property)
  229. subMenuItemArr.append(subItem4Property)
  230. properties_Menuitem.subPropertys = subMenuItemArr
  231. return properties_Menuitem
  232. }
  233. class func pageViewMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  234. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  235. itemSelected: false,
  236. isDisabled: false,
  237. keyEquivalent: nil,
  238. text: KMLocalizedString("PDF Display"),
  239. identifier: PDFViewMenuIdentifier_Normal_PageView)
  240. var subMenuItemArr: [ComponentMenuitemProperty] = []
  241. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  242. itemSelected: false,
  243. isDisabled: false,
  244. keyEquivalent: "⌃⌘1",
  245. text: KMLocalizedString("Single Page"),
  246. identifier: PDFViewMenuIdentifier_Normal_Single,
  247. representedObject: listView)
  248. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  249. itemSelected: false,
  250. isDisabled: false,
  251. keyEquivalent: "⌃⌘2",
  252. text: KMLocalizedString("Single Page Continuous"),
  253. identifier: PDFViewMenuIdentifier_Normal_SingleContinuous,
  254. representedObject: listView)
  255. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  256. itemSelected: false,
  257. isDisabled: false,
  258. keyEquivalent: "⌃⌘3",
  259. text: KMLocalizedString("Two Pages"),
  260. identifier: PDFViewMenuIdentifier_Normal_TwoPages,
  261. representedObject: listView)
  262. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  263. itemSelected: false,
  264. isDisabled: false,
  265. keyEquivalent: "⌃⌘4",
  266. text: KMLocalizedString("Two Pages Continuous"),
  267. identifier: PDFViewMenuIdentifier_Normal_TwoPagesContinuous,
  268. representedObject: listView)
  269. let subItem4Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  270. itemSelected: false,
  271. isDisabled: false,
  272. keyEquivalent: nil,
  273. text: KMLocalizedString("Book Mode"),identifier: PDFViewMenuIdentifier_Normal_BookMode,
  274. representedObject: listView)
  275. subMenuItemArr.append(subItem0Property)
  276. subMenuItemArr.append(subItem1Property)
  277. subMenuItemArr.append(subItem2Property)
  278. subMenuItemArr.append(subItem3Property)
  279. subMenuItemArr.append(subItem4Property)
  280. properties_Menuitem.subPropertys = subMenuItemArr
  281. return properties_Menuitem
  282. }
  283. class func scaleViewMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  284. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  285. itemSelected: false,
  286. isDisabled: false,
  287. keyEquivalent: nil,
  288. text: KMLocalizedString("Zoom"),
  289. identifier: PDFViewMenuIdentifier_Normal_Scale)
  290. var subMenuItemArr: [ComponentMenuitemProperty] = []
  291. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  292. itemSelected: false,
  293. isDisabled: false,
  294. keyEquivalent: "⌘1",
  295. text: KMLocalizedString("Zoom To Width"),identifier: PDFViewMenuIdentifier_Normal_ScaleWidth,
  296. representedObject: listView)
  297. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  298. itemSelected: false,
  299. isDisabled: false,
  300. keyEquivalent: "⌘2",
  301. text: KMLocalizedString("Automatically Resize"),identifier: PDFViewMenuIdentifier_Normal_ScalePage,
  302. representedObject: listView)
  303. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  304. itemSelected: false,
  305. isDisabled: false,
  306. keyEquivalent: "⌘0",
  307. text: KMLocalizedString("Actual Size"),identifier: PDFViewMenuIdentifier_Normal_ScaleOrg,
  308. representedObject: listView)
  309. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  310. itemSelected: false,
  311. isDisabled: false,
  312. keyEquivalent: "⌘+",
  313. text: KMLocalizedString("Zoom In"),identifier: PDFViewMenuIdentifier_Normal_ScaleZoomIn,
  314. representedObject: listView)
  315. let subItem4Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  316. itemSelected: false,
  317. isDisabled: false,
  318. keyEquivalent: "⌘-",
  319. text: KMLocalizedString("Zoom Out"),identifier: PDFViewMenuIdentifier_Normal_ScaleZoomOut,
  320. representedObject: listView)
  321. subMenuItemArr.append(subItem0Property)
  322. subMenuItemArr.append(subItem1Property)
  323. subMenuItemArr.append(subItem2Property)
  324. subMenuItemArr.append(subItem3Property)
  325. subMenuItemArr.append(subItem4Property)
  326. properties_Menuitem.subPropertys = subMenuItemArr
  327. return properties_Menuitem
  328. }
  329. class func pageRotateMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  330. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  331. itemSelected: false,
  332. isDisabled: false,
  333. keyEquivalent: nil,
  334. text: KMLocalizedString("Rotate Page"),
  335. identifier: PDFViewMenuIdentifier_Normal_PageRotate)
  336. var subMenuItemArr: [ComponentMenuitemProperty] = []
  337. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  338. itemSelected: false,
  339. isDisabled: false,
  340. keyEquivalent: "⌘L",
  341. text: KMLocalizedString("Rotate Left"),identifier: PDFViewMenuIdentifier_Normal_RotateLeft,
  342. representedObject: ["Object": listView, "theEvent": theEvent])
  343. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  344. itemSelected: false,
  345. isDisabled: false,
  346. keyEquivalent: "⌘R",
  347. text: KMLocalizedString("Rotate Right"),identifier: PDFViewMenuIdentifier_Normal_RotateRight,
  348. representedObject: ["Object": listView, "theEvent": theEvent])
  349. subMenuItemArr.append(subItem0Property)
  350. subMenuItemArr.append(subItem1Property)
  351. properties_Menuitem.subPropertys = subMenuItemArr
  352. return properties_Menuitem
  353. }
  354. class func pageNumMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  355. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  356. itemSelected: false,
  357. isDisabled: false,
  358. keyEquivalent: nil,
  359. text: KMLocalizedString("Page"),
  360. identifier: PDFViewMenuIdentifier_Normal_PageNum)
  361. var subMenuItemArr: [ComponentMenuitemProperty] = []
  362. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  363. itemSelected: false,
  364. isDisabled: false,
  365. keyEquivalent: "⌘▶",
  366. text: KMLocalizedString("Next Page"),identifier: PDFViewMenuIdentifier_PageNext,
  367. representedObject: listView)
  368. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  369. itemSelected: false,
  370. isDisabled: false,
  371. keyEquivalent: "⌘◀",
  372. text: KMLocalizedString("Previous Page"),identifier: PDFViewMenuIdentifier_PagePrevious,
  373. representedObject: listView)
  374. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  375. itemSelected: false,
  376. isDisabled: false,
  377. keyEquivalent: "⌘▲",
  378. text: KMLocalizedString("First"),identifier: PDFViewMenuIdentifier_PageFirst,
  379. representedObject: listView)
  380. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  381. itemSelected: false,
  382. isDisabled: false,
  383. keyEquivalent: "⌘▼",
  384. text: KMLocalizedString("Last"),identifier: PDFViewMenuIdentifier_PageLast,
  385. representedObject: listView)
  386. let subItem4Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  387. itemSelected: false,
  388. isDisabled: false,
  389. keyEquivalent: "⌥⌘G",
  390. text: KMLocalizedString("Go To Page…"),identifier: PDFViewMenuIdentifier_Normal_EnterPageNum,
  391. representedObject: listView)
  392. let subItem5Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  393. itemSelected: false,
  394. isDisabled: false,
  395. keyEquivalent: "⌘[",
  396. text: KMLocalizedString("Forward"),identifier: PDFViewMenuIdentifier_Normal_PageForward,
  397. representedObject: listView)
  398. let subItem6Property: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  399. itemSelected: false,
  400. isDisabled: false,
  401. keyEquivalent: "⌘]",
  402. text: KMLocalizedString("Back"),identifier: PDFViewMenuIdentifier_Normal_PageBack,
  403. representedObject: listView)
  404. subMenuItemArr.append(subItem0Property)
  405. subMenuItemArr.append(subItem1Property)
  406. subMenuItemArr.append(subItem2Property)
  407. subMenuItemArr.append(subItem3Property)
  408. subMenuItemArr.append(ComponentMenuitemProperty.divider())
  409. subMenuItemArr.append(subItem4Property)
  410. subMenuItemArr.append(ComponentMenuitemProperty.divider())
  411. subMenuItemArr.append(subItem5Property)
  412. subMenuItemArr.append(subItem6Property)
  413. properties_Menuitem.subPropertys = subMenuItemArr
  414. return properties_Menuitem
  415. }
  416. class func pasteNumMenuItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  417. let past_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘V",
  418. text: KMLocalizedString("Paste"),
  419. identifier: PDFViewMenuIdentifier_Normal_Past,representedObject: theEvent)
  420. return past_Menuitem
  421. }
  422. class func seletAllMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  423. let selectAll_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘A",
  424. text: KMLocalizedString("Select All"),
  425. identifier: PDFViewMenuIdentifier_Normal_SelectAllText,representedObject: listView)
  426. return selectAll_Menuitem
  427. }
  428. class func addBookMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  429. var pagePoint = NSPoint.zero
  430. var isHoveBookMark = false
  431. if let page = listView?.pageAndPoint(&pagePoint, for: theEvent, nearest: true) {
  432. isHoveBookMark = listView?.document.bookmark(forPageIndex: UInt(page.pageIndex())) != nil
  433. }
  434. var text = KMLocalizedString("Add Bookmark")
  435. if isHoveBookMark == true {
  436. text = KMLocalizedString("Remove Bookmark")
  437. }
  438. let addBook_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  439. text: text,
  440. identifier: PDFViewMenuIdentifier_Normal_AddBook,representedObject: theEvent)
  441. return addBook_Menuitem
  442. }
  443. class func readerModeItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  444. let readModel = UserDefaults.standard.bool(forKey: CPDFViewIsReadModeKey)
  445. var text = KMLocalizedString("Read Mode On")
  446. if readModel == true {
  447. text = KMLocalizedString("Read Mode Off")
  448. } else {
  449. text = KMLocalizedString("Read Mode On")
  450. }
  451. let readerMode_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  452. text: text,
  453. identifier: PDFViewMenuIdentifier_Normal_ReadMode,representedObject: theEvent)
  454. return readerMode_Menuitem
  455. }
  456. class func scrollMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  457. let scroll_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  458. text: KMLocalizedString("Auto Scroll"),
  459. identifier: PDFViewMenuIdentifier_Normal_AutoScroll,representedObject: theEvent)
  460. if ((listView?.isAutoFlow()) == true) {
  461. scroll_Menuitem.righticon = NSImage(named: "KMNImageNameMenuSelect")
  462. }
  463. return scroll_Menuitem
  464. }
  465. class func hightLinkMenuItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  466. let hightLink_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  467. text: KMLocalizedString("Highlight Links"),
  468. identifier: PDFViewMenuIdentifier_Normal_HightLink,representedObject: theEvent)
  469. let highlightLinkFiled = CPDFKitConfig.sharedInstance().enableLinkFieldHighlight()
  470. if highlightLinkFiled {
  471. hightLink_Menuitem.righticon = NSImage(named: "KMNImageNameMenuSelect")
  472. }
  473. return hightLink_Menuitem
  474. }
  475. class func hightFormMenuItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  476. let hightForm_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  477. text: KMLocalizedString("Highlight Form Fields"),
  478. identifier: PDFViewMenuIdentifier_Normal_HightForm,representedObject: theEvent)
  479. let highlightFormFiled = CPDFKitConfig.sharedInstance().enableFormFieldHighlight()
  480. if highlightFormFiled {
  481. hightForm_Menuitem.righticon = NSImage(named: "KMNImageNameMenuSelect")
  482. }
  483. return hightForm_Menuitem
  484. }
  485. class func resetFormItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  486. let resetForm_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  487. text: KMLocalizedString("Reset Form"),
  488. identifier: PDFViewMenuIdentifier_Normal_RestForm,representedObject: listView)
  489. return resetForm_Menuitem
  490. }
  491. class func searchItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  492. let search_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘F",
  493. text: KMLocalizedString("Search"),
  494. identifier: PDFViewMenuIdentifier_Normal_Search,representedObject: theEvent)
  495. return search_Menuitem
  496. }
  497. class func printProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  498. let print_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘P",
  499. text: KMLocalizedString("Print"),
  500. identifier: PDFViewMenuIdentifier_Normal_Print,representedObject: listView)
  501. return print_Menuitem
  502. }
  503. class func propertieItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  504. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘D",
  505. text: KMLocalizedString("Properties..."),
  506. identifier: PDFViewMenuIdentifier_Normal_Properties,representedObject: listView)
  507. return propertie_Menuitem
  508. }
  509. class func copyItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  510. let copy_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘C",
  511. text: KMLocalizedString("Copy"),
  512. identifier: PDFViewMenuIdentifier_Normal_Copy,representedObject: theEvent)
  513. return copy_Menuitem
  514. }
  515. class func hightMarkItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  516. let hightMark_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌃⌘H",
  517. text: KMLocalizedString("Highlight"),
  518. identifier: PDFViewMenuIdentifier_Normal_Hight,representedObject: theEvent)
  519. return hightMark_Menuitem
  520. }
  521. class func underLineItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  522. let underLine_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌃⌘U",
  523. text: KMLocalizedString("Underline"),
  524. identifier: PDFViewMenuIdentifier_Normal_Underline,representedObject: theEvent)
  525. return underLine_Menuitem
  526. }
  527. class func strikethroughItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  528. let strikethrough_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌃⌘D",
  529. text: KMLocalizedString("Strikethrough"),
  530. identifier: PDFViewMenuIdentifier_Normal_StrikeOut,representedObject: theEvent)
  531. return strikethrough_Menuitem
  532. }
  533. class func squigglyItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  534. let squiggly_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌃⌘V",
  535. text: KMLocalizedString("Squiggly"),
  536. identifier: PDFViewMenuIdentifier_Normal_Squiggly,representedObject: theEvent)
  537. return squiggly_Menuitem
  538. }
  539. class func squareItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  540. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌃⌘R",
  541. text: KMLocalizedString("Rectangle"),
  542. identifier: PDFViewMenuIdentifier_Normal_Square,representedObject: theEvent)
  543. return propertie_Menuitem
  544. }
  545. class func circleItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  546. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌃⌘O",
  547. text: KMLocalizedString("Circle"),
  548. identifier: PDFViewMenuIdentifier_Normal_Circle,representedObject: theEvent)
  549. return propertie_Menuitem
  550. }
  551. class func addOutlineItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  552. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  553. text: KMLocalizedString("Add Outline Item"),
  554. identifier: PDFViewMenuIdentifier_Normal_AddOutLine,representedObject: theEvent)
  555. return propertie_Menuitem
  556. }
  557. class func ttsItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  558. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  559. text: KMLocalizedString("TTS"),
  560. identifier: PDFViewMenuIdentifier_Normal_TTS,representedObject: theEvent)
  561. return propertie_Menuitem
  562. }
  563. class func searchTextItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  564. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  565. text: KMLocalizedString("Search") + " " + "\"" + (listView?.currentSelection.string() ?? "") + "\"",
  566. identifier: PDFViewMenuIdentifier_Normal_SearchText,representedObject: listView)
  567. return propertie_Menuitem
  568. }
  569. class func selectAllFormItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  570. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘A",
  571. text: KMLocalizedString("Select All"),
  572. identifier: PDFViewMenuIdentifier_Normal_SelectAllForm,representedObject: listView)
  573. return propertie_Menuitem
  574. }
  575. class func showFormNameItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  576. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  577. text: KMLocalizedString("Display name"),
  578. identifier: PDFViewMenuIdentifier_Normal_ShowFormName,representedObject: listView)
  579. if(listView?.showFormFieldName == true) {
  580. propertie_Menuitem.righticon = NSImage(named: "KMNImageNameMenuSelect")
  581. }
  582. return propertie_Menuitem
  583. }
  584. class func selectAllAnnoationItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  585. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌥⌘A",
  586. text: KMLocalizedString("Select All Annotation"),
  587. identifier: PDFViewMenuIdentifier_Normal_SelectAllAnnotation,representedObject: listView)
  588. return propertie_Menuitem
  589. }
  590. class func showAnnoationItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  591. let hideNotes = listView?.hideNotes
  592. var text = KMLocalizedString("Show Note")
  593. if hideNotes == true {
  594. text = KMLocalizedString("Show Note")
  595. } else {
  596. text = KMLocalizedString("Hiden Note")
  597. }
  598. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  599. text: text,
  600. identifier: PDFViewMenuIdentifier_Normal_ShowAnnotation,representedObject: listView)
  601. return propertie_Menuitem
  602. }
  603. class func copyTextItemProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  604. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘C",
  605. text: KMLocalizedString("Copy Text"),
  606. identifier: PDFViewMenuIdentifier_Normal_CopyText,representedObject: theEvent)
  607. return propertie_Menuitem
  608. }
  609. class func cutProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  610. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘X",
  611. text: KMLocalizedString("Cut"),
  612. identifier: PDFViewMenuIdentifier_Normal_Cut,representedObject: theEvent)
  613. return propertie_Menuitem
  614. }
  615. class func deleteProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  616. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌫",
  617. text: KMLocalizedString("Delete"),
  618. identifier: PDFViewMenuIdentifier_Normal_Delete,representedObject: theEvent)
  619. return propertie_Menuitem
  620. }
  621. class func showPopProperty(theEvent:NSEvent?)->ComponentMenuitemProperty {
  622. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  623. text: KMLocalizedString("Show Levitating tools..."),
  624. identifier: PDFViewMenuIdentifier_Normal_ShowPopUI,representedObject: theEvent)
  625. return propertie_Menuitem
  626. }
  627. class func linkReadProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  628. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  629. text: KMLocalizedString("Preview"),
  630. identifier: PDFViewMenuIdentifier_Normal_LinkReade,representedObject: theEvent)
  631. return propertie_Menuitem
  632. }
  633. class func sortAnnotationMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  634. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(multipleSelect: false,
  635. itemSelected: false,
  636. isDisabled: false,
  637. keyEquivalent: nil,
  638. text: KMLocalizedString("Sort"),
  639. identifier: PDFViewMenuIdentifier_Normal_SortAnnotation)
  640. var subMenuItemArr: [ComponentMenuitemProperty] = []
  641. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Bring to Front"),identifier: PDFViewMenuIdentifier_Normal_SortFirstAnnotation,
  642. representedObject: listView)
  643. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Bring Forward"),identifier: PDFViewMenuIdentifier_Normal_SortTopAnnotation,
  644. representedObject: listView)
  645. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  646. text: KMLocalizedString("Send Backward"),identifier: PDFViewMenuIdentifier_Normal_SortBottomAnnotation,
  647. representedObject: listView)
  648. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Send to Back"),identifier: PDFViewMenuIdentifier_Normal_SortLastAnnotation,
  649. representedObject: listView)
  650. subMenuItemArr.append(subItem0Property)
  651. subMenuItemArr.append(subItem1Property)
  652. subMenuItemArr.append(subItem2Property)
  653. subMenuItemArr.append(subItem3Property)
  654. properties_Menuitem.subPropertys = subMenuItemArr
  655. return properties_Menuitem
  656. }
  657. class func editContentProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  658. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  659. text: KMLocalizedString("Edit"),
  660. identifier: PDFViewMenuIdentifier_Normal_Content,representedObject: theEvent)
  661. return propertie_Menuitem
  662. }
  663. class func redactApplyProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  664. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  665. text: KMLocalizedString("Apply Redactions"),
  666. identifier: PDFViewMenuIdentifier_Redact_Apply,representedObject: listView)
  667. return propertie_Menuitem
  668. }
  669. class func redactMultiPageProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  670. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  671. text: KMLocalizedString("Repeat Mark Across Pages"),
  672. identifier: PDFViewMenuIdentifier_Redact_Multipage,representedObject: listView)
  673. return propertie_Menuitem
  674. }
  675. class func redactDefaultProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  676. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  677. text: KMLocalizedString("Make Current Properties Default"),
  678. identifier: PDFViewMenuIdentifier_Redact_Default,representedObject: listView)
  679. return propertie_Menuitem
  680. }
  681. class func splitViewMenuItemProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  682. let properties_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Split View"),
  683. identifier: PDFViewMenuIdentifier_Split_ViewMode)
  684. var subMenuItemArr: [ComponentMenuitemProperty] = []
  685. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Single"),identifier: PDFViewMenuIdentifier_Split_ViewSingleMode,
  686. representedObject: listView)
  687. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Horizontal"),identifier: PDFViewMenuIdentifier_Split_ViewHorizontalMode,
  688. representedObject: listView)
  689. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  690. text: KMLocalizedString("Vertical"),identifier: PDFViewMenuIdentifier_Split_ViewVerticalMode,
  691. representedObject: listView)
  692. subMenuItemArr.append(subItem0Property)
  693. subMenuItemArr.append(subItem1Property)
  694. subMenuItemArr.append(subItem2Property)
  695. properties_Menuitem.subPropertys = subMenuItemArr
  696. return properties_Menuitem
  697. }
  698. class func splitSyncProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  699. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  700. text: KMLocalizedString("Scroll and zoom simultaneously"),
  701. identifier: PDFViewMenuIdentifier_Split_Sync,representedObject: listView)
  702. return propertie_Menuitem
  703. }
  704. class func showBarProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  705. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  706. text: KMLocalizedString("Show Status Bar"),
  707. identifier: PDFViewMenuIdentifier_Split_ShowBar,representedObject: listView)
  708. if(listView?.isShowSplitBar == true) {
  709. propertie_Menuitem.righticon = NSImage(named: "KMNImageNameMenuSelect")
  710. }
  711. return propertie_Menuitem
  712. }
  713. class func objectAlightProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  714. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  715. text: KMLocalizedString("Align"),
  716. identifier: PDFViewMenuIdentifier_Normal_Aligning,representedObject: listView)
  717. var subMenuItemArr: [ComponentMenuitemProperty] = []
  718. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Align Left"),identifier: PDFViewMenuIdentifier_Normal_LeftAlight,
  719. representedObject: listView)
  720. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("Align Vertically"),identifier: PDFViewMenuIdentifier_Normal_HorizontallyAlight,
  721. representedObject: listView)
  722. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  723. text: KMLocalizedString("Align Right"),identifier: PDFViewMenuIdentifier_Normal_RightAlight,
  724. representedObject: listView)
  725. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  726. text: KMLocalizedString("Align Top"),identifier: PDFViewMenuIdentifier_Normal_TopAlight,
  727. representedObject: listView)
  728. let subItem4Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  729. text: KMLocalizedString("Align Horizontally"),identifier: PDFViewMenuIdentifier_Normal_HorizontallyAlight,
  730. representedObject: listView)
  731. let subItem5Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  732. text: KMLocalizedString("Align Bottom"),identifier: PDFViewMenuIdentifier_Normal_BottomAlight,
  733. representedObject: listView)
  734. let subItem6Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  735. text: KMLocalizedString("Distribute Vertically"),identifier: PDFViewMenuIdentifier_Normal_DistributeVertically,
  736. representedObject: listView)
  737. let subItem7Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  738. text: KMLocalizedString("Distribute Horizontally"),identifier: PDFViewMenuIdentifier_Normal_DistributeHorizontally,
  739. representedObject: listView)
  740. subMenuItemArr.append(subItem0Property)
  741. subMenuItemArr.append(subItem1Property)
  742. subMenuItemArr.append(subItem2Property)
  743. subMenuItemArr.append(ComponentMenuitemProperty.divider())
  744. subMenuItemArr.append(subItem3Property)
  745. subMenuItemArr.append(subItem4Property)
  746. subMenuItemArr.append(subItem5Property)
  747. if listView?.activeAnnotations.count ?? 0 > 3 || listView?.km_EditingAreas().count ?? 0 > 3 {
  748. subMenuItemArr.append(ComponentMenuitemProperty.divider())
  749. subMenuItemArr.append(subItem6Property)
  750. subMenuItemArr.append(subItem7Property)
  751. }
  752. propertie_Menuitem.subPropertys = subMenuItemArr
  753. return propertie_Menuitem
  754. }
  755. class func exportProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  756. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  757. text: KMLocalizedString("Export"),
  758. identifier: PDFViewMenuIdentifier_Normal_Export,representedObject: listView)
  759. var subMenuItemArr: [ComponentMenuitemProperty] = []
  760. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("JPG"),identifier: PDFViewMenuIdentifier_Normal_ExportJPG,
  761. representedObject: listView)
  762. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(text: KMLocalizedString("PNG"),identifier: PDFViewMenuIdentifier_Normal_ExportPNG,
  763. representedObject: listView)
  764. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  765. text: KMLocalizedString("PDF"),identifier: PDFViewMenuIdentifier_Normal_ExportPNG,
  766. representedObject: listView)
  767. subMenuItemArr.append(subItem0Property)
  768. subMenuItemArr.append(subItem1Property)
  769. subMenuItemArr.append(subItem2Property)
  770. propertie_Menuitem.subPropertys = subMenuItemArr
  771. return propertie_Menuitem
  772. }
  773. class func editPastProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  774. let past_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘V",
  775. text: KMLocalizedString("Paste and Match Style"),
  776. identifier: PDFViewMenuIdentifier_Edit_Paste,representedObject: theEvent)
  777. return past_Menuitem
  778. }
  779. class func editPastNoStyleProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  780. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⇧⌘V",
  781. text: KMLocalizedString("Paste"),
  782. identifier: PDFViewMenuIdentifier_Edit_NoStylePaste,representedObject: listView)
  783. return propertie_Menuitem
  784. }
  785. class func editSelectAllProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  786. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘A",
  787. text: KMLocalizedString("Select All"),
  788. identifier: PDFViewMenuIdentifier_Edit_SelectAll,representedObject: listView)
  789. return propertie_Menuitem
  790. }
  791. class func addLinkProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  792. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⇧⌘L",
  793. text: KMLocalizedString("Link"),
  794. identifier: PDFViewMenuIdentifier_Edit_AddLink,representedObject: listView)
  795. return propertie_Menuitem
  796. }
  797. class func addTextProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  798. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  799. text: KMLocalizedString("Add Text"),
  800. identifier: PDFViewMenuIdentifier_Edit_AddText,representedObject: listView)
  801. return propertie_Menuitem
  802. }
  803. class func addImageProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  804. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  805. text: KMLocalizedString("Add Image"),
  806. identifier: PDFViewMenuIdentifier_Edit_AddImage,representedObject: listView)
  807. return propertie_Menuitem
  808. }
  809. class func editFontProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  810. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  811. text: KMLocalizedString("Font"),
  812. identifier: PDFViewMenuIdentifier_Edit_Font,
  813. representedObject: listView)
  814. var subMenuItemArr: [ComponentMenuitemProperty] = []
  815. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘B",text: KMLocalizedString("Bold"),identifier: PDFViewMenuIdentifier_Edit_FontBold,
  816. representedObject: listView)
  817. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘I",text: KMLocalizedString("Italic"),identifier: PDFViewMenuIdentifier_Edit_FontItalic,
  818. representedObject: listView)
  819. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  820. keyEquivalent: "⌘U",text: KMLocalizedString("Underline"),identifier: PDFViewMenuIdentifier_Edit_FontUnderline,
  821. representedObject: listView)
  822. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  823. keyEquivalent: nil,text: KMLocalizedString("Strikethrough"),identifier: PDFViewMenuIdentifier_Edit_FontStrikeout,
  824. representedObject: listView)
  825. let subItem4Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  826. keyEquivalent: "⌥⌘+",text: KMLocalizedString("Bigger"),identifier: PDFViewMenuIdentifier_Edit_FontZoomIn,
  827. representedObject: listView)
  828. let subItem5Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  829. keyEquivalent: "⌥⌘-",text: KMLocalizedString("Smaller"),identifier: PDFViewMenuIdentifier_Edit_FontZoomOut,
  830. representedObject: listView)
  831. let subItem6Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  832. keyEquivalent: "⇧⌘C",text: KMLocalizedString("Font Color"),identifier: PDFViewMenuIdentifier_Edit_FontColor,
  833. representedObject: listView)
  834. subMenuItemArr.append(subItem0Property)
  835. subMenuItemArr.append(subItem1Property)
  836. subMenuItemArr.append(subItem2Property)
  837. subMenuItemArr.append(subItem3Property)
  838. subMenuItemArr.append(ComponentMenuitemProperty.divider())
  839. subMenuItemArr.append(subItem4Property)
  840. subMenuItemArr.append(subItem5Property)
  841. subMenuItemArr.append(ComponentMenuitemProperty.divider())
  842. subMenuItemArr.append(subItem6Property)
  843. propertie_Menuitem.subPropertys = subMenuItemArr
  844. return propertie_Menuitem
  845. }
  846. class func editFontNameProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  847. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  848. text: KMLocalizedString("Default Style"),
  849. identifier: PDFViewMenuIdentifier_Edit_FontName,
  850. representedObject: listView)
  851. var subMenuItemArr: [ComponentMenuitemProperty] = []
  852. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,text: KMLocalizedString("H1 Headline"),identifier: PDFViewMenuIdentifier_Edit_FontH1Name,
  853. representedObject: listView)
  854. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,text: KMLocalizedString("H2 Title"),identifier: PDFViewMenuIdentifier_Edit_FontH2Name,
  855. representedObject: listView)
  856. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  857. keyEquivalent: nil,text: KMLocalizedString("H3 Subtitle"),identifier: PDFViewMenuIdentifier_Edit_FontH3Name,
  858. representedObject: listView)
  859. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  860. keyEquivalent: nil,text: KMLocalizedString("B1 Text"),identifier: PDFViewMenuIdentifier_Edit_FontB1Name,
  861. representedObject: listView)
  862. let subItem4Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  863. keyEquivalent: nil,text: KMLocalizedString("B2 Small Text"),identifier: PDFViewMenuIdentifier_Edit_FontB2Name,
  864. representedObject: listView)
  865. let subItem5Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  866. keyEquivalent: nil,text: KMLocalizedString("B3 Describtion"),identifier: PDFViewMenuIdentifier_Edit_FontB3Name, representedObject: listView)
  867. subMenuItemArr.append(subItem0Property)
  868. subMenuItemArr.append(subItem1Property)
  869. subMenuItemArr.append(subItem2Property)
  870. subMenuItemArr.append(subItem3Property)
  871. subMenuItemArr.append(subItem4Property)
  872. subMenuItemArr.append(subItem5Property)
  873. propertie_Menuitem.subPropertys = subMenuItemArr
  874. return propertie_Menuitem
  875. }
  876. class func editFontAlighProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  877. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  878. text: KMLocalizedString("Align"),
  879. identifier: PDFViewMenuIdentifier_Edit_FontAlight,representedObject: listView)
  880. var subMenuItemArr: [ComponentMenuitemProperty] = []
  881. let subItem0Property: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘{",text: KMLocalizedString("Align Left"),identifier: PDFViewMenuIdentifier_Edit_FontLeftAlight,
  882. representedObject: listView)
  883. let subItem1Property: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: "⌘|",text: KMLocalizedString("Center"),identifier: PDFViewMenuIdentifier_Edit_FontCenterAlight,
  884. representedObject: listView)
  885. let subItem2Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  886. keyEquivalent: "⌘}",text: KMLocalizedString("Align Right"),identifier: PDFViewMenuIdentifier_Edit_FontRightAlight,
  887. representedObject: listView)
  888. let subItem3Property: ComponentMenuitemProperty = ComponentMenuitemProperty(
  889. keyEquivalent: nil,text: KMLocalizedString("Align both ends"),identifier: PDFViewMenuIdentifier_Edit_FontJustAlight,
  890. representedObject: listView)
  891. subMenuItemArr.append(subItem0Property)
  892. subMenuItemArr.append(subItem1Property)
  893. subMenuItemArr.append(subItem2Property)
  894. subMenuItemArr.append(subItem3Property)
  895. propertie_Menuitem.subPropertys = subMenuItemArr
  896. return propertie_Menuitem
  897. }
  898. class func editRotateLeftProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  899. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  900. text: KMLocalizedString("Rotate Left"),
  901. identifier: PDFViewMenuIdentifier_Edit_RotateLeft,representedObject: listView)
  902. return propertie_Menuitem
  903. }
  904. class func editRotateRightProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  905. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  906. text: KMLocalizedString("Rotate Right"),
  907. identifier: PDFViewMenuIdentifier_Edit_RotateRight,representedObject: listView)
  908. return propertie_Menuitem
  909. }
  910. class func editHorizontalMirrorProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  911. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  912. text: KMLocalizedString("Flip horizontal"),
  913. identifier: PDFViewMenuIdentifier_Edit_HorizontalMirror,representedObject: listView)
  914. return propertie_Menuitem
  915. }
  916. class func editVerticalMirrorProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  917. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  918. text: KMLocalizedString("Flip vertical"),
  919. identifier: PDFViewMenuIdentifier_Edit_VerticalMirror,representedObject: listView)
  920. return propertie_Menuitem
  921. }
  922. class func editCropProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  923. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  924. text: KMLocalizedString("Crop"),
  925. identifier: PDFViewMenuIdentifier_Edit_Crop,representedObject: listView)
  926. return propertie_Menuitem
  927. }
  928. class func editReplaceProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  929. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  930. text: KMLocalizedString("Replace"),
  931. identifier: PDFViewMenuIdentifier_Edit_Replace,representedObject: listView)
  932. return propertie_Menuitem
  933. }
  934. class func redactPropertiesProperty(theEvent:NSEvent?,listView:CPDFListView?)->ComponentMenuitemProperty {
  935. let propertie_Menuitem: ComponentMenuitemProperty = ComponentMenuitemProperty(keyEquivalent: nil,
  936. text: KMLocalizedString("Properties..."),
  937. identifier: PDFViewMenuIdentifier_Normal_RedactProperties,representedObject: listView)
  938. return propertie_Menuitem
  939. }
  940. class func clickMenuUI(items:[String],theEvent:NSEvent?,listView:CPDFListView?)->KMNMenuStruct {
  941. var viewHeight: CGFloat = 8
  942. var menuItemArr: [ComponentMenuitemProperty] = []
  943. for item in items {
  944. if item == PDFViewMenuIdentifier_Normal_AITool {
  945. menuItemArr.append(KMPDFMenuConfig.aiMenuItemProperty(theEvent: theEvent))
  946. } else if item == PDFViewMenuIdentifier_Normal_Past {
  947. menuItemArr.append(KMPDFMenuConfig.pasteNumMenuItemProperty(theEvent: theEvent))
  948. } else if item == PDFViewMenuIdentifier_Normal_SelectAllText {
  949. menuItemArr.append(KMPDFMenuConfig.seletAllMenuItemProperty(theEvent: theEvent,listView: listView))
  950. } else if item == PDFViewMenuIdentifier_Normal_AddBook {
  951. menuItemArr.append(KMPDFMenuConfig.addBookMenuItemProperty(theEvent: theEvent,listView: listView))
  952. } else if item == PDFViewMenuIdentifier_Normal_ViewTools {
  953. menuItemArr.append(KMPDFMenuConfig.viewModeMenuItemProperty(theEvent: theEvent))
  954. } else if item == PDFViewMenuIdentifier_Normal_PageView {
  955. menuItemArr.append(KMPDFMenuConfig.pageViewMenuItemProperty(theEvent: theEvent,listView: listView))
  956. } else if item == PDFViewMenuIdentifier_Normal_ReadMode {
  957. menuItemArr.append(KMPDFMenuConfig.readerModeItemProperty(theEvent: theEvent))
  958. } else if item == PDFViewMenuIdentifier_Normal_Scale {
  959. menuItemArr.append(KMPDFMenuConfig.scaleViewMenuItemProperty(theEvent: theEvent,listView: listView))
  960. } else if item == PDFViewMenuIdentifier_Normal_PageRotate {
  961. menuItemArr.append(KMPDFMenuConfig.pageRotateMenuItemProperty(theEvent: theEvent,listView: listView))
  962. } else if item == PDFViewMenuIdentifier_Normal_PageNum {
  963. menuItemArr.append(KMPDFMenuConfig.pageNumMenuItemProperty(theEvent: theEvent,listView: listView))
  964. } else if item == PDFViewMenuIdentifier_Normal_AutoScroll {
  965. menuItemArr.append(KMPDFMenuConfig.scrollMenuItemProperty(theEvent: theEvent,listView: listView))
  966. } else if item == PDFViewMenuIdentifier_Normal_HightForm {
  967. menuItemArr.append(KMPDFMenuConfig.hightFormMenuItemProperty(theEvent: theEvent))
  968. } else if item == PDFViewMenuIdentifier_Normal_HightLink {
  969. menuItemArr.append(KMPDFMenuConfig.hightLinkMenuItemProperty(theEvent: theEvent))
  970. } else if item == PDFViewMenuIdentifier_Normal_RestForm {
  971. menuItemArr.append(KMPDFMenuConfig.resetFormItemProperty(theEvent: theEvent,listView: listView))
  972. } else if item == PDFViewMenuIdentifier_Normal_Search {
  973. menuItemArr.append(KMPDFMenuConfig.searchItemProperty(theEvent: theEvent))
  974. } else if item == PDFViewMenuIdentifier_Normal_Print {
  975. menuItemArr.append(KMPDFMenuConfig.printProperty(theEvent: theEvent,listView: listView))
  976. } else if item == PDFViewMenuIdentifier_Normal_Properties {
  977. menuItemArr.append(KMPDFMenuConfig.propertieItemProperty(theEvent: theEvent,listView: listView))
  978. } else if item == PDFViewMenuIdentifier_Space {
  979. menuItemArr.append(ComponentMenuitemProperty.divider())
  980. } else if item == PDFViewMenuIdentifier_Normal_Copy {
  981. menuItemArr.append(KMPDFMenuConfig.copyItemProperty(theEvent: theEvent))
  982. } else if item == PDFViewMenuIdentifier_Normal_Hight {
  983. menuItemArr.append(KMPDFMenuConfig.hightMarkItemProperty(theEvent: theEvent))
  984. } else if item == PDFViewMenuIdentifier_Normal_Underline {
  985. menuItemArr.append(KMPDFMenuConfig.underLineItemProperty(theEvent: theEvent))
  986. } else if item == PDFViewMenuIdentifier_Normal_Squiggly {
  987. menuItemArr.append(KMPDFMenuConfig.squigglyItemProperty(theEvent: theEvent))
  988. } else if item == PDFViewMenuIdentifier_Normal_StrikeOut {
  989. menuItemArr.append(KMPDFMenuConfig.strikethroughItemProperty(theEvent: theEvent))
  990. } else if item == PDFViewMenuIdentifier_Normal_Square {
  991. menuItemArr.append(KMPDFMenuConfig.squareItemProperty(theEvent: theEvent))
  992. } else if item == PDFViewMenuIdentifier_Normal_Circle {
  993. menuItemArr.append(KMPDFMenuConfig.circleItemProperty(theEvent: theEvent))
  994. } else if item == PDFViewMenuIdentifier_Normal_AddOutLine {
  995. menuItemArr.append(KMPDFMenuConfig.addOutlineItemProperty(theEvent: theEvent))
  996. } else if item == PDFViewMenuIdentifier_Normal_TTS {
  997. menuItemArr.append(KMPDFMenuConfig.ttsItemProperty(theEvent: theEvent))
  998. } else if item == PDFViewMenuIdentifier_Normal_SearchText {
  999. menuItemArr.append(KMPDFMenuConfig.searchTextItemProperty(theEvent: theEvent, listView: listView))
  1000. } else if item == PDFViewMenuIdentifier_Normal_SelectAllForm {
  1001. menuItemArr.append(KMPDFMenuConfig.selectAllFormItemProperty(theEvent: theEvent,listView: listView))
  1002. } else if item == PDFViewMenuIdentifier_Normal_ShowFormName {
  1003. menuItemArr.append(KMPDFMenuConfig.showFormNameItemProperty(theEvent: theEvent, listView: listView))
  1004. } else if item == PDFViewMenuIdentifier_Normal_SelectAllAnnotation {
  1005. menuItemArr.append(KMPDFMenuConfig.selectAllAnnoationItemProperty(theEvent: theEvent,listView: listView))
  1006. } else if item == PDFViewMenuIdentifier_Normal_ShowAnnotation {
  1007. menuItemArr.append(KMPDFMenuConfig.showAnnoationItemProperty(theEvent: theEvent, listView: listView))
  1008. } else if item == PDFViewMenuIdentifier_Normal_CopyText {
  1009. menuItemArr.append(KMPDFMenuConfig.copyTextItemProperty(theEvent: theEvent))
  1010. } else if item == PDFViewMenuIdentifier_Normal_Cut {
  1011. menuItemArr.append(KMPDFMenuConfig.cutProperty(theEvent: theEvent))
  1012. } else if item == PDFViewMenuIdentifier_Normal_Delete {
  1013. menuItemArr.append(KMPDFMenuConfig.deleteProperty(theEvent: theEvent))
  1014. } else if item == PDFViewMenuIdentifier_Normal_ShowPopUI {
  1015. menuItemArr.append(KMPDFMenuConfig.showPopProperty(theEvent: theEvent))
  1016. } else if item == PDFViewMenuIdentifier_Normal_LinkReade {
  1017. menuItemArr.append(KMPDFMenuConfig.linkReadProperty(theEvent: theEvent, listView: listView))
  1018. } else if item == PDFViewMenuIdentifier_Normal_SortAnnotation {
  1019. menuItemArr.append(KMPDFMenuConfig.sortAnnotationMenuItemProperty(theEvent: theEvent, listView: listView))
  1020. } else if item == PDFViewMenuIdentifier_Normal_Content {
  1021. menuItemArr.append(KMPDFMenuConfig.editContentProperty(theEvent: theEvent, listView: listView))
  1022. } else if item == PDFViewMenuIdentifier_Normal_ShowAnnotation {
  1023. menuItemArr.append(KMPDFMenuConfig.showAnnoationItemProperty(theEvent: theEvent, listView: listView))
  1024. } else if item == PDFViewMenuIdentifier_Redact_Apply {
  1025. menuItemArr.append(KMPDFMenuConfig.redactApplyProperty(theEvent: theEvent, listView: listView))
  1026. } else if item == PDFViewMenuIdentifier_Redact_Multipage {
  1027. menuItemArr.append(KMPDFMenuConfig.redactMultiPageProperty(theEvent: theEvent, listView: listView))
  1028. } else if item == PDFViewMenuIdentifier_Redact_Default {
  1029. menuItemArr.append(KMPDFMenuConfig.redactDefaultProperty(theEvent: theEvent, listView: listView))
  1030. } else if item == PDFViewMenuIdentifier_Split_ViewMode {
  1031. menuItemArr.append(KMPDFMenuConfig.splitViewMenuItemProperty(theEvent: theEvent, listView: listView))
  1032. } else if item == PDFViewMenuIdentifier_Split_Sync {
  1033. menuItemArr.append(KMPDFMenuConfig.splitSyncProperty(theEvent: theEvent, listView: listView))
  1034. } else if item == PDFViewMenuIdentifier_Split_ShowBar {
  1035. menuItemArr.append(KMPDFMenuConfig.showBarProperty(theEvent: theEvent, listView: listView))
  1036. } else if item == PDFViewMenuIdentifier_Normal_Aligning {
  1037. menuItemArr.append(KMPDFMenuConfig.objectAlightProperty(theEvent: theEvent, listView: listView))
  1038. } else if item == PDFViewMenuIdentifier_Normal_Export {
  1039. menuItemArr.append(KMPDFMenuConfig.exportProperty(theEvent: theEvent, listView: listView))
  1040. } else if item == PDFViewMenuIdentifier_Edit_Paste {
  1041. menuItemArr.append(KMPDFMenuConfig.editPastProperty(theEvent: theEvent, listView: listView))
  1042. } else if item == PDFViewMenuIdentifier_Edit_NoStylePaste {
  1043. menuItemArr.append(KMPDFMenuConfig.editPastNoStyleProperty(theEvent: theEvent, listView: listView))
  1044. } else if item == PDFViewMenuIdentifier_Edit_SelectAll {
  1045. menuItemArr.append(KMPDFMenuConfig.editSelectAllProperty(theEvent: theEvent, listView: listView))
  1046. } else if item == PDFViewMenuIdentifier_Edit_AddLink {
  1047. menuItemArr.append(KMPDFMenuConfig.addLinkProperty(theEvent: theEvent, listView: listView))
  1048. } else if item == PDFViewMenuIdentifier_Edit_AddText {
  1049. menuItemArr.append(KMPDFMenuConfig.addTextProperty(theEvent: theEvent, listView: listView))
  1050. } else if item == PDFViewMenuIdentifier_Edit_AddImage {
  1051. menuItemArr.append(KMPDFMenuConfig.addImageProperty(theEvent: theEvent, listView: listView))
  1052. } else if item == PDFViewMenuIdentifier_Edit_Font {
  1053. menuItemArr.append(KMPDFMenuConfig.editFontProperty(theEvent: theEvent, listView: listView))
  1054. } else if item == PDFViewMenuIdentifier_Edit_FontName {
  1055. menuItemArr.append(KMPDFMenuConfig.editFontNameProperty(theEvent: theEvent, listView: listView))
  1056. } else if item == PDFViewMenuIdentifier_Edit_FontAlight {
  1057. menuItemArr.append(KMPDFMenuConfig.editFontAlighProperty(theEvent: theEvent, listView: listView))
  1058. } else if item == PDFViewMenuIdentifier_Edit_RotateLeft {
  1059. menuItemArr.append(KMPDFMenuConfig.editRotateLeftProperty(theEvent: theEvent, listView: listView))
  1060. } else if item == PDFViewMenuIdentifier_Edit_RotateRight {
  1061. menuItemArr.append(KMPDFMenuConfig.editRotateRightProperty(theEvent: theEvent, listView: listView))
  1062. } else if item == PDFViewMenuIdentifier_Edit_HorizontalMirror {
  1063. menuItemArr.append(KMPDFMenuConfig.editHorizontalMirrorProperty(theEvent: theEvent, listView: listView))
  1064. } else if item == PDFViewMenuIdentifier_Edit_VerticalMirror {
  1065. menuItemArr.append(KMPDFMenuConfig.editVerticalMirrorProperty(theEvent: theEvent, listView: listView))
  1066. } else if item == PDFViewMenuIdentifier_Edit_Crop {
  1067. menuItemArr.append(KMPDFMenuConfig.editCropProperty(theEvent: theEvent, listView: listView))
  1068. } else if item == PDFViewMenuIdentifier_Edit_Replace {
  1069. menuItemArr.append(KMPDFMenuConfig.editReplaceProperty(theEvent: theEvent, listView: listView))
  1070. } else if item == PDFViewMenuIdentifier_Normal_RedactProperties {
  1071. menuItemArr.append(KMPDFMenuConfig.redactPropertiesProperty(theEvent: theEvent, listView: listView))
  1072. }
  1073. if(item == PDFViewMenuIdentifier_Space) {
  1074. viewHeight += 8
  1075. } else {
  1076. viewHeight += 36
  1077. }
  1078. }
  1079. let menuStruct = KMNMenuStruct(menuitems: menuItemArr, viewHeight: viewHeight)
  1080. return menuStruct
  1081. }
  1082. }