KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > lucane > applications > userprofile > LanguageCellRenderer


1 /*
2  * Lucane - a collaborative platform
3  * Copyright (C) 2004 Vincent Fiack <vfiack@mail15.com>
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  */

19 package org.lucane.applications.userprofile;
20
21 import java.awt.Component JavaDoc;
22
23 import javax.swing.DefaultListCellRenderer JavaDoc;
24 import javax.swing.JLabel JavaDoc;
25 import javax.swing.JList JavaDoc;
26
27 public class LanguageCellRenderer extends DefaultListCellRenderer JavaDoc
28 {
29     private UserProfilePlugin plugin;
30     
31     public LanguageCellRenderer(UserProfilePlugin plugin)
32     {
33         this.plugin = plugin;
34     }
35     
36     public Component JavaDoc getListCellRendererComponent(JList JavaDoc list, Object JavaDoc value, int index, boolean isSelected, boolean cellHasFocus)
37     {
38         Component JavaDoc c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
39         JLabel JavaDoc label = (JLabel JavaDoc)c;
40         String JavaDoc lang = (String JavaDoc)value;
41         
42         label.setText(plugin.tr("lang." + lang));
43         label.setIcon(plugin.getFlag(lang));
44         
45         return label;
46     }
47 }
Popular Tags