KMBookmark.swift 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. //
  2. // KMBookmark.swift
  3. // PDF Reader Pro
  4. //
  5. // Created by lizhe on 2024/2/5.
  6. //
  7. import Cocoa
  8. enum KMBookmarkType: Int {
  9. case bookmark = 0
  10. case folder
  11. case session
  12. case separator
  13. }
  14. class KMBookmark: NSObject {
  15. var properties: NSDictionary?
  16. var bookmarkType: KMBookmarkType = .bookmark
  17. var label: String = ""
  18. var icon: NSImage = NSImage()
  19. var alternateIcon: NSImage = NSImage()
  20. var fileURL: URL?
  21. var pageIndex: UInt = 0
  22. var pageNumber: NSNumber = 0
  23. var parent: KMBookmark = KMBookmark()
  24. var children: [KMBookmark] = []
  25. func initSessionWithSetups() {
  26. var childs: [KMBookmark] = []
  27. // for setup in setups {
  28. // let child = KMBookmark.init
  29. // }
  30. // for (NSDictionary *setup in aSetupDicts) {
  31. // if ((child = [[KMBookmark alloc] initWithSetup:setup label:""])) {
  32. // [aChildren addObject:child];
  33. // }
  34. // }
  35. }
  36. static func bookmarkSession(setups: NSArray, label: String) -> KMBookmark {
  37. var bookmark = KMBookmark()
  38. return bookmark
  39. }
  40. static func bookmark(url: URL, pageIndex: UInt, label: String) -> KMBookmark {
  41. var bookmark = KMBookmark()
  42. bookmark.fileURL = url
  43. bookmark.pageIndex = pageIndex
  44. bookmark.label = label
  45. return bookmark
  46. }
  47. }