О секциях

NSDrawer является элементом пользовательского интерфейса, содержащим и выводящим на экран объекты представления включая NSTextView, NSScrollView, NSBrowserView и другие классы, наследовавшиеся от NSView. В то время как его родитель видим на экране, секция связана с окном, названным его родителем, и может только появиться. Секция не может быть перемещена или упорядочена независимо от окна, но вместо этого присоединена к одному краю своего родителя и перемещается вместе с ним. Секции могут быть изменены, но секция никогда не может быть больше, чем ее родитель. Данное окно может иметь любое число секций; это - ответственность разработчика удостовериться, что не накладываются секции.

Секция может быть или открыта или закрыта, или в процессе открытия или закрытия. Когда секция закрывается, это не появляется на экране. Секция может быть открыта на определенном краю ее родителя в зависимости от, например, позиция окна на экране. Каждая секция может также иметь предпочтительный край, использующийся, когда край не указан программно. Если закрытой секции говорят открыться без предпочтительного указанного края, секция пытается выбрать край, на котором можно открыться на основе пространства, доступного для отображения секции на экране. Если необходимо гарантировать, что секция открывается на определенном краю, использовать openOnEdge:.

Открытие и закрытие секции не происходят мгновенно, таким образом, уведомление отправляется каждый раз, когда секция закончила открываться или закрываться. Секции можно сказать открыться или закрыться в любое время с ожиданием, что будет в конечном счете выполнена команда. Если быстрый ряд открытых и близких команд будет выпущен, то последний переопределит другие и определит то, что утверждает, что секция наконец заканчивается в.

Секция может только быть связана с одним родительским окном за один раз, но родительское окно может быть изменено в любое время с помощью setParentWindow: (однако, изменение только внесено, когда секция закрывается). Каждая секция имеет свое собственное keyViewLoop отдельный от его родителя.