Blame view

js/app/models/PlotNode.js 3.15 KB
16035364   Benjamin Renard   First commit
1
2
3
4
5
6
/** 
 * Project  : AMDA-NG4
 * Name     : PlotNode.js
 * @class   amdaModel.PlotNode
 * @extends amdaModel.ExecutableNode
 * @brief   Basic Model of Node corresponding to a plot request
18d4a11e   Benjamin Renard   Save and load plo...
7
 * @author  Benjamin Renard
16035364   Benjamin Renard   First commit
8
9
10
 */

Ext.define('amdaModel.PlotNode', {
940afd8d   Benjamin Renard   Introduce multipl...
11
    extend: 'amdaModel.ExecutableNode',
663f6395   Elena.Budnik   nettoyage
12

16035364   Benjamin Renard   First commit
13
14
    statics: {
        nodeType: 'request' 
16035364   Benjamin Renard   First commit
15
16
    },

18d4a11e   Benjamin Renard   Save and load plo...
17
    constructor : function(config){
16035364   Benjamin Renard   First commit
18
19
        this.callParent(arguments);
        this.set('moduleId',myDesktopApp.dynamicModules.plot.id);
2396ac7b   Benjamin Renard   Do not load plot ...
20
        this.set('objectDataModel','amdaPlotObj.PlotRequestObject');
18d4a11e   Benjamin Renard   Save and load plo...
21
        this.set('nodeType',this.self.nodeType);
0ead0129   Benjamin Renard   Modify save plot ...
22
23
    },

16035364   Benjamin Renard   First commit
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
    allMenuItems : function() {
        var menuItems =
         [{
             fnId : 'root-createDir',
             text : 'Create Folder'
         }, {
             fnId : 'dire-createDir',
             text : 'Create Folder'
         }, {
             fnId : 'dire-renameNode',
             text : 'Rename Folder'
         }, {
             fnId : 'dire-deleteNode',
             text : 'Delete Folder'
         }, {
            fnId : 'leaf-editPlot',
            text : 'Plot By Request'
         }, {
16035364   Benjamin Renard   First commit
42
43
44
45
46
             fnId : 'leaf-renameNode',
             text : 'Rename Request'
         }, {
             fnId : 'leaf-deleteNode',
             text : 'Delete Request'
16035364   Benjamin Renard   First commit
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
         }];

        return menuItems;
    }, 
    
    allMenuMultiItems : function() {
        var menuMulti = [
            {
                fnId : 'mult-deleteMulti',
                text : 'Delete selected Requests'
            }
        ];
        return menuMulti;
    },
    
18d4a11e   Benjamin Renard   Save and load plo...
62
63
64
65
66
67
68
69
    getAllContextMenuItems: function(){
        return this.allMenuItems();
    },
    
    getMultiContextMenuItems: function(){
        return this.allMenuMultiItems();
    },
    
16035364   Benjamin Renard   First commit
70
    onMenuItemClick : function(menu,item,event) {
f5aaaec9   Elena.Budnik   no Download from ...
71
		 
16035364   Benjamin Renard   First commit
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
        var fnId = Ext.util.Format.substr(item.fnId, 5, item.fnId.length);

        switch (fnId) {

        case 'createDir':
            this.createDir(); 
            break;

        case 'deleteNode':
            this.deleteNode(); 
            break;

        case 'renameNode':
            this.renameNode(); 
            break;

        case 'editPlot':     
a73f0195   Benjamin Renard   Insert interval i...
89
            this.editLeaf(); 
16035364   Benjamin Renard   First commit
90
            break;
16035364   Benjamin Renard   First commit
91
92
93
94
	    
        case 'deleteMulti':
            this.deleteMulti();
            break;
16035364   Benjamin Renard   First commit
95
96
        default:
            break;
f5aaaec9   Elena.Budnik   no Download from ...
97
        }
2048f5bc   Benjamin Renard   Fix save & edit plot
98
99
100
101
102
103
104
105
106
107
108
109
    },

    //Override editInModule
    editInModule : function (contextNode, onReady)
    {
        // set the contextNode of this node
        this.set('contextNode',contextNode);

        var me = this;
        myDesktopApp.getLoadedModule(this.get('moduleId'),true, function (module) {
            module.editPlot(me);
        });
84d442b4   Benjamin Renard   Synchronize plot ...
110
111
112
113
114
115
116
117
118
119
    },

    //Override rename
    rename: function(value,callBackFn)
    {
        var me = this;
        var dataToSend = {id : this.get('id'), old_name: this.modified.text, name: value,  parent : this.data.parentId, leaf: this.isLeaf(), nodeType: this.get('nodeType')};
        AmdaAction.renameObject(dataToSend, function(result) {
            callBackFn(result);
            myDesktopApp.getLoadedModule(me.get('moduleId'),true, function (module) {
5c744625   Benjamin Renard   Synchronize reque...
120
                module.syncAfterRename(me);
84d442b4   Benjamin Renard   Synchronize plot ...
121
122
123
            });
        });
     }
16035364   Benjamin Renard   First commit
124
});