/* * Fichier: JGList.java * * Créé le 30 sept. 2005 à 13:35:58 * * Auteur: kiorky * * Copyright (C) 30 sept. 2005 kiorky * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. **/ package toolbox.jGegene.ihm; import java.util.ArrayList; import java.util.Iterator; import javax.swing.DefaultListModel; import javax.swing.JList; /** * @author kiorky classe permettant denlevrer et de rajouter facilement des * elements dune jlist */ public class JGList { private DefaultListModel dataModel = null; private JList liste = null; public JGList() { liste = new JList(); dataModel = new DefaultListModel(); liste.setModel(dataModel); } public JGList(DefaultListModel m) { liste = new JList(); this.dataModel = m; liste.setModel(dataModel); } public JGList(String[] args) { liste = new JList(); dataModel = new DefaultListModel(); for (int i = 0; i < args.length; i++) { add(args[i]); } liste.setModel(dataModel); } /** * ajouter un element a la liste * * @param a * object a ajouter */ public void add(Object a) { if (a != null) { this.dataModel.addElement(a); } } /** * supprimer un eklement de la liste en fonction de lindex * * @param index * index */ public void removeAt(int index) { if (index < dataModel.getSize()) { dataModel.removeElementAt(index); } } /** * supprimer un eklement de la liste en fonction de lobject * * @param a * objet a supprimer */ public void remove(Object a) { if (dataModel.contains(a)) { dataModel.removeElement(a); } } public void deleteSelectedItems() { int[] indices = liste.getSelectedIndices(); ArrayList toDelete = new ArrayList(); for (int i = 0; i < indices.length; i++) { toDelete.add(liste.getModel().getElementAt(indices[i])); } Iterator i = toDelete.iterator(); while (i.hasNext()) { remove(i.next()); } } /** * @return Renvoie dataModel. */ private DefaultListModel getDataModel() { return dataModel; } /** * @param dataModel * dataModel à définir. */ private void setDataModel(DefaultListModel dataModel) { this.dataModel = dataModel; } /** * @return Renvoie liste. */ private JList getListe() { return liste; } /** * @param liste * liste à définir. */ private void setListe(JList liste) { this.liste = liste; } }