Re: find html tag

2013-02-12 Thread Michael Jaruska

no way how to modify raw html stream in actual rendering?


On 11.2.2013 11:50, Michael Jaruska wrote:

based on this article:
https://cwiki.apache.org/WICKET/component-rendering.html in section onRender()
it should be possible to modify markup which is going from wicket (e.g. from 
.html file)
and modyfied it send to client.


On 11.2.2013 11:34, Michael Jaruska wrote:

yes, i need that raw html that comes from markup (my .html file which is my 
panel),
in java code i will modify it (one step for put new class) and send it to 
client :-)
as i thnik now i dont need to delete previous step because this modifying isn't 
in
markup. so i just need to modify markup in actual render - modify markup stream.


On 11.2.2013 11:26, Martin Grigorov wrote:

MarkupStream gives you the raw html that comes from the .html file, i.e.
from the template file.
It doesn't give you the html from the previous page render.

You need to send Ajax requests to update the server side state to be in
sync with the client side state (modified by your JS).

On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska michael.jaru...@gmail.com

wrote:



in fact, my panel is menu which is modified by javascript.
i need to keep track of the previous selected entry (to get know
javascript to disable element) and actual element to modify
(add class) for javascript.

javascript need to now at a moment page rendered where is
class which it is looking for.

so i need to modify html markup, modify it on client side by
javascript is not possible.

based on this article:
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
it should be possible modify markup generated by component (my
panel).




On 11.2.2013 10:03, Martin Grigorov wrote:


Hi,

What do you want to do with the markup ?
Maybe you don't need to bother with internals like MarkupStream for
something that may be solved much easier.


On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska 
michael.jaru...@gmail.com


wrote:



  thanks, studied. but in my case not working. i don't know why, where is

my
mistake. try this code:

markup - base page:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
  head
  titlemy test page/title
  meta http-equiv=Content-Type content=text/html;
charset=utf-8
/
  /head
  body
  pmy test page/p
  span wicket:id=myPanel[my test panel]/span
  /body
/html

markup - my test panel:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
wicket:panel
 ul
li
  a href=./mypage.html?cid=menumy item/a

/li
 /ul
/wicket:panel

java - base page:
public class PageBase extends WebPage{
  public PageBase()
  {
  //my panel
  this.add(new MyMenu(myPanel).
setRenderBodyOnly(true));

  }
}

java - panel:
ublic class MyMenu extends Panel{
  public PanelMenu(String id)
  {
  super(id);
  }

  protected void onRender(MarkupStream markupStream){
  while(markupStream.hasMore())
  {
  System.out.println(markupStream.next());

  }
  }
}


i expect on console printed whole html markup for panel, but nothing is
displayed.

any ideas please?



On 10.2.2013 23:21, Sven Meier wrote:

  See BorderBehavior#beforeRender(Component) on how to iterate over

the

markup.

Sven

On 02/10/2013 11:09 PM, Michael Jaruska wrote:

  my quick test:

@Override
protected void onRender()
{
  super.onRender();
  System.out.println(this.getMarkup().toString());

}

get me just top-level tag in my panel, subtags isn't shown. how to get
whole
markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:

  Sure, with #getMarkup() you can get hold of the component's markup.

With a MarkupStream you can iterate over it.

Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:

  again with my question: is it possible to get markup in onRender() of

the component?
have found this article:
https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html




but in onRender() section is just code snippet I'm not understand. is
there more
detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:

  You can use IMarkupFilter to manipulate the raw markup before being

loaded
and used by the components.
See the implementations in Wicket to see what can be done with such
filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
michael.jaru...@gmail.com

  wrote:




   Look at my original post. User clicks on a


href=./mypage.html?cid=menu/*
*submenu/subsubmenu2**subsubmenu2/a, then

I have in String category (java code) value

Re: find html tag

2013-02-12 Thread Martin Grigorov
Hi,

As Sven suggested - BorderBehavior does exactly this.


On Tue, Feb 12, 2013 at 9:08 AM, Michael Jaruska
michael.jaru...@gmail.comwrote:

 no way how to modify raw html stream in actual rendering?



 On 11.2.2013 11:50, Michael Jaruska wrote:

 based on this article:
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.htmlin
  section onRender()
 it should be possible to modify markup which is going from wicket (e.g.
 from .html file)
 and modyfied it send to client.


 On 11.2.2013 11:34, Michael Jaruska wrote:

 yes, i need that raw html that comes from markup (my .html file which is
 my panel),
 in java code i will modify it (one step for put new class) and send it
 to client :-)
 as i thnik now i dont need to delete previous step because this
 modifying isn't in
 markup. so i just need to modify markup in actual render - modify markup
 stream.


 On 11.2.2013 11:26, Martin Grigorov wrote:

 MarkupStream gives you the raw html that comes from the .html file, i.e.
 from the template file.
 It doesn't give you the html from the previous page render.

 You need to send Ajax requests to update the server side state to be in
 sync with the client side state (modified by your JS).

 On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska 
 michael.jaru...@gmail.com

 wrote:


  in fact, my panel is menu which is modified by javascript.
 i need to keep track of the previous selected entry (to get know
 javascript to disable element) and actual element to modify
 (add class) for javascript.

 javascript need to now at a moment page rendered where is
 class which it is looking for.

 so i need to modify html markup, modify it on client side by
 javascript is not possible.

 based on this article:
 https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
 
 it should be possible modify markup generated by component (my
 panel).




 On 11.2.2013 10:03, Martin Grigorov wrote:

  Hi,

 What do you want to do with the markup ?
 Maybe you don't need to bother with internals like MarkupStream for
 something that may be solved much easier.


 On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska 
 michael.jaru...@gmail.com

  wrote:


   thanks, studied. but in my case not working. i don't know why,
 where is

 my
 mistake. try this code:

 markup - base page:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
   head
   titlemy test page/title
   meta http-equiv=Content-Type content=text/html;
 charset=utf-8
 /
   /head
   body
   pmy test page/p
   span wicket:id=myPanel[my test panel]/span
   /body
 /html

 markup - my test panel:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
 wicket:panel
  ul
 li
   a href=./mypage.html?cid=menu**my item/a

 /li
  /ul
 /wicket:panel

 java - base page:
 public class PageBase extends WebPage{
   public PageBase()
   {
   //my panel
   this.add(new MyMenu(myPanel).
 setRenderBodyOnly(true));

   }
 }

 java - panel:
 ublic class MyMenu extends Panel{
   public PanelMenu(String id)
   {
   super(id);
   }

   protected void onRender(MarkupStream markupStream){
   while(markupStream.hasMore())
   {
   System.out.println(**
 markupStream.next());

   }
   }
 }


 i expect on console printed whole html markup for panel, but nothing
 is
 displayed.

 any ideas please?



 On 10.2.2013 23:21, Sven Meier wrote:

   See BorderBehavior#beforeRender(**Component) on how to
 iterate over

 the

 markup.

 Sven

 On 02/10/2013 11:09 PM, Michael Jaruska wrote:

   my quick test:

 @Override
 protected void onRender()
 {
   super.onRender();
   System.out.println(this.**getMarkup().toString());

 }

 get me just top-level tag in my panel, subtags isn't shown. how to
 get
 whole
 markup for my panel?


 On 10.2.2013 22:38, Sven Meier wrote:

   Sure, with #getMarkup() you can get hold of the component's
 markup.

 With a MarkupStream you can iterate over it.

 Sven

 On 02/10/2013 10:23 PM, Michael Jaruska wrote:

   again with my question: is it possible to get markup in
 onRender() of

 the component?
 have found this article:
 https://cwiki.apache.org/**WICKET/component-rendering.*
 *htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
 https://cwiki.apache.**org/**WICKET/component-**
 rendering.**htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
 
 https://cwiki.apache.org/WICKET/component-rendering.
 htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
 

Re: find html tag

2013-02-12 Thread Michael Jaruska

do you mean in beforeRender(final Component component)?



On 12.2.2013 9:11, Martin Grigorov wrote:

Hi,

As Sven suggested - BorderBehavior does exactly this.


On Tue, Feb 12, 2013 at 9:08 AM, Michael Jaruska
michael.jaru...@gmail.comwrote:


no way how to modify raw html stream in actual rendering?



On 11.2.2013 11:50, Michael Jaruska wrote:


based on this article:
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.htmlin
 section onRender()
it should be possible to modify markup which is going from wicket (e.g.
from .html file)
and modyfied it send to client.


On 11.2.2013 11:34, Michael Jaruska wrote:


yes, i need that raw html that comes from markup (my .html file which is
my panel),
in java code i will modify it (one step for put new class) and send it
to client :-)
as i thnik now i dont need to delete previous step because this
modifying isn't in
markup. so i just need to modify markup in actual render - modify markup
stream.


On 11.2.2013 11:26, Martin Grigorov wrote:


MarkupStream gives you the raw html that comes from the .html file, i.e.
from the template file.
It doesn't give you the html from the previous page render.

You need to send Ajax requests to update the server side state to be in
sync with the client side state (modified by your JS).

On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska 
michael.jaru...@gmail.com


wrote:



  in fact, my panel is menu which is modified by javascript.

i need to keep track of the previous selected entry (to get know
javascript to disable element) and actual element to modify
(add class) for javascript.

javascript need to now at a moment page rendered where is
class which it is looking for.

so i need to modify html markup, modify it on client side by
javascript is not possible.

based on this article:
https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html



it should be possible modify markup generated by component (my
panel).




On 11.2.2013 10:03, Martin Grigorov wrote:

  Hi,


What do you want to do with the markup ?
Maybe you don't need to bother with internals like MarkupStream for
something that may be solved much easier.


On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska 
michael.jaru...@gmail.com

  wrote:




   thanks, studied. but in my case not working. i don't know why,
where is


my
mistake. try this code:

markup - base page:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
   head
   titlemy test page/title
   meta http-equiv=Content-Type content=text/html;
charset=utf-8
/
   /head
   body
   pmy test page/p
   span wicket:id=myPanel[my test panel]/span
   /body
/html

markup - my test panel:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
wicket:panel
  ul
 li
   a href=./mypage.html?cid=menu**my item/a

 /li
  /ul
/wicket:panel

java - base page:
public class PageBase extends WebPage{
   public PageBase()
   {
   //my panel
   this.add(new MyMenu(myPanel).
setRenderBodyOnly(true));

   }
}

java - panel:
ublic class MyMenu extends Panel{
   public PanelMenu(String id)
   {
   super(id);
   }

   protected void onRender(MarkupStream markupStream){
   while(markupStream.hasMore())
   {
   System.out.println(**
markupStream.next());

   }
   }
}


i expect on console printed whole html markup for panel, but nothing
is
displayed.

any ideas please?



On 10.2.2013 23:21, Sven Meier wrote:

   See BorderBehavior#beforeRender(**Component) on how to
iterate over


the

markup.

Sven

On 02/10/2013 11:09 PM, Michael Jaruska wrote:

   my quick test:


@Override
protected void onRender()
{
   super.onRender();
   System.out.println(this.**getMarkup().toString());

}

get me just top-level tag in my panel, subtags isn't shown. how to
get
whole
markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:

   Sure, with #getMarkup() you can get hold of the component's
markup.


With a MarkupStream you can iterate over it.

Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:

   again with my question: is it possible to get markup in
onRender() of


the component?
have found this article:
https://cwiki.apache.org/**WICKET/component-rendering.*
*htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
https://cwiki.apache.**org/**WICKET/component-**
rendering.**htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html



https://cwiki.apache.org/WICKET/component-rendering.
htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html

Re: find html tag

2013-02-12 Thread Paul Bors
You can also do it inside the onComponentTag() or onComponentTagBody():

http://wicket.apache.org/apidocs/1.5/org/apache/wicket/Component.html#onComponentTag(org.apache.wicket.markup.ComponentTag
)
http://wicket.apache.org/apidocs/1.5/org/apache/wicket/Component.html#onComponentTagBody(org.apache.wicket.markup.MarkupStream,
org.apache.wicket.markup.ComponentTag)

This is how I switched from a DIV to a SPAN when nesting forms since
Wicket uses DIV that sometimes breaks my CSS inheritance:

/**
 * Wicket by default will substitute inner nested forms with DIV elements,
we want SPAN
 * elements to preserve the page layout.
 *
 * @see org.apache.wicket.Component#onComponentTag(ComponentTag)
 */
@Override
protected void onComponentTag(final ComponentTag tag) {
  super.onComponentTag(tag);
  if(!isRootForm()) {
tag.setName(span);
  }
}

~ Thank you,
   Paul Bors
On Tue, Feb 12, 2013 at 7:55 AM, Michael Jaruska
michael.jaru...@gmail.comwrote:

 do you mean in beforeRender(final Component component)?




 On 12.2.2013 9:11, Martin Grigorov wrote:

 Hi,

 As Sven suggested - BorderBehavior does exactly this.


 On Tue, Feb 12, 2013 at 9:08 AM, Michael Jaruska
 michael.jaru...@gmail.com**wrote:

  no way how to modify raw html stream in actual rendering?



 On 11.2.2013 11:50, Michael Jaruska wrote:

  based on this article:
 https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.htmlin
 section onRender()
 it should be possible to modify markup which is going from wicket (e.g.
 from .html file)
 and modyfied it send to client.


 On 11.2.2013 11:34, Michael Jaruska wrote:

  yes, i need that raw html that comes from markup (my .html file which
 is
 my panel),
 in java code i will modify it (one step for put new class) and send it
 to client :-)
 as i thnik now i dont need to delete previous step because this
 modifying isn't in
 markup. so i just need to modify markup in actual render - modify
 markup
 stream.


 On 11.2.2013 11:26, Martin Grigorov wrote:

  MarkupStream gives you the raw html that comes from the .html file,
 i.e.
 from the template file.
 It doesn't give you the html from the previous page render.

 You need to send Ajax requests to update the server side state to be
 in
 sync with the client side state (modified by your JS).

 On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska 
 michael.jaru...@gmail.com

  wrote:


   in fact, my panel is menu which is modified by javascript.

 i need to keep track of the previous selected entry (to get know
 javascript to disable element) and actual element to modify
 (add class) for javascript.

 javascript need to now at a moment page rendered where is
 class which it is looking for.

 so i need to modify html markup, modify it on client side by
 javascript is not possible.

 based on this article:
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
 https://cwiki.apache.**org/**WICKET/component-**rendering.**htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
 
 https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
 


  it should be possible modify markup generated by component (my
 panel).




 On 11.2.2013 10:03, Martin Grigorov wrote:

   Hi,


 What do you want to do with the markup ?
 Maybe you don't need to bother with internals like MarkupStream for
 something that may be solved much easier.


 On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska 
 michael.jaru...@gmail.com

   wrote:



 thanks, studied. but in my case not working. i don't know why,
 where is

  my
 mistake. try this code:

 markup - base page:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
head
titlemy test page/title
meta http-equiv=Content-Type content=text/html;
 charset=utf-8
 /
/head
body
pmy test page/p
span wicket:id=myPanel[my test panel]/span
/body
 /html

 markup - my test panel:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
 wicket:panel
   ul
  li
a href=./mypage.html?cid=menumy item/a

  /li
   /ul
 /wicket:panel

 java - base page:
 public class PageBase extends WebPage{
public PageBase()
{
//my panel
this.add(new MyMenu(myPanel).
 setRenderBodyOnly(true));

}
 }

 java - panel:
 ublic class MyMenu extends Panel{
public PanelMenu(String id)
{
super(id);
}

protected void onRender(MarkupStream markupStream){
 

Re: find html tag

2013-02-12 Thread Michael Jaruska

Paul, thanks. Looks like I'm just two steps from final. My current code in 
MyPanel (stupid,
at the moment just for test):
@Override
public void onRender()
{
MarkupStream markupStream = this.getAssociatedMarkupStream(false);
while(markupStream.hasMore())
{
String myString = markupStream.next().toString(); //after last html 
element I get null
  //pointer exception 
but markupStream.hasMore()
  //indicate that there 
is more elements
myString = myString.replaceAll(menuso, someelse);
System.out.println(myString);
}
}

two more questions:
1. markupStream.hasMore() is going over MyPanel markup, when go over all markup
   it's going beyond border and after last html tag I get null pointer exception
   on markupStream.next()
2. how to write modified markup back to markupStream? Have found this:
   Response response = this.getResponse(); //in MyPanel - MyPanel is Component 
(extends Panel)
   response.write(CharSequence); //is this right way to write modified stream 
back to response?

will test same with onComponentTag(ComponentTag component), based on this:
http://stackoverflow.com/questions/4609871/wicket-getting-body-of-markup-element
now know hot to get markupStream (2 days ago my big problem).

sorry for my stupid questions, i'm still n00b ...



On 12.2.2013 18:07, Paul Bors wrote:

You can also do it inside the onComponentTag() or onComponentTagBody():

http://wicket.apache.org/apidocs/1.5/org/apache/wicket/Component.html#onComponentTag(org.apache.wicket.markup.ComponentTag
)
http://wicket.apache.org/apidocs/1.5/org/apache/wicket/Component.html#onComponentTagBody(org.apache.wicket.markup.MarkupStream,
org.apache.wicket.markup.ComponentTag)

This is how I switched from a DIV to a SPAN when nesting forms since
Wicket uses DIV that sometimes breaks my CSS inheritance:

/**
  * Wicket by default will substitute inner nested forms with DIV elements,
we want SPAN
  * elements to preserve the page layout.
  *
  * @see org.apache.wicket.Component#onComponentTag(ComponentTag)
  */
@Override
protected void onComponentTag(final ComponentTag tag) {
   super.onComponentTag(tag);
   if(!isRootForm()) {
 tag.setName(span);
   }
}

~ Thank you,
Paul Bors
On Tue, Feb 12, 2013 at 7:55 AM, Michael Jaruska
michael.jaru...@gmail.comwrote:


do you mean in beforeRender(final Component component)?




On 12.2.2013 9:11, Martin Grigorov wrote:


Hi,

As Sven suggested - BorderBehavior does exactly this.


On Tue, Feb 12, 2013 at 9:08 AM, Michael Jaruska
michael.jaru...@gmail.com**wrote:

  no way how to modify raw html stream in actual rendering?




On 11.2.2013 11:50, Michael Jaruska wrote:

  based on this article:

https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.htmlin
section onRender()
it should be possible to modify markup which is going from wicket (e.g.
from .html file)
and modyfied it send to client.


On 11.2.2013 11:34, Michael Jaruska wrote:

  yes, i need that raw html that comes from markup (my .html file which

is
my panel),
in java code i will modify it (one step for put new class) and send it
to client :-)
as i thnik now i dont need to delete previous step because this
modifying isn't in
markup. so i just need to modify markup in actual render - modify
markup
stream.


On 11.2.2013 11:26, Martin Grigorov wrote:

  MarkupStream gives you the raw html that comes from the .html file,

i.e.
from the template file.
It doesn't give you the html from the previous page render.

You need to send Ajax requests to update the server side state to be
in
sync with the client side state (modified by your JS).

On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska 
michael.jaru...@gmail.com

  wrote:




   in fact, my panel is menu which is modified by javascript.


i need to keep track of the previous selected entry (to get know
javascript to disable element) and actual element to modify
(add class) for javascript.

javascript need to now at a moment page rendered where is
class which it is looking for.

so i need to modify html markup, modify it on client side by
javascript is not possible.

based on this article:
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
https://cwiki.apache.**org/**WICKET/component-**rendering.**htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html



https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html






  it should be possible modify markup generated by component (my


Re: find html tag

2013-02-11 Thread Michael Jaruska

thanks, studied. but in my case not working. i don't know why, where is my 
mistake. try this code:

markup - base page:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
head
titlemy test page/title
meta http-equiv=Content-Type content=text/html; charset=utf-8 /
/head
body
pmy test page/p
span wicket:id=myPanel[my test panel]/span
/body
/html

markup - my test panel:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
wicket:panel
   ul
  li
a href=./mypage.html?cid=menumy item/a
  /li
   /ul
/wicket:panel

java - base page:
public class PageBase extends WebPage{
public PageBase()
{
//my panel
this.add(new MyMenu(myPanel).setRenderBodyOnly(true));
}
}

java - panel:
ublic class MyMenu extends Panel{
public PanelMenu(String id)
{
super(id);
}

protected void onRender(MarkupStream markupStream){
while(markupStream.hasMore())
{
System.out.println(markupStream.next());
}
}
}


i expect on console printed whole html markup for panel, but nothing is 
displayed.

any ideas please?


On 10.2.2013 23:21, Sven Meier wrote:

See BorderBehavior#beforeRender(Component) on how to iterate over the markup.

Sven

On 02/10/2013 11:09 PM, Michael Jaruska wrote:

my quick test:
@Override
protected void onRender()
{
super.onRender();
System.out.println(this.getMarkup().toString());
}

get me just top-level tag in my panel, subtags isn't shown. how to get whole
markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:

Sure, with #getMarkup() you can get hold of the component's markup. With a 
MarkupStream you can iterate over it.

Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:

again with my question: is it possible to get markup in onRender() of the 
component?
have found this article:
https://cwiki.apache.org/WICKET/component-rendering.html
but in onRender() section is just code snippet I'm not understand. is there more
detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:

You can use IMarkupFilter to manipulate the raw markup before being loaded
and used by the components.
See the implementations in Wicket to see what can be done with such filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska michael.jaru...@gmail.com

wrote:



Look at my original post. User clicks on a href=./mypage.html?cid=menu/*
*submenu/subsubmenu2**subsubmenu2/a, then
I have in String category (java code) value menu/submenu/subsubmenu2.
I need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into li tag...




On 23.1.2013 21:21, Bas Gooren wrote:


Ok, so you are indeed looking for a way to change a html attribute ;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate the
html, there are some ways, but they mostly work outside of the normal
wicket way.

1) In the component which actually renders your static html override
onComponentTagBody and fiddle with the markup stream (e.g. look at
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom model.
The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:


I need to find the parent li tag of the anchor user clicks - I now
from PageParameters which anchor
has been clicked. Then I will put into this parent li specific
atribute (id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:


Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the
appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:


And question is not how can I change html attribute but how can I
go through html structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:


Hi!

What you want to accomplish (e.g. changing some html attributes) can
be done by adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
}

Met 

Re: find html tag

2013-02-11 Thread Martin Grigorov
Hi,

What do you want to do with the markup ?
Maybe you don't need to bother with internals like MarkupStream for
something that may be solved much easier.


On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska michael.jaru...@gmail.com
 wrote:

 thanks, studied. but in my case not working. i don't know why, where is my
 mistake. try this code:

 markup - base page:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
 head
 titlemy test page/title
 meta http-equiv=Content-Type content=text/html; charset=utf-8
 /
 /head
 body
 pmy test page/p
 span wicket:id=myPanel[my test panel]/span
 /body
 /html

 markup - my test panel:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
 wicket:panel
ul
   li
 a href=./mypage.html?cid=menu**my item/a
   /li
/ul
 /wicket:panel

 java - base page:
 public class PageBase extends WebPage{
 public PageBase()
 {
 //my panel
 this.add(new MyMenu(myPanel).**setRenderBodyOnly(true));
 }
 }

 java - panel:
 ublic class MyMenu extends Panel{
 public PanelMenu(String id)
 {
 super(id);
 }

 protected void onRender(MarkupStream markupStream){
 while(markupStream.hasMore())
 {
 System.out.println(**markupStream.next());
 }
 }
 }


 i expect on console printed whole html markup for panel, but nothing is
 displayed.

 any ideas please?



 On 10.2.2013 23:21, Sven Meier wrote:

 See BorderBehavior#beforeRender(**Component) on how to iterate over the
 markup.

 Sven

 On 02/10/2013 11:09 PM, Michael Jaruska wrote:

 my quick test:
 @Override
 protected void onRender()
 {
 super.onRender();
 System.out.println(this.**getMarkup().toString());
 }

 get me just top-level tag in my panel, subtags isn't shown. how to get
 whole
 markup for my panel?


 On 10.2.2013 22:38, Sven Meier wrote:

 Sure, with #getMarkup() you can get hold of the component's markup.
 With a MarkupStream you can iterate over it.

 Sven

 On 02/10/2013 10:23 PM, Michael Jaruska wrote:

 again with my question: is it possible to get markup in onRender() of
 the component?
 have found this article:
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
 but in onRender() section is just code snippet I'm not understand. is
 there more
 detailed example how to get markup of the component in onRender()?

 thanks, michael



 On 23.1.2013 22:47, Martin Grigorov wrote:

 You can use IMarkupFilter to manipulate the raw markup before being
 loaded
 and used by the components.
 See the implementations in Wicket to see what can be done with such
 filter.


 On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
 michael.jaru...@gmail.com

 wrote:


  Look at my original post. User clicks on a
 href=./mypage.html?cid=menu/*
 *submenu/subsubmenu2subsubmenu2/a, then
 I have in String category (java code) value
 menu/submenu/subsubmenu2.
 I need just to make 2 more steps:
 1. in html code find anchor tag with href menu/submenu/subsubmenu2;
 2. find li tag which is parent of the anchor from point 1;

 When I have point 2 done, then I know how to put somethink into li
 tag...




 On 23.1.2013 21:21, Bas Gooren wrote:

  Ok, so you are indeed looking for a way to change a html attribute
 ;-)

 Since you wrote (in your folluw-up e-mail) that you cannot generate
 the
 html, there are some ways, but they mostly work outside of the
 normal
 wicket way.

 1) In the component which actually renders your static html override
 onComponentTagBody and fiddle with the markup stream (e.g. look at
 replaceComponentTagBody)

 2) store the static html somewhere by itself, and create a custom
 model.
 The model can then load the html and perform string replacement.
 You can then add a label component which uses the model and has
 setEscapeModelStrings(false) set.

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 21:11, schreef Michael Jaruska:

  I need to find the parent li tag of the anchor user clicks - I
 now
 from PageParameters which anchor
 has been clicked. Then I will put into this parent li specific
 atribute (id=something). This attribute
 will be then processed by JavaScript on the page.


 On 23.1.2013 21:04, Bas Gooren wrote:

  Sorry, I read too quickly.

 What are you trying to accomplish? Let's say you are able to find
 the
 appropriate html tag, what do you want to do with it?

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 21:01, schreef Michael Jaruska:

  And question is not how can I change html attribute but how
 can I
 go through html structure and
 find html tag with specific attribute :-)


 On 23.1.2013 20:50, Bas Gooren wrote:

  Hi!

 What you want to accomplish (e.g. changing some html
 attributes) can
 be done by adding an attributemodifier to each li 

Re: find html tag

2013-02-11 Thread Michael Jaruska

in fact, my panel is menu which is modified by javascript.
i need to keep track of the previous selected entry (to get know
javascript to disable element) and actual element to modify
(add class) for javascript.

javascript need to now at a moment page rendered where is
class which it is looking for.

so i need to modify html markup, modify it on client side by
javascript is not possible.

based on this article:
https://cwiki.apache.org/WICKET/component-rendering.html
it should be possible modify markup generated by component (my
panel).



On 11.2.2013 10:03, Martin Grigorov wrote:

Hi,

What do you want to do with the markup ?
Maybe you don't need to bother with internals like MarkupStream for
something that may be solved much easier.


On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska michael.jaru...@gmail.com

wrote:



thanks, studied. but in my case not working. i don't know why, where is my
mistake. try this code:

markup - base page:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
 head
 titlemy test page/title
 meta http-equiv=Content-Type content=text/html; charset=utf-8
/
 /head
 body
 pmy test page/p
 span wicket:id=myPanel[my test panel]/span
 /body
/html

markup - my test panel:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
wicket:panel
ul
   li
 a href=./mypage.html?cid=menu**my item/a
   /li
/ul
/wicket:panel

java - base page:
public class PageBase extends WebPage{
 public PageBase()
 {
 //my panel
 this.add(new MyMenu(myPanel).**setRenderBodyOnly(true));
 }
}

java - panel:
ublic class MyMenu extends Panel{
 public PanelMenu(String id)
 {
 super(id);
 }

 protected void onRender(MarkupStream markupStream){
 while(markupStream.hasMore())
 {
 System.out.println(**markupStream.next());
 }
 }
}


i expect on console printed whole html markup for panel, but nothing is
displayed.

any ideas please?



On 10.2.2013 23:21, Sven Meier wrote:


See BorderBehavior#beforeRender(**Component) on how to iterate over the
markup.

Sven

On 02/10/2013 11:09 PM, Michael Jaruska wrote:


my quick test:
@Override
protected void onRender()
{
 super.onRender();
 System.out.println(this.**getMarkup().toString());
}

get me just top-level tag in my panel, subtags isn't shown. how to get
whole
markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:


Sure, with #getMarkup() you can get hold of the component's markup.
With a MarkupStream you can iterate over it.

Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:


again with my question: is it possible to get markup in onRender() of
the component?
have found this article:
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
but in onRender() section is just code snippet I'm not understand. is
there more
detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:


You can use IMarkupFilter to manipulate the raw markup before being
loaded
and used by the components.
See the implementations in Wicket to see what can be done with such
filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
michael.jaru...@gmail.com


wrote:



  Look at my original post. User clicks on a

href=./mypage.html?cid=menu/*
*submenu/subsubmenu2subsubmenu2/a, then
I have in String category (java code) value
menu/submenu/subsubmenu2.
I need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into li
tag...




On 23.1.2013 21:21, Bas Gooren wrote:

  Ok, so you are indeed looking for a way to change a html attribute

;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate
the
html, there are some ways, but they mostly work outside of the
normal
wicket way.

1) In the component which actually renders your static html override
onComponentTagBody and fiddle with the markup stream (e.g. look at
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom
model.
The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:

  I need to find the parent li tag of the anchor user clicks - I

now
from PageParameters which anchor
has been clicked. Then I will put into this parent li specific
atribute (id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:

  Sorry, I read too quickly.


What are you trying to 

Re: find html tag

2013-02-11 Thread Martin Grigorov
MarkupStream gives you the raw html that comes from the .html file, i.e.
from the template file.
It doesn't give you the html from the previous page render.

You need to send Ajax requests to update the server side state to be in
sync with the client side state (modified by your JS).

On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska michael.jaru...@gmail.com
 wrote:

 in fact, my panel is menu which is modified by javascript.
 i need to keep track of the previous selected entry (to get know
 javascript to disable element) and actual element to modify
 (add class) for javascript.

 javascript need to now at a moment page rendered where is
 class which it is looking for.

 so i need to modify html markup, modify it on client side by
 javascript is not possible.

 based on this article:
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
 it should be possible modify markup generated by component (my
 panel).




 On 11.2.2013 10:03, Martin Grigorov wrote:

 Hi,

 What do you want to do with the markup ?
 Maybe you don't need to bother with internals like MarkupStream for
 something that may be solved much easier.


 On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska 
 michael.jaru...@gmail.com

 wrote:


  thanks, studied. but in my case not working. i don't know why, where is
 my
 mistake. try this code:

 markup - base page:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
  head
  titlemy test page/title
  meta http-equiv=Content-Type content=text/html;
 charset=utf-8
 /
  /head
  body
  pmy test page/p
  span wicket:id=myPanel[my test panel]/span
  /body
 /html

 markup - my test panel:
 ?xml version=1.0 encoding=UTF-8 ?
 html xmlns:wicket
 wicket:panel
 ul
li
  a href=./mypage.html?cid=menumy item/a

/li
 /ul
 /wicket:panel

 java - base page:
 public class PageBase extends WebPage{
  public PageBase()
  {
  //my panel
  this.add(new MyMenu(myPanel).
 setRenderBodyOnly(true));

  }
 }

 java - panel:
 ublic class MyMenu extends Panel{
  public PanelMenu(String id)
  {
  super(id);
  }

  protected void onRender(MarkupStream markupStream){
  while(markupStream.hasMore())
  {
  System.out.println(markupStream.next());

  }
  }
 }


 i expect on console printed whole html markup for panel, but nothing is
 displayed.

 any ideas please?



 On 10.2.2013 23:21, Sven Meier wrote:

  See BorderBehavior#beforeRender(Component) on how to iterate over
 the

 markup.

 Sven

 On 02/10/2013 11:09 PM, Michael Jaruska wrote:

  my quick test:
 @Override
 protected void onRender()
 {
  super.onRender();
  System.out.println(this.getMarkup().toString());

 }

 get me just top-level tag in my panel, subtags isn't shown. how to get
 whole
 markup for my panel?


 On 10.2.2013 22:38, Sven Meier wrote:

  Sure, with #getMarkup() you can get hold of the component's markup.
 With a MarkupStream you can iterate over it.

 Sven

 On 02/10/2013 10:23 PM, Michael Jaruska wrote:

  again with my question: is it possible to get markup in onRender() of
 the component?
 have found this article:
 https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
 https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
 

 but in onRender() section is just code snippet I'm not understand. is
 there more
 detailed example how to get markup of the component in onRender()?

 thanks, michael



 On 23.1.2013 22:47, Martin Grigorov wrote:

  You can use IMarkupFilter to manipulate the raw markup before being
 loaded
 and used by the components.
 See the implementations in Wicket to see what can be done with such
 filter.


 On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
 michael.jaru...@gmail.com

  wrote:


   Look at my original post. User clicks on a

 href=./mypage.html?cid=menu/*
 *submenu/subsubmenu2**subsubmenu2/a, then

 I have in String category (java code) value
 menu/submenu/subsubmenu2.
 I need just to make 2 more steps:
 1. in html code find anchor tag with href
 menu/submenu/subsubmenu2;
 2. find li tag which is parent of the anchor from point 1;

 When I have point 2 done, then I know how to put somethink into
 li
 tag...




 On 23.1.2013 21:21, Bas Gooren wrote:

   Ok, so you are indeed looking for a way to change a html
 attribute

 ;-)

 Since you wrote (in your folluw-up e-mail) that you cannot
 generate
 the
 html, there are some ways, but they mostly work outside of the
 normal
 wicket way.

 1) In the component which actually renders your static html
 override
 onComponentTagBody and fiddle with the markup stream (e.g. look at
 

Re: find html tag

2013-02-11 Thread Michael Jaruska

yes, i need that raw html that comes from markup (my .html file which is my 
panel),
in java code i will modify it (one step for put new class) and send it to 
client :-)
as i thnik now i dont need to delete previous step because this modifying isn't 
in
markup. so i just need to modify markup in actual render - modify markup stream.


On 11.2.2013 11:26, Martin Grigorov wrote:

MarkupStream gives you the raw html that comes from the .html file, i.e.
from the template file.
It doesn't give you the html from the previous page render.

You need to send Ajax requests to update the server side state to be in
sync with the client side state (modified by your JS).

On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska michael.jaru...@gmail.com

wrote:



in fact, my panel is menu which is modified by javascript.
i need to keep track of the previous selected entry (to get know
javascript to disable element) and actual element to modify
(add class) for javascript.

javascript need to now at a moment page rendered where is
class which it is looking for.

so i need to modify html markup, modify it on client side by
javascript is not possible.

based on this article:
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
it should be possible modify markup generated by component (my
panel).




On 11.2.2013 10:03, Martin Grigorov wrote:


Hi,

What do you want to do with the markup ?
Maybe you don't need to bother with internals like MarkupStream for
something that may be solved much easier.


On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska 
michael.jaru...@gmail.com


wrote:



  thanks, studied. but in my case not working. i don't know why, where is

my
mistake. try this code:

markup - base page:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
  head
  titlemy test page/title
  meta http-equiv=Content-Type content=text/html;
charset=utf-8
/
  /head
  body
  pmy test page/p
  span wicket:id=myPanel[my test panel]/span
  /body
/html

markup - my test panel:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
wicket:panel
 ul
li
  a href=./mypage.html?cid=menumy item/a

/li
 /ul
/wicket:panel

java - base page:
public class PageBase extends WebPage{
  public PageBase()
  {
  //my panel
  this.add(new MyMenu(myPanel).
setRenderBodyOnly(true));

  }
}

java - panel:
ublic class MyMenu extends Panel{
  public PanelMenu(String id)
  {
  super(id);
  }

  protected void onRender(MarkupStream markupStream){
  while(markupStream.hasMore())
  {
  System.out.println(markupStream.next());

  }
  }
}


i expect on console printed whole html markup for panel, but nothing is
displayed.

any ideas please?



On 10.2.2013 23:21, Sven Meier wrote:

  See BorderBehavior#beforeRender(Component) on how to iterate over

the

markup.

Sven

On 02/10/2013 11:09 PM, Michael Jaruska wrote:

  my quick test:

@Override
protected void onRender()
{
  super.onRender();
  System.out.println(this.getMarkup().toString());

}

get me just top-level tag in my panel, subtags isn't shown. how to get
whole
markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:

  Sure, with #getMarkup() you can get hold of the component's markup.

With a MarkupStream you can iterate over it.

Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:

  again with my question: is it possible to get markup in onRender() of

the component?
have found this article:
https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html




but in onRender() section is just code snippet I'm not understand. is
there more
detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:

  You can use IMarkupFilter to manipulate the raw markup before being

loaded
and used by the components.
See the implementations in Wicket to see what can be done with such
filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
michael.jaru...@gmail.com

  wrote:




   Look at my original post. User clicks on a


href=./mypage.html?cid=menu/*
*submenu/subsubmenu2**subsubmenu2/a, then

I have in String category (java code) value
menu/submenu/subsubmenu2.
I need just to make 2 more steps:
1. in html code find anchor tag with href
menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into
li
tag...




On 23.1.2013 21:21, Bas Gooren wrote:

   Ok, so you are indeed looking for a way to change a html
attribute



Re: find html tag

2013-02-11 Thread Michael Jaruska

based on this article:
https://cwiki.apache.org/WICKET/component-rendering.html in section onRender()
it should be possible to modify markup which is going from wicket (e.g. from 
.html file)
and modyfied it send to client.


On 11.2.2013 11:34, Michael Jaruska wrote:

yes, i need that raw html that comes from markup (my .html file which is my 
panel),
in java code i will modify it (one step for put new class) and send it to 
client :-)
as i thnik now i dont need to delete previous step because this modifying isn't 
in
markup. so i just need to modify markup in actual render - modify markup stream.


On 11.2.2013 11:26, Martin Grigorov wrote:

MarkupStream gives you the raw html that comes from the .html file, i.e.
from the template file.
It doesn't give you the html from the previous page render.

You need to send Ajax requests to update the server side state to be in
sync with the client side state (modified by your JS).

On Mon, Feb 11, 2013 at 11:22 AM, Michael Jaruska michael.jaru...@gmail.com

wrote:



in fact, my panel is menu which is modified by javascript.
i need to keep track of the previous selected entry (to get know
javascript to disable element) and actual element to modify
(add class) for javascript.

javascript need to now at a moment page rendered where is
class which it is looking for.

so i need to modify html markup, modify it on client side by
javascript is not possible.

based on this article:
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html
it should be possible modify markup generated by component (my
panel).




On 11.2.2013 10:03, Martin Grigorov wrote:


Hi,

What do you want to do with the markup ?
Maybe you don't need to bother with internals like MarkupStream for
something that may be solved much easier.


On Mon, Feb 11, 2013 at 10:01 AM, Michael Jaruska 
michael.jaru...@gmail.com


wrote:



  thanks, studied. but in my case not working. i don't know why, where is

my
mistake. try this code:

markup - base page:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
  head
  titlemy test page/title
  meta http-equiv=Content-Type content=text/html;
charset=utf-8
/
  /head
  body
  pmy test page/p
  span wicket:id=myPanel[my test panel]/span
  /body
/html

markup - my test panel:
?xml version=1.0 encoding=UTF-8 ?
html xmlns:wicket
wicket:panel
 ul
li
  a href=./mypage.html?cid=menumy item/a

/li
 /ul
/wicket:panel

java - base page:
public class PageBase extends WebPage{
  public PageBase()
  {
  //my panel
  this.add(new MyMenu(myPanel).
setRenderBodyOnly(true));

  }
}

java - panel:
ublic class MyMenu extends Panel{
  public PanelMenu(String id)
  {
  super(id);
  }

  protected void onRender(MarkupStream markupStream){
  while(markupStream.hasMore())
  {
  System.out.println(markupStream.next());

  }
  }
}


i expect on console printed whole html markup for panel, but nothing is
displayed.

any ideas please?



On 10.2.2013 23:21, Sven Meier wrote:

  See BorderBehavior#beforeRender(Component) on how to iterate over

the

markup.

Sven

On 02/10/2013 11:09 PM, Michael Jaruska wrote:

  my quick test:

@Override
protected void onRender()
{
  super.onRender();
  System.out.println(this.getMarkup().toString());

}

get me just top-level tag in my panel, subtags isn't shown. how to get
whole
markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:

  Sure, with #getMarkup() you can get hold of the component's markup.

With a MarkupStream you can iterate over it.

Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:

  again with my question: is it possible to get markup in onRender() of

the component?
have found this article:
https://cwiki.apache.org/WICKET/component-rendering.htmlhttps://cwiki.apache.org/**WICKET/component-rendering.**html
https://cwiki.apache.org/**WICKET/component-rendering.**htmlhttps://cwiki.apache.org/WICKET/component-rendering.html




but in onRender() section is just code snippet I'm not understand. is
there more
detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:

  You can use IMarkupFilter to manipulate the raw markup before being

loaded
and used by the components.
See the implementations in Wicket to see what can be done with such
filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
michael.jaru...@gmail.com

  wrote:




   Look at my original post. User clicks on a


href=./mypage.html?cid=menu/*
*submenu/subsubmenu2**subsubmenu2/a, then

I have in String category (java code) value
menu/submenu/subsubmenu2.
I need just to make 2 more steps:
1. in html code find anchor tag with href

Re: find html tag

2013-02-10 Thread Michael Jaruska

again with my question: is it possible to get markup in onRender() of the 
component?
have found this article:
https://cwiki.apache.org/WICKET/component-rendering.html
but in onRender() section is just code snippet I'm not understand. is there more
detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:

You can use IMarkupFilter to manipulate the raw markup before being loaded
and used by the components.
See the implementations in Wicket to see what can be done with such filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska michael.jaru...@gmail.com

wrote:



Look at my original post. User clicks on a href=./mypage.html?cid=menu/*
*submenu/subsubmenu2**subsubmenu2/a, then
I have in String category (java code) value menu/submenu/subsubmenu2.
I need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into li tag...




On 23.1.2013 21:21, Bas Gooren wrote:


Ok, so you are indeed looking for a way to change a html attribute ;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate the
html, there are some ways, but they mostly work outside of the normal
wicket way.

1) In the component which actually renders your static html override
onComponentTagBody and fiddle with the markup stream (e.g. look at
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom model.
The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:


I need to find the parent li tag of the anchor user clicks - I now
from PageParameters which anchor
has been clicked. Then I will put into this parent li specific
atribute (id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:


Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the
appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:


And question is not how can I change html attribute but how can I
go through html structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:


Hi!

What you want to accomplish (e.g. changing some html attributes) can
be done by adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:


Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
   li
 a href=./mypage.html?cid=menu**menu/a
   ul
 li
   a href=./mypage.html?cid=menu/**submenusubmenu/a
 ul
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu1**
subsubmenu1/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu2**
subsubmenu2/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu3**
subsubmenu3/a
   /li
 /ul
   /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   ...
}

Now I need some way I can add atribute into parent li tag of a
tag on which I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   //find corresponding a tag
   Tag anchorTag = go_from_top_ul_tag_and_find_a_**
tag_by_category(category)
   //have corresponding anchor tag, get parrent tag of the anchor tag
   Tag anchorParentTag = anchorTag.getParent();
   //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know
whot to look for in docu.

Please, help :-)

--**--**
-
To unsubscribe, e-mail: 
users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






--**--**
-
To unsubscribe, e-mail: 

Re: find html tag

2013-02-10 Thread Sven Meier
Sure, with #getMarkup() you can get hold of the component's markup. With 
a MarkupStream you can iterate over it.


Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:
again with my question: is it possible to get markup in onRender() of 
the component?

have found this article:
https://cwiki.apache.org/WICKET/component-rendering.html
but in onRender() section is just code snippet I'm not understand. is 
there more

detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:
You can use IMarkupFilter to manipulate the raw markup before being 
loaded

and used by the components.
See the implementations in Wicket to see what can be done with such 
filter.



On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
michael.jaru...@gmail.com

wrote:


Look at my original post. User clicks on a 
href=./mypage.html?cid=menu/*

*submenu/subsubmenu2**subsubmenu2/a, then
I have in String category (java code) value 
menu/submenu/subsubmenu2.

I need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into li 
tag...





On 23.1.2013 21:21, Bas Gooren wrote:


Ok, so you are indeed looking for a way to change a html attribute ;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate 
the

html, there are some ways, but they mostly work outside of the normal
wicket way.

1) In the component which actually renders your static html override
onComponentTagBody and fiddle with the markup stream (e.g. look at
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom 
model.

The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:


I need to find the parent li tag of the anchor user clicks - I now
from PageParameters which anchor
has been clicked. Then I will put into this parent li specific
atribute (id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:


Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find 
the

appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:

And question is not how can I change html attribute but how 
can I

go through html structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:


Hi!

What you want to accomplish (e.g. changing some html 
attributes) can

be done by adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:


Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
   li
 a href=./mypage.html?cid=menu**menu/a
   ul
 li
   a href=./mypage.html?cid=menu/**submenusubmenu/a
 ul
   li
 a 
href=./mypage.html?cid=menu/**submenu/subsubmenu1**

subsubmenu1/a
   /li
   li
 a 
href=./mypage.html?cid=menu/**submenu/subsubmenu2**

subsubmenu2/a
   /li
   li
 a 
href=./mypage.html?cid=menu/**submenu/subsubmenu3**

subsubmenu3/a
   /li
 /ul
   /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   ...
}

Now I need some way I can add atribute into parent li tag of 
a

tag on which I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   //find corresponding a tag
   Tag anchorTag = go_from_top_ul_tag_and_find_a_**
tag_by_category(category)
   //have corresponding anchor tag, get parrent tag of the 
anchor tag

   Tag anchorParentTag = anchorTag.getParent();
   //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know
whot to look for in docu.

Please, help :-)

--**--**
-
To unsubscribe, e-mail: 
users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org

For additional commands, 

Re: find html tag

2013-02-10 Thread Michael Jaruska

my quick test:
@Override
protected void onRender()
{
super.onRender();
System.out.println(this.getMarkup().toString());
}

get me just top-level tag in my panel, subtags isn't shown. how to get whole
markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:

Sure, with #getMarkup() you can get hold of the component's markup. With a 
MarkupStream you can iterate over it.

Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:

again with my question: is it possible to get markup in onRender() of the 
component?
have found this article:
https://cwiki.apache.org/WICKET/component-rendering.html
but in onRender() section is just code snippet I'm not understand. is there more
detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:

You can use IMarkupFilter to manipulate the raw markup before being loaded
and used by the components.
See the implementations in Wicket to see what can be done with such filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska michael.jaru...@gmail.com

wrote:



Look at my original post. User clicks on a href=./mypage.html?cid=menu/*
*submenu/subsubmenu2**subsubmenu2/a, then
I have in String category (java code) value menu/submenu/subsubmenu2.
I need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into li tag...




On 23.1.2013 21:21, Bas Gooren wrote:


Ok, so you are indeed looking for a way to change a html attribute ;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate the
html, there are some ways, but they mostly work outside of the normal
wicket way.

1) In the component which actually renders your static html override
onComponentTagBody and fiddle with the markup stream (e.g. look at
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom model.
The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:


I need to find the parent li tag of the anchor user clicks - I now
from PageParameters which anchor
has been clicked. Then I will put into this parent li specific
atribute (id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:


Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the
appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:


And question is not how can I change html attribute but how can I
go through html structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:


Hi!

What you want to accomplish (e.g. changing some html attributes) can
be done by adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:


Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
   li
 a href=./mypage.html?cid=menu**menu/a
   ul
 li
   a href=./mypage.html?cid=menu/**submenusubmenu/a
 ul
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu1**
subsubmenu1/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu2**
subsubmenu2/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu3**
subsubmenu3/a
   /li
 /ul
   /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   ...
}

Now I need some way I can add atribute into parent li tag of a
tag on which I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   //find corresponding a tag
   Tag anchorTag = go_from_top_ul_tag_and_find_a_**
tag_by_category(category)
   //have corresponding anchor tag, get parrent tag of the anchor tag
   Tag anchorParentTag = anchorTag.getParent();
   //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know
whot 

Re: find html tag

2013-02-10 Thread Sven Meier
See BorderBehavior#beforeRender(Component) on how to iterate over the 
markup.


Sven

On 02/10/2013 11:09 PM, Michael Jaruska wrote:

my quick test:
@Override
protected void onRender()
{
super.onRender();
System.out.println(this.getMarkup().toString());
}

get me just top-level tag in my panel, subtags isn't shown. how to get 
whole

markup for my panel?


On 10.2.2013 22:38, Sven Meier wrote:
Sure, with #getMarkup() you can get hold of the component's markup. 
With a MarkupStream you can iterate over it.


Sven

On 02/10/2013 10:23 PM, Michael Jaruska wrote:
again with my question: is it possible to get markup in onRender() 
of the component?

have found this article:
https://cwiki.apache.org/WICKET/component-rendering.html
but in onRender() section is just code snippet I'm not understand. 
is there more

detailed example how to get markup of the component in onRender()?

thanks, michael



On 23.1.2013 22:47, Martin Grigorov wrote:
You can use IMarkupFilter to manipulate the raw markup before being 
loaded

and used by the components.
See the implementations in Wicket to see what can be done with such 
filter.



On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska 
michael.jaru...@gmail.com

wrote:


Look at my original post. User clicks on a 
href=./mypage.html?cid=menu/*

*submenu/subsubmenu2**subsubmenu2/a, then
I have in String category (java code) value 
menu/submenu/subsubmenu2.

I need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into 
li tag...





On 23.1.2013 21:21, Bas Gooren wrote:

Ok, so you are indeed looking for a way to change a html 
attribute ;-)


Since you wrote (in your folluw-up e-mail) that you cannot 
generate the
html, there are some ways, but they mostly work outside of the 
normal

wicket way.

1) In the component which actually renders your static html override
onComponentTagBody and fiddle with the markup stream (e.g. look at
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom 
model.

The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:

I need to find the parent li tag of the anchor user clicks - I 
now

from PageParameters which anchor
has been clicked. Then I will put into this parent li specific
atribute (id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:


Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to 
find the

appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:

And question is not how can I change html attribute but how 
can I

go through html structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:


Hi!

What you want to accomplish (e.g. changing some html 
attributes) can

be done by adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:


Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
   li
 a href=./mypage.html?cid=menu**menu/a
   ul
 li
   a href=./mypage.html?cid=menu/**submenusubmenu/a
 ul
   li
 a 
href=./mypage.html?cid=menu/**submenu/subsubmenu1**

subsubmenu1/a
   /li
   li
 a 
href=./mypage.html?cid=menu/**submenu/subsubmenu2**

subsubmenu2/a
   /li
   li
 a 
href=./mypage.html?cid=menu/**submenu/subsubmenu3**

subsubmenu3/a
   /li
 /ul
   /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   ...
}

Now I need some way I can add atribute into parent li tag 
of a

tag on which I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   //find corresponding a tag
   Tag anchorTag = go_from_top_ul_tag_and_find_a_**
tag_by_category(category)
   //have corresponding anchor tag, get parrent tag of the 
anchor tag

   Tag 

Re: find html tag

2013-01-23 Thread Bas Gooren

Hi!

What you want to accomplish (e.g. changing some html attributes) can be 
done by adding an attributemodifier to each li component.


In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
isEnabled() {
return true if you want to append a html attribute;
}
});

Or alternatively:

WebMarkupContainer li = new WMC() {
onComponentTag(ComponentTag tag) {
super(tag);

tag.put(my-html-attribute, value);
}
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a

  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a tag 
on which I do click.

Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = go_from_top_ul_tag_and_find_a_tag_by_category(category)
  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know whot 
to look for in docu.


Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org





Re: find html tag

2013-01-23 Thread Michael Jaruska

Problem is that uls and lis (let's call whole structure menu) is static html 
code.


On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) can be done by 
adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a
  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a tag on which 
I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = go_from_top_ul_tag_and_find_a_tag_by_category(category)
  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know whot to look 
for in docu.

Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: find html tag

2013-01-23 Thread Michael Jaruska

And question is not how can I change html attribute but how can I go through html 
structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) can be done by 
adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a
  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a tag on which 
I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = go_from_top_ul_tag_and_find_a_tag_by_category(category)
  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know whot to look 
for in docu.

Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: find html tag

2013-01-23 Thread Bas Gooren

In that case I wouldn't bother trying this at the serverside.

Theoretically you can access the html markup and fiddle with it, but 
that's generally not how wicket is meant to be used. (Trust me, we've 
been doing quite some advanced stuff with wicket over the years).


If all you want to do is change the html code, you can also do that with 
some javascript code.
E.g. override renderHead() in your page and contribute some javascript 
code for onLoad.


But before doing such things: is there a particular reason why you are 
using static html instead of a component tree?

Are you able and willing to switch to a component tree?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:53, schreef Michael Jaruska:
Problem is that uls and lis (let's call whole structure menu) is 
static html code.



On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) can 
be done by adding an attributemodifier to each li component.


In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a

  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a 
tag on which I do click.

Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = 
go_from_top_ul_tag_and_find_a_tag_by_category(category)

  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know 
whot to look for in docu.


Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org





Re: find html tag

2013-01-23 Thread Bas Gooren

Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the 
appropriate html tag, what do you want to do with it?


Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:
And question is not how can I change html attribute but how can I 
go through html structure and

find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) can 
be done by adding an attributemodifier to each li component.


In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a

  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a 
tag on which I do click.

Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = 
go_from_top_ul_tag_and_find_a_tag_by_category(category)

  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know 
whot to look for in docu.


Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org





Re: find html tag

2013-01-23 Thread Michael Jaruska

I need to find the parent li tag of the anchor user clicks - I now from 
PageParameters which anchor
has been clicked. Then I will put into this parent li specific atribute 
(id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:

Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the 
appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:

And question is not how can I change html attribute but how can I go through html 
structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) can be done by 
adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a
  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a tag on which 
I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = go_from_top_ul_tag_and_find_a_tag_by_category(category)
  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know whot to look 
for in docu.

Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: find html tag

2013-01-23 Thread Michael Jaruska

Structure is static and I can't (management decision) generate it dynamically. 
Everythink I have is
static html and category user has been clicked.


On 23.1.2013 21:03, Bas Gooren wrote:

In that case I wouldn't bother trying this at the serverside.

Theoretically you can access the html markup and fiddle with it, but that's 
generally not how wicket is meant to be used. (Trust me, we've been doing quite 
some
advanced stuff with wicket over the years).

If all you want to do is change the html code, you can also do that with some 
javascript code.
E.g. override renderHead() in your page and contribute some javascript code for 
onLoad.

But before doing such things: is there a particular reason why you are using 
static html instead of a component tree?
Are you able and willing to switch to a component tree?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:53, schreef Michael Jaruska:

Problem is that uls and lis (let's call whole structure menu) is static html 
code.


On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) can be done by 
adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a
  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a tag on which 
I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = go_from_top_ul_tag_and_find_a_tag_by_category(category)
  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know whot to look 
for in docu.

Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: find html tag

2013-01-23 Thread Bas Gooren

Ok, so you are indeed looking for a way to change a html attribute ;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate the 
html, there are some ways, but they mostly work outside of the normal 
wicket way.


1) In the component which actually renders your static html override 
onComponentTagBody and fiddle with the markup stream (e.g. look at 
replaceComponentTagBody)


2) store the static html somewhere by itself, and create a custom model.
The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has 
setEscapeModelStrings(false) set.


Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:
I need to find the parent li tag of the anchor user clicks - I now 
from PageParameters which anchor
has been clicked. Then I will put into this parent li specific 
atribute (id=something). This attribute

will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:

Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the 
appropriate html tag, what do you want to do with it?


Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:
And question is not how can I change html attribute but how can I 
go through html structure and

find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) 
can be done by adding an attributemodifier to each li component.


In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a

  /li
  li
a 
href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a

  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a 
tag on which I do click.

Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = 
go_from_top_ul_tag_and_find_a_tag_by_category(category)

  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know 
whot to look for in docu.


Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org





Re: find html tag

2013-01-23 Thread Michael Jaruska

Look at my original post. User clicks on a 
href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a, then
I have in String category (java code) value menu/submenu/subsubmenu2. I 
need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into li tag...



On 23.1.2013 21:21, Bas Gooren wrote:

Ok, so you are indeed looking for a way to change a html attribute ;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate the html, 
there are some ways, but they mostly work outside of the normal wicket way.

1) In the component which actually renders your static html override 
onComponentTagBody and fiddle with the markup stream (e.g. look at 
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom model.
The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has 
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:

I need to find the parent li tag of the anchor user clicks - I now from 
PageParameters which anchor
has been clicked. Then I will put into this parent li specific atribute 
(id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:

Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the 
appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:

And question is not how can I change html attribute but how can I go through html 
structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:

Hi!

What you want to accomplish (e.g. changing some html attributes) can be done by 
adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
 isEnabled() {
 return true if you want to append a html attribute;
 }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
 onComponentTag(ComponentTag tag) {
 super(tag);

 tag.put(my-html-attribute, value);
 }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:

Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
  li
a href=./mypage.html?cid=menumenu/a
  ul
li
  a href=./mypage.html?cid=menu/submenusubmenu/a
ul
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu1subsubmenu1/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu2subsubmenu2/a
  /li
  li
a href=./mypage.html?cid=menu/submenu/subsubmenu3subsubmenu3/a
  /li
/ul
  /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  ...
}

Now I need some way I can add atribute into parent li tag of a tag on which 
I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
  //cid = category id
  String category = parameters.get(cid).toString();
  //find corresponding a tag
  Tag anchorTag = go_from_top_ul_tag_and_find_a_tag_by_category(category)
  //have corresponding anchor tag, get parrent tag of the anchor tag
  Tag anchorParentTag = anchorTag.getParent();
  //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know whot to look 
for in docu.

Please, help :-)

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: find html tag

2013-01-23 Thread Martin Grigorov
You can use IMarkupFilter to manipulate the raw markup before being loaded
and used by the components.
See the implementations in Wicket to see what can be done with such filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska michael.jaru...@gmail.com
 wrote:

 Look at my original post. User clicks on a href=./mypage.html?cid=menu/*
 *submenu/subsubmenu2**subsubmenu2/a, then
 I have in String category (java code) value menu/submenu/subsubmenu2.
 I need just to make 2 more steps:
 1. in html code find anchor tag with href menu/submenu/subsubmenu2;
 2. find li tag which is parent of the anchor from point 1;

 When I have point 2 done, then I know how to put somethink into li tag...




 On 23.1.2013 21:21, Bas Gooren wrote:

 Ok, so you are indeed looking for a way to change a html attribute ;-)

 Since you wrote (in your folluw-up e-mail) that you cannot generate the
 html, there are some ways, but they mostly work outside of the normal
 wicket way.

 1) In the component which actually renders your static html override
 onComponentTagBody and fiddle with the markup stream (e.g. look at
 replaceComponentTagBody)

 2) store the static html somewhere by itself, and create a custom model.
 The model can then load the html and perform string replacement.
 You can then add a label component which uses the model and has
 setEscapeModelStrings(false) set.

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 21:11, schreef Michael Jaruska:

 I need to find the parent li tag of the anchor user clicks - I now
 from PageParameters which anchor
 has been clicked. Then I will put into this parent li specific
 atribute (id=something). This attribute
 will be then processed by JavaScript on the page.


 On 23.1.2013 21:04, Bas Gooren wrote:

 Sorry, I read too quickly.

 What are you trying to accomplish? Let's say you are able to find the
 appropriate html tag, what do you want to do with it?

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 21:01, schreef Michael Jaruska:

 And question is not how can I change html attribute but how can I
 go through html structure and
 find html tag with specific attribute :-)


 On 23.1.2013 20:50, Bas Gooren wrote:

 Hi!

 What you want to accomplish (e.g. changing some html attributes) can
 be done by adding an attributemodifier to each li component.

 In pseudocode:

 RepeatingView uls = ...
 for_every_li:
 WebMarkupContainer li = ...
 uls.add(li);

 now, you can do something like this:
 li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
 });

 Or alternatively:

 WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
 }

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 20:45, schreef Michael Jaruska:

 Hi,

 is there a way I can find specific html tag in markup?

 I have this html structure:
 ul class=mymenu
   li
 a href=./mypage.html?cid=menu**menu/a
   ul
 li
   a href=./mypage.html?cid=menu/**submenusubmenu/a
 ul
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu1**
 subsubmenu1/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu2**
 subsubmenu2/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu3**
 subsubmenu3/a
   /li
 /ul
   /ul
 /ul

 I'm processing clicks on anchors with my page:
 public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   ...
 }

 Now I need some way I can add atribute into parent li tag of a
 tag on which I do click.
 Somethink like (pseudocode):
 public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   //find corresponding a tag
   Tag anchorTag = go_from_top_ul_tag_and_find_a_**
 tag_by_category(category)
   //have corresponding anchor tag, get parrent tag of the anchor tag
   Tag anchorParentTag = anchorTag.getParent();
   //and now I can do my mysterious things with menu...
 }

 But I don't know where to start my search and I totaly don't know
 whot to look for in docu.

 Please, help :-)

 --**--**
 -
 To unsubscribe, e-mail: 
 users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org




 --**--**
 -
 To unsubscribe, e-mail: 
 users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org
 For additional commands, e-mail: users-h...@wicket.apache.org




 --**--**
 -
 To unsubscribe, e-mail: 
 users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org
 For additional commands, e-mail: 

Re: find html tag

2013-01-23 Thread james yong
Hi Michael,

What you need may not be related to wicket directly.
I suggest you can attach a javascript 'click' handler that will get the
parent and modify the attributes.
If you are using jQuery, you can use the parent function i.e. 
http://api.jquery.com/parent/ http://api.jquery.com/parent/  

Regards,
James



Michael Jaruska wrote
 Look at my original post. User clicks on 
 subsubmenu2 ./mypage.html?cid=menu/submenu/subsubmenu2  
 , then
 I have in String category (java code) value menu/submenu/subsubmenu2.
 I need just to make 2 more steps:
 1. in html code find anchor tag with href menu/submenu/subsubmenu2;
 2. find 
 li
  tag which is parent of the anchor from point 1;
 
 When I have point 2 done, then I know how to put somethink into 
 li
  tag...
 
 
 
 On 23.1.2013 21:21, Bas Gooren wrote:
 Ok, so you are indeed looking for a way to change a html attribute ;-)

 Since you wrote (in your folluw-up e-mail) that you cannot generate the
 html, there are some ways, but they mostly work outside of the normal
 wicket way.

 1) In the component which actually renders your static html override
 onComponentTagBody and fiddle with the markup stream (e.g. look at
 replaceComponentTagBody)

 2) store the static html somewhere by itself, and create a custom model.
 The model can then load the html and perform string replacement.
 You can then add a label component which uses the model and has
 setEscapeModelStrings(false) set.

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 21:11, schreef Michael Jaruska:
 I need to find the parent 
 li
  tag of the anchor user clicks - I now from PageParameters which anchor
 has been clicked. Then I will put into this parent 
 li
  specific atribute (id=something). This attribute
 will be then processed by JavaScript on the page.


 On 23.1.2013 21:04, Bas Gooren wrote:
 Sorry, I read too quickly.

 What are you trying to accomplish? Let's say you are able to find the
 appropriate html tag, what do you want to do with it?

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 21:01, schreef Michael Jaruska:
 And question is not how can I change html attribute but how can I
 go through html structure and
 find html tag with specific attribute :-)


 On 23.1.2013 20:50, Bas Gooren wrote:
 Hi!

 What you want to accomplish (e.g. changing some html attributes) can
 be done by adding an attributemodifier to each 
 li
  component.

 In pseudocode:

 RepeatingView uls = ...
 for_every_li:
 WebMarkupContainer li = ...
 uls.add(li);

 now, you can do something like this:
 li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
 });

 Or alternatively:

 WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
 }

 Met vriendelijke groet,
 Kind regards,

 Bas Gooren

 Op 23-1-2013 20:45, schreef Michael Jaruska:
 Hi,

 is there a way I can find specific html tag in markup?

 I have this html structure:
 
 ul class=mymenu
   
 li
 
 menu ./mypage.html?cid=menu  
   
 ul
 
 li
   
 submenu ./mypage.html?cid=menu/submenu  
 
 ul
   
 li
 
 subsubmenu1 ./mypage.html?cid=menu/submenu/subsubmenu1  
   
 /li
   
 li
 
 subsubmenu2 ./mypage.html?cid=menu/submenu/subsubmenu2  
   
 /li
   
 li
 
 subsubmenu3 ./mypage.html?cid=menu/submenu/subsubmenu3  
   
 /li
 
 /ul
   
 /ul
 
 /ul

 I'm processing clicks on anchors with my page:
 public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).toString();
   ...
 }

 Now I need some way I can add atribute into parent 
 li
  tag of 

  tag on which I do click.
 Somethink like (pseudocode):
 public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).toString();
   //find corresponding 

  tag
   Tag anchorTag =
 go_from_top_ul_tag_and_find_a_tag_by_category(category)
   //have corresponding anchor tag, get parrent tag of the anchor tag
   Tag anchorParentTag = anchorTag.getParent();
   //and now I can do my mysterious things with menu...
 }

 But I don't know where to start my search and I totaly don't know
 whot to look for in docu.

 Please, help :-)

 -
 To unsubscribe, e-mail: 

 users-unsubscribe@.apache

 For additional commands, e-mail: 

 users-help@.apache





 -
 To unsubscribe, e-mail: 

 users-unsubscribe@.apache

 For additional commands, e-mail: 

 users-help@.apache





 -
 To unsubscribe, e-mail: 

 users-unsubscribe@.apache

 For additional commands, e-mail: 

 users-help@.apache




 
 -
 To 

Re: find html tag

2013-01-23 Thread Michael Jaruska

Thanks Martin, this is what I'm looking for, you save my life and my job... :-D

On 23.1.2013 22:47, Martin Grigorov wrote:

You can use IMarkupFilter to manipulate the raw markup before being loaded
and used by the components.
See the implementations in Wicket to see what can be done with such filter.


On Wed, Jan 23, 2013 at 11:11 PM, Michael Jaruska michael.jaru...@gmail.com

wrote:



Look at my original post. User clicks on a href=./mypage.html?cid=menu/*
*submenu/subsubmenu2**subsubmenu2/a, then
I have in String category (java code) value menu/submenu/subsubmenu2.
I need just to make 2 more steps:
1. in html code find anchor tag with href menu/submenu/subsubmenu2;
2. find li tag which is parent of the anchor from point 1;

When I have point 2 done, then I know how to put somethink into li tag...




On 23.1.2013 21:21, Bas Gooren wrote:


Ok, so you are indeed looking for a way to change a html attribute ;-)

Since you wrote (in your folluw-up e-mail) that you cannot generate the
html, there are some ways, but they mostly work outside of the normal
wicket way.

1) In the component which actually renders your static html override
onComponentTagBody and fiddle with the markup stream (e.g. look at
replaceComponentTagBody)

2) store the static html somewhere by itself, and create a custom model.
The model can then load the html and perform string replacement.
You can then add a label component which uses the model and has
setEscapeModelStrings(false) set.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:11, schreef Michael Jaruska:


I need to find the parent li tag of the anchor user clicks - I now
from PageParameters which anchor
has been clicked. Then I will put into this parent li specific
atribute (id=something). This attribute
will be then processed by JavaScript on the page.


On 23.1.2013 21:04, Bas Gooren wrote:


Sorry, I read too quickly.

What are you trying to accomplish? Let's say you are able to find the
appropriate html tag, what do you want to do with it?

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 21:01, schreef Michael Jaruska:


And question is not how can I change html attribute but how can I
go through html structure and
find html tag with specific attribute :-)


On 23.1.2013 20:50, Bas Gooren wrote:


Hi!

What you want to accomplish (e.g. changing some html attributes) can
be done by adding an attributemodifier to each li component.

In pseudocode:

RepeatingView uls = ...
for_every_li:
WebMarkupContainer li = ...
uls.add(li);

now, you can do something like this:
li.add(new AttributeAppender(...) {
  isEnabled() {
  return true if you want to append a html attribute;
  }
});

Or alternatively:

WebMarkupContainer li = new WMC() {
  onComponentTag(ComponentTag tag) {
  super(tag);

  tag.put(my-html-attribute, value);
  }
}

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 23-1-2013 20:45, schreef Michael Jaruska:


Hi,

is there a way I can find specific html tag in markup?

I have this html structure:
ul class=mymenu
   li
 a href=./mypage.html?cid=menu**menu/a
   ul
 li
   a href=./mypage.html?cid=menu/**submenusubmenu/a
 ul
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu1**
subsubmenu1/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu2**
subsubmenu2/a
   /li
   li
 a href=./mypage.html?cid=menu/**submenu/subsubmenu3**
subsubmenu3/a
   /li
 /ul
   /ul
/ul

I'm processing clicks on anchors with my page:
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   ...
}

Now I need some way I can add atribute into parent li tag of a
tag on which I do click.
Somethink like (pseudocode):
public PageTest(PageParameters parameters){
   //cid = category id
   String category = parameters.get(cid).**toString();
   //find corresponding a tag
   Tag anchorTag = go_from_top_ul_tag_and_find_a_**
tag_by_category(category)
   //have corresponding anchor tag, get parrent tag of the anchor tag
   Tag anchorParentTag = anchorTag.getParent();
   //and now I can do my mysterious things with menu...
}

But I don't know where to start my search and I totaly don't know
whot to look for in docu.

Please, help :-)

--**--**
-
To unsubscribe, e-mail: 
users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






--**--**
-
To unsubscribe, e-mail: 
users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org






--**--**
-
To unsubscribe, e-mail: 
users-unsubscribe@wicket.**apache.orgusers-unsubscr...@wicket.apache.org