Skip to content

Commit e0858f6

Browse files
author
SeungpilPark
committed
#21 Group move
1 parent 896583c commit e0858f6

8 files changed

Lines changed: 512 additions & 186 deletions

File tree

src/main/webapp/examples/develope.html

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -352,7 +352,7 @@
352352

353353
var dataTable = new OG.DataTable();
354354
var data = [];
355-
for (var i = 0; i < 20; i++) {
355+
for (var i = 0; i < 2; i++) {
356356
data.push({
357357
activity: '견적 TFT / EM' + i,
358358
'90_': [
@@ -389,15 +389,15 @@
389389
})
390390
}
391391

392-
// var start = new Date();
393-
// dataTable.MOVABLE = false;
394-
// canvas.drawShape([100, 100], dataTable, [100, 100], {});
395-
// dataTable.setData(data);
396-
// dataTable.draw();
397-
// var end = new Date();
398-
// var number = end.getTime() - start.getTime();
392+
var start = new Date();
393+
dataTable.MOVABLE = false;
394+
canvas.drawShape([100, 100], dataTable, [100, 100], {});
395+
dataTable.setData(data);
396+
dataTable.draw();
397+
var end = new Date();
398+
var number = end.getTime() - start.getTime();
399399

400-
canvas.drawShape([100, 100], new OG.RectangleShape(), [100, 100], {});
400+
// canvas.drawShape([100, 100], new OG.RectangleShape(), [100, 100], {});
401401

402402
});
403403

src/main/webapp/opengraph/OpenGraph-0.1.2-SNAPSHOT-All.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/main/webapp/opengraph/OpenGraph-0.1.2-SNAPSHOT-min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/main/webapp/opengraph/OpenGraph-0.1.2-SNAPSHOT.js

Lines changed: 249 additions & 86 deletions
Large diffs are not rendered by default.

src/main/webapp/src/handler/EventHandler.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -881,7 +881,7 @@ OG.handler.EventHandler.prototype = {
881881
if (!parentNode) {
882882
parentNode = ele.parentNode;
883883
}
884-
if (parentNode.id !== root.id) {
884+
if (parentNode && parentNode.id !== root.id) {
885885
addToGroupArray.push(ele);
886886
}
887887
});
@@ -4899,6 +4899,9 @@ OG.handler.EventHandler.prototype = {
48994899
if (renderer.isEdge(ele)) {
49004900
return;
49014901
}
4902+
if(ele.shape && !ele.shape.MOVABLE){
4903+
return;
4904+
}
49024905
connectCheckShapes.push(ele);
49034906
if (renderer.isGroup(ele)) {
49044907
$.each(renderer.getInnerShapesOfGroup(ele), function (idx, innerShape) {
@@ -4928,10 +4931,11 @@ OG.handler.EventHandler.prototype = {
49284931
renderer.remove(item.box);
49294932

49304933
// 이동
4931-
renderer.move(ele, [dx, dy], excludeEdgeId);
4934+
if(ele.shape && ele.shape.MOVABLE){
4935+
renderer.move(ele, [dx, dy], excludeEdgeId);
4936+
eleArray.push(ele);
4937+
}
49324938
renderer.drawGuide(ele);
4933-
4934-
eleArray.push(ele);
49354939
});
49364940

49374941
return eleArray;

src/main/webapp/src/renderer/RaphaelRenderer.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3942,10 +3942,10 @@ OG.renderer.RaphaelRenderer.prototype.ungroup = function (groupElements) {
39423942
OG.renderer.RaphaelRenderer.prototype.addToGroup = function (groupElement, elements) {
39433943
for (var i = 0, leni = elements.length; i < leni; i++) {
39443944
groupElement.appendChild(elements[i]);
3945-
if (groupElement.shape && groupElement.shape.onAddToGroup) {
3946-
groupElement.shape.onAddToGroup(groupElement, elements[i]);
3947-
}
3948-
elements[i].shape.onAddToGroup(groupElement, elements[i]);
3945+
elements[i].shape.onAddedToGroup(groupElement, elements[i]);
3946+
}
3947+
if (groupElement.shape && groupElement.shape.onAddToGroup) {
3948+
groupElement.shape.onAddToGroup(groupElement, elements);
39493949
}
39503950
};
39513951

@@ -4999,8 +4999,11 @@ OG.renderer.RaphaelRenderer.prototype.drawConnectGuide = function (element) {
49994999
*/
50005000
OG.renderer.RaphaelRenderer.prototype.removeConnectGuide = function (element) {
50015001
var me = this;
5002-
var rElement = me._getREleById(OG.Util.isElement(element) ? element.id : element),
5003-
bBox = me._getREleById(rElement.id + OG.Constants.CONNECT_GUIDE_SUFFIX.BBOX);
5002+
var rElement = me._getREleById(OG.Util.isElement(element) ? element.id : element);
5003+
if (!rElement) {
5004+
return;
5005+
}
5006+
var bBox = me._getREleById(rElement.id + OG.Constants.CONNECT_GUIDE_SUFFIX.BBOX);
50045007
$(me.getSpots(element)).each(function (index, spot) {
50055008
me._remove(me._getREleById(spot.id));
50065009
})

src/main/webapp/src/shape/IShape.js

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,20 @@ OG.shape.IShape.prototype = {
267267
onPasteShape: function (copied, pasted) {
268268

269269
},
270-
onAddToGroup: function (groupElement, element) {
270+
/**
271+
* 자신에게 도형들이 그룹으로 들어왔을때의 이벤트
272+
* @param groupElement
273+
* @param elements
274+
*/
275+
onAddToGroup: function (groupElement, elements) {
276+
277+
},
278+
/**
279+
* 자신이 그룹속으로 들어갔을 때의 이벤트
280+
* @param groupElement
281+
* @param element
282+
*/
283+
onAddedToGroup: function(groupElement, element){
271284

272285
},
273286
onSelectShape: function () {

0 commit comments

Comments
 (0)