client/js/renderer/basebutton.js
author durandn
Tue, 07 Jun 2016 10:46:20 +0200
changeset 612 aa4987fede52
parent 505 a6a3b0e3da57
child 649 2b9c120dba55
permissions -rw-r--r--
admin for renkan objects
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
284
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
     1
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
     2
define(['jquery', 'underscore', 'requtils', 'renderer/baserepresentation'], function ($, _, requtils, BaseRepresentation) {
293
fba23fde14ba Correct jshint errors and force it on build
ymh <ymh.work@gmail.com>
parents: 284
diff changeset
     3
    'use strict';
fba23fde14ba Correct jshint errors and force it on build
ymh <ymh.work@gmail.com>
parents: 284
diff changeset
     4
284
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
     5
    var Utils = requtils.getUtils();
293
fba23fde14ba Correct jshint errors and force it on build
ymh <ymh.work@gmail.com>
parents: 284
diff changeset
     6
284
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
     7
    /* Rkns.Renderer._BaseButton Class */
293
fba23fde14ba Correct jshint errors and force it on build
ymh <ymh.work@gmail.com>
parents: 284
diff changeset
     8
284
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
     9
    /* BaseButton is extended by contextual buttons that appear when hovering on nodes and edges */
293
fba23fde14ba Correct jshint errors and force it on build
ymh <ymh.work@gmail.com>
parents: 284
diff changeset
    10
284
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    11
    var _BaseButton = Utils.inherit(BaseRepresentation);
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    12
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    13
    _(_BaseButton.prototype).extend({
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    14
        moveTo: function(_pos) {
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    15
            this.sector.moveTo(_pos);
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    16
        },
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    17
        show: function() {
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    18
            this.sector.show();
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    19
        },
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    20
        hide: function() {
505
a6a3b0e3da57 'hideButtons' function can be call by view hides the nodes. So we have to check if the button is drawn (i.e. sector is defined) first before hiding it.
rougeronj
parents: 434
diff changeset
    21
            if (this.sector){
a6a3b0e3da57 'hideButtons' function can be call by view hides the nodes. So we have to check if the button is drawn (i.e. sector is defined) first before hiding it.
rougeronj
parents: 434
diff changeset
    22
                this.sector.hide();                
a6a3b0e3da57 'hideButtons' function can be call by view hides the nodes. So we have to check if the button is drawn (i.e. sector is defined) first before hiding it.
rougeronj
parents: 434
diff changeset
    23
            }
284
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    24
        },
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    25
        select: function() {
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    26
            this.sector.select();
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    27
        },
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    28
        unselect: function(_newTarget) {
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    29
            this.sector.unselect();
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    30
            if (!_newTarget || (_newTarget !== this.source_representation && _newTarget.source_representation !== this.source_representation)) {
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    31
                this.source_representation.unselect();
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    32
            }
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    33
        },
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    34
        destroy: function() {
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    35
            this.sector.destroy();
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    36
        }
433
e457ec945e50 replace underscore par lodash
ymh <ymh.work@gmail.com>
parents: 293
diff changeset
    37
    }).value();
284
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    38
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    39
    return _BaseButton;
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    40
fa8035885814 build renderer with require js
cavaliet
parents:
diff changeset
    41
});