View Javadoc
1   package paolomind.multitalk.component;
2   
3   import java.awt.event.ActionEvent;
4   import java.awt.event.ActionListener;
5   
6   import paolomind.multitalk.plugin.Module;
7   import paolomind.multitalk.plugin.ModuleManager;
8   /**
9    * Un ModuleManager che implementa l' AWT ActionListener.
10   * Associando l'oggetto ad un Button o AbstractButton, cattura l'evento d'azione
11   * per selezionare un tool in base al ActionCommand
12   * associato all'evento scatenato
13   * @author paolo
14   *
15   */
16  public class ActionCommandModule extends ModuleManager implements
17      ActionListener {
18  
19    /**
20     * Catturato l'evento, seleziona il modulol.
21     * @param e evento catturato,
22     *                    tale evento deve aver specificato l'ActionCommand
23     *                    con l' id del tool da selezionare
24     * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
25     */
26    public final void actionPerformed(final ActionEvent e) {
27      if (this.select(e.getActionCommand())) {
28        this.activate();
29      }
30    }
31  
32    /**
33     * Metodo che si occupa di assegnare l'ActionListner ad un java.awt.Button e
34     * inizializzare l'ActionCommand.
35     * @param m modulo da associare al bottone
36     * @param b il bottone da inizializzare
37     * @return il bottone inizializzato (non è necessario reperirlo)
38     */
39    public final java.awt.Button setupAction(final Module m,
40        final java.awt.Button b) {
41      this.register(m);
42      b.setActionCommand(m.getSelfId());
43      b.addActionListener(this);
44      return b;
45    }
46  
47    /**
48     * Metodo che si occupa di assegnare l'ActionListener
49     * ad un javax.swing.AbstractButton e
50     * inizializzare l'ActionCommand.
51     * @param m modulo da associare al bottone
52     * @param b il bottone da inizializzare
53     * @return il bottone inizializzato (non è necessario reperirlo)
54     */
55    public final javax.swing.AbstractButton setupAction(final Module m,
56        final javax.swing.AbstractButton b) {
57      this.register(m);
58      b.setActionCommand(m.getSelfId());
59      b.addActionListener(this);
60      return b;
61    }
62  }