[richfaces-svn-commits] JBoss Rich Faces SVN: r2317 - in trunk/ui: calendar/src/main/java/org/richfaces/renderkit/html and 3 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Fri Aug 17 09:18:25 EDT 2007
Author: maksimkaszynski
Date: 2007-08-17 09:18:25 -0400 (Fri, 17 Aug 2007)
New Revision: 2317
Added:
trunk/ui/calendar/src/main/java/org/richfaces/renderkit/html/
trunk/ui/calendar/src/main/java/org/richfaces/renderkit/html/iconimages/
trunk/ui/calendar/src/main/java/org/richfaces/renderkit/html/iconimages/CalendarIcon.java
Modified:
trunk/ui/calendar/src/main/templates/org/richfaces/htmlCalendar.jspx
trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/iconimages/ScrollableDataTableIconBasic.java
Log:
http://jira.jboss.com/jira/browse/RF-618
Added: trunk/ui/calendar/src/main/java/org/richfaces/renderkit/html/iconimages/CalendarIcon.java
===================================================================
--- trunk/ui/calendar/src/main/java/org/richfaces/renderkit/html/iconimages/CalendarIcon.java (rev 0)
+++ trunk/ui/calendar/src/main/java/org/richfaces/renderkit/html/iconimages/CalendarIcon.java 2007-08-17 13:18:25 UTC (rev 2317)
@@ -0,0 +1,188 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library 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 library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces.renderkit.html.iconimages;
+
+import java.awt.BasicStroke;
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.GradientPaint;
+import java.awt.Graphics2D;
+import java.awt.Paint;
+import java.awt.RenderingHints;
+import java.awt.geom.Rectangle2D;
+import java.awt.geom.RoundRectangle2D;
+import java.awt.image.BufferedImage;
+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.richfaces.skin.Skin;
+import org.richfaces.skin.SkinFactory;
+
+/**
+ * @author Maksim Kaszynski
+ *
+ */
+public class CalendarIcon extends Java2Dresource {
+
+ private static Dimension dimension = new Dimension(20, 20);
+
+ /**
+ *
+ */
+ public CalendarIcon() {
+ setRenderer(new GifRenderer());
+ setLastModified(new Date(InternetResourceBuilder.getInstance().getStartTime()));
+
+ }
+
+ /* (non-Javadoc)
+ * @see org.ajax4jsf.resource.Java2Dresource#getDimensions(javax.faces.context.FacesContext, java.lang.Object)
+ */
+ public Dimension getDimensions(FacesContext facesContext, Object data) {
+ // TODO Auto-generated method stub
+ return dimension;
+ }
+
+ /* (non-Javadoc)
+ * @see org.ajax4jsf.resource.Java2Dresource#getDimensions(org.ajax4jsf.resource.ResourceContext)
+ */
+ protected Dimension getDimensions(ResourceContext resourceContext) {
+ // TODO Auto-generated method stub
+ return dimension;
+ }
+
+ protected Object getDataToStore(FacesContext context, Object data) {
+ Skin skin = SkinFactory.getInstance().getSkin(context);
+ Skin defaultSkin = SkinFactory.getInstance().getDefaultSkin(context);
+
+ Object [] stored = new Object[2];
+
+ Color col = null;
+
+ String skinParameter = "headerBackgroundColor";
+ String headerTextColor = (String) skin.getParameter(context, skinParameter);
+ if (null == headerTextColor || "".equals(headerTextColor))
+ headerTextColor = (String) defaultSkin.getParameter(context, skinParameter);
+ col = HtmlColor.decode(headerTextColor);
+
+ stored[0] = col;
+
+ skinParameter = "selectControlColor";
+ String headerBackgroundColor = (String) skin.getParameter(context, skinParameter);
+ if (null == headerBackgroundColor || "".equals(headerBackgroundColor))
+ headerBackgroundColor = (String) defaultSkin.getParameter(context, skinParameter);
+ col = HtmlColor.decode(headerBackgroundColor);
+
+ stored[1] = col;
+
+ return stored;
+ }
+
+
+ public void paint(ResourceContext context, Graphics2D graphics) {
+ Object[] stored = (Object[]) restoreData(context);
+ Dimension dim = getDimensions(context);
+ BufferedImage image = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB);
+
+ Graphics2D g2d = image.createGraphics();
+
+ Color borderColor = (Color) stored[0];//new Color(((Integer) stored[0]).intValue());
+ Color activeColor = (Color) stored[1];//new Color(((Integer) stored[1]).intValue());
+
+
+ g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
+ g2d.setRenderingHint(RenderingHints.KEY_COLOR_RENDERING, RenderingHints.VALUE_COLOR_RENDER_QUALITY);
+
+ 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, Color.white);
+ 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, lightBlue , w - 6, h - 6, borderColor);
+ g2d.setPaint(gradient1);
+ g2d.fill(border);
+
+ g2d.setColor(Color.white);
+ 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(Color.white);
+ 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(Color.white);
+ g2d.fill(border);
+
+ gradient1 = new GradientPaint(4, 4, c, 10, 4, c2);
+ //g2d.setPaint(gradient1);
+ g2d.setColor(c);
+ g2d.fill(border);
+
+ g2d.dispose();
+
+ graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
+ graphics.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);
+ graphics.drawImage(image, 0, 0, dim.width, dim.height, null);
+
+ }
+
+}
Modified: trunk/ui/calendar/src/main/templates/org/richfaces/htmlCalendar.jspx
===================================================================
--- trunk/ui/calendar/src/main/templates/org/richfaces/htmlCalendar.jspx 2007-08-17 13:13:29 UTC (rev 2316)
+++ trunk/ui/calendar/src/main/templates/org/richfaces/htmlCalendar.jspx 2007-08-17 13:18:25 UTC (rev 2317)
@@ -107,7 +107,7 @@
]]>
</jsp:scriptlet>
-
+ <f:resource name="org.richfaces.renderkit.html.iconimages.CalendarIcon" var="icon" />
<span
id="#{clientId}Popup"
> <input
@@ -129,16 +129,17 @@
tabindex="#{component.attributes['tabindex']}"
onclick="#{onclick}">
</input>
- <button id="#{clientId}PopupButton"
+ <input id="#{clientId}PopupButton"
accesskey="#{component.attributes['accesskey']}"
name="#{clientId}"
- onclick="$('#{clientId}').component.doExpand();"
+ onclick="$('#{clientId}').component.doExpand();return false;"
style="#{component.attributes['style']}"
tabindex="#{component.attributes['tabindex']}"
- type="button"
- disabled="#{component.attributes['disabled']}">
- #{component.attributes['buttonLabel']}
- </button>
+ type="image"
+ disabled="#{component.attributes['disabled']}"
+ src="#{icon}">
+
+ </input>
</span>
<jsp:scriptlet>
<![CDATA[
Modified: trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/iconimages/ScrollableDataTableIconBasic.java
===================================================================
--- trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/iconimages/ScrollableDataTableIconBasic.java 2007-08-17 13:13:29 UTC (rev 2316)
+++ trunk/ui/scrollableDataTable/src/main/java/org/richfaces/renderkit/html/iconimages/ScrollableDataTableIconBasic.java 2007-08-17 13:18:25 UTC (rev 2317)
@@ -15,19 +15,19 @@
import org.richfaces.skin.SkinFactory;
public abstract class ScrollableDataTableIconBasic extends Java2Dresource {
+
+ static final Dimension dimension = new Dimension(16, 16);
public ScrollableDataTableIconBasic() {
setRenderer(new GifRenderer());
setLastModified(new Date(InternetResourceBuilder.getInstance().getStartTime()));
}
-
- public abstract Dimension calculateDimensions();
-
+
public Dimension getDimensions(FacesContext facesContext, Object data) {
- return calculateDimensions();
+ return dimension;
}
protected Dimension getDimensions(ResourceContext resourceContext) {
- return calculateDimensions();
+ return dimension;
}
protected Object getDataToStore(FacesContext context, Object data) {
@@ -38,19 +38,15 @@
Color col = null;
- if (data!=null){
- col = HtmlColor.decode(data.toString());
- } else {
- String skinParameter = "headerTextColor";
- String headerTextColor = (String) skin.getParameter(context, skinParameter);
- if (null == headerTextColor || "".equals(headerTextColor))
- headerTextColor = (String) defaultSkin.getParameter(context, skinParameter);
- col = HtmlColor.decode(headerTextColor);
- }
+ String skinParameter = "headerTextColor";
+ String headerTextColor = (String) skin.getParameter(context, skinParameter);
+ if (null == headerTextColor || "".equals(headerTextColor))
+ headerTextColor = (String) defaultSkin.getParameter(context, skinParameter);
+ col = HtmlColor.decode(headerTextColor);
stored[0] = col;
- String skinParameter = "headerBackgroundColor";
+ skinParameter = "headerBackgroundColor";
String headerBackgroundColor = (String) skin.getParameter(context, skinParameter);
if (null == headerBackgroundColor || "".equals(headerBackgroundColor))
headerBackgroundColor = (String) defaultSkin.getParameter(context, skinParameter);
More information about the richfaces-svn-commits
mailing list