1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
silica-viewer/SilicaViewer/ExportAccessoryView.swift
Joshua Goins ee81008930 Add experimental PSD exporting
Not everything is working yet, this requires
more PSDWriter modifications.
2022-02-28 12:04:08 -04:00

45 lines
1.1 KiB
Swift

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"]
break
case 2:
savePanel?.allowedFileTypes = ["jpeg"]
break
case 3:
savePanel?.allowedFileTypes = ["png"]
break
case 4:
savePanel?.allowedFileTypes = ["psd"]
break
default:
break
}
}
}
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
}
}