KMPDFMenuConfig.swift 95 KB

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