<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
		<title>button</title>
		<link type="text/css" rel="stylesheet" href="../../assets/css/stylesheet.css"/>
	</head>
	<body>
		<h2 id="Button">Button</h2>
		<h3 id="description">Description</h3>
		<p>The button widget can be used to execute an action in your user interface. On top of the common properties of all widgets (identifier, labelExpression, helpExpression, isEnabledExpression, propertyValidationRules), it has the following properties:</p>
		<ul>
			<li>buttonLabelExpression: This expression is used to compute the label of the button. This expression must return a string.</li>
			<li>pushExpression: This expression will be executed once the end user will click on the button. This expression does not have to return anything.</li>
			<li>imageExpression: This expression is used to compute the image to display in the button. This expression must return a string with the following structure PROJECT_NAME/IMAGE_PATH.</li>
			<li>style: The style of the button widget.</li>
			<li>conditionalStyle: All the conditional styles of the button widget.</li>
		</ul>
		<h3 id="displayanaction">Display an action</h3>
		<p>In order to create an action using a button widget, you can use the following properties:</p>
		<ul>
			<li>buttonLabelExpression: 
				<code>aql:'Click'</code>
			</li>
			<li>pushExpression: 
				<code>aql:self.doSomething()</code>
			</li>
			<li>imageExpression: 
				<code>org.eclipse.example/icons/Icon.gif</code>
			</li>
		</ul>
	</body>
</html>