Re: make invisible if model object is null

2008-12-01 Thread Bruno Cesar Borges
Alright, this is my last try replying with MS Outlook. =) And I will also add 
more info to help with this thread.

You can use borders to acomplish what you want. Here's an example:

#JAVA
public abstract class ConditionalHiddenBorder extends Border {

   public ConditionalHiddenBorder(String id) {
  super(id);
   }

   public abstract boolean isVisible();

}

#HTML
   html
   body
 wicket:border
   wicket:body/
 /wicket:border
   /body
   /html

#EXAMPLE (Wicket's Quickstart)
   public HomePage() {
  final Label label = new Label(message, If you see this message wicket 
is properly configured and running);
  ConditionalHiddenBorder chb = new ConditionalHiddenBorder(border) {

 public boolean isVisible() {
return label.getDefaultModelObject() != null;
 }
  };
  chb.add(label);
  add(chb);
   }

#HTML Example
div wicket:id=border
span wicket:id=messagemessage will be here/span
/div

Hope this reply works!

cheers,
Bruno

-Original Message-
From: kan [mailto:[EMAIL PROTECTED]
Sent: Monday, December 01, 2008 9:03 AM
To: users@wicket.apache.org
Subject: make invisible if model object is null


I use the next construction very often:

[markup]
wicket:enclosure child=something
pSomething here, description, comments etc: span
wicket:id=somethinig/span/p
/wicket:enclosure

[java]
add(new Label(something)
{
@Override
public boolean isVisible() {
return super.isVisible()  getDefaultModelObject() != null;
}
});

And there are a lot different components which should be hidden with
some arounding text if they have null value of model object.
How to make this more elegant?
First obvious way - inherit from Label, and make something
LabelInvisibleNull, but it is very bad, because a lot different
components (not only Label, but Image, WebMarkupContainer, some my
custom components, etc) require this behavior.
Second - more meaningful - make a IBehavior. But it doesn't work. In
bind is to early to check model, but in beforeRender is too late
to change visibility.
Is there any other option?


-- 
WBR, kan.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

***
Atenção: Esta mensagem foi enviada para uso exclusivo do(s) destinatários(s) 
acima identificado(s),
podendo conter informações e/ou documentos confidencias/privilegiados e seu 
sigilo é protegido por 
lei. Caso você tenha recebido por engano, por favor, informe o remetente e 
apague-a de seu sistema.
Notificamos que é proibido por lei a sua retenção, disseminação, distribuição, 
cópia ou uso sem 
expressa autorização do remetente. Opiniões pessoais do remetente não refletem, 
necessariamente, 
o ponto de vista da CETIP, o qual é divulgado somente por pessoas autorizadas.


Warning: This message was sent for exclusive use of the addressees above 
identified, possibly 
containing information and or privileged/confidential documents whose content 
is protected by law. 
In case you have mistakenly received it, please notify the sender and delete it 
from your system. 
Be noticed that the law forbids the retention, dissemination, distribution, 
copy or use without 
express authorization from the sender. Personal opinions of the sender do not 
necessarily reflect 
CETIP's point of view, which is only divulged by authorized personnel.
***


Re make invisible if model object is null

2008-12-01 Thread Bruno Cesar Borges
Use a border

PS: I hate Microsoft Outlook

-Mensagem original-
De: kan [mailto:[EMAIL PROTECTED]
Enviada em: segunda-feira, 1 de dezembro de 2008 09:03
Para: users@wicket.apache.org
Assunto: make invisible if model object is null


I use the next construction very often:

[markup]
wicket:enclosure child=something
pSomething here, description, comments etc: span
wicket:id=somethinig/span/p
/wicket:enclosure

[java]
add(new Label(something)
{
@Override
public boolean isVisible() {
return super.isVisible()  getDefaultModelObject() != null;
}
});

And there are a lot different components which should be hidden with
some arounding text if they have null value of model object.
How to make this more elegant?
First obvious way - inherit from Label, and make something
LabelInvisibleNull, but it is very bad, because a lot different
components (not only Label, but Image, WebMarkupContainer, some my
custom components, etc) require this behavior.
Second - more meaningful - make a IBehavior. But it doesn't work. In
bind is to early to check model, but in beforeRender is too late
to change visibility.
Is there any other option?


-- 
WBR, kan.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

***
Atenção: Esta mensagem foi enviada para uso exclusivo do(s) destinatários(s) 
acima identificado(s),
podendo conter informações e/ou documentos confidencias/privilegiados e seu 
sigilo é protegido por 
lei. Caso você tenha recebido por engano, por favor, informe o remetente e 
apague-a de seu sistema.
Notificamos que é proibido por lei a sua retenção, disseminação, distribuição, 
cópia ou uso sem 
expressa autorização do remetente. Opiniões pessoais do remetente não refletem, 
necessariamente, 
o ponto de vista da CETIP, o qual é divulgado somente por pessoas autorizadas.


Warning: This message was sent for exclusive use of the addressees above 
identified, possibly 
containing information and or privileged/confidential documents whose content 
is protected by law. 
In case you have mistakenly received it, please notify the sender and delete it 
from your system. 
Be noticed that the law forbids the retention, dissemination, distribution, 
copy or use without 
express authorization from the sender. Personal opinions of the sender do not 
necessarily reflect 
CETIP's point of view, which is only divulged by authorized personnel.
***


Re: make invisible if model object is null

2008-12-01 Thread Igor Vaynberg
we should add ibehavior.isVisibilityAllowed(Component) or something
like that for 1.5 release. feel free to create a jira issue.

-igor

On Mon, Dec 1, 2008 at 3:03 AM, kan [EMAIL PROTECTED] wrote:
 I use the next construction very often:

 [markup]
 wicket:enclosure child=something
 pSomething here, description, comments etc: span
 wicket:id=somethinig/span/p
 /wicket:enclosure

 [java]
 add(new Label(something)
 {
@Override
public boolean isVisible() {
return super.isVisible()  getDefaultModelObject() != null;
}
 });

 And there are a lot different components which should be hidden with
 some arounding text if they have null value of model object.
 How to make this more elegant?
 First obvious way - inherit from Label, and make something
 LabelInvisibleNull, but it is very bad, because a lot different
 components (not only Label, but Image, WebMarkupContainer, some my
 custom components, etc) require this behavior.
 Second - more meaningful - make a IBehavior. But it doesn't work. In
 bind is to early to check model, but in beforeRender is too late
 to change visibility.
 Is there any other option?


 --
 WBR, kan.

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: make invisible if model object is null

2008-12-01 Thread kan
https://issues.apache.org/jira/browse/WICKET-1964

2008/12/1 Igor Vaynberg [EMAIL PROTECTED]:
 we should add ibehavior.isVisibilityAllowed(Component) or something
 like that for 1.5 release. feel free to create a jira issue.

 -igor

 On Mon, Dec 1, 2008 at 3:03 AM, kan [EMAIL PROTECTED] wrote:
 I use the next construction very often:

 [markup]
 wicket:enclosure child=something
 pSomething here, description, comments etc: span
 wicket:id=somethinig/span/p
 /wicket:enclosure

 [java]
 add(new Label(something)
 {
@Override
public boolean isVisible() {
return super.isVisible()  getDefaultModelObject() != null;
}
 });

 And there are a lot different components which should be hidden with
 some arounding text if they have null value of model object.
 How to make this more elegant?
 First obvious way - inherit from Label, and make something
 LabelInvisibleNull, but it is very bad, because a lot different
 components (not only Label, but Image, WebMarkupContainer, some my
 custom components, etc) require this behavior.
 Second - more meaningful - make a IBehavior. But it doesn't work. In
 bind is to early to check model, but in beforeRender is too late
 to change visibility.
 Is there any other option?


 --
 WBR, kan.

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]





-- 
WBR, kan.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]