Page and Media Attached Popup
Learn how to attach an information popup to pages and media files with tree definitions
Download the sample apps as a CMS Package
In this sample, you will learn how to create applications that add a button to the toolbar in the Content and/or Media perspectives to show a page’s or media file’s GUID in a popup when clicked.

Tree definition
In ~/App_Data/Composite/TreeDefinitions, create an XML file: PageGuid.xml.
Add this markup:
<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>Similarly, create an XML file: MediaGuid.xml.
Add this markup:
<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.IMediaFile" />
</ElementStructure.AutoAttachments>
<ElementRoot>
<Actions>
<MessageBoxAction Label="GUID"
MessageBoxTitle="${C1:Data:Composite.Data.Types.IMediaFile:FileName}"
MessageBoxMessage="${C1:Data:Composite.Data.Types.IMediaFile:Id}" />
</Actions>
</ElementRoot>
</ElementStructure>As you can see in both examples:
- We’ve specified data types that stand for CMS Pages and CMS Media files with a
<DataType>. - The
<MessageBoxAction>adds a button on the toolbar to show a popup when clicked. - The message box's title and message are set with dynamic values from the corresponding fields of data types in use.
- The applications are automatically attached to pages and media files as defined by
<ElementStructure.AutoAttachments>.

