-
Notifications
You must be signed in to change notification settings - Fork 0
/
element-joiner.js
70 lines (54 loc) · 1.33 KB
/
element-joiner.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/**
* EJoiner - don't know yet what is this, though it should join elements XD
*/
var EJonier = function(data)
{
this.currentMousePos = { top: -1, left: -1 };
this.element = data.element;
this.type = data.type; // Task-Multi-Choose
$(this).draggable(
);
$(this).droppable(
);
/*
this.element = {};
this.position = {};
this.width = 0;
this.height = 0;
this.up = {};
this.down = {};
this.left = {};
this.right = {};
this.wide = 0;
this.zones = [];
this.name = '';
this.invaded = {};
*/
this.recordMousePos();
this.position=
{
left: parseInt(this.element.offset().left),
top: parseInt(this.element.offset().top)
};
this.height = parseInt(this.element.outerHeight());
this.name = 'center';
this.wide = typeof(data.wide) !== 'undefined' ? parseInt(data.wide) : 0;
this.zones.push(this);
if (this.wide > 0)
{
this.defineAreas();
}
this.checkAreas();
}
};
$.extend(Area.prototype,
{
recordMousePos: function()
{
$(document).bind('mousemove',{cmp:this.currentMousePos},function(event)
{
event.data.cmp.left = event.pageX;
event.data.cmp.top = event.pageY;
});
},
});