]> source.dussan.org Git - vaadin-framework.git/commitdiff
small changes
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Mon, 15 Feb 2010 15:05:56 +0000 (15:05 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Mon, 15 Feb 2010 15:05:56 +0000 (15:05 +0000)
svn changeset:11324/svn branch:6.3_dd

WebContent/VAADIN/themes/base/common/common.css
WebContent/VAADIN/themes/base/styles.css
WebContent/VAADIN/themes/reindeer/styles.css
WebContent/VAADIN/themes/runo/styles.css
src/com/vaadin/event/dd/acceptCriteria/OverTreeNode.java
src/com/vaadin/terminal/gwt/client/ui/VTree.java
src/com/vaadin/terminal/gwt/client/ui/dd/VDragAndDropManager.java
src/com/vaadin/terminal/gwt/client/ui/dd/VDragEvent.java
tests/src/com/vaadin/tests/dd/DDTest2.java

index 48091fc35e8b15de5712d897df78cfe16d952bcc..082f6b4f7f2ea6c1ff42693c738a91335e4276cb 100644 (file)
@@ -218,4 +218,12 @@ div.v-app-loading {
 .v-window select,
 .v-window textarea {
        padding: 2px;
+}
+
+.v-drag-element {
+       z-index:60000;
+       position:absolute;
+    opacity: 0.4;
+    filter: alpha(opacity=40);
+    border: 1px solid #999;
 }
\ No newline at end of file
index 28d412536e66acc45572e480b9df472ad7ac8b4b..f8cd9a8f8b4579cc51761aecb578a2b5560071ff 100644 (file)
@@ -1,5 +1,5 @@
-.v-theme-version:after {content:"9_9_9_INTERNAL-DEBUG-BUILD";}
-.v-theme-version-9_9_9_INTERNAL-DEBUG-BUILD {display: none;}
+.v-theme-version:after {content:"6_3_0_dev-20100215";}
+.v-theme-version-6_3_0_dev-20100215 {display: none;}
 /* Automatically compiled css file from subdirectories. */
 
 .v-absolutelayout-wrapper {
@@ -450,6 +450,14 @@ div.v-app-loading {
        padding: 2px;
 }
 
+.v-drag-element {
+       z-index:60000;
+       position:absolute;
+    opacity: 0.4;
+    filter: alpha(opacity=40);
+    border: 1px solid #999;
+}
+
 .v-csslayout {
        overflow: hidden;
 }
index c4d29c78cede31977f411f7daca6102232ebf8b7..eebbff3ee22ae9dd401010d8b87f588f21bc59d3 100644 (file)
@@ -1,5 +1,5 @@
-.v-theme-version:after {content:"9_9_9_INTERNAL-DEBUG-BUILD";}
-.v-theme-version-9_9_9_INTERNAL-DEBUG-BUILD {display: none;}
+.v-theme-version:after {content:"6_3_0_dev-20100215";}
+.v-theme-version-6_3_0_dev-20100215 {display: none;}
 /* Automatically compiled css file from subdirectories. */
 
 .v-absolutelayout-wrapper {
@@ -450,6 +450,14 @@ div.v-app-loading {
        padding: 2px;
 }
 
+.v-drag-element {
+       z-index:60000;
+       position:absolute;
+    opacity: 0.4;
+    filter: alpha(opacity=40);
+    border: 1px solid #999;
+}
+
 .v-csslayout {
        overflow: hidden;
 }
index 7e14ce6d40c5de6a86f0e1d7058ba679d463126c..29929ae32edde44a86b07cf90538dc6527b08017 100644 (file)
@@ -1,5 +1,5 @@
-.v-theme-version:after {content:"9_9_9_INTERNAL-DEBUG-BUILD";}
-.v-theme-version-9_9_9_INTERNAL-DEBUG-BUILD {display: none;}
+.v-theme-version:after {content:"6_3_0_dev-20100215";}
+.v-theme-version-6_3_0_dev-20100215 {display: none;}
 /* Automatically compiled css file from subdirectories. */
 
 .v-absolutelayout-wrapper {
@@ -450,6 +450,14 @@ div.v-app-loading {
        padding: 2px;
 }
 
+.v-drag-element {
+       z-index:60000;
+       position:absolute;
+    opacity: 0.4;
+    filter: alpha(opacity=40);
+    border: 1px solid #999;
+}
+
 .v-csslayout {
        overflow: hidden;
 }
index e1bcf506b82cef6dc3130ebbc1cecf3719181262..80321ef9634aab3e0d9f1f9942ec8da262c377be 100644 (file)
@@ -16,9 +16,6 @@ import com.vaadin.ui.Tree.TreeDropDetails;
  */
 public class OverTreeNode extends ClientSideCriterion {
 
-    /**
-     * 
-     */
     private static final long serialVersionUID = 1L;
 
     public boolean accepts(DragAndDropEvent dragEvent) {
index 1eb2867a6bc7755f136dc699bc1f83ec2fc298f3..1a3edd32beb8e490ecfae3ace06b487ad898b0fe 100644 (file)
@@ -167,7 +167,8 @@ public class VTree extends FlowPanel implements Paintable, VHasDropHandler {
         if (currentMouseOverKey != null) {
             String detail = getDropDetail(drag.getCurrentGwtEvent());
             Boolean overTreeNode = null;
-            if (!keyToNode.get(currentMouseOverKey).isLeaf()
+            TreeNode treeNode = keyToNode.get(currentMouseOverKey);
+            if (treeNode != null && !treeNode.isLeaf()
                     && "Center".equals(detail)) {
                 overTreeNode = true;
             }
@@ -243,7 +244,10 @@ public class VTree extends FlowPanel implements Paintable, VHasDropHandler {
                         }, currentDrag);
                         if (oldIdOver != null
                                 && oldIdOver != currentMouseOverKey) {
-                            keyToNode.get(oldIdOver).emphasis(null);
+                            TreeNode treeNode = keyToNode.get(oldIdOver);
+                            if (treeNode != null) {
+                                treeNode.emphasis(null);
+                            }
                         }
                     }
 
index 027a03eeda1906f705e53b6863bdf6406451905f..69053f45ec36dfa0c1a96be0dbf7f1fafbf609bc 100644 (file)
@@ -7,7 +7,6 @@ import com.google.gwt.dom.client.NativeEvent;
 import com.google.gwt.dom.client.Node;
 import com.google.gwt.dom.client.Style;
 import com.google.gwt.dom.client.Style.Display;
-import com.google.gwt.dom.client.Style.Position;
 import com.google.gwt.dom.client.Style.Unit;
 import com.google.gwt.event.shared.HandlerRegistration;
 import com.google.gwt.user.client.Command;
@@ -575,9 +574,7 @@ public class VDragAndDropManager {
             }
 
             dragElement = node;
-            Style style = node.getStyle();
-            style.setPosition(Position.ABSOLUTE);
-            style.setZIndex(600000);
+            dragElement.addClassName("v-drag-element");
             updateDragImagePosition();
 
             if (isStarted) {
index d75e4e0355d36bf1b627505ba0aa6ee8b18370c7..3b94fcb606624784b548298c1080dad92648ff3c 100644 (file)
@@ -101,7 +101,11 @@ public class VDragEvent {
     }
 
     /**
-     * Sets the element that will be used as "drag icon".
+     * Sets the drag image used for current drag and drop operation. Drag image
+     * is displayed next to mouse cursor during drag and drop.
+     * <p>
+     * The element to be used as drag image will automatically get CSS style
+     * name "v-drag-element".
      * 
      * TODO decide if this method should be here or in {@link VTransferable} (in
      * HTML5 it is in DataTransfer) or {@link VDragAndDropManager}
@@ -126,10 +130,24 @@ public class VDragEvent {
         return dropDetails;
     }
 
-    public void setDragImage(Element cloneNode, int offsetX, int offsetY) {
-        cloneNode.getStyle().setMarginLeft(offsetX, Unit.PX);
-        cloneNode.getStyle().setMarginTop(offsetY, Unit.PX);
-        VDragAndDropManager.get().setDragElement(cloneNode);
+    /**
+     * Sets the drag image used for current drag and drop operation. Drag image
+     * is displayed next to mouse cursor during drag and drop.
+     * <p>
+     * The element to be used as drag image will automatically get CSS style
+     * name "v-drag-element".
+     * 
+     * @param element
+     *            the dom element to be positioned next to mouse cursor
+     * @param offsetX
+     *            the horizontal offset of drag image from mouse cursor
+     * @param offsetY
+     *            the vertical offset of drag image from mouse cursor
+     */
+    public void setDragImage(Element element, int offsetX, int offsetY) {
+        element.getStyle().setMarginLeft(offsetX, Unit.PX);
+        element.getStyle().setMarginTop(offsetY, Unit.PX);
+        VDragAndDropManager.get().setDragElement(element);
 
     }
 
@@ -151,10 +169,7 @@ public class VDragEvent {
                 tbody.appendChild(cloneNode);
                 cloneNode = table.cast();
             }
-            cloneNode.getStyle().setProperty("filter", "alpha(opacity=40)");
         }
-        cloneNode.getStyle().setOpacity(0.4);
-
         if (alignImageToEvent) {
             int absoluteTop = element.getAbsoluteTop();
             int absoluteLeft = element.getAbsoluteLeft();
index ab24955f2ed6bc1f303c501f1f8b34da708d0578..d099b1d39adeeefdbe27980b5658aefae3fd41ad 100644 (file)
@@ -44,7 +44,6 @@ public class DDTest2 extends TestBase {
     protected void setup() {
         Window w = getLayout().getWindow();
         /* darn reindeer has no icons */
-        w.setTheme("runo");
 
         hl.addComponent(tree1);
         hl.addComponent(table);
@@ -252,9 +251,9 @@ public class DDTest2 extends TestBase {
     }
 
     private final static ThemeResource FOLDER = new ThemeResource(
-            "icons/16/folder.png");
+            "../runo/icons/16/folder.png");
     private final static ThemeResource DOC = new ThemeResource(
-            "icons/16/document.png");
+            "../runo/icons/16/document.png");
 
     private void popuplateTrees() {
         HierarchicalContainer hc = new HierarchicalContainer();