01: package net.sourceforge.squirrel_sql.client.mainframe.action;
02:
03: import net.sourceforge.squirrel_sql.client.IApplication;
04: import net.sourceforge.squirrel_sql.client.action.SquirrelAction;
05: import net.sourceforge.squirrel_sql.client.gui.db.AliasesList;
06: import net.sourceforge.squirrel_sql.fw.sql.ISQLAlias;
07:
08: import javax.swing.*;
09: import java.awt.event.ActionEvent;
10: import java.util.Arrays;
11:
12: public class SortAliasesAction extends SquirrelAction {
13: private AliasesList m_al;
14:
15: public SortAliasesAction(IApplication app, AliasesList al) {
16: super (app);
17: m_al = al;
18: }
19:
20: public void actionPerformed(ActionEvent e) {
21: final ISQLAlias selectedAlias = m_al.getSelectedAlias();
22:
23: DefaultListModel model = (DefaultListModel) m_al.getModel();
24:
25: Object[] aliases = model.toArray();
26:
27: Arrays.sort(aliases);
28:
29: model.clear();
30:
31: for (int i = 0; i < aliases.length; i++) {
32: model.addElement(aliases[i]);
33: }
34:
35: SwingUtilities.invokeLater(new Runnable() {
36: public void run() {
37: if (null != selectedAlias) {
38: m_al.setSelectedValue(selectedAlias, true);
39: }
40: }
41: });
42:
43: }
44:
45: }
|