Author: alexsmirnov
Date: 2009-04-27 14:19:08 -0400 (Mon, 27 Apr 2009)
New Revision: 13887
Added:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomLeft.java
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomRight.java
Modified:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/BaseShadowGradient.java
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundLeft.java
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowFooterBackground.java
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowHeaderBackground.java
trunk/samples/themes/src/main/resources/org/richfaces/renderkit/html/css/smooth.xcss
Log:
make smooth shadow semi-transparent
Modified:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/BaseShadowGradient.java
===================================================================
---
trunk/samples/themes/src/main/java/org/richfaces/theme/images/BaseShadowGradient.java 2009-04-27
15:17:46 UTC (rev 13886)
+++
trunk/samples/themes/src/main/java/org/richfaces/theme/images/BaseShadowGradient.java 2009-04-27
18:19:08 UTC (rev 13887)
@@ -13,6 +13,8 @@
protected static class ShadowData extends BaseGradient.Data {
private Integer shadowColor;
+
+ private Integer borderColor;
/**
* @return the shadowColor
@@ -31,11 +33,25 @@
@Override
public byte[] toByteArray() {
byte[] bs = super.toByteArray();
- byte[] result = new byte[(bs != null ? bs.length : 0) + 4];
- new Zipper2(result).addInt(shadowColor).addBytes(bs);
+ byte[] result = new byte[(bs != null ? bs.length : 0) + 8];
+ new Zipper2(result).addInt(shadowColor).addInt(borderColor).addBytes(bs);
return result;
}
+
+ /**
+ * @return the borderColor
+ */
+ protected Integer getBorderColor() {
+ return borderColor;
+ }
+
+ /**
+ * @param borderColor the borderColor to set
+ */
+ protected void setBorderColor(Integer borderColor) {
+ this.borderColor = borderColor;
+ }
}
@@ -94,8 +110,14 @@
super(horizontal);
}
- protected abstract String getShadowColor();
+ protected String getShadowColor() {
+ return "shadowBackgroundColor";
+ }
+ protected String getBorderColor(){
+ return "panelBorderColor";
+ }
+
@Override
protected Data createData() {
return new ShadowData();
@@ -106,15 +128,21 @@
super.saveData(context, data, parameterData);
ShadowData d = ((ShadowData) data);
d.setShadowColor(getShadowColor(context));
+ d.setBorderColor(getBorderColor(context));
}
protected Integer getShadowColor(FacesContext context) {
return getColorValueParameter(context, getShadowColor(), false);
}
+ protected Integer getBorderColor(FacesContext context) {
+ return getColorValueParameter(context, getBorderColor(), false);
+ }
+
protected void restoreData(Data data, Zipper2 zipper2) {
if (zipper2.hasMore()) {
((ShadowData) data).setShadowColor(zipper2.nextInt());
+ ((ShadowData) data).setBorderColor(zipper2.nextInt());
super.restoreData(data, zipper2);
}
}
Added:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomLeft.java
===================================================================
---
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomLeft.java
(rev 0)
+++
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomLeft.java 2009-04-27
18:19:08 UTC (rev 13887)
@@ -0,0 +1,27 @@
+/**
+ *
+ */
+package org.richfaces.theme.images;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Graphics2D;
+
+/**
+ * @author asmirnov
+ *
+ */
+public class ShadowBackgroundButtomLeft extends ShadowBackgroundLeft {
+
+ public ShadowBackgroundButtomLeft() {
+ super(1);
+ }
+
+ @Override
+ protected void paintBackground(Graphics2D g2d, Data data) {
+ Dimension dimensions = getDimensions(null);
+ g2d.setColor(new Color(data.getHeaderGradientColor()));
+ g2d.fillRect(0, 0, dimensions.width, dimensions.height);
+ }
+
+}
Property changes on:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomLeft.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomRight.java
===================================================================
---
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomRight.java
(rev 0)
+++
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomRight.java 2009-04-27
18:19:08 UTC (rev 13887)
@@ -0,0 +1,14 @@
+package org.richfaces.theme.images;
+
+import java.awt.Graphics2D;
+
+
+public class ShadowBackgroundButtomRight extends ShadowBackgroundButtomLeft {
+ @Override
+ protected void paintGradient(Graphics2D g2d, Data data) {
+ //x -> -x, y -> y
+ g2d.transform(createFlipTransform());
+ super.paintGradient(g2d, data);
+ }
+
+}
Property changes on:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundButtomRight.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundLeft.java
===================================================================
---
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundLeft.java 2009-04-27
15:17:46 UTC (rev 13886)
+++
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowBackgroundLeft.java 2009-04-27
18:19:08 UTC (rev 13887)
@@ -5,6 +5,7 @@
import java.awt.Color;
import java.awt.Dimension;
+import java.awt.GradientPaint;
import java.awt.Graphics2D;
@@ -15,30 +16,34 @@
public class ShadowBackgroundLeft extends BaseShadowGradient {
+ public ShadowBackgroundLeft(int height) {
+ super(15, height, height, "headerBackgroundColor",
"headerGradientColor");
+ }
+
public ShadowBackgroundLeft() {
- super(15, 15, 15,"panelBorderColor","headerBackgroundColor",
false);
+ this(450);
}
-
+
@Override
protected void paintGradient(Graphics2D g2d, Data data) {
+ paintBackground(g2d, data);
ShadowData shadowData = (ShadowData) data;
Dimension dimensions = getDimensions(null);
if(null != shadowData.getShadowColor()){
- g2d.setColor(new Color(shadowData.getShadowColor()));
- g2d.fillRect(0, 0, (int) MARGIN, dimensions.height);
+// g2d.setColor(new Color(shadowData.getShadowColor()));
+ GradientPaint gragient = new GradientPaint( 2.0f,0.0f, new
Color(shadowData.getShadowColor()&0xffffff,true),(float) MARGIN*2, 0, new
Color(shadowData.getShadowColor()));
+ g2d.setPaint(gragient);
+ g2d.fillRect(2, 0, (int) (MARGIN*2.0), dimensions.height);
}
- if(null != shadowData.getHeaderBackgroundColor()){
- g2d.setColor(new Color(shadowData.getHeaderBackgroundColor()));
+ if(null != shadowData.getBorderColor()){
+ g2d.setColor(new Color(shadowData.getBorderColor()));
g2d.fillRect((int) MARGIN, 0, (int) (dimensions.width-MARGIN), dimensions.height);
}
}
- /* (non-Javadoc)
- * @see org.richfaces.theme.images.BaseShadowGradient#getShadowColor()
- */
- @Override
- protected String getShadowColor() {
- return "shadowBackgroundColor";
+
+ protected void paintBackground(Graphics2D g2d, Data data) {
+ super.paintGradient(g2d, data);
}
}
Modified:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowFooterBackground.java
===================================================================
---
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowFooterBackground.java 2009-04-27
15:17:46 UTC (rev 13886)
+++
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowFooterBackground.java 2009-04-27
18:19:08 UTC (rev 13887)
@@ -5,6 +5,7 @@
import java.awt.Color;
import java.awt.Dimension;
+import java.awt.GradientPaint;
import java.awt.Graphics2D;
import java.awt.geom.RoundRectangle2D;
@@ -29,7 +30,10 @@
ShadowData shadowData = (ShadowData) data;
if(null != shadowData.getShadowColor()){
g2d.setColor(new Color(shadowData.getShadowColor()));
- g2d.fillRect(0, (int) (dim.height-MARGIN), getDimensions(null).width, (int) MARGIN);
+// g2d.fillRect(0, (int) (dim.height-MARGIN), dim.width, (int) MARGIN);
+ GradientPaint gragient = new GradientPaint(0.0f, (float) (dim.getHeight()-2.0f),
new Color(shadowData.getHeaderGradientColor()), 0.0f, (float)(dim.getHeight()-MARGIN*2),
new Color(shadowData.getShadowColor()));
+ g2d.setPaint(gragient);
+ g2d.fillRect(0, (int) (dim.height-MARGIN), dim.width, (int) MARGIN);
}
g2d.translate(0.0, -MARGIN);
paintGradientContent(g2d, data);
@@ -40,8 +44,4 @@
super.paintGradient(g2d, data);
}
- @Override
- protected String getShadowColor() {
- return "shadowBackgroundColor";
- }
}
Modified:
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowHeaderBackground.java
===================================================================
---
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowHeaderBackground.java 2009-04-27
15:17:46 UTC (rev 13886)
+++
trunk/samples/themes/src/main/java/org/richfaces/theme/images/ShadowHeaderBackground.java 2009-04-27
18:19:08 UTC (rev 13887)
@@ -5,6 +5,7 @@
import java.awt.Color;
import java.awt.Dimension;
+import java.awt.GradientPaint;
import java.awt.Graphics2D;
import java.awt.geom.RoundRectangle2D;
@@ -25,8 +26,10 @@
// Shadow
ShadowData shadowData = (ShadowData) data;
if(null != shadowData.getShadowColor()){
- g2d.setColor(new Color(shadowData.getShadowColor()));
- g2d.fillRect(0, 0, getDimensions(null).width, (int) MARGIN);
+// g2d.setColor(new Color(shadowData.getHeaderGradientColor()));
+ GradientPaint gragient = new GradientPaint(0.0f, 2.0f, new
Color(shadowData.getHeaderGradientColor()), 0, (float) MARGIN*2, new
Color(shadowData.getShadowColor()));
+ g2d.setPaint(gragient);
+ g2d.fillRect(0, 0, getDimensions(null).width, (int) MARGIN);
}
g2d.translate(0.0, MARGIN);
// Paint gradient itself
@@ -50,8 +53,4 @@
}
}
- @Override
- protected String getShadowColor() {
- return "shadowBackgroundColor";
- }
}
Modified:
trunk/samples/themes/src/main/resources/org/richfaces/renderkit/html/css/smooth.xcss
===================================================================
---
trunk/samples/themes/src/main/resources/org/richfaces/renderkit/html/css/smooth.xcss 2009-04-27
15:17:46 UTC (rev 13886)
+++
trunk/samples/themes/src/main/resources/org/richfaces/renderkit/html/css/smooth.xcss 2009-04-27
18:19:08 UTC (rev 13887)
@@ -107,7 +107,7 @@
<u:selector name=".left_col">
<u:style name="background-image">
<!-- images/bg_header.png -->
- <f:resource f:key="org.richfaces.theme.images.ShadowBackgroundLeft"/>
+ <f:resource
f:key="org.richfaces.theme.images.ShadowBackgroundButtomLeft"/>
</u:style>
<!-- u:style name="background-color"
skin="panelBorderColor"/-->
<u:style name="background-repeat" value="repeat-y"/>
@@ -120,19 +120,20 @@
<f:resource f:key="org.richfaces.theme.images.ShadowBackgroundLeft"/>
</u:style>
<!-- u:style name="background-color"
skin="panelBorderColor"/-->
- <u:style name="background-repeat" value="repeat-y"/>
- <u:style name="background-position" value="buttom left"/>
- <u:style name="width" value="14px"/>
+ <u:style name="background-repeat" value="no-repeat"/>
+ <u:style name="background-position" value="top left"/>
+ <u:style name="width" value="15px"/>
+ <u:style name="height" value="100%"/>
</u:selector>
<u:selector name=".right_col">
<u:style name="background-image">
<!-- images/bg_header.png -->
- <f:resource
f:key="org.richfaces.theme.images.ShadowBackgroundRight"/>
+ <f:resource
f:key="org.richfaces.theme.images.ShadowBackgroundButtomRight"/>
</u:style>
<!-- u:style name="background-color"
skin="panelBorderColor"/-->
<u:style name="background-repeat" value="repeat-y"/>
- <u:style name="background-position" value="top right"/>
+ <u:style name="background-position" value="buttom right"/>
<u:style name="vertical-align" value="top"/>
</u:selector>
<u:selector name=".right_strut">
@@ -141,9 +142,10 @@
<f:resource
f:key="org.richfaces.theme.images.ShadowBackgroundRight"/>
</u:style>
<!-- u:style name="background-color"
skin="panelBorderColor"/-->
- <u:style name="background-repeat" value="repeat-y"/>
- <u:style name="background-position" value="buttom right"/>
- <u:style name="width" value="14px"/>
+ <u:style name="background-repeat" value="no-repeat"/>
+ <u:style name="background-position" value="top right"/>
+ <u:style name="width" value="15px"/>
+ <u:style name="height" value="100%"/>
</u:selector>
<f:verbatim>