Создание Pzl-Компоненты: различия между версиями

Материал из wikiru.visual-prolog.com

Строка 75: Строка 75:
==Имя Компоненты==
==Имя Компоненты==
Имя компоненты определяет имя набора файлов пакета  
Имя компоненты определяет имя набора файлов пакета  
<Имя Компоненты>.pack,  
*<Имя Компоненты>.pack,  
<Имя Компоненты>.ph,  
*<Имя Компоненты>.ph,  
<Имя Компоненты>.cl,  
*<Имя Компоненты>.cl,  
<Имя Компоненты>.i,  
*<Имя Компоненты>.i,  
<Имя Компоненты>.pro.
*<Имя Компоненты>.pro  
Должно быть не менее 8 символов.
Должно быть не менее 8 символов.



Версия 21:03, 10 ноября 2007

Pzl-Компонента - это пакет системы программирования Visual Prolog. IDE системы Visual Prolog создает и помещает пакет в текущий проект. Elementary PzlStudio не работает с открытыми проектами и, соответственно, выполняет лишь элементарную операцию создания pzl-компоненты, независомо от проекта. Этот пакет далее может быть помещен в любой pzl-контейнер.


При создании pzl-Компоненты заполняется форма, содержащая такие параметры pzl-Компоненты, как идентификатор, условное наименование, способность к автономному запуску, имя базового класса и имя базового интерфейса, место размещения в дисковом пространстве.

Заполнив эти данные и нажав кнопку, Вы получаете готовую Pzl-Компоненту, которая теперь может быть включена в любой из pzl-контейнеров (в составе исполняемого приложения или в DLL).

Вызов операции

Форма для создания pzl-Компоненты вызывается через меню File/New.../Component.

PzlStudio CreateNewComponent.png

Перечень свойств в вызванной форме включает

  • Components Base Directory - Базовая директория Ваших Компонент
  • Sub-Directory - Маршрут к поддиректории, в которой будет создан пакет компоненты.
  • Component Name - Имя создаваемой Компоненты (это будет имя пакета .pack)
  • Class Name - Имя класса Компоненты
  • Interface Name - Имя интерфейса компоненты
  • Component Alias - Условное имя компоненты
  • Component ID - Идентификатор компоненты
  • RunAble - Автономная Запускаемость
  • UI Strategy - Пользовательский интерфейс
  • Company - имя компании
  • Author - имя автора
  • Copyright - авторские права

Редактирование значений свойств производится в правой части таблицы либо непосредственным редактированием (если допускается), либо вызовом следующего уровня редактирования нажатием на кнопку справа в активной строке. Двойной щелчек на поле редактирования равносилен нажатию на кнопу справа.

Операция выполняется по нажатию на кнопку Create (Создать).

Кнопка может быть неактивной, если введенных данных недостаточно для выполнения операции.

После выполнения операции форма остается активной и Вы можете продолжить создание pzl-Компонент.

Кнопка Close (Закрыть) закрывает форму.

Выполнение операции

При успешном выполнении операции в окно сообщений среды Elementary PzlStudio выводится отчет о создании компоненты.

PzlStudio CreatedNewComponentReport.png

Созданную таким образом Pzl-Компоненту можно теперь включать в контейнеры.

Параметры для создания Pzl-Компоненты

Базовая Директория Компонент

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


Но Базовую директорию компонент можно и поменять, выбрав в качестве базовой директории для компонент другую.

Двойной щелчек или нажатие на кнопку вызовут файловый диалог для выбора имени директории. Вы можете в Файловом диалоге установить и новое, не существующее имя директории. Elementary PzlStudio создаст ее, если это возможно.

Если Вы изменили имя базовой директории компонент относительно того, что установлено в Базовых Свойствах, то при закрытии формы будет задан вопрос о внесении изменения в Базовые Свойства.

PzlStudio ChangeBaseComponentsDirectory.png

Если Вы согласитесь, то Вам будет теперь предлагаться в качестве значения по умолчанию это последнее имя базовой директории компонент.

Директория pzl-Компоненты

Директория Pzl-Компоненты - это именно та директория, в которую будут помещены все файлы пакета компоненты.

Директория Pzl-Компоненты следует рассматривать как маршрут (например, в форме Дир1/Дир2/Дир3 или просто Дир1), который в совокупности с Базовой директорией компонент даст окончательный маршрут к директории, где будут создаваться файлы компоненты.

Поле Директория pzl-Компоенты не может быть пустым.

Если директория, маршрут который создается в совокупности с Базовой директорией компоненты не существует, то она будет создана без предупреждения.

Если Директория pzl-Компоненты по каким-либо причинам не может быть создана, то появится диалог с сообщением об ошибке.


Обращаем внимание на то, что имя конечной директории pzl-Компоненты и имя компоненты (пакета) могут различаться, хотя первоначально они будет предложены одинаковыми.

Имя Компоненты

Имя компоненты определяет имя набора файлов пакета

  • <Имя Компоненты>.pack,
  • <Имя Компоненты>.ph,
  • <Имя Компоненты>.cl,
  • <Имя Компоненты>.i,
  • <Имя Компоненты>.pro

Должно быть не менее 8 символов.

Уровень лицензии

Pzl-Система использует принцип лицензирования.

Лицензии различаются по уровням:

  • Public - публичная
  • Commercial - коммерческая
  • Exclusive - эксклюзивная (исключительная)
  • SuperExclusive

Уровень лицензии устанавливается:

  • для главного приложения - библиотекой pzlPort_X.lib
  • для pzl-Контейнера - библиотекой pzlContainer_X.lib

где X - идентификатор уровня лицензии.

Dll-Контейнер не может иметь уровень SuperExclusive. Этот уровень может иметь только PzlPort, причем, созданный компанией-разработчиком Pzl-Технологии.

Соответствие уровня лицензии и идентификатора библиотеки приведено ниже:

  • Public - pzlContainer_P.lib
  • Commercial - pzlContainer_C.lib
  • Exclusive - pzlContainer_EX.lib (X - персонифицирующий идентификатор)

Поэтому при создании нового контейнера Вы должны установить уровень лицензии, которым должно обладать Ваш контейнер. Выбор уровня лицензии однозначно определяет выбор имени pzl-библиотеки, которая будет включена в проект. В случае, если выбирается уровень лицензии Exclusive, то этому уровню может соответствовать множество библиотек уровня Exclusive.

PzlStudio предлагает значение по умолчанию - Public, которому соответствует библиотека pzlContainer_P.lib.

При выборе уровня лицензии, Elemantary PzlStudio автоматически установливает имя библиотеки в поле Container Library (это поле не редактируется, а является справочным). Если выбирается уровень лицензии Exclusive, то Вам предлагается файловый диалог со списком имеющихся в Вашем распоряжении библиотек. Вы должны выбрать одну из библиотек, относящися к библиотекам уровня Exclusive. Если выбрана библиотека, не относящаяся к уровню Exclusive, то появляется сообщение

PzlContainerLicenseLevelErrorDlg.png

Библиотека Pzl-Контейнера

Это поле не редактируется и является справочным. Отражает имя библиотеки pzlContainer_X.lib, соответствующее уровню лицензии главного приложения.

Версия Pzl-Контейнера

Версия Pzl-Конейнера является строкой, контролируемой только пользователем. Все, что делает Elementary PzlStudio с этой информацией - помещает ее в качестве значения константы pzlContainerVersion_C в файле PzlConfig.i после его создания.

interface iPzlConfig
constants
    pzlContainerVersion_C="1.0;001".
 
 % Container Configuration
constants
 
end interface iPzlConfig

Атрибуты из базовых свойств

Последние три позиции в форме

  • Company
  • Author
  • Copyright

устанавливаются в Базовых свойствах и здесь могут быть переопределены в случае, отличном от типового. Если Вы их здесь изменили, то значения этих параметров в Базовых свойствах не изменяются.

Ссылки