|
@@ -19,6 +19,8 @@ class KMDataManager: NSObject {
|
|
|
static let `default` = KMDataManager()
|
|
|
|
|
|
var isTabbingWin = false //多页签提示页是否展示中
|
|
|
+
|
|
|
+ var toolbarConfigDataUpdated = false
|
|
|
}
|
|
|
|
|
|
// MARK: - Paths
|
|
@@ -38,45 +40,62 @@ extension KMDataManager {
|
|
|
// MARK: - ToolBar
|
|
|
|
|
|
extension KMDataManager {
|
|
|
- class func toolbar_saveData(_ model: KMToolbarConfigModel) -> Bool {
|
|
|
- let dir = self.fetchAppSupportOfBundleIdentifierDirectory().appendingPathComponent("PreferenceData")
|
|
|
+ private static let toolbar_dirname_key_ = "PreferenceData"
|
|
|
+ private static let toolbar_filename_key_ = "ToolbarConfigData.plist"
|
|
|
+
|
|
|
+ private static let toolbar_default_key_ = "default"
|
|
|
+ private static let toolbar_left_key_ = "left"
|
|
|
+ private static let toolbar_center_key_ = "center"
|
|
|
+ private static let toolbar_right_key_ = "right"
|
|
|
+
|
|
|
+ // 保存数据 [清空数据时传nil]
|
|
|
+ class func toolbar_saveData(_ model: KMToolbarConfigModel?) -> Bool {
|
|
|
+ let dir = self.fetchAppSupportOfBundleIdentifierDirectory().appendingPathComponent(self.toolbar_dirname_key_)
|
|
|
if FileManager.default.fileExists(atPath: dir.path) == false {
|
|
|
try?FileManager.default.createDirectory(at: dir, withIntermediateDirectories: false)
|
|
|
}
|
|
|
- let fileUrl = dir.appendingPathComponent("ToolbarConfigData.plist")
|
|
|
+ let fileUrl = dir.appendingPathComponent(self.toolbar_filename_key_)
|
|
|
if FileManager.default.fileExists(atPath: fileUrl.path) == false {
|
|
|
try?FileManager.default.createFile(atPath: fileUrl.path, contents: nil)
|
|
|
}
|
|
|
|
|
|
- let defaultIdentifiers = [KMLeftControlToolbarItemIdentifier, KMDocumentZoomViewToolbarItemIdentifier,
|
|
|
- KMDocumentPreviousPageToolbarItemIdentifier,KMDocumentHomeToolbarItemIdentifier,
|
|
|
- KMToolbarFlexibleSpaceItemIdentifier /* 插入可变宽度 */,
|
|
|
- KMDocumentAnnotationToolbarItemIdentifier, KMDocumentPageToolbarItemIdentifier, KMDocumentConversonToolbarItemIdentifier,KMDocumentRedactToolbarItemIdentifier,KMDocumentAIToolsToolbarItemIdentifier,KMDocumentViewDisplayToolbarItemIdentifier,KMDocumentScanOCRToolbarItemIdentifier, KMDocumentFormToolbarItemIdentifier, KMDocumentEditToolbarItemIdentifier, KMDocumentDigitalSignToolbarItemIdentifier,
|
|
|
- KMDocumentFillSginToolbarItemIdentifier, KMDocumentToolToolbarItemIdentifier,
|
|
|
- KMToolbarFlexibleSpaceItemIdentifier /* 插入可变宽度 */,
|
|
|
- KMDocumentPrintToolbarItemIdentifier,KMDocumentShareToolbarItemIdentifier,
|
|
|
- KMDocumentSearchToolbarItemIdentifier, KMRightControlToolbarItemIdentifier,
|
|
|
- KMDocumentPreviousBackToolbarItemIdentifier, KMDocumentFirstLastToolbarItemIdentifier,
|
|
|
- KMDocumentPageIndicatorToolbarItemIdentifier, KMDocumentPresentationToolbarItemIdentifier]
|
|
|
-
|
|
|
-
|
|
|
- var newDict = NSMutableDictionary(dictionary: ["default" : defaultIdentifiers])
|
|
|
-
|
|
|
- let left = model.leftCellIdentifiers ?? []
|
|
|
- newDict.setObject(left, forKey: "left" as NSCopying)
|
|
|
- let center = model.centerCellIdentifiers ?? []
|
|
|
- newDict.setObject(center, forKey: "center" as NSCopying)
|
|
|
- let right = model.rightCellIdentifiers ?? []
|
|
|
- newDict.setObject(right, forKey: "right" as NSCopying)
|
|
|
- if newDict.write(to: fileUrl, atomically: true) {
|
|
|
- return true
|
|
|
+ if let data = model {
|
|
|
+ let defaultIdentifiers = [KMLeftControlToolbarItemIdentifier, KMDocumentZoomViewToolbarItemIdentifier,
|
|
|
+ KMDocumentPreviousPageToolbarItemIdentifier,KMDocumentHomeToolbarItemIdentifier,
|
|
|
+ KMToolbarFlexibleSpaceItemIdentifier /* 插入可变宽度 */,
|
|
|
+ KMDocumentAnnotationToolbarItemIdentifier, KMDocumentPageToolbarItemIdentifier, KMDocumentConversonToolbarItemIdentifier,KMDocumentRedactToolbarItemIdentifier,KMDocumentAIToolsToolbarItemIdentifier,KMDocumentViewDisplayToolbarItemIdentifier,KMDocumentScanOCRToolbarItemIdentifier, KMDocumentFormToolbarItemIdentifier, KMDocumentEditToolbarItemIdentifier, KMDocumentDigitalSignToolbarItemIdentifier,
|
|
|
+ KMDocumentFillSginToolbarItemIdentifier, KMDocumentToolToolbarItemIdentifier,
|
|
|
+ KMToolbarFlexibleSpaceItemIdentifier /* 插入可变宽度 */,
|
|
|
+ KMDocumentPrintToolbarItemIdentifier,KMDocumentShareToolbarItemIdentifier,
|
|
|
+ KMDocumentSearchToolbarItemIdentifier, KMRightControlToolbarItemIdentifier,
|
|
|
+ KMDocumentPreviousBackToolbarItemIdentifier, KMDocumentFirstLastToolbarItemIdentifier,
|
|
|
+ KMDocumentPageIndicatorToolbarItemIdentifier, KMDocumentPresentationToolbarItemIdentifier]
|
|
|
+
|
|
|
+
|
|
|
+ var newDict = NSMutableDictionary(dictionary: [self.toolbar_default_key_ : defaultIdentifiers])
|
|
|
+
|
|
|
+ let left = model?.leftCellIdentifiers ?? []
|
|
|
+ newDict.setObject(left, forKey: self.toolbar_left_key_ as NSCopying)
|
|
|
+ let center = model?.centerCellIdentifiers ?? []
|
|
|
+ newDict.setObject(center, forKey: self.toolbar_center_key_ as NSCopying)
|
|
|
+ let right = model?.rightCellIdentifiers ?? []
|
|
|
+ newDict.setObject(right, forKey: self.toolbar_right_key_ as NSCopying)
|
|
|
+ if newDict.write(to: fileUrl, atomically: true) {
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ } else { // 清空数据
|
|
|
+ let newDict = NSMutableDictionary()
|
|
|
+ if newDict.write(to: fileUrl, atomically: true) {
|
|
|
+ return true
|
|
|
+ }
|
|
|
}
|
|
|
return false
|
|
|
}
|
|
|
|
|
|
+ // 获取数据
|
|
|
class func toolbar_getData() -> KMToolbarConfigModel? {
|
|
|
- let dir = self.fetchAppSupportOfBundleIdentifierDirectory().appendingPathComponent("PreferenceData")
|
|
|
- let fileUrl = dir.appendingPathComponent("ToolbarConfigData.plist")
|
|
|
+ let dir = self.fetchAppSupportOfBundleIdentifierDirectory().appendingPathComponent(self.toolbar_dirname_key_)
|
|
|
+ let fileUrl = dir.appendingPathComponent(self.toolbar_filename_key_)
|
|
|
guard let dict = NSDictionary(contentsOfFile: fileUrl.path) else {
|
|
|
return nil
|
|
|
}
|
|
@@ -85,9 +104,9 @@ extension KMDataManager {
|
|
|
}
|
|
|
|
|
|
let model = KMToolbarConfigModel()
|
|
|
- model.leftCellIdentifiers = dict["left"] as? [String]
|
|
|
- model.centerCellIdentifiers = dict["center"] as? [String]
|
|
|
- model.rightCellIdentifiers = dict["right"] as? [String]
|
|
|
+ model.leftCellIdentifiers = dict[self.toolbar_left_key_] as? [String]
|
|
|
+ model.centerCellIdentifiers = dict[self.toolbar_center_key_] as? [String]
|
|
|
+ model.rightCellIdentifiers = dict[self.toolbar_right_key_] as? [String]
|
|
|
return model
|
|
|
}
|
|
|
}
|