вторник, 2 августа 2011 г.

Консольные приложения (19): Вывод сообщений

Среди действий, которые можно привязать к элементам дерева в админке, есть и сообщения. В консольном приложении на основе файла определения дерева, можно использовать два типа сообщений:
  • просто сообщения, или условно назовем их "информационными" (message box)
  • подтверждающие сообщения (confirmation box)
Оба типа сообщения добавляются как и любое другое действие в элемент Actions.

В этом сообщении я рассмотрю простое сообщение, а в следующем - подтверждающее.


Пример простого сообщения я уже приводил в самом первом своем посте на тему консольных приложений.

<?xml version="1.0" encoding="utf-8" ?>
<ElementStructure
  xmlns="http://www.composite.net/ns/management/trees/treemarkup/1.0"
  xmlns:f="http://www.composite.net/ns/function/1.0">

  <ElementStructure.AutoAttachments>
    <DataType Type="Composite.Data.Types.IPage" />
  </ElementStructure.AutoAttachments>

  <ElementRoot>
    <Actions>
      <MessageBoxAction Label="GUID"
        MessageBoxTitle="${C1:Data:Composite.Data.Types.IPage:Title}"
        MessageBoxMessage="${C1:Data:Composite.Data.Types.IPage:Id}" />
    </Actions>
  </ElementRoot>

</ElementStructure>

Так как вы уже хорошо разбираетесь в таких определениях, то вы, наверняка увидите, что:
  • сообщение привязывается к странице в админке: Composite.Data.Types.IPage указан как тип (Type)
  • само приложение подключается в админке автоматически (ElementStructure.AutoAttachments)
  • XML-элемент, который представляет простое сообщение -  MessageBoxAction, и добавляется он внутри XML-элемента Actions
  • в качестве значений атрибутов (MessageBoxTitle и MessageBoxMessage) используются динамические поля.
Итак, обязательными атрибутами у MessageBoxAction являются:
  • Label: надпись на кнопке на панели инструментов и пункте контекстного меню - для вызова сообщения
  • MessageBoxTitle: заголовок окна сообщения
  • MessageBoxMessage: текст сообщения
Необязательные атрибуты:
  • MessageDialogType: тип сообщения. Одно из значений: “message” (сообщение), “question” (вопрос), “warning” (предупреждение), “error” (ошибка). По умолчанию - “message”.
  • Icon: иконка для кнопки на панели инструментов и пункта контекстного меню. По умолчанию, используется системная иконка для этого действия. (Названия допустимых иконок можно посмотреть здесь /Composite/images/icons/StandardIcons.xml.)
  • ToolTip: подсказка, всплывающая при наведении на кнопку или пункт меню. По умолчанию, используется значение атрибута Label.
  • PermissionTypes: список разрешений для этого действия.
При помощи динамических полей, в заголовке окна сообщения мы указываем название страницы, а в тексте - идентификатор этой страницы.

По теме консольных приложений, я еще расскажу о подтверждающих сообщениях. И на этом - пока все.

(окончание следует...)

Комментариев нет:

Отправить комментарий