1 /*
2  * aTunes
3  * Copyright (C) Alex Aranda, Sylvain Gaudard and contributors
4  *
5  * See http://www.atunes.org/wiki/index.php?title=Contributing for information about contributors
6  *
7  * http://www.atunes.org
8  * http://sourceforge.net/projects/atunes
9  *
10  * This program is free software; you can redistribute it and/or
11  * modify it under the terms of the GNU General Public License
12  * as published by the Free Software Foundation; either version 2
13  * of the License, or (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  */
20 
21 package net.sourceforge.atunes.gui;
22 
23 import javax.swing.ImageIcon;
24 import javax.swing.JTable;
25 
26 import net.sourceforge.atunes.model.AudioObjectProperty;
27 import net.sourceforge.atunes.model.IColorMutableImageIcon;
28 import net.sourceforge.atunes.model.ILookAndFeel;
29 import net.sourceforge.atunes.model.PlaybackState;
30 
31 /**
32  * Common renderers for columns
33  *
34  * @author fleax
35  *
36  */
37 public final class ColumnRenderers {
38 
ColumnRenderers()39 	private ColumnRenderers() {
40 
41 	}
42 
43 	/**
44 	 * Add renderers to table
45 	 *
46 	 * USE ColumnDecorator
47 	 *
48 	 * @param jtable
49 	 * @param model
50 	 * @param lookAndFeel
51 	 */
52 	@Deprecated
addRenderers(final JTable jtable, final AbstractCommonColumnModel model, final ILookAndFeel lookAndFeel)53 	public static void addRenderers(final JTable jtable,
54 			final AbstractCommonColumnModel model,
55 			final ILookAndFeel lookAndFeel) {
56 
57 		// Integer renderer
58 		jtable.setDefaultRenderer(Integer.class, lookAndFeel
59 				.getTableCellRenderer(model.getRendererCodeFor(Integer.class)));
60 
61 		// ImageIcon renderer
62 		jtable.setDefaultRenderer(ImageIcon.class,
63 				lookAndFeel.getTableCellRenderer(model
64 						.getRendererCodeFor(ImageIcon.class)));
65 
66 		// STRING renderer
67 		jtable.setDefaultRenderer(String.class, lookAndFeel
68 				.getTableCellRenderer(model.getRendererCodeFor(String.class)));
69 
70 		// TextAndIcon renderer
71 		jtable.setDefaultRenderer(TextAndIcon.class, lookAndFeel
72 				.getTableCellRenderer(model
73 						.getRendererCodeFor(TextAndIcon.class)));
74 
75 		// Property renderer
76 		jtable.setDefaultRenderer(AudioObjectProperty.class, lookAndFeel
77 				.getTableCellRenderer(model
78 						.getRendererCodeFor(AudioObjectProperty.class)));
79 
80 		// ColorMutableImageIcon
81 		jtable.setDefaultRenderer(IColorMutableImageIcon.class, lookAndFeel
82 				.getTableCellRenderer(model
83 						.getRendererCodeFor(IColorMutableImageIcon.class)));
84 
85 		// PlayState renderer
86 		jtable.setDefaultRenderer(PlaybackState.class, lookAndFeel
87 				.getTableCellRenderer(model
88 						.getRendererCodeFor(PlaybackState.class)));
89 
90 		// Set header renderer
91 		jtable.getTableHeader().setDefaultRenderer(
92 				lookAndFeel.getTableHeaderCellRenderer(model));
93 	}
94 }
95