From: Mathieu Baudier Date: Wed, 20 Jan 2021 07:17:35 +0000 (+0100) Subject: Introduce mouse down functional interface. X-Git-Tag: argeo-commons-2.1.91~20 X-Git-Url: https://git.argeo.org/?p=lgpl%2Fargeo-commons.git;a=commitdiff_plain;h=a01f44eb6069d2827a384cc92e29edc724d33295 Introduce mouse down functional interface. --- diff --git a/org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/MouseDown.java b/org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/MouseDown.java new file mode 100644 index 000000000..7abed8079 --- /dev/null +++ b/org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/MouseDown.java @@ -0,0 +1,26 @@ +package org.argeo.eclipse.ui; + +import org.eclipse.swt.events.MouseEvent; +import org.eclipse.swt.events.MouseListener; + +/** + * {@link MouseListener#mouseDown(MouseEvent)} as a functional interface in + * order to use as a short lambda expression in UI code. + * {@link MouseListener#mouseDoubleClick(MouseEvent)} and + * {@link MouseListener#mouseUp(MouseEvent)} do nothing by default. + */ +@FunctionalInterface +public interface MouseDown extends MouseListener { + @Override + void mouseDown(MouseEvent e); + + @Override + default void mouseDoubleClick(MouseEvent e) { + // does nothing + } + + @Override + default void mouseUp(MouseEvent e) { + // does nothing + } +}