Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, Home of Professional Open Source
   * Copyright 2010, Red Hat, Inc. and individual contributors
   * by the @authors tag. See the copyright.txt in the distribution for a
   * full listing of individual contributors.
   *
   * This is free software; you can redistribute it and/or modify it
   * under the terms of the GNU Lesser General Public License as
   * published by the Free Software Foundation; either version 2.1 of
  * the License, or (at your option) any later version.
  *
  * This software is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  * Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this software; if not, write to the Free
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 package org.richfaces.renderkit.html.images;
 
 import java.awt.Color;
 import java.awt.Paint;
 
 import  javax.faces.context.FacesContext;
 
 import  org.richfaces.resource.AbstractJava2DUserResource;
 import  org.richfaces.resource.DynamicUserResource;
 import  org.richfaces.resource.PostConstructResource;
 import  org.richfaces.resource.StateHolderResource;
 import  org.richfaces.skin.Skin;
 import  org.richfaces.skin.SkinFactory;

Author(s):
amarkhel
 
 @DynamicUserResource
 public class CalendarIcon extends AbstractJava2DUserResource implements StateHolderResource {
     private static final Dimension DIMENSION = new Dimension(20, 20);
     private Integer headerTextColor;
     private Integer headerBackgroundColor;
 
     public CalendarIcon() {
         super();
     }
 
     @PostConstructResource
     public final void initialize() {
         FacesContext context = FacesContext.getCurrentInstance();
         Skin skin = SkinFactory.getInstance(context).getSkin(context);
         Skin defaultSkin = SkinFactory.getInstance(context).getDefaultSkin(context);
 
         this. = skin.getColorParameter(context, Skin.HEADER_BACKGROUND_COLOR);
         if (this. == null) {
             this. = defaultSkin.getColorParameter(context, Skin.HEADER_BACKGROUND_COLOR);
         }
 
         this. = skin.getColorParameter(context, Skin.SELECT_CONTROL_COLOR);
         if (this. == null) {
             this. = defaultSkin.getColorParameter(context, Skin.SELECT_CONTROL_COLOR);
         }
     }
 
     public boolean isTransient() {
         return false;
     }
 
     public void writeState(FacesContext contextDataOutput dataOutputthrows IOException {
         dataOutput.writeInt(this.);
         dataOutput.writeInt(this.);
     }
 
     public void readState(FacesContext contextDataInput dataInputthrows IOException {
         this. = dataInput.readInt();
         this. = dataInput.readInt();
     }
 
     protected BufferedImage createImage(int widthint height) {
         return new BufferedImage(widthheight.);
     }
 
     public void paint(Graphics2D graphics2d) {
         BufferedImage image = paintImage();
        Dimension dimension = getDimension();
        graphics2d.drawImage(image, 0, 0, dimension.widthdimension.heightnull);
    }
    public BufferedImage paintImage() {
        BufferedImage image = createImage(16, 16);
        Graphics2D g2d = image.createGraphics();
        Color borderColor = new Color(this.);
        Color activeColor = new Color(this.);
        g2d.setStroke(new BasicStroke(1));
        int w = 16;
        int h = 16;
        // Draw Border
        g2d.setColor(borderColor);
        Rectangle2D border = new Rectangle2D.Double(1, 1, w - 3, h - 3);
        RoundRectangle2D round = new RoundRectangle2D.Double(1, 1, w - 3, h - 3, 2, 2);
        g2d.draw(round);
        Color lightBlue = new Color(216, 226, 240);
        Paint gradient1 = new GradientPaint(w - 4, h - 4, lightBlue, 2, 2, .);
        g2d.setPaint(gradient1);
        border = new Rectangle2D.Double(2, 2, w - 4, h - 4);
        g2d.fill(border);
        border = new Rectangle2D.Double(3, 3, w - 6, h - 6);
        gradient1 = new GradientPaint(3, 3, lightBluew - 6, h - 6, borderColor);
        g2d.setPaint(gradient1);
        g2d.fill(border);
        g2d.setColor(.);
        g2d.drawLine(3, 6, 3, 11);
        g2d.drawLine(5, 6, 5, 11);
        g2d.drawLine(7, 6, 7, 11);
        g2d.drawLine(9, 6, 9, 11);
        g2d.drawLine(11, 6, 11, 11);
        // Draw orange rectangle
        border = new Rectangle2D.Double(3, 3, 10, 3);
        g2d.setColor(.);
        g2d.fill(border);
        Color c = new Color(activeColor.getRed(), activeColor.getGreen(), activeColor.getBlue(), 100);
        Color c2 = new Color(activeColor.getRed(), activeColor.getGreen(), activeColor.getBlue(), 200);
        gradient1 = new GradientPaint(12, 4, activeColor, 4, 7, c2);
        g2d.setPaint(gradient1);
        g2d.fill(border);
        // g2d.setColor(activeColor);
        c = new Color(activeColor.getRed(), activeColor.getGreen(), activeColor.getBlue(), 150);
        c2 = new Color(activeColor.getRed(), activeColor.getGreen(), activeColor.getBlue(), 200);
        border = new Rectangle2D.Double(4, 4, 8, 1);
        g2d.setColor(.);
        g2d.fill(border);
        gradient1 = new GradientPaint(4, 4, c, 10, 4, c2);
        // g2d.setPaint(gradient1);
        g2d.setColor(c);
        g2d.fill(border);
        g2d.dispose();
        return image;
    }
New to GrepCode? Check out our FAQ X