You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pivot.apache.org by "Greg Brown (JIRA)" <ji...@apache.org> on 2010/11/16 16:26:16 UTC
[jira] Resolved: (PIVOT-670) Generic types for listeners
[ https://issues.apache.org/jira/browse/PIVOT-670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Greg Brown resolved PIVOT-670.
------------------------------
Resolution: Won't Fix
> Generic types for listeners
> ---------------------------
>
> Key: PIVOT-670
> URL: https://issues.apache.org/jira/browse/PIVOT-670
> Project: Pivot
> Issue Type: Improvement
> Environment: All
> Reporter: Frédéric VERGEZ
> Priority: Trivial
> Fix For: 2.1
>
>
> Could listener interfaces have generic types ?
> This would allow to be type safe in methods, and avoid objects casting.
> For instance in a ComponentMouseListener:
> public interface ComponentMouseListener<T extends Component> {
> /**
> * Component mouse button listener adapter.
> */
> public static class Adapter implements ComponentMouseListener {
> @Override
> public boolean mouseMove(T component, int x, int y) {
> return false;
> }
> @Override
> public void mouseOver(T component) {
> }
> @Override
> public void mouseOut(T component) {
> }
> }
> /**
> * Called when the mouse is moved over a component.
> *
> * @param component
> * @param x
> * @param y
> *
> * @return
> * <tt>true</tt> to consume the event; <tt>false</tt> to allow it to
> * propagate.
> */
> public boolean mouseMove(T component, int x, int y);
> /**
> * Called when the mouse enters a component.
> *
> * @param component
> */
> public void mouseOver(T component);
> /**
> * Called when the mouse exits a component.
> *
> * @param component
> */
> public void mouseOut(T component);
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.