Author: mgrigorov
Date: Sun Mar 13 20:47:57 2011
New Revision: 1081218
URL: http://svn.apache.org/viewvc?rev=1081218&view=rev
Log:
WICKET-3456 Would like a renderCSS method in IHeaderResponse
Add #renderCSS(CharSequence, String) method to be consistent with
#renderJavaScript(CharSequence, String).
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/DecoratingHeaderResponse.java
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/IHeaderResponse.java
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/internal/HeaderResponse.java
wicket/trunk/wicket-examples/src/main/java/org/apache/wicket/examples/resourcedecoration/GroupingAndFilteringHeaderResponse.java
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/DecoratingHeaderResponse.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/DecoratingHeaderResponse.java?rev=1081218&r1=1081217&r2=1081218&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/DecoratingHeaderResponse.java
(original)
+++
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/DecoratingHeaderResponse.java
Sun Mar 13 20:47:57 2011
@@ -93,6 +93,11 @@ public abstract class DecoratingHeaderRe
realResponse.renderCSSReference(reference);
}
+ public void renderCSS(CharSequence css, String id)
+ {
+ realResponse.renderCSS(css, id);
+ }
+
public void renderCSSReference(String url)
{
realResponse.renderCSSReference(url);
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/IHeaderResponse.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/IHeaderResponse.java?rev=1081218&r1=1081217&r2=1081218&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/IHeaderResponse.java
(original)
+++
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/IHeaderResponse.java
Sun Mar 13 20:47:57 2011
@@ -100,6 +100,20 @@ public interface IHeaderResponse extends
public void renderJavaScript(CharSequence javascript, String id);
/**
+ * Renders CSS code to the response, if the CSS has not already been
rendered.
+ *
+ * the necessary surrounding <style> tags will be added to the
output.
+ *
+ * @param css
+ * css content to be rendered.
+ *
+ * @param id
+ * unique id for the <style> element. This can be
<code>null</code>, however in
+ * that case the ajax header contribution can't detect
duplicate CSS fragments.
+ */
+ void renderCSS(CharSequence css, String id);
+
+ /**
* Writes a CSS reference, if the specified reference hasn't been
rendered yet.
*
* @param reference
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/internal/HeaderResponse.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/internal/HeaderResponse.java?rev=1081218&r1=1081217&r2=1081218&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/internal/HeaderResponse.java
(original)
+++
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/internal/HeaderResponse.java
Sun Mar 13 20:47:57 2011
@@ -32,6 +32,7 @@ import org.apache.wicket.request.mapper.
import org.apache.wicket.request.resource.ResourceReference;
import org.apache.wicket.response.NullResponse;
import org.apache.wicket.util.lang.Args;
+import org.apache.wicket.util.string.CssUtils;
import org.apache.wicket.util.string.JavaScriptUtils;
import org.apache.wicket.util.string.Strings;
@@ -56,6 +57,23 @@ public abstract class HeaderResponse imp
rendered.add(object);
}
+ public void renderCSS(CharSequence css, String id)
+ {
+ if (css == null)
+ {
+ throw new IllegalArgumentException("css cannot be
null");
+ }
+ if (!closed)
+ {
+ List<String> token = Arrays.asList(css.toString(), id);
+ if (wasRendered(token) == false)
+ {
+ renderString(CssUtils.INLINE_OPEN_TAG + css +
CssUtils.INLINE_CLOSE_TAG);
+ markRendered(token);
+ }
+ }
+ }
+
/**
* @see
org.apache.wicket.markup.html.IHeaderResponse#renderCSSReference(org.apache.wicket.request.resource.ResourceReference)
*/
Modified:
wicket/trunk/wicket-examples/src/main/java/org/apache/wicket/examples/resourcedecoration/GroupingAndFilteringHeaderResponse.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-examples/src/main/java/org/apache/wicket/examples/resourcedecoration/GroupingAndFilteringHeaderResponse.java?rev=1081218&r1=1081217&r2=1081218&view=diff
==============================================================================
---
wicket/trunk/wicket-examples/src/main/java/org/apache/wicket/examples/resourcedecoration/GroupingAndFilteringHeaderResponse.java
(original)
+++
wicket/trunk/wicket-examples/src/main/java/org/apache/wicket/examples/resourcedecoration/GroupingAndFilteringHeaderResponse.java
Sun Mar 13 20:47:57 2011
@@ -86,4 +86,10 @@ public class GroupingAndFilteringHeaderR
super.close();
}
+ @Override
+ public void renderCSS(CharSequence css, String id)
+ {
+ groupingHeaderResponse.renderCSS(css, id);
+ }
+
}