@@ -10,6 +10,7 @@ import AppKit
10
10
11
11
class PlainSettingsEditorViewController : NSViewController {
12
12
@IBOutlet weak var patternTextField : NSTextField !
13
+ @IBOutlet weak var patternMimeTextField : NSTextField !
13
14
@IBOutlet weak var regExpButton : NSButton !
14
15
@IBOutlet weak var caseSensitiveButton : NSButton !
15
16
@IBOutlet weak var syntaxPopupButton : NSPopUpButton !
@@ -63,7 +64,8 @@ class PlainSettingsEditorViewController: NSViewController {
63
64
}
64
65
65
66
func initSettings( ) {
66
- patternTextField? . stringValue = plainSettings? . pattern ?? " "
67
+ patternTextField? . stringValue = plainSettings? . patternFile ?? " "
68
+ patternMimeTextField? . stringValue = plainSettings? . patternMime ?? " "
67
69
regExpButton? . state = plainSettings? . isRegExp ?? false ? . on : . off
68
70
caseSensitiveButton? . state = plainSettings? . isCaseSensitive ?? false ? . on : . off
69
71
availableSyntax = HighlightWrapper . shared. languages
@@ -96,7 +98,7 @@ class PlainSettingsEditorViewController: NSViewController {
96
98
tableView? . selectRowIndexes ( IndexSet ( integer: index) , byExtendingSelection: false )
97
99
tableView? . scrollRowToVisible ( index)
98
100
99
- doneButton? . isEnabled = !( plainSettings? . pattern ?? " " ) . isEmpty
101
+ doneButton? . isEnabled = !( plainSettings? . patternFile ?? " " ) . isEmpty || ! ( plainSettings ? . patternMime ?? " " ) . isEmpty
100
102
}
101
103
102
104
@IBAction func handleCancel( _ sender: Any ) {
@@ -124,7 +126,7 @@ class PlainSettingsEditorViewController: NSViewController {
124
126
uti = allFileTypes [ tableView. selectedRow - 2 ] . UTI
125
127
}
126
128
127
- handler ? ( PlainSettings ( pattern : self . patternTextField. stringValue, isRegExp: regExpButton. state == . on, isCaseInsensitive: caseSensitiveButton. state == . off, UTI: uti, syntax: stx) )
129
+ handler ? ( PlainSettings ( patternFile : self . patternTextField. stringValue , patternMime : self . patternMimeTextField . stringValue, isRegExp: regExpButton. state == . on, isCaseInsensitive: caseSensitiveButton. state == . off, UTI: uti, syntax: stx) )
128
130
129
131
self . dismiss ( self )
130
132
}
@@ -184,10 +186,10 @@ extension PlainSettingsEditorViewController: NSTableViewDelegate {
184
186
185
187
extension PlainSettingsEditorViewController : NSTextFieldDelegate {
186
188
func controlTextDidChange( _ obj: Notification ) {
187
- guard let textFiled = obj. object as? NSTextField , textFiled == patternTextField else {
189
+ guard let textFiled = obj. object as? NSTextField , textFiled == patternTextField || textFiled == patternMimeTextField else {
188
190
return
189
191
}
190
- doneButton. isEnabled = !textFiled . stringValue. isEmpty
192
+ doneButton. isEnabled = !patternTextField . stringValue . isEmpty || !patternMimeTextField . stringValue. isEmpty
191
193
}
192
194
}
193
195
0 commit comments