+++ /dev/null
-/*
-@ITMillApache2LicenseForJavaFiles@
- */
-/**
- *
- */
-package com.vaadin.event.dd.acceptcriteria;
-
-import com.vaadin.event.dd.DragAndDropEvent;
-import com.vaadin.event.dd.DropTargetDetails;
-import com.vaadin.terminal.PaintException;
-import com.vaadin.terminal.PaintTarget;
-import com.vaadin.terminal.gwt.client.ui.dd.VDropDetailEquals;
-
-/**
- * Criterion for checking if drop target details contains the specific property
- * with the specific value. Currently only String values are supported.
- *
- * @since 6.3
- *
- * TODO add support for other basic data types that we support in UIDL.
- *
- */
-@ClientCriterion(VDropDetailEquals.class)
-public class DropTargetDetailEquals extends ClientSideCriterion {
-
- private static final long serialVersionUID = 763165450054331246L;
- private String propertyName;
- private Object value;
-
- /**
- * Constructs a criterion which ensures that the value there is a value in
- * {@link DropTargetDetails} that equals the reference value.
- *
- * @param dataFlavor
- * the type of data to be checked
- * @param value
- * the reference value to which the drop target detail will be
- * compared
- */
- public DropTargetDetailEquals(String dataFlavor, String value) {
- propertyName = dataFlavor;
- this.value = value;
- }
-
- public DropTargetDetailEquals(String dataFlavor, Boolean true1) {
- propertyName = dataFlavor;
- value = true1;
- }
-
- @Override
- public void paintContent(PaintTarget target) throws PaintException {
- super.paintContent(target);
- target.addAttribute("p", propertyName);
- if (value instanceof Boolean) {
- target.addAttribute("v", ((Boolean) value).booleanValue());
- target.addAttribute("t", "b");
- } else if (value instanceof String) {
- target.addAttribute("v", (String) value);
- }
- }
-
- public boolean accept(DragAndDropEvent dragEvent) {
- Object data = dragEvent.getDropTargetDetails().getData(propertyName);
- return value.equals(data);
- }
-
- @Override
- protected String getIdentifier() {
- // sub classes by default use VDropDetailEquals a client implementation
- return DropTargetDetailEquals.class.getCanonicalName();
- }
-}
\ No newline at end of file
--- /dev/null
+/*
+@ITMillApache2LicenseForJavaFiles@
+ */
+/**
+ *
+ */
+package com.vaadin.event.dd.acceptcriteria;
+
+import com.vaadin.event.dd.DragAndDropEvent;
+import com.vaadin.event.dd.DropTargetDetails;
+import com.vaadin.terminal.PaintException;
+import com.vaadin.terminal.PaintTarget;
+import com.vaadin.terminal.gwt.client.ui.dd.VTargetDetailIs;
+
+/**
+ * Criterion for checking if drop target details contains the specific property
+ * with the specific value. Currently only String values are supported.
+ *
+ * @since 6.3
+ *
+ * TODO add support for other basic data types that we support in UIDL.
+ *
+ */
+@ClientCriterion(VTargetDetailIs.class)
+public class TargetDetailIs extends ClientSideCriterion {
+
+ private static final long serialVersionUID = 763165450054331246L;
+ private String propertyName;
+ private Object value;
+
+ /**
+ * Constructs a criterion which ensures that the value there is a value in
+ * {@link DropTargetDetails} that equals the reference value.
+ *
+ * @param dataFlavor
+ * the type of data to be checked
+ * @param value
+ * the reference value to which the drop target detail will be
+ * compared
+ */
+ public TargetDetailIs(String dataFlavor, String value) {
+ propertyName = dataFlavor;
+ this.value = value;
+ }
+
+ public TargetDetailIs(String dataFlavor, Boolean true1) {
+ propertyName = dataFlavor;
+ value = true1;
+ }
+
+ @Override
+ public void paintContent(PaintTarget target) throws PaintException {
+ super.paintContent(target);
+ target.addAttribute("p", propertyName);
+ if (value instanceof Boolean) {
+ target.addAttribute("v", ((Boolean) value).booleanValue());
+ target.addAttribute("t", "b");
+ } else if (value instanceof String) {
+ target.addAttribute("v", (String) value);
+ }
+ }
+
+ public boolean accept(DragAndDropEvent dragEvent) {
+ Object data = dragEvent.getDropTargetDetails().getData(propertyName);
+ return value.equals(data);
+ }
+
+ @Override
+ protected String getIdentifier() {
+ // sub classes by default use VDropDetailEquals a client implementation
+ return TargetDetailIs.class.getCanonicalName();
+ }
+}
\ No newline at end of file
+++ /dev/null
-/*
-@ITMillApache2LicenseForJavaFiles@
- */
-/**
- *
- */
-package com.vaadin.terminal.gwt.client.ui.dd;
-
-import com.vaadin.terminal.gwt.client.UIDL;
-
-final public class VDropDetailEquals extends VAcceptCriterion {
-
- @Override
- protected boolean accept(VDragEvent drag, UIDL configuration) {
- String name = configuration.getStringAttribute("p");
- String t = configuration.hasAttribute("t") ? configuration
- .getStringAttribute("t").intern() : "s";
- Object value = null;
- if (t == "s") {
- value = configuration.getStringAttribute("v");
- } else if (t == "b") {
- value = configuration.getBooleanAttribute("v");
- }
- if (value != null) {
- Object object = drag.getDropDetails().get(name);
- return value.equals(object);
- } else {
- return false;
- }
-
- }
-}
\ No newline at end of file
--- /dev/null
+/*
+@ITMillApache2LicenseForJavaFiles@
+ */
+/**
+ *
+ */
+package com.vaadin.terminal.gwt.client.ui.dd;
+
+import com.vaadin.terminal.gwt.client.UIDL;
+
+final public class VTargetDetailIs extends VAcceptCriterion {
+
+ @Override
+ protected boolean accept(VDragEvent drag, UIDL configuration) {
+ String name = configuration.getStringAttribute("p");
+ String t = configuration.hasAttribute("t") ? configuration
+ .getStringAttribute("t").intern() : "s";
+ Object value = null;
+ if (t == "s") {
+ value = configuration.getStringAttribute("v");
+ } else if (t == "b") {
+ value = configuration.getBooleanAttribute("v");
+ }
+ if (value != null) {
+ Object object = drag.getDropDetails().get(name);
+ return value.equals(object);
+ } else {
+ return false;
+ }
+
+ }
+}
\ No newline at end of file
import com.vaadin.event.dd.DropTargetDetails;
import com.vaadin.event.dd.acceptcriteria.ClientCriterion;
import com.vaadin.event.dd.acceptcriteria.ClientSideCriterion;
-import com.vaadin.event.dd.acceptcriteria.DropTargetDetailEquals;
import com.vaadin.event.dd.acceptcriteria.ServerSideCriterion;
+import com.vaadin.event.dd.acceptcriteria.TargetDetailIs;
import com.vaadin.terminal.KeyMapper;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
}
/**
- * A criterion that accepts transferable only directly on a tree node that
- * can have children.
+ * A criterion that accepts {@link Transferable} only directly on a tree
+ * node that can have children.
+ * <p>
+ * Class is singleton, use {@link TargetItemAllowsChildren#get()} to get the
+ * instance.
*
* @see Tree#setChildrenAllowed(Object, boolean)
*
* @since 6.3
*/
- public static class OverFolderNode extends DropTargetDetailEquals {
+ public static class TargetItemAllowsChildren extends TargetDetailIs {
+
+ private static TargetItemAllowsChildren instance = new TargetItemAllowsChildren();
+
+ public static TargetItemAllowsChildren get() {
+ return instance;
+ }
- public OverFolderNode() {
+ private TargetItemAllowsChildren() {
super("itemIdOverIsNode", Boolean.TRUE);
}
import com.vaadin.event.dd.DropHandler;
import com.vaadin.event.dd.acceptcriteria.AcceptCriterion;
import com.vaadin.event.dd.acceptcriteria.And;
-import com.vaadin.event.dd.acceptcriteria.SourceIs;
import com.vaadin.event.dd.acceptcriteria.Or;
+import com.vaadin.event.dd.acceptcriteria.SourceIs;
import com.vaadin.terminal.Resource;
import com.vaadin.terminal.ThemeResource;
import com.vaadin.tests.components.TestBase;
import com.vaadin.ui.AbstractSelect.AbstractSelectDropTargetDetails;
import com.vaadin.ui.AbstractSelect.AcceptItem;
import com.vaadin.ui.Table.TableTransferable;
-import com.vaadin.ui.Tree.OverFolderNode;
+import com.vaadin.ui.Tree.TargetItemAllowsChildren;
import com.vaadin.ui.Tree.TreeDragMode;
public class DDTest2 extends TestBase {
*/
table.setDragMode(Table.TableDragMode.ROW);
- OverFolderNode onNode = new OverFolderNode();
+ TargetItemAllowsChildren onNode = TargetItemAllowsChildren.get();
SourceIs fromTable = new SourceIs(table);
SourceIs fromTree = new SourceIs(tree1);
import com.vaadin.event.dd.DropTargetDetails;
import com.vaadin.event.dd.acceptcriteria.AcceptCriterion;
import com.vaadin.event.dd.acceptcriteria.And;
-import com.vaadin.event.dd.acceptcriteria.DropTargetDetailEquals;
+import com.vaadin.event.dd.acceptcriteria.TargetDetailIs;
import com.vaadin.event.dd.acceptcriteria.IsSameSourceAndTarget;
import com.vaadin.event.dd.acceptcriteria.Not;
import com.vaadin.ui.Component;
}
private DropHandler dh = new DropHandler() {
- AcceptCriterion crit = new And(new DropTargetDetailEquals(
+ AcceptCriterion crit = new And(new TargetDetailIs(
"horizontalLocation", "LEFT"), new Not(IsSameSourceAndTarget
.get()));