Package org.richfaces.renderkit.html.iconimages

Source Code of org.richfaces.renderkit.html.iconimages.ScrollableDataTableIconBasic

package org.richfaces.renderkit.html.iconimages;

import java.awt.Color;
import java.awt.Dimension;
import java.util.Date;

import javax.faces.context.FacesContext;

import org.ajax4jsf.resource.GifRenderer;
import org.ajax4jsf.resource.InternetResourceBuilder;
import org.ajax4jsf.resource.Java2Dresource;
import org.ajax4jsf.resource.ResourceContext;
import org.ajax4jsf.util.HtmlColor;
import org.ajax4jsf.util.Zipper;
import org.richfaces.skin.Skin;
import org.richfaces.skin.SkinFactory;

public abstract class ScrollableDataTableIconBasic extends Java2Dresource {

  public ScrollableDataTableIconBasic() {
    setRenderer(new GifRenderer());
    setLastModified(new Date(InternetResourceBuilder.getInstance().getStartTime()));
  }

  public Dimension getDimensions(FacesContext facesContext, Object data) {
    return calculateDimensions();
  }
  protected Dimension getDimensions(ResourceContext resourceContext) {
    return calculateDimensions();
  }
 
  protected Object deserializeData(byte[] objectArray) {
    if (objectArray == null) {
      return null;
    }
   
    Object [] stored = new Object[2];
    stored[0] = new Color(Zipper.unzip(objectArray, 0));
    stored[1] = new Color(Zipper.unzip(objectArray, 3));
   
    return stored;
  }
 
  public abstract Dimension calculateDimensions();
 
 
  protected Object getDataToStore(FacesContext context, Object data) {
    Skin skin = SkinFactory.getInstance().getSkin(context);
    Skin defaultSkin = SkinFactory.getInstance().getDefaultSkin(context);
   
    Color col = null;
   
    String skinParameter = "headerTextColor";
    String headerTextColor = (String) skin.getParameter(context, skinParameter);
    if (null == headerTextColor || "".equals(headerTextColor))
      headerTextColor = (String) defaultSkin.getParameter(context, skinParameter);
   
    if (headerTextColor == null) {
      return null;
    }
   
    col = HtmlColor.decode(headerTextColor);
   
    byte[] ret = new byte[6];
    Zipper.zip(ret, col.getRGB(), 0);
   
    skinParameter = "headerBackgroundColor";
    String headerBackgroundColor = (String) skin.getParameter(context, skinParameter);
    if (null == headerBackgroundColor || "".equals(headerBackgroundColor))
      headerBackgroundColor = (String) defaultSkin.getParameter(context, skinParameter);
   
    if (headerBackgroundColor == null) {
      return null;
    }
   
    col = HtmlColor.decode(headerBackgroundColor);
   
    Zipper.zip(ret, col.getRGB(), 3);
   
    return ret;
  }
}
TOP

Related Classes of org.richfaces.renderkit.html.iconimages.ScrollableDataTableIconBasic

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.