From a97cb237f2eacfc090ce8b5414ff8fba8df08cec Mon Sep 17 00:00:00 2001
From: Paul van Tilburg
Date: Fri, 10 Sep 2010 18:34:16 +0200
Subject: [PATCH] Raise Z-index on drag; moved draggable specific JS code to
dragreg.js.
---
plemp.rb | 9 +--------
public/dragreg.js | 16 ++++++++++++++--
2 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/plemp.rb b/plemp.rb
index a3a189c..3550600 100644
--- a/plemp.rb
+++ b/plemp.rb
@@ -115,15 +115,8 @@ module Plemp::Views
else
span.draggable(:id => id, :style => default_style) { em "#{id}: Unsupported file type!" }
end
- script :type => "text/javascript" do
- <<-JS
-new Draggable('#{id}', { scroll: window });
-Draggables.addObserver(new DragRegObserver($('#{id}')));
-$('#{id}').appear({duration: 2.0});
-JS
- end
+ script(:type => "text/javascript") { "setup_draggable('#{id}')" }
end
end
- span(:onClick => "alert(maxZIndex()); return false;" ) { "test" }
end
end
diff --git a/public/dragreg.js b/public/dragreg.js
index 999ec87..2e6f920 100644
--- a/public/dragreg.js
+++ b/public/dragreg.js
@@ -13,6 +13,18 @@ DragRegObserver.prototype = {
}
}
-function maxZIndex() {
- return $$('.draggable').map(function(d) { return d.getStyle("z-index") }).max();
+function new_ZIndex() {
+ cur_index = $$('.draggable').map(function(d) { return d.getStyle("z-index") }).max();
+ return parseInt(cur_index) + 1
+}
+
+function setup_draggable(id) {
+ drag = new Draggable(id, { scroll: window });
+ old_endeffect = drag.options.endeffect;
+ drag.options.endeffect = function(element) {
+ old_endeffect(element);
+ element.style.zIndex = new_ZIndex();
+ }
+ Draggables.addObserver(new DragRegObserver($(id)));
+ $(id).appear({duration: 2.0});
}