commit e782f178ae182365a5ff31fa2246b00398d8efdb
parent 17dd0516efd2901ae383143b90ffc3332d8c1664
Author: Timo A. Hummel <felicitus@felicitus.org>
Date: Sat, 14 May 2016 16:45:31 +0200
Merge pull request #667 from partkeepr/PartKeepr-663
Pass all records to the drop handler, fixes #663
Diffstat:
4 files changed, 35 insertions(+), 33 deletions(-)
diff --git a/src/PartKeepr/FrontendBundle/Resources/public/js/Components/CategoryEditor/CategoryEditorTree.js b/src/PartKeepr/FrontendBundle/Resources/public/js/Components/CategoryEditor/CategoryEditorTree.js
@@ -32,13 +32,16 @@ Ext.define("PartKeepr.CategoryEditorTree", {
},
onBeforeDrop: function (node, data, overModel, dropPosition, dropHandlers)
{
- var draggedRecord = data.records[0];
+ var draggedRecords = data.records;
var droppedOn = this.getView().getRecord(node);
- if (!(draggedRecord instanceof PartKeepr.data.HydraTreeModel)) {
- // Workaround for EXTJS-13725 where dropping of non-tree-models cause issues
- dropHandlers.cancelDrop();
- this.fireEvent("foreignModelDrop", draggedRecord, droppedOn);
+ for (draggedRecord in draggedRecords) {
+ if (!(draggedRecord instanceof PartKeepr.data.HydraTreeModel)) {
+ // Workaround for EXTJS-13725 where dropping of non-tree-models cause issues
+ dropHandlers.cancelDrop();
+ }
+
+ this.fireEvent("foreignModelDrop", draggedRecords, droppedOn);
}
},
onItemSelect: function (selected) {
diff --git a/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Footprint/FootprintTree.js b/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Footprint/FootprintTree.js
@@ -20,17 +20,19 @@ Ext.define("PartKeepr.FootprintTree", {
},
listeners: {
- "foreignModelDrop": function (record, target)
+ "foreignModelDrop": function (records, target)
{
- record.setCategory(target);
- record.save({
- success: function ()
- {
- if (record.store && record.store.reload) {
- record.store.reload();
+ for (var i in records) {
+ records[i].setCategory(target);
+ records[i].save({
+ success: function ()
+ {
+ if (records[i].store && records[i].store.reload) {
+ records[i].store.reload();
+ }
}
- }
- });
+ });
+ }
}
}
});
diff --git a/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Part/PartCategoryTree.js b/src/PartKeepr/FrontendBundle/Resources/public/js/Components/Part/PartCategoryTree.js
@@ -30,17 +30,12 @@ Ext.define("PartKeepr.PartCategoryTree", {
this.toolbar.add(['->', this.syncButton]);
},
listeners: {
- "foreignModelDrop": function (record, target)
+ "foreignModelDrop": function (records, target)
{
- record.setCategory(target);
- record.save({
- success: function ()
- {
- if (record.store && record.store.reload) {
- record.store.reload();
- }
- }
- });
+ for (var i in records) {
+ records[i].setCategory(target);
+ records[i].save();
+ }
}
}
});
diff --git a/src/PartKeepr/FrontendBundle/Resources/public/js/Components/StorageLocation/StorageLocationTree.js b/src/PartKeepr/FrontendBundle/Resources/public/js/Components/StorageLocation/StorageLocationTree.js
@@ -19,17 +19,19 @@ Ext.define("PartKeepr.StorageLocationTree", {
this.callParent();
},
listeners: {
- "foreignModelDrop": function (record, target)
+ "foreignModelDrop": function (records, target)
{
- record.setCategory(target);
- record.save({
- success: function ()
- {
- if (record.store && record.store.reload) {
- record.store.reload();
+ for (var i in records) {
+ records[i].setCategory(target);
+ records[i].save({
+ success: function ()
+ {
+ if (records[i].store && records[i].store.reload) {
+ records[i].store.reload();
+ }
}
- }
- });
+ });
+ }
}
}
});