Re: clean way to add visibility constraints

2009-04-01 Thread Martijn Dashorst
one is static, the other dynamic.

You can make setVisible more dynamic by doing it in page.onBeforeRender

Martijn

On Wed, Apr 1, 2009 at 11:42 AM, Boydens Joeri (OZ)  wrote:
>
> Is there prefered way between the methods below?
>
> if (condition) {
>        component.setVisible(false);
> }
>
> OR
>
> component {
> @Override
> public boolean isVisible() {
>        return !condition;
> }
>
> If I use the above I can group my components and set them with the
> setVisible method depending on the condition, with the last method I
> have to add the the condition to every component.
>
>
> -Oorspronkelijk bericht-
> Van: Daan van Etten [mailto:d...@stuq.nl]
> Verzonden: woensdag 1 april 2009 11:20
> Aan: users@wicket.apache.org
> Onderwerp: Re: clean way to add visibility constraints
>
> You could write a method that sets the visibility on the relevant
> components.
> The Form components have to be visible to that method though (or you
> have to use a visitor).
>
> Regards,
>
> Daan
>
> Op 1 apr 2009, om 08:32 heeft Boydens Joeri (OZ) het volgende
> geschreven:
>
>> Hi,
>>
>>
>>
>> I have this page where I have different components that need to be
>> show
>> or hidden, depending on the value of some model fields.  I implemented
>> this by overriding the isVisible method of the components.  Now I was
>> wondering if there is a less verbose way of handling this? (I can't
>> group the components because it's not possible in the html markup).
>>
>>
>>
>> item.add(new TextField("value") {
>>
>>                                         public boolean isVisible() {
>>
>>
>> OnlineBookingParametersArticle     article =
>> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>>
>>                                               return
>> article.getArticle().getNumberInStock() > 0;
>>
>>                                         }
>>
>>                                   });
>>
>>
>>
>>                                   item.add(new
>> Label("article.numberOfArticlesLabel", "Geen beschikbaar") {
>>
>>                                         public boolean isVisible() {
>>
>>
>> OnlineBookingParametersArticle     article =
>> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>>
>>                                               return
>> article.getArticle().getNumberInStock() <= 0;
>>
>>                                         }
>>
>>                                   });
>>
>>
>>
>>                                   item.add(new
>> Label("article.description"));
>>
>>
>>
>>                                   item.add(new
>> WebMarkupContainer("participantInfo") {
>>
>>                                                     public boolean
>> isVisible() {
>>
>>
>> OnlineBookingParametersArticle       article =
>> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>>
>>                                                           return
>> article.getArticle().getNumberInStock() > 0;
>>
>>                                                     }
>>
>>                                               }
>>
>>                                               .add(new
>> Label("article.numberOfRequiredParticipants"))
>>
>>                                               .add(new
>> Label("article.maximumNumberOfParticipants")));
>>
>>
>>
>>
>>
>>                                   item.add(new Link("contactLink"){
>>
>>                                         @Override
>>
>>                                         public void onClick(){
>>
>>                                               //TODO : go to correct
>> page
>>
>>                                         }
>>
>>                                         @Override
>>
>>                                         public boolean isVisible() {
>>
>>
>> OnlineBookingParametersArticle     article =
>> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>>
>>                                               return
>> article.getArticle().getNumberInStock() <= 0;
>>
>>                                         }
>>
>>                                   });
>>
>>
>>
>>
>>
>
>
> -
> 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
>
>



-- 
Become a Wicket expert, learn from the best: http://wicketinaction.com
Apache Wicket 1.3.5 is released
Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.

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



RE: clean way to add visibility constraints

2009-04-01 Thread Boydens Joeri (OZ)

Is there prefered way between the methods below?  

if (condition) {
component.setVisible(false);
}

OR

component {
@Override
public boolean isVisible() {
return !condition;
}

If I use the above I can group my components and set them with the
setVisible method depending on the condition, with the last method I
have to add the the condition to every component.


-Oorspronkelijk bericht-
Van: Daan van Etten [mailto:d...@stuq.nl] 
Verzonden: woensdag 1 april 2009 11:20
Aan: users@wicket.apache.org
Onderwerp: Re: clean way to add visibility constraints

You could write a method that sets the visibility on the relevant  
components.
The Form components have to be visible to that method though (or you  
have to use a visitor).

Regards,

Daan

Op 1 apr 2009, om 08:32 heeft Boydens Joeri (OZ) het volgende  
geschreven:

> Hi,
>
>
>
> I have this page where I have different components that need to be  
> show
> or hidden, depending on the value of some model fields.  I implemented
> this by overriding the isVisible method of the components.  Now I was
> wondering if there is a less verbose way of handling this? (I can't
> group the components because it's not possible in the html markup).
>
>
>
> item.add(new TextField("value") {
>
> public boolean isVisible() {
>
>
> OnlineBookingParametersArticle article =
> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>
>   return
> article.getArticle().getNumberInStock() > 0;
>
> }
>
>   });
>
>
>
>   item.add(new
> Label("article.numberOfArticlesLabel", "Geen beschikbaar") {
>
> public boolean isVisible() {
>
>
> OnlineBookingParametersArticle article =
> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>
>   return
> article.getArticle().getNumberInStock() <= 0;
>
> }
>
>   });
>
>
>
>   item.add(new
> Label("article.description"));
>
>
>
>   item.add(new
> WebMarkupContainer("participantInfo") {
>
> public boolean
> isVisible() {
>
>
> OnlineBookingParametersArticle   article =
> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>
>   return
> article.getArticle().getNumberInStock() > 0;
>
> }
>
>   }
>
>   .add(new
> Label("article.numberOfRequiredParticipants"))
>
>   .add(new
> Label("article.maximumNumberOfParticipants")));
>
>
>
>
>
>   item.add(new Link("contactLink"){
>
> @Override
>
> public void onClick(){
>
>   //TODO : go to correct
> page
>
> }
>
> @Override
>
> public boolean isVisible() {
>
>
> OnlineBookingParametersArticle article =
> (OnlineBookingParametersArticle) getParent().getModel().getObject();
>
>   return
> article.getArticle().getNumberInStock() <= 0;
>
> }
>
>   });
>
>
>
>
>


-
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: clean way to add visibility constraints

2009-04-01 Thread Daan van Etten
You could write a method that sets the visibility on the relevant  
components.
The Form components have to be visible to that method though (or you  
have to use a visitor).


Regards,

Daan

Op 1 apr 2009, om 08:32 heeft Boydens Joeri (OZ) het volgende  
geschreven:



Hi,



I have this page where I have different components that need to be  
show

or hidden, depending on the value of some model fields.  I implemented
this by overriding the isVisible method of the components.  Now I was
wondering if there is a less verbose way of handling this? (I can't
group the components because it's not possible in the html markup).



item.add(new TextField("value") {

public boolean isVisible() {


OnlineBookingParametersArticle article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

  return
article.getArticle().getNumberInStock() > 0;

}

  });



  item.add(new
Label("article.numberOfArticlesLabel", "Geen beschikbaar") {

public boolean isVisible() {


OnlineBookingParametersArticle article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

  return
article.getArticle().getNumberInStock() <= 0;

}

  });



  item.add(new
Label("article.description"));



  item.add(new
WebMarkupContainer("participantInfo") {

public boolean
isVisible() {


OnlineBookingParametersArticle   article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

  return
article.getArticle().getNumberInStock() > 0;

}

  }

  .add(new
Label("article.numberOfRequiredParticipants"))

  .add(new
Label("article.maximumNumberOfParticipants")));





  item.add(new Link("contactLink"){

@Override

public void onClick(){

  //TODO : go to correct
page

}

@Override

public boolean isVisible() {


OnlineBookingParametersArticle article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

  return
article.getArticle().getNumberInStock() <= 0;

}

  });








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



clean way to add visibility constraints

2009-03-31 Thread Boydens Joeri (OZ)
Hi,

 

I have this page where I have different components that need to be show
or hidden, depending on the value of some model fields.  I implemented
this by overriding the isVisible method of the components.  Now I was
wondering if there is a less verbose way of handling this? (I can't
group the components because it's not possible in the html markup).  

 

item.add(new TextField("value") {

 public boolean isVisible() {

 
OnlineBookingParametersArticle article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

   return
article.getArticle().getNumberInStock() > 0;

 }

   });

   

   item.add(new
Label("article.numberOfArticlesLabel", "Geen beschikbaar") {

 public boolean isVisible() {

 
OnlineBookingParametersArticle article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

   return
article.getArticle().getNumberInStock() <= 0;

 }

   });

   

   item.add(new
Label("article.description"));

 

   item.add(new
WebMarkupContainer("participantInfo") {

 public boolean
isVisible() {

 
OnlineBookingParametersArticle   article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

   return
article.getArticle().getNumberInStock() > 0;

 }

   }

   .add(new
Label("article.numberOfRequiredParticipants"))

   .add(new
Label("article.maximumNumberOfParticipants")));  

 

   

   item.add(new Link("contactLink"){

 @Override

 public void onClick(){

   //TODO : go to correct
page

 }

 @Override

 public boolean isVisible() {

 
OnlineBookingParametersArticle article =
(OnlineBookingParametersArticle) getParent().getModel().getObject();

   return
article.getArticle().getNumberInStock() <= 0;

 }

   });