package fr.adrienbrault.idea.symfony2plugin;
import com.intellij.openapi.util.IconLoader;
import com.intellij.util.ui.UIUtil;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.util.Calendar;
/**
* @author Adrien Brault <adrien.brault@gmail.com>
* @author Daniel Espendiller <daniel@espendiller.net>
*/
public class Symfony2Icons {
public static final Icon SYMFONY;
public static final Icon SYMFONY_LINE_MARKER;
static {
if(Calendar.getInstance().get(Calendar.MONTH) == 11 && Calendar.getInstance().get(Calendar.DAY_OF_MONTH) > 7) {
SYMFONY = IconLoader.getIcon("icons/symfony_dec.png");
SYMFONY_LINE_MARKER = IconLoader.getIcon("icons/symfony_line_marker_dec.png");
} else if(Calendar.getInstance().get(Calendar.MONTH) == 3 && Calendar.getInstance().get(Calendar.DAY_OF_MONTH) == 7) {
SYMFONY = IconLoader.getIcon("icons/symfony_birth.png");
SYMFONY_LINE_MARKER = IconLoader.getIcon("icons/symfony_line_marker_birth.png");
} else {
SYMFONY = IconLoader.getIcon("icons/symfony.png");
SYMFONY_LINE_MARKER = IconLoader.getIcon("icons/symfony_line_marker.png");
}
}
public static final Icon SYMFONY_TOOL_WINDOW = IconLoader.getIcon("icons/symfony_tool_window.png");
public static final Icon DOCTRINE = IconLoader.getIcon("icons/doctrine.png");
public static final Icon DOCTRINE_LINE_MARKER = IconLoader.getIcon("icons/doctrine_line_marker.png");
public static final Icon DOCTRINE_WEAK = IconLoader.getIcon("icons/doctrine_weak.png");
public static final Icon NO_SQL = IconLoader.getIcon("icons/no_sql.png");
public static final Icon ROUTE = IconLoader.getIcon("icons/route.png");
public static final Icon ROUTE_WEAK = IconLoader.getIcon("icons/route_weak.png");
public static final Icon SERVICE = IconLoader.getIcon("icons/service.png");
public static final Icon SERVICE_OPACITY = IconLoader.getIcon("icons/service_opacity.png");
public static final Icon FORM_TYPE = IconLoader.getIcon("icons/form_type.png");
public static final Icon FORM_TYPE_WEAK = IconLoader.getIcon("icons/form_type_weak.png");
public static final Icon TRANSLATION = IconLoader.getIcon("icons/translation.png");
public static final Icon TRANSLATION_WEAK = IconLoader.getIcon("icons/translation_weak.png");
public static final Icon PARAMETER = IconLoader.getIcon("icons/parameter.png");
public static final Icon FORM_OPTION = IconLoader.getIcon("icons/form_option.png");
public static final Icon FORM_EXTENSION = IconLoader.getIcon("icons/form_extension.png");
public static final Icon FORM_EXTENSION_WEAK = IconLoader.getIcon("icons/form_extension_weak.png");
public static final Icon SERVICE_TAG = IconLoader.getIcon("icons/service_tag.png");
public static final Icon SERVICE_TAG_WEAK = IconLoader.getIcon("icons/service_tag_weak.png");
public static final Icon EVENT = IconLoader.getIcon("icons/event.png");
public static final Icon BUNDLE = IconLoader.getIcon("icons/bundle.png");
public static final Icon SERVICE_PRIVATE_OPACITY = IconLoader.getIcon("icons/service_private_opacity.png");
public static final Icon SERVICE_LINE_MARKER = IconLoader.getIcon("icons/service_line_marker.png");
public static final Icon FORM_TYPE_LINE_MARKER = IconLoader.getIcon("icons/form_type_line_marker.png");
public static final Icon ROUTE_LINE_MARKER = IconLoader.getIcon("icons/route_line_marker.png");
public static final Icon TWIG_CONTROLLER_LINE_MARKER = IconLoader.getIcon("icons/twig_controller_line_marker.png");
public static final Icon TWIG_LINE_MARKER = IconLoader.getIcon("icons/twig_line_marker.png");
public static final Icon TWIG_LINE_OVERWRITE = IconLoader.getIcon("icons/overwrite.png");
public static final Icon TWIG_EXTENDS_FILE = IconLoader.getIcon("icons/twig_extends_file.png");
public static final Icon TWIG_IMPLEMENTS_FILE = IconLoader.getIcon("icons/twig_implements_file.png");
public static final Icon PARAMETER_OPACITY = IconLoader.getIcon("icons/parameter_opacity.png");
public static final Icon MAIL = IconLoader.getIcon("icons/mail.png");
public static final Icon PROFILER_LINK = IconLoader.getIcon("icons/profiler_link.png");
public static final Icon CONFIG_PROTOTYPE = IconLoader.getIcon("icons/config_prototype.png");
public static final Icon CONFIG_VALUE = IconLoader.getIcon("icons/config_value.png");
public static final Icon CONFIG_VALUE_SHORTCUT = IconLoader.getIcon("icons/config_value_shortcut.png");
public static Image getImage(Icon icon) {
if (icon instanceof ImageIcon) {
return ((ImageIcon)icon).getImage();
}
int width = icon.getIconWidth();
int height = icon.getIconHeight();
BufferedImage image = UIUtil.createImage(width, height, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2 = (Graphics2D) image.getGraphics();
icon.paintIcon(null, g2, 0, 0);
return image;
}
}