<md-content layout="column" layout-align="center stretch" class="content">
  <ul class="breadcrumb">
    <li><a href="#/documentation/1.9.1">1.9.1</a> <span class="divider">/</span></li>
    <li><a href="#/documentation/1.9.1/language/overview">Language</a> <span class="divider">/</span></li>
    <li><a href="#/documentation/1.9.1/language/widgets">Widgets</a></li>
  </ul>
		<h2 id="Label">Label</h2>
		<h3 id="description">Description</h3>
		<p>The label widget can be used to display a read-only piece of text in your user interface. Its behavior is almost the same as the 
			<a href="#/documentation/1.9.1/language/widgets/text">text</a> widget. On top of the common properties of all widgets (identifier, labelExpression, helpExpression, isEnabledExpression, propertyValidationRules), it has the following properties:
		</p>
		<ul>
			<li>valueExpression: The value expression is used to compute the body of the label widget.</li>
			<li>displayExpression: This expression will have access to the result of the valueExpression thanks to a variable named value and it should return a string. If this expression is blank, a call to java.lang.Object#toString() will be performed on the result of the valueExpression instead.</li>
			<li>style: The style of the label widget.</li>
			<li>conditionalStyle: All the conditional styles of the label widget.</li>
			<li>actions: All the widget actions of the label. Widget actions will be represented in the user interface by buttons.</li>
		</ul>
		<p>A widget action contains only the following properties:</p>
		<ul>
			<li>labelExpression: This expression is used to compute the label of the button. It should return a string.</li>
			<li>actionExpression: This expression is used to define the behavior of the button. It will be executed when the end user will click on the button. It should not return anything.</li>
		</ul>
		<h3 id="displayreadonlyestringeattribute">Display a read-only EString EAttribute</h3>
		<p>In order to display in the user interface a label with the value of a read-only EAttribute with the eType EString, you can create a label widget with the following properties:</p>
		<ul>
			<li>labelExpression: 
				<code>aql:'Documentation'</code>
			</li>
			<li>valueExpression: 
				<code>aql:self.documentation</code>
			</li>
			<li>displayExpression: 
				<code>aql:value</code>
			</li>
		</ul>
		<p>EEF does not provide a default interpreter but you can easily configure EEF to be used with the AQL interpreter. In the integration of EEF with the AQL interpreter, you can register additional services, written in Java, in which you can expose to AQL new operations.</p>
</md-content>
