001package org.jdesktop.swingx.renderer;
002
003import java.awt.LayoutManager;
004import java.awt.Rectangle;
005
006import javax.swing.JPanel;
007
008/**
009 * An implementation of JPanel used for rendering. It overrides methods for performance reasons.
010 * 
011 * @author kschaefer
012 */
013public class JRendererPanel extends JPanel {
014    public JRendererPanel() {
015        super();
016    }
017    
018    /**
019     * @param layout
020     */
021    public JRendererPanel(LayoutManager layout) {
022        super(layout);
023    }
024
025    /**
026     * {@inheritDoc} <p>
027     * 
028     * Overridden to not automatically de/register itself from/to the ToolTipManager.
029     * As rendering component it is not considered to be active in any way, so the
030     * manager must not listen. 
031     */
032    @Override
033    public void setToolTipText(String text) {
034        putClientProperty(TOOL_TIP_TEXT_KEY, text);
035    }
036
037    /**
038     * Overridden for performance reasons.
039     * See the <a href="#override">Implementation Note</a> 
040     * for more information.
041     */
042    @Override
043    public void revalidate() {}
044
045    /**
046     * Overridden for performance reasons.
047     * See the <a href="#override">Implementation Note</a> 
048     * for more information.
049     */
050    @Override
051    public void repaint(long tm, int x, int y, int width, int height) {}
052
053    /**
054     * Overridden for performance reasons.
055     * See the <a href="#override">Implementation Note</a> 
056     * for more information.
057     */
058    @Override
059    public void repaint(Rectangle r) { }
060
061    /**
062     * Overridden for performance reasons.
063     * See the <a href="#override">Implementation Note</a> 
064     * for more information.
065     *
066     * @since 1.5
067     */
068    @Override
069    public void repaint() {
070    }
071
072    /**
073     * Overridden for performance reasons.
074     * See the <a href="#override">Implementation Note</a> 
075     * for more information.
076     */
077    @Override
078    protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) { }
079
080    /**
081     * Overridden for performance reasons.
082     * See the <a href="#override">Implementation Note</a> 
083     * for more information.
084     */
085    @Override
086    public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue) { }
087}