Il est tout à fait possible d'ajouter une nouvelle action (étiquette) à la barre d'outils HMC, mais il est pas recommandé car il peut entraîner des problèmes tandis que la migration.
- D'abord, ajoutez l'extrait suivant à votre **/hmc.xml:
<type name="AbstractOrder" mode="append">
<organizer mode="append" >
<editor>
<tab name="payment_and_delivery" position="2" mode="append">
<section name="deliveryadministration" mode="append" >
<table>
<tr>
<td width="16px">
</td>
<td>
<!-- here is the interesting part -->
<action type="item"
classname="com.foo.bar.MyNewAction"
name="action.my_new_action"
toolbaricon="my_new_action"
icon="images/icons/my_new_action_icon.gif"
autosave="true"
showtoolbarlabel="true"
hidebutton="true"
/>
</td>
</tr>
</table>
</section>
</tab>
</editor>
</organizer>
</type>
- Ensuite, définir la nouvelle action à exécuter lorsque le nouveau label est cliqué:
Ajouter une nouvelle classe appelée MyNewAction.java
qui va de ItemAction
et mettre en œuvre la méthode ActionResult perform(ActionEvent event)
:
public MyNewAction extends ItemAction {
@Override
public ActionResult perform(ActionEvent actionEvent) throws JaloBusinessException {
//what the new action should do here ...
}
}
Remarque: vous pouvez passer outre d'autres méthodes intéressantes pour être déclencheurs alors que l'action est comme possédait: boolean needConfirmation()
ou String getConfirmationMessage()
...
Le résultat serait comme ceci:
Merci, ça marche super :) J'ai juste quelques questions: pourquoi 'payment_and_delivery' et' deliveryadministration'? et que signifie "position 2"? –
Cela signifie que ce nouveau bouton d'action appartient à la section: 'Delivery' dans l'onglet:' Payment and Delivery' c'était juste un exemple, make 'hidebutton =" false "' et comprendra ce que je veux dire. –
D'accord, je vois. Savez-vous s'il est possible d'afficher le bouton uniquement si quelque chose est vrai? –