AngularJS - Blur binding 1.2.0
by tdhulster
HTML
<script src="http://code.angularjs.org/1.2.0/angular.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/paper.js/0.9.18/paper-full.min.js"></script>
<canvas id="canvas" resize draw></canvas>
CSS
canvas {
border: 3px solid red;
}
JavaScript
function Main() {}
var app = angular.module('app', []);
app.directive('draw', function () {
return {
restrict: 'AEC',
link: function postLink(scope, element, attrs) {
var path;
var drag = false;
function mouseUp(event) {
//Clear Mouse Drag Flag
drag = false;
}
function mouseDrag(event) {
if (drag) {
path.add(new paper.Point(event.layerX, event.layerY));
path.smooth();
}
}
function mouseDown(event) {
//Set flag to detect mouse drag
drag = true;
path = new paper.Path();
path.strokeColor = 'black';
path.add(new paper.Point(event.layerX, event.layerY));
}
function initPaper() {
paper.install(window);
paper.setup('canvas');
}
element.on('mousedown', mouseDown).on('mouseup', mouseUp).on('mousemove', mouseDrag);
initPaper();
}
};
});