Survey editor now keeps survye objedts in a scrollable panel to keep buttons always in view.
This commit is contained in:
parent
5bf3614d10
commit
2f5fc2f4e1
4 changed files with 37 additions and 6 deletions
|
|
@ -20,6 +20,7 @@
|
||||||
- fixed #9039: Synopsis not output as a meta field
|
- fixed #9039: Synopsis not output as a meta field
|
||||||
- fixed #9939: checkout error with any payment method
|
- fixed #9939: checkout error with any payment method
|
||||||
- fixed #10162: Inbox Failing (Eric Kennedy)
|
- fixed #10162: Inbox Failing (Eric Kennedy)
|
||||||
|
- Survey editor now keeps survye objedts in a scrollable panel to keep buttons always in view.
|
||||||
|
|
||||||
7.7.3
|
7.7.3
|
||||||
- fixed #10094: double explanation in thread help
|
- fixed #10094: double explanation in thread help
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -6,6 +6,7 @@ var Event = YAHOO.util.Event;
|
||||||
var DDM = YAHOO.util.DragDropMgr;
|
var DDM = YAHOO.util.DragDropMgr;
|
||||||
|
|
||||||
var currentDest;
|
var currentDest;
|
||||||
|
var started = 0;
|
||||||
|
|
||||||
Survey.DDList = function(id, sGroup, config) {
|
Survey.DDList = function(id, sGroup, config) {
|
||||||
|
|
||||||
|
|
@ -22,6 +23,7 @@ Survey.DDList = function(id, sGroup, config) {
|
||||||
YAHOO.extend(Survey.DDList, YAHOO.util.DDProxy, {
|
YAHOO.extend(Survey.DDList, YAHOO.util.DDProxy, {
|
||||||
|
|
||||||
startDrag: function(x, y) {
|
startDrag: function(x, y) {
|
||||||
|
started +=2;
|
||||||
this.logger.log(this.id + " startDrag");
|
this.logger.log(this.id + " startDrag");
|
||||||
|
|
||||||
// make the proxy look like the source element
|
// make the proxy look like the source element
|
||||||
|
|
@ -65,8 +67,11 @@ YAHOO.extend(Survey.DDList, YAHOO.util.DDProxy, {
|
||||||
|
|
||||||
onInvalidDrop: function(e, id) {
|
onInvalidDrop: function(e, id) {
|
||||||
Survey.Data.dragDrop(this.getEl());
|
Survey.Data.dragDrop(this.getEl());
|
||||||
|
started += -2;
|
||||||
},
|
},
|
||||||
onDragDrop: function(e, id) {
|
onDragDrop: function(e, id) {
|
||||||
|
started--;
|
||||||
|
if(started != 1){return;}
|
||||||
Survey.Data.dragDrop(this.getEl());
|
Survey.Data.dragDrop(this.getEl());
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -74,7 +79,15 @@ YAHOO.extend(Survey.DDList, YAHOO.util.DDProxy, {
|
||||||
|
|
||||||
// Keep track of the direction of the drag for use during onDragOver
|
// Keep track of the direction of the drag for use during onDragOver
|
||||||
var y = Event.getPageY(e);
|
var y = Event.getPageY(e);
|
||||||
|
var temp = Survey.Data.ddContainer.body;
|
||||||
|
var dy = YAHOO.util.Dom.getY(temp);
|
||||||
|
var scrollOffset = 30;
|
||||||
|
if((y - scrollOffset) < dy){
|
||||||
|
Survey.Data.ddContainer.body.scrollTop -= 20;
|
||||||
|
}
|
||||||
|
else if((y + scrollOffset) > (dy + temp.offsetHeight)){
|
||||||
|
Survey.Data.ddContainer.body.scrollTop += 20;
|
||||||
|
}
|
||||||
if (y < this.lastY) {
|
if (y < this.lastY) {
|
||||||
this.goingUp = true;
|
this.goingUp = true;
|
||||||
} else if (y > this.lastY) {
|
} else if (y > this.lastY) {
|
||||||
|
|
@ -92,12 +105,13 @@ YAHOO.extend(Survey.DDList, YAHOO.util.DDProxy, {
|
||||||
// We are only concerned with list items, we ignore the dragover
|
// We are only concerned with list items, we ignore the dragover
|
||||||
// notifications for the list.
|
// notifications for the list.
|
||||||
if (destEl.nodeName.toLowerCase() == "li") {
|
if (destEl.nodeName.toLowerCase() == "li") {
|
||||||
currentDest = destEl;
|
currentDest = destEl;
|
||||||
YAHOO.log(destEl);
|
YAHOO.log(destEl);
|
||||||
var orig_p = srcEl.parentNode;
|
var orig_p = srcEl.parentNode;
|
||||||
var p = destEl.parentNode;
|
var p = destEl.parentNode;
|
||||||
|
|
||||||
if (this.goingUp) {
|
if (this.goingUp) {
|
||||||
|
Survey.Data.ddContainer
|
||||||
p.insertBefore(srcEl, destEl); // insert above
|
p.insertBefore(srcEl, destEl); // insert above
|
||||||
} else {
|
} else {
|
||||||
p.insertBefore(srcEl, destEl.nextSibling); // insert below
|
p.insertBefore(srcEl, destEl.nextSibling); // insert below
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,8 @@ Survey.Data = (function(){
|
||||||
var sButton, qButton, aButton;
|
var sButton, qButton, aButton;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
ddContainer:null,
|
||||||
dragDrop: function(did){
|
dragDrop: function(did){
|
||||||
|
|
||||||
YAHOO.log('In drag drop');
|
YAHOO.log('In drag drop');
|
||||||
var type = did.className.match("section") ? 'section'
|
var type = did.className.match("section") ? 'section'
|
||||||
: did.className.match("question") ? 'question'
|
: did.className.match("question") ? 'question'
|
||||||
|
|
@ -80,7 +80,23 @@ Survey.Data = (function(){
|
||||||
YAHOO.util.Event.purgeElement('sections', true);
|
YAHOO.util.Event.purgeElement('sections', true);
|
||||||
|
|
||||||
// Now we can re-write its innerHTML without fear of memory leaks
|
// Now we can re-write its innerHTML without fear of memory leaks
|
||||||
document.getElementById('sections').innerHTML = d.ddhtml;
|
// document.getElementById('sections').innerHTML = d.ddhtml;
|
||||||
|
|
||||||
|
if(! Survey.Data.ddContainer){
|
||||||
|
Survey.Data.ddContainer =
|
||||||
|
new YAHOO.widget.Panel("sections",
|
||||||
|
{ width:"440px",
|
||||||
|
height: "420px",
|
||||||
|
draggable:true,
|
||||||
|
visible:true
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
Survey.Data.ddContainer.setHeader("Survey Objects...");
|
||||||
|
Survey.Data.ddContainer.setBody(d.ddhtml);
|
||||||
|
Survey.Data.ddContainer.setFooter(document.getElementById("buttons"));
|
||||||
|
Survey.Data.ddContainer.render();//document.body);
|
||||||
|
|
||||||
//add event handlers for if a tag is clicked
|
//add event handlers for if a tag is clicked
|
||||||
for (var x in d.ids) {
|
for (var x in d.ids) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue