client/js/renderer/scene.js
changeset 511 4a48a1a9fd1e
parent 510 a8f02d66bf02
child 512 480c1d2d6915
equal deleted inserted replaced
510:a8f02d66bf02 511:4a48a1a9fd1e
   827                     this.selected_target.unselect();
   827                     this.selected_target.unselect();
   828                 }
   828                 }
   829                 this.selected_target = null;
   829                 this.selected_target = null;
   830             }
   830             }
   831         },
   831         },
   832         paperShift: function(_delta) {
       
   833             this.view.offset = this.view.offset.add(_delta);
       
   834             this.redraw();
       
   835         },
       
   836         onMouseMove: function(_event) {
   832         onMouseMove: function(_event) {
   837             var _off = this.canvas_$.offset(),
   833             var _off = this.canvas_$.offset(),
   838             _point = new paper.Point([
   834             _point = new paper.Point([
   839                                       _event.pageX - _off.left,
   835                                       _event.pageX - _off.left,
   840                                       _event.pageY - _off.top
   836                                       _event.pageY - _off.top
   847             var _hitResult = paper.project.hitTest(_point);
   843             var _hitResult = paper.project.hitTest(_point);
   848             if (this.is_dragging) {
   844             if (this.is_dragging) {
   849                 if (this.click_target && typeof this.click_target.paperShift === "function") {
   845                 if (this.click_target && typeof this.click_target.paperShift === "function") {
   850                     this.click_target.paperShift(_delta);
   846                     this.click_target.paperShift(_delta);
   851                 } else {
   847                 } else {
   852                     this.paperShift(_delta);
   848                     this.view.paperShift(_delta);
   853                 }
   849                 }
   854             } else {
   850             } else {
   855                 this.findTarget(_hitResult);
   851                 this.findTarget(_hitResult);
   856             }
   852             }
   857             paper.view.draw();
   853             paper.view.draw();
   920                 this.click_target = null;
   916                 this.click_target = null;
   921                 this.is_dragging = false;
   917                 this.is_dragging = false;
   922                 if (_isTouch) {
   918                 if (_isTouch) {
   923                     this.unselectAll();
   919                     this.unselectAll();
   924                 }
   920                 }
       
   921                 this.view.updateUrl();
   925             }
   922             }
   926             paper.view.draw();
   923             paper.view.draw();
   927         },
   924         },
   928         onScroll: function(_event, _scrolldelta) {
   925         onScroll: function(_event, _scrolldelta) {
   929             this.totalScroll += _scrolldelta;
   926             this.totalScroll += _scrolldelta;
  1205         parameters: function(_params){
  1202         parameters: function(_params){
  1206             if ($.isEmptyObject(_params)){
  1203             if ($.isEmptyObject(_params)){
  1207                 this.view = this.addRepresentation("View", this.renkan.project.get("views").last());
  1204                 this.view = this.addRepresentation("View", this.renkan.project.get("views").last());
  1208                 return;
  1205                 return;
  1209             }
  1206             }
  1210             if (typeof _params.idnode !== 'undefined'){
       
  1211                 console.log('params idnode');
       
  1212                 this.unhighlightAll();
       
  1213                 this.highlightModel(this.renkan.project.get("nodes").get(_params.idnode));                 
       
  1214             }
       
  1215             if (typeof _params.view !== 'undefined'){
  1207             if (typeof _params.view !== 'undefined'){
  1216                 var viewParams = _params.view.split(",");
  1208                 var viewParams = _params.view.split(",");
  1217                 if (viewParams.length >= 3){
  1209                 if (viewParams.length >= 3){
  1218                     var params = {
  1210                     var params = {
  1219                         "project": this.renkan.project,
  1211                             "project": this.renkan.project,
  1220                         "zoom_level": parseFloat(viewParams[0]),
  1212                             "offset": {
  1221                         "offset": {
  1213                                 "x": parseFloat(viewParams[0]),
  1222                             "x": parseFloat(viewParams[1]),
  1214                                 "y": parseFloat(viewParams[1])
  1223                             "y": parseFloat(viewParams[2])
  1215                             },
  1224                         },
  1216                             "zoom_level": parseFloat(viewParams[2])
  1225                         "hidden_nodes": []
       
  1226                     };
  1217                     };
  1227                     for (var i = 3; i < viewParams.length; i++){
  1218                     for (var i = 3; i < viewParams.length; i++){
  1228                         params.hidden_nodes.push(viewParams[i]);
  1219                         params.hidden_nodes.push(viewParams[i]);
  1229                     }
  1220                     }
  1230                     //var view = new Rkns.Models.View(params);
  1221                     //var view = new Rkns.Models.View(params);
  1238                     this.view.params = params;
  1229                     this.view.params = params;
  1239                     this.view.init();
  1230                     this.view.init();
  1240                 } else {
  1231                 } else {
  1241                     this.view = this.addRepresentation("View", this.renkan.project.get("views").last());
  1232                     this.view = this.addRepresentation("View", this.renkan.project.get("views").last());
  1242                 }
  1233                 }
       
  1234             }
       
  1235             //other parameters must go after because most of them depends on a view that must be initialize before
       
  1236             if (typeof _params.idNode !== 'undefined'){
       
  1237                 this.unhighlightAll();
       
  1238                 this.highlightModel(this.renkan.project.get("nodes").get(_params.iNnode));                 
  1243             }
  1239             }
  1244         },
  1240         },
  1245         foldBins: function() {
  1241         foldBins: function() {
  1246             var foldBinsButton = this.$.find(".Rk-Fold-Bins"),
  1242             var foldBinsButton = this.$.find(".Rk-Fold-Bins"),
  1247                 bins = this.renkan.$.find(".Rk-Bins");
  1243                 bins = this.renkan.$.find(".Rk-Bins");