package org.limewire.ui.swing.components.decorators;
import javax.swing.Icon;
import org.jdesktop.application.Resource;
import org.jdesktop.swingx.JXPanel;
import org.limewire.ui.swing.components.MessageComponent;
import org.limewire.ui.swing.painter.factories.MessagePainterFactory;
import org.limewire.ui.swing.util.GuiUtils;
import com.google.inject.Inject;
import com.google.inject.Singleton;
@Singleton
public class MessageDecorator {
private final MessagePainterFactory painterFactory;
@Resource
private Icon grayArrowIcon;
@Resource
private Icon greenArrowIcon;
@Inject
public MessageDecorator(MessagePainterFactory painterFactory) {
GuiUtils.assignResources(this);
this.painterFactory = painterFactory;
}
public void decorateGreenRectangleMessage(JXPanel panel) {
panel.setBackgroundPainter(painterFactory.createGreenRectanglePainter());
}
public void decorateGreenMessage(MessageComponent component) {
component.setMessageBackroundPainter(painterFactory.createGreenMessagePainter());
component.setArrowIcon(greenArrowIcon);
}
public void decorateGrayMessage(MessageComponent component) {
component.setMessageBackroundPainter(painterFactory.createGrayMessagePainter());
component.setArrowIcon(grayArrowIcon);
}
}