Основы работы с окнами

Возможности создания окон, групп и организация их в иерархию

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

Следует создавать группы окон, чтобы организовывать, отображать и управлять окнами в приложении. Группа окон состоит из родительского окна и хотя бы одного дочернего. Чтобы создать группу, окно должно вызвать функцию screen_create_window_group() и указать ее имя. Имя группы окон может передаваться другим функциям, потокам или процессам, которые отвечают за создание дочерних окон. Любое дочернее окно может присоединиться к этой группе, если оно имеет ассоциированное имя группы. Родительское окно уведомляется каждый раз, когда дочернее окно присоединяется к группе. В уведомление включается дескриптор окна, позволяющий родительскому окну контролировать некоторые свойства дочернего, например, видимость, положение, размер и z-индекс. Родительское окно не может получить доступ к оконным буферам дочерних. Дочернее окно остается невидимым до тех пор, пока оно не будет добавлено в группу окон и станет видимым владельцем группы.

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

Операция Описание
Screen API предлагает несколько типов создаваемых окон. Каждый тип окон имеет разные практики использования, позиционирования и обычно связан с различными видами контента
Параметры окон в Screen API
Форматы пикселей окна определяют способ хранения информации в памяти GPU
Тип окна определяет правила позиционирования, применяемые к дочерним окнам в группе. Кроме того, тип окна определяет возможность установления родительских отношений
Для создания дочерних окон может использоваться функция screen_create_window_type()
Перед отображением контента необходимо создание окна приложения. Представленная процедура описывает общие способы создания окон




Предыдущий раздел: Руководство разработчика оконной подсистемы Screen