123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- //
- // SettingViewController.swift
- // KdanAuto
- //
- // Created by 朱东勇 on 2022/11/21.
- //
- import Foundation
- import AppKit
- enum PathType {
- case Origin;
- case Result;
- case Check;
- }
- public protocol SettingViewControllerDelegate : NSObjectProtocol {
- @MainActor func settingViewDidFinished()
- }
- class SettingViewController : NSViewController, NSTextFieldDelegate, NSWindowDelegate {
- static var vc : SettingViewController!
- @IBOutlet var window : NSWindow!
-
- public var delegate : SettingViewControllerDelegate!
-
- @IBOutlet var originPathTF : NSTextField!
-
- @IBOutlet var originPathBtn : NSButton!
-
- class func shared() -> SettingViewController {
- if vc == nil {
- vc = SettingViewController()
-
- Bundle.main.loadNibNamed("SettingViewController", owner: vc, topLevelObjects: nil)
- }
-
- return vc
- }
-
- override func viewDidLoad() {
-
- }
-
- override func viewWillAppear() {
- self.originPathTF.stringValue = DataModel.shared.directoryPath() ;
- }
-
- // IBAction
- @IBAction func pathSelected(_ sender:NSButton) {
- let openPanel = NSOpenPanel()
-
- openPanel.canChooseFiles = false
- openPanel.canChooseDirectories = true
-
- if openPanel.runModal() == NSApplication.ModalResponse.OK {
- let path = openPanel.directoryURL?.relativePath
-
- DataModel.shared.setDirectoryPath(path!);
- self.originPathTF.stringValue = path!;
- }
-
- }
-
- // Show
- public func show() {
- window.setIsVisible(true);
- }
-
- //Window Delegate
- func windowShouldClose(_ sender: NSWindow) -> Bool {
- if delegate != nil {
- delegate.settingViewDidFinished()
- }
-
- sender.setIsVisible(false);
-
- return false;
- }
-
- }
|