NSSplitViewDelegate
NSSplitViewDelegate протокол определяет дополнительные методы, реализованные делегатами NSSplitView объекты.
Наследование
Не применимый
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.6 и позже.
-
Позволяет делегату указывать пользовательское поведение калибровки для подпредставлений NSSplitView
sender.Объявление
Swift
optional func splitView(_splitView: NSSplitView, resizeSubviewsWithOldSizeoldSize: NSSize)Objective C
- (void)splitView:(NSSplitView *)splitViewresizeSubviewsWithOldSize:(NSSize)oldSizeПараметры
splitViewПредставление разделения, отправившее сообщение.
oldSizeРазмер представления разделения перед пользователем изменил размеры его.
Обсуждение
Если делегат реализует этот метод,
splitView:resizeSubviewsWithOldSize:вызывается после того, как представление разделения изменено.Подпредставления должны быть изменены таким образом, что сумма размеров подпредставлений плюс сумма толщины делителей равняется размеру нового кадра NSSplitView. Можно передать толщину делителя
dividerThicknessметод.Обратите внимание на то, что при реализации этого метода делегата изменить размеры подпредставлений самостоятельно NSSplitView не выполняет проверки ошибок на Вас. Однако можно вызвать
adjustSubviewsвыполнять поведение калибровки значения по умолчанию.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
См. также
– adjustSubviews(NSSplitView)– setFrame:(NSView) -
Вызванный уведомлением по умолчанию центрируются, чтобы уведомить делегата, что splitview изменит размеры своих подпредставлений.
Объявление
Swift
optional func splitViewWillResizeSubviews(_aNotification: NSNotification)Objective C
- (void)splitViewWillResizeSubviews:(NSNotification *)aNotificationПараметры
aNotificationУведомление называют
NSSplitViewWillResizeSubviewsNotification.Обсуждение
Если делегат реализует этот метод, делегат автоматически регистрируется для получения этого уведомления.
Этот метод вызывается, прежде чем представление разделения изменяет размеры двух из своих подпредставлений в ответ на то, чтобы менять местоположение делителя.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Вызванный уведомлением по умолчанию центрируются, чтобы уведомить делегата, что splitview действительно изменял размеры своих подпредставлений.
Объявление
Swift
optional func splitViewDidResizeSubviews(_aNotification: NSNotification)Objective C
- (void)splitViewDidResizeSubviews:(NSNotification *)aNotificationПараметры
aNotificationУведомление называют
NSSplitViewDidResizeSubviewsNotification.Обсуждение
Если делегат реализует этот метод, делегат автоматически регистрируется для получения этого уведомления.
Этот метод вызывается после того, как представление разделения изменяет размеры двух из своих подпредставлений в ответ на то, чтобы менять местоположение делителя.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Позволяет делегату определять, может ли пользователь упасть в обморок и не упасть в обморок
subview.Объявление
Swift
optional func splitView(_splitView: NSSplitView, canCollapseSubviewsubview: NSView) -> BoolObjective C
- (BOOL)splitView:(NSSplitView *)splitViewcanCollapseSubview:(NSView *)subviewПараметры
splitViewПредставление разделения, отправившее сообщение.
subviewПодпредставление для разрушений.
Возвращаемое значение
YEStrueеслиsubviewкогда пользователь перетаскивает делитель вне промежуточной метки между ее минимальным размером и ее краем, иначе, должен разрушитьсяNOfalse.Обсуждение
subviewнекрах, когда пользователь перетаскивает делитель назад вне промежуточной метки между ее минимальным размером и ее краем.Для указания минимального размера определите методы
splitView:constrainMaxCoordinate:ofSubviewAt:иsplitView:constrainMinCoordinate:ofSubviewAt:. Подпредставление может разрушиться, только если Вы также определяетеsplitView:constrainMinCoordinate:ofSubviewAt:.Разрушенное подпредставление скрыто, но сохраняется объектом представления разделения с тем же размером, который это имело, прежде чем это было разрушено.
Если делегат не реализует этот метод, подпредставления не могут быть разрушены.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
splitView (_: shouldCollapseSubview:forDoubleClickOnDividerAtIndex:) - splitView:shouldCollapseSubview:forDoubleClickOnDividerAtIndex:Вызванный, чтобы позволить делегату определять, должно ли подпредставление разрушиться в ответ на двойной щелчок.
Объявление
Swift
optional func splitView(_splitView: NSSplitView, shouldCollapseSubviewsubview: NSView, forDoubleClickOnDividerAtIndexdividerIndex: Int) -> BoolObjective C
- (BOOL)splitView:(NSSplitView *)splitViewshouldCollapseSubview:(NSView *)subviewforDoubleClickOnDividerAtIndex:(NSInteger)dividerIndexПараметры
splitViewПредставление разделения, отправившее сообщение.
subviewПодпредставление для разрушений.
dividerIndexИндекс делителя.
Возвращаемое значение
YEStrueесли подпредставление должно разрушиться,NOfalseиначе.Обсуждение
Если реализовано, делегат получит это сообщение один раз для подпредставления перед делителем, когда пользователь дважды щелкнет по тому делителю, и снова для подпредставления после делителя, но только если возвратился делегат
YEStrueкогда отправленоsplitView:canCollapseSubview:для рассматриваемого подпредставления. То, когда делегат указывает, что оба подпредставления должны быть, разрушилось, поведение NSSplitView не определено.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Позволяет делегату указывать, должно ли быть изменено подпредставление.
Объявление
Swift
optional func splitView(_splitView: NSSplitView, shouldAdjustSizeOfSubviewsubview: NSView) -> BoolObjective C
- (BOOL)splitView:(NSSplitView *)splitViewshouldAdjustSizeOfSubview:(NSView *)subviewПараметры
splitViewПредставление разделения, отправившее сообщение.
subviewПодпредставление для изменения размеров.
Возвращаемое значение
YEStrueесли adjustSubviews может изменить размер подпредставления, иначеNOfalse. Путем возвратаNOfalse, Вы блокируете размер представления разделенияsubviewв то время как изменено представление разделения.Обсуждение
Независимо от значения, возвращенного этим методом,
adjustSubviewsможет изменить источник подпредставления. Иначе подпредставления неизменяемого размера могут также быть изменены для предотвращения недопустимого расположения подпредставления.Если представление разделения не имеет никакого делегата, или если его делегат не реагирует на это сообщение, представление разделения ведет себя, как будто возвращается этот метод
YEStrue.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.6 и позже.
-
splitView (_: effectiveRect:forDrawnRect:ofDividerAtIndex:) - splitView:effectiveRect:forDrawnRect:ofDividerAtIndex:Позволяет делегату изменять прямоугольник, в котором щелчки мышью инициируют перетаскивание делителя.
Объявление
Swift
optional func splitView(_splitView: NSSplitView, effectiveRectproposedEffectiveRect: NSRect, forDrawnRectdrawnRect: NSRect, ofDividerAtIndexdividerIndex: Int) -> NSRectObjective C
- (NSRect)splitView:(NSSplitView *)splitVieweffectiveRect:(NSRect)proposedEffectiveRectforDrawnRect:(NSRect)drawnRectofDividerAtIndex:(NSInteger)dividerIndexПараметры
splitViewПредставление разделения, отправившее сообщение.
proposedEffectiveRectПредложенный прямоугольник, в котором щелчки мышью должны инициировать перетаскивание делителя. Прямоугольник выражен в системе координат, определенной
splitView.drawnRectКадр делителя, выраженного в системе координат, определенной
splitView.dividerIndexИндекс делителя.
Возвращаемое значение
Прямоугольник, в котором щелчки мышью должны инициировать перетаскивание делителя. Прямоугольник должен быть выражен в системе координат, определенной
splitView.Обсуждение
Представление разделения с толстыми делителями предлагает нарисованный кадр как эффективный кадр. Представление разделения с тонкими делителями предлагает эффективный кадр, это немного больше, чем нарисованный кадр, чтобы упростить для пользователя фактически захватывать делитель.
Если представление разделения не имеет никакого делегата, или если его делегат не реагирует на это сообщение, представление разделения ведет себя, как будто это имеет возвращающегося делегата
proposedEffectiveRectкогда отправлено это сообщение.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Позволяет делегату определять, может ли делитель быть перетащен или скорректирован от края представления разделения.
Объявление
Swift
optional func splitView(_splitView: NSSplitView, shouldHideDividerAtIndexdividerIndex: Int) -> BoolObjective C
- (BOOL)splitView:(NSSplitView *)splitViewshouldHideDividerAtIndex:(NSInteger)dividerIndexПараметры
splitViewПредставление разделения, отправившее сообщение.
dividerIndexОснованный на нуле индекс делителя.
Возвращаемое значение
YEStrueесли делитель должен позволить перетаскивать от края представления разделения, приведя к нему не быть видимым.Обсуждение
Если представление разделения не имеет никакого делегата, или если его делегат не реагирует на это сообщение, представление разделения ведет себя, как будто это имеет возвращающегося делегата
NOfalseкогда отправлено это сообщение.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
splitView (_: additionalEffectiveRectOfDividerAtIndex:) - splitView:additionalEffectiveRectOfDividerAtIndex:Позволяет делегату возвращать дополнительный прямоугольник, в котором щелчки мышью будут инициировать перетаскивание делителя.
Объявление
Swift
optional func splitView(_splitView: NSSplitView, additionalEffectiveRectOfDividerAtIndexdividerIndex: Int) -> NSRectObjective C
- (NSRect)splitView:(NSSplitView *)splitViewadditionalEffectiveRectOfDividerAtIndex:(NSInteger)dividerIndexПараметры
splitViewПредставление разделения, отправившее сообщение.
dividerIndexИндекс делителя.
Возвращаемое значение
Дополнительный прямоугольник, в котором щелчки мышью должны инициировать перетаскивание делителя. Прямоугольник должен быть выражен в системе координат, определенной
splitView. ВозвратNSZeroRectуказывает, что не желаем никакой дополнительный прямоугольник перетаскивания.Обсуждение
Если представление разделения не имеет никакого делегата, или если его делегат не реагирует на это сообщение, только щелчки мышью в эффективном кадре делителя инициируют перетаскивание делителя.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
-
Позволяет делегату к
senderограничить максимальный координатный предел делителя, когда пользователь перетаскивает его.Объявление
Swift
optional func splitView(_splitView: NSSplitView, constrainMaxCoordinateproposedMax: CGFloat, ofSubviewAtdividerIndex: Int) -> CGFloatObjective C
- (CGFloat)splitView:(NSSplitView *)splitViewconstrainMaxCoordinate:(CGFloat)proposedMaxofSubviewAt:(NSInteger)dividerIndexПараметры
splitViewПредставление разделения, отправившее сообщение.
proposedMaxПредложенный максимальный координатный предел подпредставления, в зеркально отраженной системе координат представления разделения.
dividerIndexУказывает делитель, который пользователь перемещает с первым делителем, являющимся 0 и увеличивающимся сверху донизу (или слева направо).
Возвращаемое значение
Максимальный координатный предел делителя.
Обсуждение
Этот метод вызывается, прежде чем представление разделения начинает отслеживать мышь для расположения делителя. Можно далее ограничить пределы, уже установленные, но Вы не можете расширить пределы делителя.
Если линии разбивки являются горизонталью (представления один поверх другого),
proposedMaxнижний предел. Если линии разбивки являются вертикальными (представления рядом),proposedMaxправильный предел. Начальное значениеproposedMaxнижняя часть (или правая сторона) подпредставления после делителя.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
См. также
– isVertical(NSSplitView) -
Позволяет делегату к
senderограничить минимальный координатный предел делителя, когда пользователь перетаскивает его.Объявление
Swift
optional func splitView(_splitView: NSSplitView, constrainMinCoordinateproposedMin: CGFloat, ofSubviewAtdividerIndex: Int) -> CGFloatObjective C
- (CGFloat)splitView:(NSSplitView *)splitViewconstrainMinCoordinate:(CGFloat)proposedMinofSubviewAt:(NSInteger)dividerIndexПараметры
splitViewПредставление разделения, отправившее сообщение.
proposedMinПредложенный минимальный координатный предел подпредставления, в зеркально отраженной системе координат представления разделения.
dividerIndexУказывает делитель, который пользователь перемещает с первым делителем, являющимся 0 и увеличивающимся сверху донизу (или слева направо).
Возвращаемое значение
Минимальный координатный предел делителя.
Обсуждение
Этот метод вызывается, прежде чем представление разделения начинает отслеживать курсор для расположения делителя. Можно далее ограничить пределы, уже установленные, но Вы не можете расширить пределы делителя.
Если линии разбивки являются горизонталью (представления один поверх другого),
proposedMinверхний предел. Если линии разбивки являются вертикальными (представления рядом),proposedMinлевый предел. Начальное значениеproposedMinвершина (или левая сторона) подпредставления перед делителем.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
См. также
– isVertical(NSSplitView) -
Позволяет делегату к
senderограничить делитель к определенным позициям.Объявление
Swift
optional func splitView(_splitView: NSSplitView, constrainSplitPositionproposedPosition: CGFloat, ofSubviewAtdividerIndex: Int) -> CGFloatObjective C
- (CGFloat)splitView:(NSSplitView *)splitViewconstrainSplitPosition:(CGFloat)proposedPositionofSubviewAt:(NSInteger)dividerIndexПараметры
splitViewПредставление разделения, отправившее сообщение.
proposedPositionТекущая позиция курсора и предложенная позиция делителя.
dividerIndexУказывает делитель, который пользователь перемещает с первым делителем, являющимся 0 и увеличивающимся сверху донизу (или слева направо).
Возвращаемое значение
Позиция, в которой можно ограничить делитель.
Обсуждение
Если делегат реализует этот метод, представление разделения неоднократно вызывает его, поскольку пользователь перемещает делитель.
Например, если высота подпредставления должна быть кратным числом определенного числа, используйте этот метод для возврата кратного числа, самого близкого
proposedPosition.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Доступный как часть неофициального протокола до OS X v10.6.
