diff options
Diffstat (limited to 'swat.obsolete/apps/qooxdoo-examples/test/DragAndDropManager_2.html')
-rw-r--r-- | swat.obsolete/apps/qooxdoo-examples/test/DragAndDropManager_2.html | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/swat.obsolete/apps/qooxdoo-examples/test/DragAndDropManager_2.html b/swat.obsolete/apps/qooxdoo-examples/test/DragAndDropManager_2.html new file mode 100644 index 0000000000..be607837e0 --- /dev/null +++ b/swat.obsolete/apps/qooxdoo-examples/test/DragAndDropManager_2.html @@ -0,0 +1,123 @@ +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>qooxdoo » Demo</title> + <link type="text/css" rel="stylesheet" href="../../resource/css/layout.css"/> + <!--[if IE]> + <link type="text/css" rel="stylesheet" href="../../resource/css/layout_ie.css"/> + <![endif]--> + <script type="text/javascript" src="../../script/qx.js"></script> +</head> +<body> + <script type="text/javascript" src="../../script/layout.js"></script> + + <div id="demoDescription"> + <p>Test for drag&drop implementation.</p> + </div> + + <script type="text/javascript"> + qx.core.Init.getInstance().defineMain(function() + { + var d = qx.ui.core.ClientDocument.getInstance(); + + var a1 = new qx.ui.basic.Atom("Drag Me"); + a1.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove }); + a1.setPadding(10); + a1.setLocation(20, 48); + d.add(a1); + + + + + function printEvent(e) { + return "TARGET:" + (e.getTarget() ? e.getTarget().toHashCode() : "null") + " [ORIG:" + (e.getOriginalTarget() ? e.getOriginalTarget().toHashCode() : "null") + "] [REL:" + (e.getRelatedTarget() ? e.getRelatedTarget().toHashCode() : "null") + "]"; + }; + + function handleDragStart(e) + { + this.debug("Fire DragStart: " + printEvent(e)); + + e.addData("text/plain", "Plain text"); + e.addData("text/html", "Some <strong>HTML</strong>"); + + e.addAction("copy"); + e.addAction("move"); + e.addAction("alias"); + + e.startDrag(); + }; + + function handleDragDrop( e ) + { + this.debug("Fire DragDrop: " + printEvent(e)); + + var type = e.getDropDataTypes()[0]; + var data = e.getData(type); + + switch(type) + { + case "text/plain": + case "text/html": + this.setLabel(data); + break; + }; + }; + + function handleDragOver(e) + { + this.debug("Fire DragOver: " + printEvent(e)); + e.getTarget().setBackgroundColor("#f2f2f2"); + }; + + function handleDragOut(e) + { + this.debug("Fire DragOut: " + printEvent(e)); + e.getTarget().setBackgroundColor("#fff"); + }; + + function handleDragEnd(e) { + this.debug("Fire DragEnd: " + printEvent(e)); + }; + + + + + a1.addEventListener("dragstart", handleDragStart); + a1.addEventListener("dragend", handleDragEnd); + + + + + var w1 = new qx.ui.basic.Atom("Drop to me"); + w1.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 100, left: 20, horizontalAlign: "center" }); + w1.setDropDataTypes(["text/html", "text/plain"]); + w1.addEventListener("dragdrop", handleDragDrop); + w1.addEventListener("dragover", handleDragOver); + w1.addEventListener("dragout", handleDragOut); + + var w2 = new qx.ui.basic.Atom("Drop to me"); + w2.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 200, left: 20, horizontalAlign: "center" }); + w2.setDropDataTypes(["text/html", "text/plain"]); + w2.addEventListener("dragdrop", handleDragDrop); + w2.addEventListener("dragover", handleDragOver); + w2.addEventListener("dragout", handleDragOut); + + var w3 = new qx.ui.basic.Atom("Drop to me"); + w3.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 100, left: 150, horizontalAlign: "center" }); + w3.setDropDataTypes(["text/html", "text/plain"]); + w3.addEventListener("dragdrop", handleDragDrop); + w3.addEventListener("dragover", handleDragOver); + w3.addEventListener("dragout", handleDragOut); + + var w4 = new qx.ui.basic.Atom("Drop to me"); + w4.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 200, left: 150, horizontalAlign: "center" }); + w4.setDropDataTypes(["text/html", "text/plain"]); + w4.addEventListener("dragdrop", handleDragDrop); + w4.addEventListener("dragover", handleDragOver); + w4.addEventListener("dragout", handleDragOut); + + d.add(w1, w2, w3, w4); + }); + </script> +</body> +</html>
\ No newline at end of file |