import Foundation
import AppKit
class ExportAccessoryView : NSView {
@IBOutlet weak var typeBox: NSPopUpButton!
var savePanel: NSSavePanel? = nil
func setSavePanel(_ savePanel: NSSavePanel?) {
self.savePanel = savePanel
}
@IBAction func changeFileFormat(_ sender: Any) {
switch(typeBox.indexOfSelectedItem) {
case 0:
savePanel?.allowedFileTypes = ["tiff"]
break
case 1:
savePanel?.allowedFileTypes = ["bmp"]
case 2:
savePanel?.allowedFileTypes = ["jpeg"]
case 3:
savePanel?.allowedFileTypes = ["png"]
case 4:
savePanel?.allowedFileTypes = ["psd"]
default:
extension NSView {
class func fromNib<T: NSView>() -> T? {
var topLevelObjects : NSArray?
guard Bundle.main.loadNibNamed("\(self)", owner: nil, topLevelObjects: &topLevelObjects) else {
return nil
return topLevelObjects!.first(where: { $0 is T }) as? T