annotate src/djol/ToolBoxController.js @ 20:9718e8de0cb2

Слияние
author nickolay
date Fri, 06 Oct 2017 09:17:41 +0300
parents f0035923ff3e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
1 define([
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
2 "dojo/_base/declare",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
3 "implab/safe",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
4 "implab/components/ActivationController",
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
5 "./ToolType" ],
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
6
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
7 function(declare, safe, ActivationController, ToolType) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
8 return declare([ ActivationController ], {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
9 _stack : null,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
10 _tools : null,
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
11
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
12 constructor : function() {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
13 this._stack = new Array();
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
14 this._tools = new Array();
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
15 },
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
16
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
17 activate : function(tool) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
18 safe.argumentNotNull(tool, "tool");
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
19
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
20 var me = this, current = me.getCurrent();
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
21
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
22 return this.inherited(arguments).then(function(success) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
23 if (success) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
24 if (tool.toolType == ToolType.Oneshot && current)
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
25 me._stack.push(current);
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
26 else
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
27 me._stack = [];
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
28 }
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
29 return success;
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
30 });
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
31 },
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
32
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
33 deactivate : function() {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
34 var me = this;
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
35 return me.inherited(arguments).then(function(success) {
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
36 if (success && me._stack.length)
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
37 return me.activate(me._stack.pop());
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
38
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
39 return success;
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
40 });
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
41 }
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
42 });
f0035923ff3e добавлена библиотека для работы с openlayers 3+
cin
parents:
diff changeset
43 });