NSEditor
NSEditor
неофициальный протокол реализован контроллерами и элементами пользовательского интерфейса. Это обеспечивает средние значения для запроса, чтобы фиксация получателя или отбросила любые незаконченные редактирования.
Эти методы обычно вызываются на элементы пользовательского интерфейса контроллером. Они могут также быть отправлены в контроллер в ответ на попытку пользователя сохранить документ или выйти из приложения.
NSController
обеспечивает реализацию этого протокола, также, как и элементы пользовательского интерфейса Набора Приложения та привязка поддержки.
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.3 и позже.
-
Заставляет получатель отбрасывать любые изменения, восстанавливая предыдущие значения.
Объявление
Swift
func discardEditing()
Objective C
- (void)discardEditing
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.3 и позже.
См. также
-
Возвраты, смог ли получатель фиксировать какие-либо незаконченные редактирования.
Объявление
Swift
func commitEditing() -> Bool
Objective C
- (BOOL)commitEditing
Возвращаемое значение
YES
true
если изменения были успешно применены к модели,NO
false
иначе.Обсуждение
Если получателю не удается применить изменения в объекте модели, возможно вследствие ошибки проверки, фиксация отклонена.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.3 и позже.
См. также
-
Попытайтесь фиксировать ожидать редактирования, возвратив ошибку в случае отказа.
Объявление
Swift
func commitEditingAndReturnError(_
error
: NSErrorPointer) -> BoolObjective C
- (BOOL)commitEditingAndReturnError:(NSError **)
error
Параметры
error
Если ошибка происходит во время работы фиксации, по возвратам содержит
NSError
объект, описывающий проблему.Возвращаемое значение
YES
true
если фиксация успешна, иначеNO
false
.Обсуждение
Во время автоматического сохранения редактирование фиксации может перестать работать вследствие незаконченного редактирования. Вместо того, чтобы прерывать пользователя неожиданным предупреждением, этот метод предоставляет вызывающей стороне опцию или представить ошибку или перестать работать тихо, оставляя незаконченное редактирование на месте и редактирование пользователя непрерывными. Если существует возврат отказа, в Вашей реализации этого метода необходимо попытаться фиксировать редактировать, но
NO
false
и вerror
ошибочный объект, который будет представлен или проигнорирован как надлежащий.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.7 и позже.
-
commitEditingWithDelegate (_: didCommitSelector:contextInfo:) - commitEditingWithDelegate:didCommitSelector:contextInfo:
Попытайтесь фиксировать любые в настоящее время редактируемые результаты получателя.
Объявление
Swift
func commitEditingWithDelegate(_
delegate
: AnyObject?, didCommitSelectordidCommitSelector
: Selector, contextInfocontextInfo
: UnsafeMutablePointer<Void>)Objective C
- (void)commitEditingWithDelegate:(id)
delegate
didCommitSelector:(SEL)didCommitSelector
contextInfo:(void *)contextInfo
Обсуждение
Получатель, должно быть, был зарегистрирован как редактор объектного использования
objectDidBeginEditing:
, и еще не было не зарегистрировано последующим вызовомobjectDidEndEditing:
. Когда фиксация или успешно выполнится или перестанет работать, отправьте следующее сообщение в указанный объект.didCommitSelector
метод должен иметь следующую сигнатуру метода:- (void)editor:(id)editor didCommit:(BOOL)didCommit contextInfo:(void *)contextInfo
Если ошибка происходит при попытке фиксировать, например если значение ключа, кодирующее сбои проверки, реализация этого метода должна обычно отправлять NSView, в котором редактирование делается a
presentError:modalForWindow:delegate:didRecoverSelector:contextInfo:
сообщение, указывая представление, содержащее окно.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.4 и позже.