// // KMEditBackgroundController.swift // PDF Master // // Created by tangchao on 2022/12/24. // import Cocoa class KMEditBackgroundController: KMWatermarkAdjectivePropertyBaseController { var firstController = KMBackgroundPropertyInfoController(nibName: "KMBackgroundPropertyInfoController", bundle: nil) var secondController = KMBackgroundFilePropertyInfoController(nibName: "KMBackgroundFilePropertyInfoController", bundle: nil) var isEdited: Bool = false private var myEditModel: KMBackgroundModel! var editModel: KMBackgroundModel { get { return myEditModel } set { myEditModel = newValue self.firstController.model = newValue self.secondController.model = newValue } } override func viewWillAppear() { super.viewWillAppear() if (self.editModel.type == .color) { self.selectTabIndex(index: 0) } else if (self.editModel.type == .file) { self.selectTabIndex(index: 1) self.secondController.outsideBox.isHidden = false self.secondController.positionBox.isHidden = false self.secondController.pageRangeBox.isHidden = false self.secondController.fileInfoView.tipLabel.stringValue = self.editModel.imagePath.lastPathComponent } } override func viewDidLoad() { super.viewDidLoad() self.backButtton.title = NSLocalizedString("", comment: "") self.showBack(show: true) self.titleLabel.stringValue = NSLocalizedString("Edit Background", comment: "") self.addButton.attributedTitle = NSAttributedString(string: NSLocalizedString("恢复", comment: ""), attributes: [NSAttributedString.Key.foregroundColor : NSColor(red: 24.0/255.0, green: 160.0/255.0, blue: 251.0/255.0, alpha: 1.0),NSAttributedString.Key.font : NSFont.systemFont(ofSize: 12), NSAttributedString.Key.underlineStyle : true]) self.segementControl.items = [NSLocalizedString("Color", comment: ""),NSLocalizedString("File", comment: "")] self.segementControl.itemClick = { [weak self] (index: Int) in self!.tabView.selectTabViewItem(at: index) } let item = NSTabViewItem(identifier: "tabID") item.label = "tab1"; item.viewController = self.firstController let item2 = NSTabViewItem(identifier: "tabID2") item2.label = "tab2"; item2.viewController = self.secondController self.tabView.addTabViewItem(item) self.tabView.addTabViewItem(item2) self.firstController.delegate = self self.secondController.delegate = self childViewController.append(self.firstController) childViewController.append(self.secondController) self.segementControl.isHidden = true self.segementControlHeightConst.constant = 0 } override func resume() { if (self.flagModel == nil) { return } if (childViewController.count <= 0) { return } if (self.segementControl.selectItemIndex == 0) { firstController.model = self.flagModel?.copy() as! KMBackgroundModel } else if (self.segementControl.selectItemIndex == 1) { } } } extension KMEditBackgroundController: KMBackgroundPropertyInfoDelegate { func propertyInfoDidChange(model: KMBackgroundModel) { self.myEditModel = model self.isEdited = true } }