client/js/paper-renderer.js
changeset 56 a9b9e6c7be63
parent 53 bb63da144239
child 57 01f66ed90e32
equal deleted inserted replaced
55:17ff0be41a5b 56:a9b9e6c7be63
   301             delete this.node_image;
   301             delete this.node_image;
   302         } else {
   302         } else {
   303             this.node_image.position = this.paper_coords;
   303             this.node_image.position = this.paper_coords;
   304         }
   304         }
   305     }
   305     }
       
   306         
       
   307     Rkns._.each(this.project.get("edges").filter(function (ed) { return ((ed.to === this.model) || (ed.from === this.model));}), function(edge, index, list){
       
   308         var repr = this.renderer.getRepresentationByModel(edge);
       
   309     	if(repr != null && typeof repr.from_representation.paper_coords !== "undefined" && typeof repr.to_representation.paper_coords !== "undefined") {
       
   310     		repr.redraw();
       
   311     	}
       
   312     }, this);
   306 }
   313 }
   307 
   314 
   308 Rkns.Renderer.Node.prototype.paperShift = function(_delta) {
   315 Rkns.Renderer.Node.prototype.paperShift = function(_delta) {
   309     var _coords = this.renderer.toModelCoords(this.paper_coords.add(_delta)),
   316     var _coords = this.renderer.toModelCoords(this.paper_coords.add(_delta)),
   310         _data = {
   317         _data = {
   312                 x: _coords.x,
   319                 x: _coords.x,
   313                 y: _coords.y
   320                 y: _coords.y
   314             }
   321             }
   315         };
   322         };
   316     this.model.set(_data);
   323     this.model.set(_data);
   317     this.renderer.redraw();
   324     //this.renderer.redraw();
   318 }
   325 }
   319 
   326 
   320 Rkns.Renderer.Node.prototype.openEditor = function() {
   327 Rkns.Renderer.Node.prototype.openEditor = function() {
   321     this.renderer.removeRepresentationsOfType("editor");
   328     this.renderer.removeRepresentationsOfType("editor");
   322     var _editor = this.renderer.addRepresentation("NodeEditor",null);
   329     var _editor = this.renderer.addRepresentation("NodeEditor",null);
   423         _delta = new paper.Point([- _u.y, _u.x]).multiply( 12 * _group_pos ),
   430         _delta = new paper.Point([- _u.y, _u.x]).multiply( 12 * _group_pos ),
   424         _p0b = _p0a.add(_delta), /* Adding a 4 px difference */
   431         _p0b = _p0a.add(_delta), /* Adding a 4 px difference */
   425         _p1b = _p1a.add(_delta), /* to differentiate inbound and outbound links */
   432         _p1b = _p1a.add(_delta), /* to differentiate inbound and outbound links */
   426         _a = _v.angle,
   433         _a = _v.angle,
   427         _handle = _v.divide(3),
   434         _handle = _v.divide(3),
   428         _color = this.model.get("color") || this.model.get("color") || (this.model.get("created_by") || Rkns.Renderer._USER_PLACEHOLDER).get("color");;
   435         _color = this.model.get("color") || this.model.get("color") || (this.model.get("created_by") || Rkns.Renderer._USER_PLACEHOLDER).get("color");
   429     this.paper_coords = _p0b.add(_p1b).divide(2);
   436     this.paper_coords = _p0b.add(_p1b).divide(2);
   430     this.line.strokeColor = _color;
   437     this.line.strokeColor = _color;
   431     this.line.segments[0].point = _p0a;
   438     this.line.segments[0].point = _p0a;
   432     this.line.segments[1].point = this.paper_coords;
   439     this.line.segments[1].point = this.paper_coords;
   433     this.line.segments[1].handleIn = _handle.multiply(-1);
   440     this.line.segments[1].handleIn = _handle.multiply(-1);
   769 Rkns.Renderer.NodeEditButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   776 Rkns.Renderer.NodeEditButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   770 
   777 
   771 Rkns.Renderer.NodeEditButton.prototype._init = function() {
   778 Rkns.Renderer.NodeEditButton.prototype._init = function() {
   772     this.renderer.overlay_layer.activate();
   779     this.renderer.overlay_layer.activate();
   773     this.type = "Node-edit-button";
   780     this.type = "Node-edit-button";
   774     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._NODE_BUTTON_INNER, Rkns.Renderer._NODE_BUTTON_OUTER, - 90, 30, 1, 'img/edit.png', this.renderer.renkan.l10n.caption_edit);
   781     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._NODE_BUTTON_INNER, Rkns.Renderer._NODE_BUTTON_OUTER, - 90, 30, 1, this.renderer.renkan.static_url+'img/edit.png', this.renderer.renkan.l10n.caption_edit);
   775 }
   782 }
   776 
   783 
   777 Rkns.Renderer.NodeEditButton.prototype.moveTo = function(_pos) {
   784 Rkns.Renderer.NodeEditButton.prototype.moveTo = function(_pos) {
   778     this.sector.moveTo(_pos);
   785     this.sector.moveTo(_pos);
   779 }
   786 }
   812 Rkns.Renderer.NodeRemoveButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   819 Rkns.Renderer.NodeRemoveButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   813 
   820 
   814 Rkns.Renderer.NodeRemoveButton.prototype._init = function() {
   821 Rkns.Renderer.NodeRemoveButton.prototype._init = function() {
   815     this.renderer.overlay_layer.activate();
   822     this.renderer.overlay_layer.activate();
   816     this.type = "Node-remove-button";
   823     this.type = "Node-remove-button";
   817     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._NODE_BUTTON_INNER, Rkns.Renderer._NODE_BUTTON_OUTER, -210, -90, 1, 'img/remove.png', this.renderer.renkan.l10n.caption_remove);
   824     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._NODE_BUTTON_INNER, Rkns.Renderer._NODE_BUTTON_OUTER, -210, -90, 1, this.renderer.renkan.static_url+'img/remove.png', this.renderer.renkan.l10n.caption_remove);
   818 }
   825 }
   819 
   826 
   820 Rkns.Renderer.NodeRemoveButton.prototype.moveTo = function(_pos) {
   827 Rkns.Renderer.NodeRemoveButton.prototype.moveTo = function(_pos) {
   821     this.sector.moveTo(_pos);
   828     this.sector.moveTo(_pos);
   822 }
   829 }
   856 Rkns.Renderer.NodeLinkButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   863 Rkns.Renderer.NodeLinkButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   857 
   864 
   858 Rkns.Renderer.NodeLinkButton.prototype._init = function() {
   865 Rkns.Renderer.NodeLinkButton.prototype._init = function() {
   859     this.renderer.overlay_layer.activate();
   866     this.renderer.overlay_layer.activate();
   860     this.type = "Node-link-button";
   867     this.type = "Node-link-button";
   861     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._NODE_BUTTON_INNER, Rkns.Renderer._NODE_BUTTON_OUTER, 30, 150, 1, 'img/link.png', this.renderer.renkan.l10n.caption_link);
   868     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._NODE_BUTTON_INNER, Rkns.Renderer._NODE_BUTTON_OUTER, 30, 150, 1, this.renderer.renkan.static_url+'img/link.png', this.renderer.renkan.l10n.caption_link);
   862 }
   869 }
   863 
   870 
   864 Rkns.Renderer.NodeLinkButton.prototype.moveTo = function(_pos) {
   871 Rkns.Renderer.NodeLinkButton.prototype.moveTo = function(_pos) {
   865     this.sector.moveTo(_pos);
   872     this.sector.moveTo(_pos);
   866 }
   873 }
   893 Rkns.Renderer.EdgeEditButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   900 Rkns.Renderer.EdgeEditButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   894 
   901 
   895 Rkns.Renderer.EdgeEditButton.prototype._init = function() {
   902 Rkns.Renderer.EdgeEditButton.prototype._init = function() {
   896     this.renderer.overlay_layer.activate();
   903     this.renderer.overlay_layer.activate();
   897     this.type = "Edge-edit-button";
   904     this.type = "Edge-edit-button";
   898     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._EDGE_BUTTON_INNER, Rkns.Renderer._EDGE_BUTTON_OUTER, - 90, 90, 1, 'img/edit.png', this.renderer.renkan.l10n.caption_edit);
   905     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._EDGE_BUTTON_INNER, Rkns.Renderer._EDGE_BUTTON_OUTER, - 90, 90, 1, this.renderer.renkan.static_url+'img/edit.png', this.renderer.renkan.l10n.caption_edit);
   899 }
   906 }
   900 
   907 
   901 Rkns.Renderer.EdgeEditButton.prototype.moveTo = function(_pos) {
   908 Rkns.Renderer.EdgeEditButton.prototype.moveTo = function(_pos) {
   902     this.sector.moveTo(_pos);
   909     this.sector.moveTo(_pos);
   903 }
   910 }
   936 Rkns.Renderer.EdgeRemoveButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   943 Rkns.Renderer.EdgeRemoveButton = Rkns.Utils.inherit(Rkns.Renderer._BaseRepresentation);
   937 
   944 
   938 Rkns.Renderer.EdgeRemoveButton.prototype._init = function() {
   945 Rkns.Renderer.EdgeRemoveButton.prototype._init = function() {
   939     this.renderer.overlay_layer.activate();
   946     this.renderer.overlay_layer.activate();
   940     this.type = "Edge-remove-button";
   947     this.type = "Edge-remove-button";
   941     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._EDGE_BUTTON_INNER, Rkns.Renderer._EDGE_BUTTON_OUTER, - 270, -90, 1, 'img/remove.png', this.renderer.renkan.l10n.caption_remove);
   948     this.sector = Rkns.Renderer.Utils.sector(this, Rkns.Renderer._EDGE_BUTTON_INNER, Rkns.Renderer._EDGE_BUTTON_OUTER, - 270, -90, 1, this.renderer.renkan.static_url+'img/remove.png', this.renderer.renkan.l10n.caption_remove);
   942 }
   949 }
   943 Rkns.Renderer.EdgeRemoveButton.prototype.moveTo = function(_pos) {
   950 Rkns.Renderer.EdgeRemoveButton.prototype.moveTo = function(_pos) {
   944     this.sector.moveTo(_pos);
   951     this.sector.moveTo(_pos);
   945 }
   952 }
   946 
   953