client/js/paper-renderer.js
changeset 1 45cca39b00ac
child 2 3360c3f7fb18
equal deleted inserted replaced
0:4b07ff5c2dd6 1:45cca39b00ac
       
     1 Rkns.Renderers.Paper = Rkns.Utils.inherit(Rkns.Renderers._Base);
       
     2 
       
     3 Rkns.Renderers.Paper__Controllers = {}
       
     4 
       
     5 Rkns.Renderers.Paper__Controllers._Base = function(_renderer, _element) {
       
     6     if (typeof _renderer !== "undefined") {
       
     7         this._renderer = _renderer;
       
     8         this._element = _element;
       
     9         this._element._renderer_controller = this;
       
    10     }
       
    11 }
       
    12 
       
    13 Rkns.Renderers.Paper__Controllers.Node = Rkns.Utils.inherit(Rkns.Renderers.Paper__Controllers._Base);
       
    14 
       
    15 Rkns.Renderers.Paper__Controllers.Node.prototype._init = function() {
       
    16     this.node_circle = new paper.Path.Circle([0, 0], 20);
       
    17     this.redraw();
       
    18 }
       
    19 
       
    20 Rkns.Renderers.Paper__Controllers.Node.prototype.redraw = function() {
       
    21     var _centerPoint = paper.view.center.add([this._element.position.x, this._element.position.y]);
       
    22     this.node_circle.position = _centerPoint;
       
    23     this.node_circle.strokeColor = this._element.created_by.color;
       
    24 }
       
    25 
       
    26 Rkns.Renderers.Paper__Controllers.Edge = Rkns.Utils.inherit(Rkns.Renderers._Base);
       
    27 
       
    28 Rkns.Renderers.Paper.prototype._init = function() {
       
    29     paper.setup(document.getElementById(this._project._opts.canvas_id));
       
    30 }
       
    31 
       
    32 Rkns.Renderers.Paper.prototype.draw = function() {
       
    33     var _this = this;
       
    34     this.nodes = this._project.nodes.map(function(_node) {
       
    35         return new Rkns.Renderers.Paper__Controllers.Node(_this, _node);
       
    36     });
       
    37     paper.view.draw();
       
    38     paper.view.onResize = function() {
       
    39         _this.redraw();
       
    40     }
       
    41 }
       
    42 
       
    43 Rkns.Renderers.Paper.prototype.redraw = function() {
       
    44     Rkns._(this.nodes).each(function(_node) {
       
    45         _node.redraw();
       
    46     })
       
    47 }