|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectbibliothek.gui.dock.control.focus.EnsuringFocusRequest
public class EnsuringFocusRequest
Ensures that either a DockTitle or child Component of the currently focused
Dockable is focused. This request does nothing if the focus already is
correctly set, but will request the focus if not.
The request will be executed several times, this is necessary because on some systems - like
Linux - Java does not handle focus requests very well.
| Constructor Summary | |
|---|---|
EnsuringFocusRequest(Dockable dockable,
boolean dockableOnly)
Creates a new request. |
|
EnsuringFocusRequest(Dockable dockable,
boolean dockableOnly,
Component mouseClicked)
Creates a new request. |
|
| Method Summary | |
|---|---|
boolean |
acceptable(Component component)
Tells whether component would be an acceptable Component to receive
the focus. |
Component |
getComponent()
Gets the Component which may receive the focus. |
int |
getDelay()
Gets a delay in milliseconds, the FocusController will wait executing this
request until the delay has passed. |
DockElementRepresentative |
getSource()
Gets the source of this request. |
FocusRequest |
grant(Component component)
Called once this FocusRequest is granted, this request must now call
a method like Component.requestFocusInWindow() on component. |
boolean |
isHardRequest()
A hard request is not checked for correctness regarding the visibility
or showing. |
boolean |
validate(FocusController controller)
Invoked by controller right before this request is processed. |
void |
veto(FocusVetoListener.FocusVeto veto)
Informs this request of the result of calling the FocusVetoListeners. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public EnsuringFocusRequest(Dockable dockable,
boolean dockableOnly)
dockable - the element which is focuseddockableOnly - whether a child of dockable should gain the focus. If false, then also
a DockTitle can gain the focus.
public EnsuringFocusRequest(Dockable dockable,
boolean dockableOnly,
Component mouseClicked)
dockable - the element which is focuseddockableOnly - whether a child of dockable should gain the focus. If false, then also
a DockTitle can gain the focus.mouseClicked - the Component the used clicked on, may be null| Method Detail |
|---|
public DockElementRepresentative getSource()
FocusRequestDockable which receives
the focus, or the Component which received a MouseEvent. The
source will be used to ask the FocusVetoListeners whether to accept this
request or not.
getSource in interface FocusRequestnullpublic Component getComponent()
FocusRequestComponent which may receive the focus. This is no necessarily the
Component that gains the focus because the FocusStrategy may choose
another Component. This Component may be not focusable, not visible,
not showing, or not valid in any other respect. It is the FocusController's job
to correct such issues.
getComponent in interface FocusRequestComponent which may receive the focus, can be nullpublic int getDelay()
FocusRequestFocusController will wait executing this
request until the delay has passed.
getDelay in interface FocusRequestpublic boolean isHardRequest()
FocusRequestvisibility
or showing. These requests can be executed even if the application
is not yet visible.
isHardRequest in interface FocusRequestComponents are not
visiblepublic void veto(FocusVetoListener.FocusVeto veto)
FocusRequestFocusVetoListeners. This method is called
after FocusRequest.validate(FocusController).
veto in interface FocusRequestveto - the veto that was cast, including no vetopublic boolean acceptable(Component component)
FocusRequestcomponent would be an acceptable Component to receive
the focus. This method usually is called when FocusRequest.getComponent() returned an invalid
Component (e.g. null or a component that is not focusable) and that
Component gets replaced.
acceptable in interface FocusRequestcomponent - the component that might gain the focus
true if this request approves on component replacing
the result of FocusRequest.getComponent()public boolean validate(FocusController controller)
FocusRequestcontroller right before this request is processed. The method
checks whether this request is still valid, e.g. a request may no longer be valid because
it points to a Dockable that is no longer visible.
validate in interface FocusRequestcontroller - the controller which will process this request
true if this request is valid, false if this request is
invalid and should be ignoredpublic FocusRequest grant(Component component)
FocusRequestFocusRequest is granted, this request must now call
a method like Component.requestFocusInWindow() on component.
grant in interface FocusRequestcomponent - the Component which gains the focus. Usually this
Component is valid in the sense of that it is focusable, visible and
showing. There are no guarantees for this properties tough.
FocusRequest that will be executed. If the result of
FocusRequest.getSource() of this and of the result matches, and if the
result of FocusRequest.getComponent() is the same as component, then
the FocusController will accept the request without calling neither
FocusVetoListener nor FocusStrategy. In any other case the request
will be treated like a completely new request. The result of this method can also
be null. The result of this method can also by this.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||