Опубликован: 10.12.2007 | Доступ: свободный | Студентов: 822 / 20 | Оценка: 5.00 / 5.00 | Длительность: 58:33:00
Лекция 12:

Оверлеи и Chrome

< Лекция 11 || Лекция 12: 12345 || Лекция 13 >
Аннотация: В этой лекции описывается инфраструктура оверлеев и каталога chrome платформы Mozilla, которая предоставляет механизмы для модульной разработки XUL-приложений. И оверлеи, и chrome сильно зависят от файлов данных в формате RDF. Приведены примеры основных тегов, характеристика их свойств и атрибутов, а также примеры практической реализации



В этой лекции описывается инфраструктура оверлеев и каталога chrome платформы Mozilla. Данная инфраструктура предоставляет механизмы для модульной разработки XUL-приложений. И оверлеи, и chrome сильно зависят от файлов данных в формате RDF.

Система оверлеев позволяет единому, финальному XUL-документу быть сконструированным из одного или нескольких XUL-документов. Процесс слияния документов можно организовать несколькими разными способами. Система оверлеев - это компонентная технология, разработанная для больших приложений Mozilla. Она позволяет разбить большие файлы кода на части.

Пример документа, использующего оверлеи, приведен в листинге 12.1

<?xml version="1.0"?> 
<?xul-overlay href="chrome://test/content/overlayA.xul"?> 
<?xul-overlay href="chrome://test/content/overlayB.xul"?> 
<window xmlns="http://www.mozilla.org/keymaster/
  gatekeeper/there.is.only.xul"> 
  <description id="start">Anything</description>
</window>
Листинг 12.1. Простой XUL документ с двумя оверлеями

Этот документ забирает контент из двух файлов: overlayA.xul и overlayB.xul. Эти два файла также содержат XUL-код. Этот совокупный контент добавляется к содержимому исходного файла. Мы видим результат. Ни один из исходных файлов при этом не изменяется.

Регистр chrome - также компонентная технология. Он отслеживает и содержит данные о компонентах, таких как пакеты, скины и локализация. Эти компоненты - просто группы файлов в директории chrome. Здесь они полностью доступны для платформы в виде URL специального типа. Регистр chrome можно использовать, чтобы управлять информацией об этих файлах. Этот механизм связан с инсталляционной системой, описываемой в "Система распространения и установки - XPInstall" , "Установка".

Разрабатываемый нами пример, NoteTaker, использовал структуру директории chrome, начиная с "Основные концепции" , "Основные Концепции", но многое из этой системы было оставлено за скобками в процессе описания. В этой лекции мы опишем модель RDF, лежащую в основе chrome, более тщательно.

На диаграмме в начале этой лекции показана небольшая часть платформы, связанная с chrome и оверлеями. Обработка оверлеев начинается на ранней стадии загрузки документа. Она располагается между обработкой URLs и сборкой контента в финальную иерархию DOM. Регистр chrome почти всегда невидим для нас, за исключением автоматического выбора скинов, зависящих от тем и DTD, зависящих от локализации. Регистр chrome реализуется XPCOM-компонентами, так что большинство оверлеев и chrome-процессов автоматизированы.

Оверлеи и регистр chrome вдобавок предоставляют нам шанс поупражняться в RDF. В этой лекции описываются база данных оверлеев overlayinfo и база данных chrome chrome.rdf. Кроме того, мы рассмотрим сохранение данных между сессиями.

< Лекция 11 || Лекция 12: 12345 || Лекция 13 >