[jboss-cvs] jboss-seam/src/pdf/org/jboss/seam/pdf/ui ...
Norman Richards
norman.richards at jboss.com
Fri Mar 30 19:09:53 EDT 2007
User: nrichards
Date: 07/03/30 19:09:53
Modified: src/pdf/org/jboss/seam/pdf/ui ITextComponent.java
UIImage.java
Log:
JBSEAM-1072: make pdf images use seam image support
Revision Changes Path
1.12 +1 -0 jboss-seam/src/pdf/org/jboss/seam/pdf/ui/ITextComponent.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ITextComponent.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/pdf/org/jboss/seam/pdf/ui/ITextComponent.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- ITextComponent.java 8 Mar 2007 17:40:13 -0000 1.11
+++ ITextComponent.java 30 Mar 2007 23:09:53 -0000 1.12
@@ -142,6 +142,7 @@
Object defaultValue) {
Object value = defaultValue;
ValueBinding binding = getValueBinding(property);
+
if (binding != null) {
value = binding.getValue(context);
}
1.14 +37 -41 jboss-seam/src/pdf/org/jboss/seam/pdf/ui/UIImage.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: UIImage.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/pdf/org/jboss/seam/pdf/ui/UIImage.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- UIImage.java 20 Feb 2007 04:14:20 -0000 1.13
+++ UIImage.java 30 Mar 2007 23:09:53 -0000 1.14
@@ -1,11 +1,14 @@
package org.jboss.seam.pdf.ui;
import org.jboss.seam.pdf.ITextUtils;
+import org.jboss.seam.ui.graphicImage.ImageTransform;
+import javax.faces.component.UIComponent;
import javax.faces.context.*;
-import java.net.MalformedURLException;
-import java.net.URL;
+import java.awt.image.BufferedImage;
+import java.io.IOException;
+import java.util.List;
import com.lowagie.text.*;
@@ -16,7 +19,7 @@
Image image;
- String resource;
+ Object value;
float rotation;
float height;
float width;
@@ -37,8 +40,8 @@
java.awt.Image imageData;
- public void setResource(String resource) {
- this.resource = resource;
+ public void setValue(Object value) {
+ this.value = value;
}
public void setRotation(float rotation) {
@@ -101,7 +104,7 @@
this.scalePercent = scalePercent;
}
- public void setImageData(java.awt.Image imageData) {
+ public void setValue(java.awt.Image imageData) {
this.imageData = imageData;
}
@@ -117,42 +120,35 @@
}
- private Image createFromResource(FacesContext context, String resource) {
- URL url;
+ @SuppressWarnings("unchecked")
+ @Override
+ public void createITextObject(FacesContext context) {
+ value = valueBinding(context, "value", value);
+
+ // instance() doesn't work here - we need a new instance
+ org.jboss.seam.core.Image seamImage = new org.jboss.seam.core.Image();
+
try {
- url = context.getExternalContext().getResource(resource);
- } catch (MalformedURLException e) {
- throw new RuntimeException(e);
+ if (value instanceof BufferedImage) {
+ seamImage.setBufferedImage((BufferedImage)value);
+ } else {
+ seamImage.setInput(value);
}
- if (url == null) {
- throw new RuntimeException("cannot locate image resource " + resource);
- }
- try {
- return Image.getInstance(url);
- } catch (Exception e) {
- throw new RuntimeException(e);
+ for (UIComponent cmp : (List<UIComponent>) this.getChildren()) {
+ if (cmp instanceof ImageTransform) {
+ ImageTransform imageTransform = (ImageTransform) cmp;
+ imageTransform.applyTransform(seamImage);
}
}
- private Image createFromImage(java.awt.Image awtImage) {
- try {
- return Image.getInstance(awtImage, null);
- } catch (Exception e) {
+ image = Image.getInstance(seamImage.getImage());
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ } catch (BadElementException e) {
throw new RuntimeException(e);
}
- }
-
- @Override
- public void createITextObject(FacesContext context) {
- resource = (String) valueBinding(context,"resource", resource);
- if (resource != null) {
- image = createFromResource(context, resource);
- } else {
- imageData = (java.awt.Image) valueBinding(context, "imageData", imageData);
- image = createFromImage(imageData);
- }
rotation = (Float) valueBinding(context, "rotation", rotation);
if (rotation != 0) {
More information about the jboss-cvs-commits
mailing list