Template Panel

From Tygron Support wiki
Jump to navigation Jump to search
This article is a stub.

A Template Panel is a special variant of a Panel, which serves as a definition through which a large amount of Panels can be created. They have most properties of ordinary Panels. They cannot be displayed to or used by end-users directly. Based on a Template Panel, an amount of Panels can be generated automatically. These are known as Instanced Panels (or the Template Panel's instances), which function identically to regular Panels. A Template pales is linked to a specifc type of data. Instanced Panels have, in general, the same properties as the Template Panel they are derived from, in addition to a location in the 3D World matching the location of the Item it is applicable to.

When a Template Panel is linked to a specific type of data, an Attribute filter can be added as well. This means the Template Panel will only be applied to the Items matching the specifed type which also have the specified Attribute.

When a Template Panel is "applied", Instanced Panels are created for each Item of the specified type. Instanced Panels can be modified independantly of their orignal Template Panels (although this is not recommended). A Template Panel can also be modified independantly of its instances. It is only when the Template Panel is reapplied that its instances are affected. If the Template Panel had been applied before, any Instanced Panels previously created based on the same Template Panel are removed before creating the new Instanced Panels. This is also true if the Template Panel is changed to be applicable to a different type of data than its instances currently are.

Types of Template Panels

There are two types of template panels:

Type Description
Text Template Panel Generates Text Panels. Each Instanced Panel has its own discrete copy of the text content of the Template Panel.
Excel Template Panel Generates Excel Panels. Each Instanced Panel is connected to the same Excel definition as the Template Panel.

Target

Template Panels can be applied to the following Items:

When to use Template Panels

There are a number of use-cases for which Template Panels can be desirable.

Repeated data in project

Individual Panels can be created and added to the 3D world, but depending on how many are desired this may be a lot of menial work. By using a Template Panel to autoamtically generate the desired Panels, effort can be saved, changes can be applied to all instances more easily, and the appearance and effects of the Panels remains more consistent.

Spatial data in Template Project

When using the Project as a Template, Template Panels can be easily applied to data in the Project, reducing the amount of time it takes to configure a Project based on a Template "out-of-the-box". In fact, after creating a new Project based on a Template, Template Panels are applied automatically.

Web Interface

Template Panels can be used with the Web Interface to serve different information per user.

When a Template Panel is used as part of a Web Interface, either for a frontpage or for custom HTML, an instance of the Template Panel is displayed. Specifically, the displayed instance is the one with an owner which matches the Stakeholder whom's Web Token was used to authenticate.

Properties

The properties of Template Panels are generally the same as the properties of regular Panels. When the Template Panel is applied, its instances are mostly given the same properties and values as the Template Panel. These are considered "static" properties. A number of properties of the Template Panel can cause the Instanced Panels to have differing properties. These properties are considered "dynamic" properties.

Properties are duplicated from the Template Panel to the Instanced Panel when the Template Panel is applied. After that, the properties of the Instanced Panels exist independantly of the Template Panel.

It is possible to edit the properties of Instanced Panels in the same manner as editing the properties of regular Panels. However, this is not recommended, as the changes will be undone when the Template Panel is reapplied.

Static properties

Dimensions and location
The dimensions and on-screen location of the Instanced Panel are identical to how the Template Panel is configured.
Overlay
Which Overlay to display when the Panel is opened is identical to how the Template Panel is configured.
Attributes
The Instanced Panel has the same Attributes as the Template Panel, which also includes the Attributes affecting whether the Panel is visible, requires attention, and the popup type model used to display the Popup of the Panel in the 3D world.
Content
The content of the Instanced Panel is the same as the Template Panel. If the content is text, the content is copied. If the content is an Excel, the Panels refer to same Excel.

Dynamic properties

Input field for the Template Panel name.
Name
The name of the Instanced Panel is a combination of the Template Panel and the name of the data it is applied to.
Additional settings for assigning stakeholder(s).
Owner
If the Template Panel has no owner or a single specific owner, the Instanced Panels will all have no owner or the same owner respectively. If a relational filter is configured for the Template Panel, the owner of each Instanced Panel will be the Stakeholder which has the defined relation to the linked data.
Options for applying the template panel.
Target
The target to apply the Template Panel on, and the related optional Attribute filter, are properties reserved for the Template Panel and do not exist in Instanced Panels.

Answers

Main article: Answer (Panel)

Template Panels can be given Answers, which will cause its instances to also have the same Answers when the Template Panel is applied. However, if the Answer has a related Event which has as a parameter the type of data which the Template Panel is applied on, the Answer will automatically have the value for that parameter set to the Item which the instance is related to. For example, if the Template Panel is applied on Neighborhoods, and the Answer features the NEIGHBORHOOD_SET_ATTRIBUTE Event, each Neighborhood will have an Instanced Panel, the Answer of which will affect that Neighborhood.