Johan Compagner <[EMAIL PROTECTED]> writes:

> the problem is that is* should just be overridable, because can we do
> setvisible in onattach? dont think so because that makes a new
> version. isVis and isEnabled can change between request of a
> component, thats why we have to be able to override it. In the end it
> is always the developers responsibility..

It shows that the VISIBLE flag is only one of the factors determining 
the ultimate visibility:

  Component c = ...;
  c.setVisible(true); //Just one factor
  //Don't know if it is truly visible that because it may 
  //depend on other factors
  //assertTrue(c.isVisible());
  c.setVisible(false);
  assertFalse(c.isVisible()); //This must be the case

Therefore the VISIBLE flag is still used and is not a design
flaw. So it makes sense to keep isVisible() non-final. But the same 
thing can't be said for setRequired() and isRequired() because we 
can't find a use case where the ultimate result depends on two or 
more factors.


Reply via email to