/* // This software is subject to the terms of the Eclipse Public License v1.0 // Agreement, available at the following URL: // http://www.eclipse.org/legal/epl-v10.html. // You must accept the terms of that agreement to use this software. // // Copyright (C) 2002-2005 Julian Hyde // Copyright (C) 2005-2011 Pentaho and others // All Rights Reserved. */ package mondrian.gui; import java.awt.*; import javax.swing.*; /** * <code>ListRenderer</code> ... */ class ListRenderer implements ListCellRenderer { // The original ListCellRenderer we want to override ListCellRenderer std; public ListRenderer(ListCellRenderer override) { if (override == null) { throw new NullPointerException( "ListRenderer constructor: default renderer is null"); } std = override; } // Override of getListCellRendererComponent. // This is called by the AWT event thread to paint components. public Component getListCellRendererComponent( JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { // Ask the standard renderer for what it thinks is right Component c = std.getListCellRendererComponent( list, value, index, isSelected, cellHasFocus); if (!isSelected) { // Set the background of the returned component to Aqua // striped background, but only for unselected cells; // The standard renderer functions as desired for // highlighted cells. c.setBackground((Color)UIManager.get("ComboBox.background")); } return c; } } // End ListRenderer.java