This is pretty nice :).
What would be the target solution (1.1)? I understand that wicket
parser would automatically detect insertion points (like head, css
definitions, javascript, body, etc.) , so that the user would not have
to add any extra components. Is that correct?
Why don't you want to include that in 1.0? If it is the question of
team's bandwidth, I can try to help you with this. This would be a
great feature...
Kamil
On Mon, 07 Feb 2005 15:45:53 +0100, Eelco Hillenius
<[EMAIL PROTECTED]> wrote:
> To give you an idea, this is a simple trick we use in our current
> project. We have a default set of stylesheets, but we also have
> components that use additional stylesheets. These components can
> implement 'HeaderContributor' and provide additional stylesheets. The
> stylesheets are set in the page using a simple ListView component.
>
> See code, hope it gives you an idea ;)
>
> <head>
> <link id="wicket-styles" rel="stylesheet" type="text/css"
> href="wehkamp.css" ></link>
> ...
>
> public class MainPage extends HtmlPage
> {
> /** default styles. */
> private static final List DEFAULT_STYLES = new ArrayList(1);
> static {
> DEFAULT_STYLES.add("wehkamp.css");
> }
>
> public MainPage()
> {
> add(new StylesListView("styles", new StylesModel()));
> ...
>
> private static final class StylesListView extends ListView
> {
> public StylesListView(String name, IModel model)
> {
> super(name, model);
> }
>
> protected void populateItem(ListItem listItem)
> {
> String style = (String)listItem.getModelObject();
> listItem.add(new AttributeModifier("href", new Model(style)));
> }
>
> protected void handleRender()
> {
> removeAll();
> super.handleRender();
> }
> }
>
> private final class StylesModel extends Model
> {
> public Object getObject()
> {
> final List styles = new ArrayList();
> styles.addAll(DEFAULT_STYLES);
> MainPage.this.visitChildren(HeaderContributor.class, new
> IVisitor()
> {
> public Object component(final Component component)
> {
>
> styles.addAll(((HeaderContributor)component).getCSSStyleHrefs());
> return CONTINUE_TRAVERSAL;
> }
> });
> return styles;
> }
> }
>
> public interface HeaderContributor
> {
> List getCSSStyleHrefs();
> }
>
> Eelco
>
>
> Juergen Donnerstag wrote:
>
> >Kamil,
> >
> >yes there has been a discussion around it and we decided not to put it
> >into 1.0. The workarounds I can think of:
> >
> >a) simply put the reference to *.js into the header section of your
> >page markup or inline it. You're component than doesn't know anything
> >about it, but would rely on it. I know that this approach is not super
> >elegant (javascript and component disconnected), but it is easy and it
> >works.
> >
> >b) your component may have a <div id="wicket-myscript"> region
> >(actually a HtmlContainer), which you yourself
> >setVisible(true/false).The region may contain the inline javascript.
> >
> >c) Eelco has designed some components in order to tests his ideas.
> >Sorry, but I forgot how exactly they work (please scan the mail
> >archiv). May be he provides an example to you
> >
> >Juergen
> >
> >On Mon, 7 Feb 2005 13:56:16 +0100, Kamil Rembalski <[EMAIL PROTECTED]> wrote:
> >
> >
> >>Hi guys,
> >>
> >>I am trying to create a popup calendar component, which involves
> >>massive javascript. I remember a discussion about special markup
> >>elements that would allow the components to render some parts of their
> >>markup only once per page and in the given section. Was there any
> >>progress on this since then? I can't think of any elegant workaround
> >>and I can't do without it... This may quite an issue for some
> >>components...
> >>
> >>Cheers,
> >>Kamil
> >>
> >>-------------------------------------------------------
> >>This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
> >>Tool for open source databases. Create drag-&-drop reports. Save time
> >>by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
> >>Download a FREE copy at http://www.intelliview.com/go/osdn_nl
> >>_______________________________________________
> >>Wicket-develop mailing list
> >>[email protected]
> >>https://lists.sourceforge.net/lists/listinfo/wicket-develop
> >>
> >>
> >>
> >
> >
> >-------------------------------------------------------
> >This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
> >Tool for open source databases. Create drag-&-drop reports. Save time
> >by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
> >Download a FREE copy at http://www.intelliview.com/go/osdn_nl
> >_______________________________________________
> >Wicket-develop mailing list
> >[email protected]
> >https://lists.sourceforge.net/lists/listinfo/wicket-develop
> >
> >
>
> -------------------------------------------------------
> This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
> Tool for open source databases. Create drag-&-drop reports. Save time
> by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
> Download a FREE copy at http://www.intelliview.com/go/osdn_nl
> _______________________________________________
> Wicket-develop mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/wicket-develop
>
-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
Wicket-develop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-develop